├── client
├── .gitignore
├── README.md
├── package.json
├── public
│ ├── favicon.ico
│ ├── index.html
│ ├── logo192.png
│ ├── logo512.png
│ ├── manifest.json
│ └── robots.txt
├── src
│ ├── App.css
│ ├── App.js
│ ├── index.js
│ └── reportWebVitals.js
└── yarn.lock
└── server
├── index.js
├── node_modules
├── .bin
│ ├── is-ci
│ ├── mime
│ ├── nodemon
│ ├── nodetouch
│ ├── nopt
│ ├── rc
│ └── semver
├── .yarn-integrity
├── @sindresorhus
│ └── is
│ │ ├── dist
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── index.js.map
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
├── @socket.io
│ └── base64-arraybuffer
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── dist
│ │ ├── base64-arraybuffer.es5.js
│ │ ├── base64-arraybuffer.es5.js.map
│ │ ├── base64-arraybuffer.umd.js
│ │ ├── base64-arraybuffer.umd.js.map
│ │ ├── lib
│ │ │ ├── index.js
│ │ │ └── index.js.map
│ │ └── types
│ │ │ └── index.d.ts
│ │ ├── package.json
│ │ └── src
│ │ └── index.ts
├── @szmarczak
│ └── http-timer
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── package.json
│ │ └── source
│ │ └── index.js
├── @types
│ ├── component-emitter
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ └── package.json
│ ├── cookie
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ └── package.json
│ ├── cors
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ └── package.json
│ └── node
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── assert.d.ts
│ │ ├── assert
│ │ └── strict.d.ts
│ │ ├── async_hooks.d.ts
│ │ ├── buffer.d.ts
│ │ ├── child_process.d.ts
│ │ ├── cluster.d.ts
│ │ ├── console.d.ts
│ │ ├── constants.d.ts
│ │ ├── crypto.d.ts
│ │ ├── dgram.d.ts
│ │ ├── diagnostics_channel.d.ts
│ │ ├── dns.d.ts
│ │ ├── dns
│ │ └── promises.d.ts
│ │ ├── domain.d.ts
│ │ ├── events.d.ts
│ │ ├── fs.d.ts
│ │ ├── fs
│ │ └── promises.d.ts
│ │ ├── globals.d.ts
│ │ ├── globals.global.d.ts
│ │ ├── http.d.ts
│ │ ├── http2.d.ts
│ │ ├── https.d.ts
│ │ ├── index.d.ts
│ │ ├── inspector.d.ts
│ │ ├── module.d.ts
│ │ ├── net.d.ts
│ │ ├── os.d.ts
│ │ ├── package.json
│ │ ├── path.d.ts
│ │ ├── perf_hooks.d.ts
│ │ ├── process.d.ts
│ │ ├── punycode.d.ts
│ │ ├── querystring.d.ts
│ │ ├── readline.d.ts
│ │ ├── repl.d.ts
│ │ ├── stream.d.ts
│ │ ├── stream
│ │ ├── consumers.d.ts
│ │ ├── promises.d.ts
│ │ └── web.d.ts
│ │ ├── string_decoder.d.ts
│ │ ├── timers.d.ts
│ │ ├── timers
│ │ └── promises.d.ts
│ │ ├── tls.d.ts
│ │ ├── trace_events.d.ts
│ │ ├── tty.d.ts
│ │ ├── url.d.ts
│ │ ├── util.d.ts
│ │ ├── v8.d.ts
│ │ ├── vm.d.ts
│ │ ├── wasi.d.ts
│ │ ├── worker_threads.d.ts
│ │ └── zlib.d.ts
├── abbrev
│ ├── LICENSE
│ ├── README.md
│ ├── abbrev.js
│ └── package.json
├── accepts
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── ansi-align
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── ansi-regex
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── ansi-styles
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── anymatch
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── array-flatten
│ ├── LICENSE
│ ├── README.md
│ ├── array-flatten.js
│ └── package.json
├── balanced-match
│ ├── .github
│ │ └── FUNDING.yml
│ ├── LICENSE.md
│ ├── README.md
│ ├── index.js
│ └── package.json
├── base64id
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── lib
│ │ └── base64id.js
│ └── package.json
├── binary-extensions
│ ├── binary-extensions.json
│ ├── binary-extensions.json.d.ts
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── body-parser
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── read.js
│ │ └── types
│ │ │ ├── json.js
│ │ │ ├── raw.js
│ │ │ ├── text.js
│ │ │ └── urlencoded.js
│ └── package.json
├── boxen
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── brace-expansion
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── braces
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── compile.js
│ │ ├── constants.js
│ │ ├── expand.js
│ │ ├── parse.js
│ │ ├── stringify.js
│ │ └── utils.js
│ └── package.json
├── bytes
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── cacheable-request
│ ├── LICENSE
│ ├── README.md
│ ├── node_modules
│ │ ├── get-stream
│ │ │ ├── buffer-stream.js
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ └── lowercase-keys
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── camelcase
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── chalk
│ ├── index.d.ts
│ ├── license
│ ├── node_modules
│ │ ├── has-flag
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ └── supports-color
│ │ │ ├── browser.js
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ ├── readme.md
│ └── source
│ │ ├── index.js
│ │ ├── templates.js
│ │ └── util.js
├── chokidar
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── constants.js
│ │ ├── fsevents-handler.js
│ │ └── nodefs-handler.js
│ ├── package.json
│ └── types
│ │ └── index.d.ts
├── ci-info
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── vendors.json
├── cli-boxes
│ ├── boxes.json
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── clone-response
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── color-convert
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── conversions.js
│ ├── index.js
│ ├── package.json
│ └── route.js
├── color-name
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── component-emitter
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── concat-map
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.markdown
│ ├── example
│ │ └── map.js
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── map.js
├── configstore
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── 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
├── cors
│ ├── CONTRIBUTING.md
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── lib
│ │ └── index.js
│ └── package.json
├── crypto-random-string
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── debug
│ ├── .coveralls.yml
│ ├── .eslintrc
│ ├── .npmignore
│ ├── .travis.yml
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── Makefile
│ ├── README.md
│ ├── component.json
│ ├── karma.conf.js
│ ├── node.js
│ ├── node_modules
│ │ └── ms
│ │ │ ├── index.js
│ │ │ ├── license.md
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ └── src
│ │ ├── browser.js
│ │ ├── debug.js
│ │ ├── index.js
│ │ ├── inspector-log.js
│ │ └── node.js
├── decompress-response
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── deep-extend
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ └── deep-extend.js
│ └── package.json
├── defer-to-connect
│ ├── LICENSE
│ ├── README.md
│ ├── dist
│ │ ├── index.d.ts
│ │ └── index.js
│ └── package.json
├── 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
├── dot-prop
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── duplexer3
│ ├── LICENSE.md
│ ├── README.md
│ ├── index.js
│ └── package.json
├── ee-first
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── emoji-regex
│ ├── LICENSE-MIT.txt
│ ├── README.md
│ ├── es2015
│ │ ├── index.js
│ │ └── text.js
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── text.js
├── encodeurl
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── end-of-stream
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── engine.io-parser
│ ├── LICENSE
│ ├── Readme.md
│ ├── build
│ │ ├── cjs
│ │ │ ├── commons.js
│ │ │ ├── decodePacket.browser.js
│ │ │ ├── decodePacket.js
│ │ │ ├── encodePacket.browser.js
│ │ │ ├── encodePacket.js
│ │ │ ├── index.js
│ │ │ └── package.json
│ │ └── esm
│ │ │ ├── commons.d.ts
│ │ │ ├── commons.js
│ │ │ ├── decodePacket.browser.d.ts
│ │ │ ├── decodePacket.browser.js
│ │ │ ├── decodePacket.d.ts
│ │ │ ├── decodePacket.js
│ │ │ ├── encodePacket.browser.d.ts
│ │ │ ├── encodePacket.browser.js
│ │ │ ├── encodePacket.d.ts
│ │ │ ├── encodePacket.js
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ └── package.json
│ └── package.json
├── engine.io
│ ├── LICENSE
│ ├── README.md
│ ├── build
│ │ ├── engine.io.d.ts
│ │ ├── engine.io.js
│ │ ├── parser-v3
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── utf8.d.ts
│ │ │ └── utf8.js
│ │ ├── server.d.ts
│ │ ├── server.js
│ │ ├── socket.d.ts
│ │ ├── socket.js
│ │ ├── transport.d.ts
│ │ ├── transport.js
│ │ ├── transports-uws
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── polling.d.ts
│ │ │ ├── polling.js
│ │ │ ├── websocket.d.ts
│ │ │ └── websocket.js
│ │ ├── transports
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── polling-jsonp.d.ts
│ │ │ ├── polling-jsonp.js
│ │ │ ├── polling.d.ts
│ │ │ ├── polling.js
│ │ │ ├── websocket.d.ts
│ │ │ └── websocket.js
│ │ ├── userver.d.ts
│ │ └── userver.js
│ ├── node_modules
│ │ ├── debug
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ │ ├── browser.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.js
│ │ │ │ └── node.js
│ │ └── ms
│ │ │ ├── index.js
│ │ │ ├── license.md
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ └── wrapper.mjs
├── escape-goat
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── 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
├── fill-range
│ ├── LICENSE
│ ├── README.md
│ ├── index.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
├── fsevents
│ ├── LICENSE
│ ├── README.md
│ ├── fsevents.d.ts
│ ├── fsevents.js
│ ├── fsevents.node
│ └── package.json
├── get-stream
│ ├── buffer-stream.js
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── glob-parent
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── global-dirs
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── got
│ ├── license
│ ├── package.json
│ ├── readme.md
│ └── source
│ │ ├── as-promise.js
│ │ ├── as-stream.js
│ │ ├── create.js
│ │ ├── errors.js
│ │ ├── get-response.js
│ │ ├── index.js
│ │ ├── known-hook-events.js
│ │ ├── merge.js
│ │ ├── normalize-arguments.js
│ │ ├── progress.js
│ │ ├── request-as-event-emitter.js
│ │ └── utils
│ │ ├── deep-freeze.js
│ │ ├── get-body-size.js
│ │ ├── is-form-data.js
│ │ ├── timed-out.js
│ │ └── url-to-options.js
├── graceful-fs
│ ├── LICENSE
│ ├── README.md
│ ├── clone.js
│ ├── graceful-fs.js
│ ├── legacy-streams.js
│ ├── package.json
│ └── polyfills.js
├── has-flag
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── has-yarn
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── http-cache-semantics
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── http-errors
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── iconv-lite
│ ├── 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
├── ignore-by-default
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── import-lazy
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── imurmurhash
│ ├── README.md
│ ├── imurmurhash.js
│ ├── imurmurhash.min.js
│ └── package.json
├── inherits
│ ├── LICENSE
│ ├── README.md
│ ├── inherits.js
│ ├── inherits_browser.js
│ └── package.json
├── ini
│ ├── LICENSE
│ ├── README.md
│ ├── ini.js
│ └── package.json
├── ipaddr.js
│ ├── LICENSE
│ ├── README.md
│ ├── ipaddr.min.js
│ ├── lib
│ │ ├── ipaddr.js
│ │ └── ipaddr.js.d.ts
│ └── package.json
├── is-binary-path
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-ci
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin.js
│ ├── index.js
│ └── package.json
├── is-extglob
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── is-fullwidth-code-point
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-glob
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── is-installed-globally
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-npm
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-number
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── is-obj
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-path-inside
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-typedarray
│ ├── LICENSE.md
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── test.js
├── is-yarn-global
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── json-buffer
│ ├── .npmignore
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── index.js
├── keyv
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── latest-version
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── lowercase-keys
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── lru-cache
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── make-dir
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ └── .bin
│ │ │ └── semver
│ ├── package.json
│ └── readme.md
├── 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
│ ├── .npmignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── cli.js
│ ├── mime.js
│ ├── package.json
│ ├── src
│ │ ├── build.js
│ │ └── test.js
│ └── types.json
├── mimic-response
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── minimatch
│ ├── LICENSE
│ ├── README.md
│ ├── minimatch.js
│ └── package.json
├── minimist
│ ├── .travis.yml
│ ├── LICENSE
│ ├── example
│ │ └── parse.js
│ ├── index.js
│ ├── package.json
│ ├── readme.markdown
│ └── test
│ │ ├── all_bool.js
│ │ ├── bool.js
│ │ ├── dash.js
│ │ ├── default_bool.js
│ │ ├── dotted.js
│ │ ├── kv_short.js
│ │ ├── long.js
│ │ ├── num.js
│ │ ├── parse.js
│ │ ├── parse_modified.js
│ │ ├── proto.js
│ │ ├── short.js
│ │ ├── stop_early.js
│ │ ├── unknown.js
│ │ └── whitespace.js
├── 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
├── nodemon
│ ├── .eslintrc.json
│ ├── .jshintrc
│ ├── .releaserc
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ ├── nodemon.js
│ │ ├── postinstall.js
│ │ └── windows-kill.exe
│ ├── commitlint.config.js
│ ├── doc
│ │ └── cli
│ │ │ ├── authors.txt
│ │ │ ├── config.txt
│ │ │ ├── help.txt
│ │ │ ├── logo.txt
│ │ │ ├── options.txt
│ │ │ ├── topics.txt
│ │ │ ├── usage.txt
│ │ │ └── whoami.txt
│ ├── lib
│ │ ├── cli
│ │ │ ├── index.js
│ │ │ └── parse.js
│ │ ├── config
│ │ │ ├── command.js
│ │ │ ├── defaults.js
│ │ │ ├── exec.js
│ │ │ ├── index.js
│ │ │ └── load.js
│ │ ├── help
│ │ │ └── index.js
│ │ ├── index.js
│ │ ├── monitor
│ │ │ ├── index.js
│ │ │ ├── match.js
│ │ │ ├── run.js
│ │ │ ├── signals.js
│ │ │ └── watch.js
│ │ ├── nodemon.js
│ │ ├── rules
│ │ │ ├── add.js
│ │ │ ├── index.js
│ │ │ └── parse.js
│ │ ├── spawn.js
│ │ ├── utils
│ │ │ ├── bus.js
│ │ │ ├── clone.js
│ │ │ ├── colour.js
│ │ │ ├── index.js
│ │ │ ├── log.js
│ │ │ └── merge.js
│ │ └── version.js
│ ├── node_modules
│ │ ├── .bin
│ │ │ ├── nodetouch
│ │ │ └── semver
│ │ ├── debug
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── node.js
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ │ ├── browser.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.js
│ │ │ │ └── node.js
│ │ └── semver
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── bin
│ │ │ └── semver
│ │ │ ├── package.json
│ │ │ ├── range.bnf
│ │ │ └── semver.js
│ └── package.json
├── nopt
│ ├── .gitignore
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── nopt.js
│ ├── examples
│ │ └── my-program.js
│ ├── lib
│ │ └── nopt.js
│ └── package.json
├── normalize-path
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── normalize-url
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── object-assign
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── on-finished
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── once
│ ├── LICENSE
│ ├── README.md
│ ├── once.js
│ └── package.json
├── p-cancelable
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── package-json
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ └── .bin
│ │ │ └── semver
│ ├── package.json
│ └── readme.md
├── parseurl
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── path-to-regexp
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── picomatch
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── constants.js
│ │ ├── parse.js
│ │ ├── picomatch.js
│ │ ├── scan.js
│ │ └── utils.js
│ └── package.json
├── prepend-http
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── proxy-addr
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── pstree.remy
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── lib
│ │ ├── index.js
│ │ ├── tree.js
│ │ └── utils.js
│ ├── package.json
│ └── tests
│ │ ├── fixtures
│ │ ├── index.js
│ │ ├── out1
│ │ └── out2
│ │ └── index.test.js
├── pump
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── test-browser.js
│ └── test-node.js
├── pupa
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── qs
│ ├── .editorconfig
│ ├── .eslintrc
│ ├── .github
│ │ └── FUNDING.yml
│ ├── .nycrc
│ ├── CHANGELOG.md
│ ├── LICENSE.md
│ ├── README.md
│ ├── dist
│ │ └── qs.js
│ ├── lib
│ │ ├── formats.js
│ │ ├── index.js
│ │ ├── parse.js
│ │ ├── stringify.js
│ │ └── utils.js
│ ├── package.json
│ └── test
│ │ ├── 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
│ └── package.json
├── rc
│ ├── LICENSE.APACHE2
│ ├── LICENSE.BSD
│ ├── LICENSE.MIT
│ ├── README.md
│ ├── browser.js
│ ├── cli.js
│ ├── index.js
│ ├── lib
│ │ └── utils.js
│ ├── node_modules
│ │ └── ini
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── ini.js
│ │ │ └── package.json
│ ├── package.json
│ └── test
│ │ ├── ini.js
│ │ ├── nested-env-vars.js
│ │ └── test.js
├── readdirp
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── registry-auth-token
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── base64.js
│ ├── index.js
│ ├── node_modules
│ │ └── .bin
│ │ │ └── rc
│ ├── package.json
│ └── registry-url.js
├── registry-url
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ └── .bin
│ │ │ └── rc
│ ├── package.json
│ └── readme.md
├── responselike
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── safe-buffer
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── safer-buffer
│ ├── LICENSE
│ ├── Porting-Buffer.md
│ ├── Readme.md
│ ├── dangerous.js
│ ├── package.json
│ ├── safer.js
│ └── tests.js
├── semver-diff
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ └── .bin
│ │ │ └── semver
│ ├── package.json
│ └── readme.md
├── semver
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── semver.js
│ ├── package.json
│ ├── range.bnf
│ └── semver.js
├── send
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── node_modules
│ │ └── .bin
│ │ │ └── mime
│ └── package.json
├── serve-static
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── setprototypeof
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── index.js
├── signal-exit
│ ├── LICENSE.txt
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── signals.js
├── socket.io-adapter
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── dist
│ │ ├── cjs
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── es
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── index.d.ts
│ │ └── index.js
│ └── package.json
├── socket.io-parser
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── dist
│ │ ├── binary.d.ts
│ │ ├── binary.js
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── is-binary.d.ts
│ │ └── is-binary.js
│ ├── node_modules
│ │ ├── debug
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ │ ├── browser.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.js
│ │ │ │ └── node.js
│ │ └── ms
│ │ │ ├── index.js
│ │ │ ├── license.md
│ │ │ ├── package.json
│ │ │ └── readme.md
│ └── package.json
├── socket.io
│ ├── LICENSE
│ ├── Readme.md
│ ├── client-dist
│ │ ├── socket.io.esm.min.js
│ │ ├── socket.io.esm.min.js.map
│ │ ├── socket.io.js
│ │ ├── socket.io.js.map
│ │ ├── socket.io.min.js
│ │ ├── socket.io.min.js.map
│ │ ├── socket.io.msgpack.min.js
│ │ └── socket.io.msgpack.min.js.map
│ ├── dist
│ │ ├── broadcast-operator.d.ts
│ │ ├── broadcast-operator.js
│ │ ├── client.d.ts
│ │ ├── client.js
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── namespace.d.ts
│ │ ├── namespace.js
│ │ ├── parent-namespace.d.ts
│ │ ├── parent-namespace.js
│ │ ├── socket.d.ts
│ │ ├── socket.js
│ │ ├── typed-events.d.ts
│ │ ├── typed-events.js
│ │ ├── uws.d.ts
│ │ └── uws.js
│ ├── node_modules
│ │ ├── debug
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ │ ├── browser.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.js
│ │ │ │ └── node.js
│ │ └── ms
│ │ │ ├── index.js
│ │ │ ├── license.md
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ └── wrapper.mjs
├── statuses
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── codes.json
│ ├── index.js
│ └── package.json
├── string-width
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── strip-ansi
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── strip-json-comments
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── supports-color
│ ├── browser.js
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── to-readable-stream
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── to-regex-range
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── toidentifier
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── touch
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── nodetouch.js
│ ├── index.js
│ ├── node_modules
│ │ └── .bin
│ │ │ └── nopt
│ └── package.json
├── type-fest
│ ├── base.d.ts
│ ├── index.d.ts
│ ├── license
│ ├── package.json
│ ├── readme.md
│ ├── source
│ │ ├── async-return-type.d.ts
│ │ ├── asyncify.d.ts
│ │ ├── basic.d.ts
│ │ ├── conditional-except.d.ts
│ │ ├── conditional-keys.d.ts
│ │ ├── conditional-pick.d.ts
│ │ ├── entries.d.ts
│ │ ├── entry.d.ts
│ │ ├── except.d.ts
│ │ ├── fixed-length-array.d.ts
│ │ ├── iterable-element.d.ts
│ │ ├── literal-union.d.ts
│ │ ├── merge-exclusive.d.ts
│ │ ├── merge.d.ts
│ │ ├── mutable.d.ts
│ │ ├── opaque.d.ts
│ │ ├── package-json.d.ts
│ │ ├── partial-deep.d.ts
│ │ ├── promisable.d.ts
│ │ ├── promise-value.d.ts
│ │ ├── readonly-deep.d.ts
│ │ ├── require-at-least-one.d.ts
│ │ ├── require-exactly-one.d.ts
│ │ ├── set-optional.d.ts
│ │ ├── set-required.d.ts
│ │ ├── set-return-type.d.ts
│ │ ├── stringified.d.ts
│ │ ├── tsconfig-json.d.ts
│ │ ├── union-to-intersection.d.ts
│ │ ├── utilities.d.ts
│ │ └── value-of.d.ts
│ └── ts41
│ │ ├── camel-case.d.ts
│ │ ├── delimiter-case.d.ts
│ │ ├── index.d.ts
│ │ ├── kebab-case.d.ts
│ │ ├── pascal-case.d.ts
│ │ └── snake-case.d.ts
├── type-is
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── typedarray-to-buffer
│ ├── .airtap.yml
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── basic.js
├── undefsafe
│ ├── .github
│ │ └── workflows
│ │ │ └── release.yml
│ ├── .jscsrc
│ ├── .jshintrc
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── example.js
│ ├── lib
│ │ └── undefsafe.js
│ └── package.json
├── unique-string
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── unpipe
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── update-notifier
│ ├── check.js
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ ├── .bin
│ │ │ ├── is-ci
│ │ │ └── semver
│ │ └── semver
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── bin
│ │ │ └── semver.js
│ │ │ ├── classes
│ │ │ ├── comparator.js
│ │ │ ├── index.js
│ │ │ ├── range.js
│ │ │ └── semver.js
│ │ │ ├── functions
│ │ │ ├── clean.js
│ │ │ ├── cmp.js
│ │ │ ├── coerce.js
│ │ │ ├── compare-build.js
│ │ │ ├── compare-loose.js
│ │ │ ├── compare.js
│ │ │ ├── diff.js
│ │ │ ├── eq.js
│ │ │ ├── gt.js
│ │ │ ├── gte.js
│ │ │ ├── inc.js
│ │ │ ├── lt.js
│ │ │ ├── lte.js
│ │ │ ├── major.js
│ │ │ ├── minor.js
│ │ │ ├── neq.js
│ │ │ ├── parse.js
│ │ │ ├── patch.js
│ │ │ ├── prerelease.js
│ │ │ ├── rcompare.js
│ │ │ ├── rsort.js
│ │ │ ├── satisfies.js
│ │ │ ├── sort.js
│ │ │ └── valid.js
│ │ │ ├── index.js
│ │ │ ├── internal
│ │ │ ├── constants.js
│ │ │ ├── debug.js
│ │ │ ├── identifiers.js
│ │ │ ├── parse-options.js
│ │ │ └── re.js
│ │ │ ├── package.json
│ │ │ ├── preload.js
│ │ │ ├── range.bnf
│ │ │ └── ranges
│ │ │ ├── gtr.js
│ │ │ ├── intersects.js
│ │ │ ├── ltr.js
│ │ │ ├── max-satisfying.js
│ │ │ ├── min-satisfying.js
│ │ │ ├── min-version.js
│ │ │ ├── outside.js
│ │ │ ├── simplify.js
│ │ │ ├── subset.js
│ │ │ ├── to-comparators.js
│ │ │ └── valid.js
│ ├── package.json
│ └── readme.md
├── url-parse-lax
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── utils-merge
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── vary
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── widest-line
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── wrap-ansi
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── wrappy
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── wrappy.js
├── write-file-atomic
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── ws
│ ├── LICENSE
│ ├── README.md
│ ├── browser.js
│ ├── index.js
│ ├── lib
│ │ ├── buffer-util.js
│ │ ├── constants.js
│ │ ├── event-target.js
│ │ ├── extension.js
│ │ ├── limiter.js
│ │ ├── permessage-deflate.js
│ │ ├── receiver.js
│ │ ├── sender.js
│ │ ├── stream.js
│ │ ├── subprotocol.js
│ │ ├── validation.js
│ │ ├── websocket-server.js
│ │ └── websocket.js
│ ├── package.json
│ └── wrapper.mjs
├── xdg-basedir
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
└── yallist
│ ├── LICENSE
│ ├── README.md
│ ├── iterator.js
│ ├── package.json
│ └── yallist.js
├── package.json
└── yarn.lock
/client/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/client/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/client/public/favicon.ico
--------------------------------------------------------------------------------
/client/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/client/public/logo192.png
--------------------------------------------------------------------------------
/client/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/client/public/logo512.png
--------------------------------------------------------------------------------
/client/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/client/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/client/src/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | text-align: center;
3 | }
4 |
5 | .App-logo {
6 | height: 40vmin;
7 | pointer-events: none;
8 | }
9 |
10 | @media (prefers-reduced-motion: no-preference) {
11 | .App-logo {
12 | animation: App-logo-spin infinite 20s linear;
13 | }
14 | }
15 |
16 | .App-header {
17 | background-color: #282c34;
18 | min-height: 100vh;
19 | display: flex;
20 | flex-direction: column;
21 | align-items: center;
22 | justify-content: center;
23 | font-size: calc(10px + 2vmin);
24 | color: white;
25 | }
26 |
27 | .App-link {
28 | color: #61dafb;
29 | }
30 |
31 | @keyframes App-logo-spin {
32 | from {
33 | transform: rotate(0deg);
34 | }
35 | to {
36 | transform: rotate(360deg);
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/client/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom";
3 | import App from "./App";
4 | import reportWebVitals from "./reportWebVitals";
5 |
6 | ReactDOM.render(
7 |
8 |
9 | ,
10 | document.getElementById("root")
11 | );
12 |
13 | // If you want to start measuring performance in your app, pass a function
14 | // to log results (for example: reportWebVitals(console.log))
15 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
16 | reportWebVitals();
17 |
--------------------------------------------------------------------------------
/client/src/reportWebVitals.js:
--------------------------------------------------------------------------------
1 | const reportWebVitals = onPerfEntry => {
2 | if (onPerfEntry && onPerfEntry instanceof Function) {
3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
4 | getCLS(onPerfEntry);
5 | getFID(onPerfEntry);
6 | getFCP(onPerfEntry);
7 | getLCP(onPerfEntry);
8 | getTTFB(onPerfEntry);
9 | });
10 | }
11 | };
12 |
13 | export default reportWebVitals;
14 |
--------------------------------------------------------------------------------
/server/index.js:
--------------------------------------------------------------------------------
1 | const express = require("express");
2 | const app = express();
3 | const http = require("http");
4 | const { Server } = require("socket.io");
5 | const cors = require("cors");
6 |
7 | app.use(cors());
8 |
9 | const server = http.createServer(app);
10 |
11 | const io = new Server(server, {
12 | cors: {
13 | origin: "http://localhost:3000",
14 | methods: ["GET", "POST"],
15 | },
16 | });
17 |
18 | io.on("connection", (socket) => {
19 | console.log(`User Connected: ${socket.id}`);
20 |
21 | socket.on("join_room", (data) => {
22 | socket.join(data);
23 | });
24 |
25 | socket.on("send_message", (data) => {
26 | socket.to(data.room).emit("receive_message", data);
27 | });
28 | });
29 |
30 | server.listen(3001, () => {
31 | console.log("SERVER IS RUNNING");
32 | });
33 |
--------------------------------------------------------------------------------
/server/node_modules/.bin/is-ci:
--------------------------------------------------------------------------------
1 | ../is-ci/bin.js
--------------------------------------------------------------------------------
/server/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | ../mime/cli.js
--------------------------------------------------------------------------------
/server/node_modules/.bin/nodemon:
--------------------------------------------------------------------------------
1 | ../nodemon/bin/nodemon.js
--------------------------------------------------------------------------------
/server/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | ../touch/bin/nodetouch.js
--------------------------------------------------------------------------------
/server/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | ../nopt/bin/nopt.js
--------------------------------------------------------------------------------
/server/node_modules/.bin/rc:
--------------------------------------------------------------------------------
1 | ../rc/cli.js
--------------------------------------------------------------------------------
/server/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../nodemon/node_modules/semver/bin/semver
--------------------------------------------------------------------------------
/server/node_modules/@socket.io/base64-arraybuffer/dist/types/index.d.ts:
--------------------------------------------------------------------------------
1 | export declare const encode: (arraybuffer: ArrayBuffer) => string;
2 | export declare const decode: (base64: string) => ArrayBuffer;
3 |
--------------------------------------------------------------------------------
/server/node_modules/@types/cookie/README.md:
--------------------------------------------------------------------------------
1 | # Installation
2 | > `npm install --save @types/cookie`
3 |
4 | # Summary
5 | This package contains type definitions for cookie (https://github.com/jshttp/cookie).
6 |
7 | # Details
8 | Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/cookie.
9 |
10 | ### Additional Details
11 | * Last updated: Tue, 06 Jul 2021 20:32:30 GMT
12 | * Dependencies: none
13 | * Global values: none
14 |
15 | # Credits
16 | These definitions were written by [Pine Mizune](https://github.com/pine), and [Piotr Błażejewicz](https://github.com/peterblazejewicz).
17 |
--------------------------------------------------------------------------------
/server/node_modules/@types/node/assert/strict.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'assert/strict' {
2 | import { strict } from 'node:assert';
3 | export = strict;
4 | }
5 | declare module 'node:assert/strict' {
6 | import { strict } from 'node:assert';
7 | export = strict;
8 | }
9 |
--------------------------------------------------------------------------------
/server/node_modules/@types/node/constants.d.ts:
--------------------------------------------------------------------------------
1 | /** @deprecated since v6.3.0 - use constants property exposed by the relevant module instead. */
2 | declare module 'constants' {
3 | import { constants as osConstants, SignalConstants } from 'node:os';
4 | import { constants as cryptoConstants } from 'node:crypto';
5 | import { constants as fsConstants } from 'node:fs';
6 |
7 | const exp: typeof osConstants.errno &
8 | typeof osConstants.priority &
9 | SignalConstants &
10 | typeof cryptoConstants &
11 | typeof fsConstants;
12 | export = exp;
13 | }
14 |
15 | declare module 'node:constants' {
16 | import constants = require('constants');
17 | export = constants;
18 | }
19 |
--------------------------------------------------------------------------------
/server/node_modules/@types/node/globals.global.d.ts:
--------------------------------------------------------------------------------
1 | declare var global: typeof globalThis;
2 |
--------------------------------------------------------------------------------
/server/node_modules/abbrev/README.md:
--------------------------------------------------------------------------------
1 | # abbrev-js
2 |
3 | Just like [ruby's Abbrev](http://apidock.com/ruby/Abbrev).
4 |
5 | Usage:
6 |
7 | var abbrev = require("abbrev");
8 | abbrev("foo", "fool", "folding", "flop");
9 |
10 | // returns:
11 | { fl: 'flop'
12 | , flo: 'flop'
13 | , flop: 'flop'
14 | , fol: 'folding'
15 | , fold: 'folding'
16 | , foldi: 'folding'
17 | , foldin: 'folding'
18 | , folding: 'folding'
19 | , foo: 'foo'
20 | , fool: 'fool'
21 | }
22 |
23 | This is handy for command-line scripts, or other cases where you want to be able to accept shorthands.
24 |
--------------------------------------------------------------------------------
/server/node_modules/abbrev/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "abbrev",
3 | "version": "1.1.1",
4 | "description": "Like ruby's abbrev module, but in js",
5 | "author": "Isaac Z. Schlueter ",
6 | "main": "abbrev.js",
7 | "scripts": {
8 | "test": "tap test.js --100",
9 | "preversion": "npm test",
10 | "postversion": "npm publish",
11 | "postpublish": "git push origin --all; git push origin --tags"
12 | },
13 | "repository": "http://github.com/isaacs/abbrev-js",
14 | "license": "ISC",
15 | "devDependencies": {
16 | "tap": "^10.1"
17 | },
18 | "files": [
19 | "abbrev.js"
20 | ]
21 | }
22 |
--------------------------------------------------------------------------------
/server/node_modules/ansi-align/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2016, Contributors
2 |
3 | Permission to use, copy, modify, and/or distribute this software for any purpose
4 | with or without fee is hereby granted, provided that the above copyright notice
5 | and this permission notice appear in all copies.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
9 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
11 | OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
12 | TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
13 | THIS SOFTWARE.
14 |
--------------------------------------------------------------------------------
/server/node_modules/ansi-regex/index.d.ts:
--------------------------------------------------------------------------------
1 | declare namespace ansiRegex {
2 | interface Options {
3 | /**
4 | Match only the first ANSI escape.
5 |
6 | @default false
7 | */
8 | onlyFirst: boolean;
9 | }
10 | }
11 |
12 | /**
13 | Regular expression for matching ANSI escape codes.
14 |
15 | @example
16 | ```
17 | import ansiRegex = require('ansi-regex');
18 |
19 | ansiRegex().test('\u001B[4mcake\u001B[0m');
20 | //=> true
21 |
22 | ansiRegex().test('cake');
23 | //=> false
24 |
25 | '\u001B[4mcake\u001B[0m'.match(ansiRegex());
26 | //=> ['\u001B[4m', '\u001B[0m']
27 |
28 | '\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true}));
29 | //=> ['\u001B[4m']
30 |
31 | '\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex());
32 | //=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
33 | ```
34 | */
35 | declare function ansiRegex(options?: ansiRegex.Options): RegExp;
36 |
37 | export = ansiRegex;
38 |
--------------------------------------------------------------------------------
/server/node_modules/ansi-regex/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = ({onlyFirst = false} = {}) => {
4 | const pattern = [
5 | '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
6 | '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))'
7 | ].join('|');
8 |
9 | return new RegExp(pattern, onlyFirst ? undefined : 'g');
10 | };
11 |
--------------------------------------------------------------------------------
/server/node_modules/anymatch/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com)
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/anymatch/index.d.ts:
--------------------------------------------------------------------------------
1 | type AnymatchFn = (testString: string) => boolean;
2 | type AnymatchPattern = string|RegExp|AnymatchFn;
3 | type AnymatchMatcher = AnymatchPattern|AnymatchPattern[]
4 | type AnymatchTester = {
5 | (testString: string|any[], returnIndex: true): number;
6 | (testString: string|any[]): boolean;
7 | }
8 |
9 | type PicomatchOptions = {dot: boolean};
10 |
11 | declare const anymatch: {
12 | (matchers: AnymatchMatcher): AnymatchTester;
13 | (matchers: AnymatchMatcher, testString: string|any[], returnIndex: true | PicomatchOptions): number;
14 | (matchers: AnymatchMatcher, testString: string|any[]): boolean;
15 | }
16 |
17 | export {AnymatchMatcher as Matcher}
18 | export {AnymatchTester as Tester}
19 | export default anymatch
20 |
--------------------------------------------------------------------------------
/server/node_modules/balanced-match/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/balanced-match"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/server/node_modules/base64id/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # [2.0.0](https://github.com/faeldt/base64id/compare/1.0.0...2.0.0) (2019-05-27)
2 |
3 |
4 | ### Code Refactoring
5 |
6 | * **buffer:** replace deprecated Buffer constructor usage ([#11](https://github.com/faeldt/base64id/issues/11)) ([ccfba54](https://github.com/faeldt/base64id/commit/ccfba54))
7 |
8 |
9 | ### BREAKING CHANGES
10 |
11 | * **buffer:** drop support for Node.js ≤ 4.4.x and 5.0.0 - 5.9.x
12 |
13 | See: https://nodejs.org/en/docs/guides/buffer-constructor-deprecation/
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/base64id/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "base64id"
3 | , "version": "2.0.0"
4 | , "license": "MIT"
5 | , "description": "Generates a base64 id"
6 | , "author": "Kristian Faeldt "
7 | , "repository": {
8 | "type": "git"
9 | , "url": "https://github.com/faeldt/base64id.git"
10 | }
11 | , "main": "./lib/base64id.js"
12 | , "engines": { "node": "^4.5.0 || >= 5.9" }
13 | }
14 |
--------------------------------------------------------------------------------
/server/node_modules/binary-extensions/binary-extensions.json.d.ts:
--------------------------------------------------------------------------------
1 | declare const binaryExtensionsJson: readonly string[];
2 |
3 | export = binaryExtensionsJson;
4 |
--------------------------------------------------------------------------------
/server/node_modules/binary-extensions/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | List of binary file extensions.
3 |
4 | @example
5 | ```
6 | import binaryExtensions = require('binary-extensions');
7 |
8 | console.log(binaryExtensions);
9 | //=> ['3ds', '3g2', …]
10 | ```
11 | */
12 | declare const binaryExtensions: readonly string[];
13 |
14 | export = binaryExtensions;
15 |
--------------------------------------------------------------------------------
/server/node_modules/binary-extensions/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./binary-extensions.json');
2 |
--------------------------------------------------------------------------------
/server/node_modules/binary-extensions/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "binary-extensions",
3 | "version": "2.2.0",
4 | "description": "List of binary file extensions",
5 | "license": "MIT",
6 | "repository": "sindresorhus/binary-extensions",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts",
21 | "binary-extensions.json",
22 | "binary-extensions.json.d.ts"
23 | ],
24 | "keywords": [
25 | "binary",
26 | "extensions",
27 | "extension",
28 | "file",
29 | "json",
30 | "list",
31 | "array"
32 | ],
33 | "devDependencies": {
34 | "ava": "^1.4.1",
35 | "tsd": "^0.7.2",
36 | "xo": "^0.24.0"
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/server/node_modules/braces/lib/stringify.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const utils = require('./utils');
4 |
5 | module.exports = (ast, options = {}) => {
6 | let stringify = (node, parent = {}) => {
7 | let invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent);
8 | let invalidNode = node.invalid === true && options.escapeInvalid === true;
9 | let output = '';
10 |
11 | if (node.value) {
12 | if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) {
13 | return '\\' + node.value;
14 | }
15 | return node.value;
16 | }
17 |
18 | if (node.value) {
19 | return node.value;
20 | }
21 |
22 | if (node.nodes) {
23 | for (let child of node.nodes) {
24 | output += stringify(child);
25 | }
26 | }
27 | return output;
28 | };
29 |
30 | return stringify(ast);
31 | };
32 |
33 |
--------------------------------------------------------------------------------
/server/node_modules/cacheable-request/node_modules/lowercase-keys/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Lowercase the keys of an object.
3 |
4 | @returns A new object with the keys lowercased.
5 |
6 | @example
7 | ```
8 | import lowercaseKeys = require('lowercase-keys');
9 |
10 | lowercaseKeys({FOO: true, bAr: false});
11 | //=> {foo: true, bar: false}
12 | ```
13 | */
14 | declare function lowercaseKeys(object: {[key: string]: T}): {[key: string]: T};
15 |
16 | export = lowercaseKeys;
17 |
--------------------------------------------------------------------------------
/server/node_modules/cacheable-request/node_modules/lowercase-keys/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = object => {
3 | const result = {};
4 |
5 | for (const [key, value] of Object.entries(object)) {
6 | result[key.toLowerCase()] = value;
7 | }
8 |
9 | return result;
10 | };
11 |
--------------------------------------------------------------------------------
/server/node_modules/cacheable-request/node_modules/lowercase-keys/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "lowercase-keys",
3 | "version": "2.0.0",
4 | "description": "Lowercase the keys of an object",
5 | "license": "MIT",
6 | "repository": "sindresorhus/lowercase-keys",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "object",
24 | "assign",
25 | "extend",
26 | "properties",
27 | "lowercase",
28 | "lower-case",
29 | "case",
30 | "keys",
31 | "key"
32 | ],
33 | "devDependencies": {
34 | "ava": "^1.4.1",
35 | "tsd": "^0.7.2",
36 | "xo": "^0.24.0"
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/server/node_modules/cacheable-request/node_modules/lowercase-keys/readme.md:
--------------------------------------------------------------------------------
1 | # lowercase-keys [](https://travis-ci.org/sindresorhus/lowercase-keys)
2 |
3 | > Lowercase the keys of an object
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install lowercase-keys
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const lowercaseKeys = require('lowercase-keys');
17 |
18 | lowercaseKeys({FOO: true, bAr: false});
19 | //=> {foo: true, bar: false}
20 | ```
21 |
22 |
23 | ## API
24 |
25 | ### lowercaseKeys(object)
26 |
27 | Returns a new object with the keys lowercased.
28 |
29 |
30 | ## License
31 |
32 | MIT © [Sindre Sorhus](https://sindresorhus.com)
33 |
--------------------------------------------------------------------------------
/server/node_modules/chalk/node_modules/has-flag/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if [`argv`](https://nodejs.org/docs/latest/api/process.html#process_process_argv) has a specific flag.
3 |
4 | @param flag - CLI flag to look for. The `--` prefix is optional.
5 | @param argv - CLI arguments. Default: `process.argv`.
6 | @returns Whether the flag exists.
7 |
8 | @example
9 | ```
10 | // $ ts-node foo.ts -f --unicorn --foo=bar -- --rainbow
11 |
12 | // foo.ts
13 | import hasFlag = require('has-flag');
14 |
15 | hasFlag('unicorn');
16 | //=> true
17 |
18 | hasFlag('--unicorn');
19 | //=> true
20 |
21 | hasFlag('f');
22 | //=> true
23 |
24 | hasFlag('-f');
25 | //=> true
26 |
27 | hasFlag('foo=bar');
28 | //=> true
29 |
30 | hasFlag('foo');
31 | //=> false
32 |
33 | hasFlag('rainbow');
34 | //=> false
35 | ```
36 | */
37 | declare function hasFlag(flag: string, argv?: string[]): boolean;
38 |
39 | export = hasFlag;
40 |
--------------------------------------------------------------------------------
/server/node_modules/chalk/node_modules/has-flag/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = (flag, argv = process.argv) => {
4 | const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
5 | const position = argv.indexOf(prefix + flag);
6 | const terminatorPosition = argv.indexOf('--');
7 | return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
8 | };
9 |
--------------------------------------------------------------------------------
/server/node_modules/chalk/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/server/node_modules/cli-boxes/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const cliBoxes = require('./boxes.json');
3 |
4 | module.exports = cliBoxes;
5 | // TODO: Remove this for the next major release
6 | module.exports.default = cliBoxes;
7 |
--------------------------------------------------------------------------------
/server/node_modules/cli-boxes/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "cli-boxes",
3 | "version": "2.2.1",
4 | "description": "Boxes for use in the terminal",
5 | "license": "MIT",
6 | "repository": "sindresorhus/cli-boxes",
7 | "funding": "https://github.com/sponsors/sindresorhus",
8 | "author": {
9 | "name": "Sindre Sorhus",
10 | "email": "sindresorhus@gmail.com",
11 | "url": "https://sindresorhus.com"
12 | },
13 | "engines": {
14 | "node": ">=6"
15 | },
16 | "scripts": {
17 | "test": "xo && ava && tsd"
18 | },
19 | "files": [
20 | "index.js",
21 | "index.d.ts",
22 | "boxes.json"
23 | ],
24 | "keywords": [
25 | "cli",
26 | "box",
27 | "boxes",
28 | "terminal",
29 | "term",
30 | "console",
31 | "ascii",
32 | "unicode",
33 | "border",
34 | "text",
35 | "json"
36 | ],
37 | "devDependencies": {
38 | "ava": "^1.4.1",
39 | "tsd": "^0.7.2",
40 | "xo": "^0.24.0"
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/server/node_modules/clone-response/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const PassThrough = require('stream').PassThrough;
4 | const mimicResponse = require('mimic-response');
5 |
6 | const cloneResponse = response => {
7 | if (!(response && response.pipe)) {
8 | throw new TypeError('Parameter `response` must be a response stream.');
9 | }
10 |
11 | const clone = new PassThrough();
12 | mimicResponse(response, clone);
13 |
14 | return response.pipe(clone);
15 | };
16 |
17 | module.exports = cloneResponse;
18 |
--------------------------------------------------------------------------------
/server/node_modules/color-name/README.md:
--------------------------------------------------------------------------------
1 | A JSON with color names and its values. Based on http://dev.w3.org/csswg/css-color/#named-colors.
2 |
3 | [](https://nodei.co/npm/color-name/)
4 |
5 |
6 | ```js
7 | var colors = require('color-name');
8 | colors.red //[255,0,0]
9 | ```
10 |
11 |
12 |
--------------------------------------------------------------------------------
/server/node_modules/color-name/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "color-name",
3 | "version": "1.1.4",
4 | "description": "A list of color names and its values",
5 | "main": "index.js",
6 | "files": [
7 | "index.js"
8 | ],
9 | "scripts": {
10 | "test": "node test.js"
11 | },
12 | "repository": {
13 | "type": "git",
14 | "url": "git@github.com:colorjs/color-name.git"
15 | },
16 | "keywords": [
17 | "color-name",
18 | "color",
19 | "color-keyword",
20 | "keyword"
21 | ],
22 | "author": "DY ",
23 | "license": "MIT",
24 | "bugs": {
25 | "url": "https://github.com/colorjs/color-name/issues"
26 | },
27 | "homepage": "https://github.com/colorjs/color-name"
28 | }
29 |
--------------------------------------------------------------------------------
/server/node_modules/component-emitter/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "component-emitter",
3 | "description": "Event emitter",
4 | "version": "1.3.0",
5 | "license": "MIT",
6 | "devDependencies": {
7 | "mocha": "*",
8 | "should": "*"
9 | },
10 | "component": {
11 | "scripts": {
12 | "emitter/index.js": "index.js"
13 | }
14 | },
15 | "main": "index.js",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/component/emitter.git"
19 | },
20 | "scripts": {
21 | "test": "make test"
22 | },
23 | "files": [
24 | "index.js",
25 | "LICENSE"
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/server/node_modules/concat-map/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 |
--------------------------------------------------------------------------------
/server/node_modules/concat-map/example/map.js:
--------------------------------------------------------------------------------
1 | var concatMap = require('../');
2 | var xs = [ 1, 2, 3, 4, 5, 6 ];
3 | var ys = concatMap(xs, function (x) {
4 | return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
5 | });
6 | console.dir(ys);
7 |
--------------------------------------------------------------------------------
/server/node_modules/concat-map/index.js:
--------------------------------------------------------------------------------
1 | module.exports = function (xs, fn) {
2 | var res = [];
3 | for (var i = 0; i < xs.length; i++) {
4 | var x = fn(xs[i], i);
5 | if (isArray(x)) res.push.apply(res, x);
6 | else res.push(x);
7 | }
8 | return res;
9 | };
10 |
11 | var isArray = Array.isArray || function (xs) {
12 | return Object.prototype.toString.call(xs) === '[object Array]';
13 | };
14 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/cookie-signature/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | *.sock
5 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/cookie-signature/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "cookie-signature",
3 | "version": "1.0.6",
4 | "description": "Sign and unsign cookies",
5 | "keywords": ["cookie", "sign", "unsign"],
6 | "author": "TJ Holowaychuk ",
7 | "license": "MIT",
8 | "repository": { "type": "git", "url": "https://github.com/visionmedia/node-cookie-signature.git"},
9 | "dependencies": {},
10 | "devDependencies": {
11 | "mocha": "*",
12 | "should": "*"
13 | },
14 | "scripts": {
15 | "test": "mocha --require should --reporter spec"
16 | },
17 | "main": "index"
18 | }
19 |
--------------------------------------------------------------------------------
/server/node_modules/crypto-random-string/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Generate a [cryptographically strong](https://en.m.wikipedia.org/wiki/Strong_cryptography) random string.
3 |
4 | @param length - Length of the returned string.
5 | @returns A [`hex`](https://en.wikipedia.org/wiki/Hexadecimal) string.
6 |
7 | @example
8 | ```
9 | import cryptoRandomString = require('crypto-random-string');
10 |
11 | cryptoRandomString(10);
12 | //=> '2cf05d94db'
13 | ```
14 | */
15 | declare function cryptoRandomString(length: number): string;
16 |
17 | export = cryptoRandomString;
18 |
--------------------------------------------------------------------------------
/server/node_modules/crypto-random-string/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const crypto = require('crypto');
3 |
4 | module.exports = length => {
5 | if (!Number.isFinite(length)) {
6 | throw new TypeError('Expected a finite number');
7 | }
8 |
9 | return crypto.randomBytes(Math.ceil(length / 2)).toString('hex').slice(0, length);
10 | };
11 |
--------------------------------------------------------------------------------
/server/node_modules/crypto-random-string/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "crypto-random-string",
3 | "version": "2.0.0",
4 | "description": "Generate a cryptographically strong random string",
5 | "license": "MIT",
6 | "repository": "sindresorhus/crypto-random-string",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "random",
24 | "string",
25 | "text",
26 | "id",
27 | "identifier",
28 | "slug",
29 | "salt",
30 | "crypto",
31 | "strong",
32 | "secure",
33 | "hex"
34 | ],
35 | "devDependencies": {
36 | "ava": "^1.4.1",
37 | "tsd": "^0.7.2",
38 | "xo": "^0.24.0"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/server/node_modules/debug/.coveralls.yml:
--------------------------------------------------------------------------------
1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
2 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/server/node_modules/debug/node_modules/ms/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ms",
3 | "version": "2.0.0",
4 | "description": "Tiny milisecond conversion utility",
5 | "repository": "zeit/ms",
6 | "main": "./index",
7 | "files": [
8 | "index.js"
9 | ],
10 | "scripts": {
11 | "precommit": "lint-staged",
12 | "lint": "eslint lib/* bin/*",
13 | "test": "mocha tests.js"
14 | },
15 | "eslintConfig": {
16 | "extends": "eslint:recommended",
17 | "env": {
18 | "node": true,
19 | "es6": true
20 | }
21 | },
22 | "lint-staged": {
23 | "*.js": [
24 | "npm run lint",
25 | "prettier --single-quote --write",
26 | "git add"
27 | ]
28 | },
29 | "license": "MIT",
30 | "devDependencies": {
31 | "eslint": "3.19.0",
32 | "expect.js": "0.3.1",
33 | "husky": "0.13.3",
34 | "lint-staged": "3.4.1",
35 | "mocha": "3.4.1"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/decompress-response/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const PassThrough = require('stream').PassThrough;
3 | const zlib = require('zlib');
4 | const mimicResponse = require('mimic-response');
5 |
6 | module.exports = response => {
7 | // TODO: Use Array#includes when targeting Node.js 6
8 | if (['gzip', 'deflate'].indexOf(response.headers['content-encoding']) === -1) {
9 | return response;
10 | }
11 |
12 | const unzip = zlib.createUnzip();
13 | const stream = new PassThrough();
14 |
15 | mimicResponse(response, stream);
16 |
17 | unzip.on('error', err => {
18 | if (err.code === 'Z_BUF_ERROR') {
19 | stream.end();
20 | return;
21 | }
22 |
23 | stream.emit('error', err);
24 | });
25 |
26 | response.pipe(unzip).pipe(stream);
27 |
28 | return stream;
29 | };
30 |
--------------------------------------------------------------------------------
/server/node_modules/deep-extend/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/deep-extend');
2 |
--------------------------------------------------------------------------------
/server/node_modules/defer-to-connect/dist/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import { Socket } from 'net';
3 | import { TLSSocket } from 'tls';
4 | interface Listeners {
5 | connect?: () => void;
6 | secureConnect?: () => void;
7 | close?: (hadError: boolean) => void;
8 | }
9 | declare const deferToConnect: (socket: Socket | TLSSocket, fn: Listeners | (() => void)) => void;
10 | export default deferToConnect;
11 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/duplexer3/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "duplexer3",
3 | "version": "0.1.4",
4 | "description": "Like duplexer but using streams3",
5 | "engine": {
6 | "node": ">=4"
7 | },
8 | "files": [
9 | "index.js"
10 | ],
11 | "scripts": {
12 | "test": "mocha -R tap"
13 | },
14 | "repository": "floatdrop/duplexer3",
15 | "keywords": [
16 | "duplex",
17 | "duplexer",
18 | "stream",
19 | "stream3",
20 | "join",
21 | "combine"
22 | ],
23 | "author": "Conrad Pankoff (http://www.fknsrs.biz/)",
24 | "license": "BSD-3-Clause",
25 | "devDependencies": {
26 | "mocha": "^2.2.5"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/server/node_modules/emoji-regex/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'emoji-regex' {
2 | function emojiRegex(): RegExp;
3 |
4 | export default emojiRegex;
5 | }
6 |
7 | declare module 'emoji-regex/text' {
8 | function emojiRegex(): RegExp;
9 |
10 | export default emojiRegex;
11 | }
12 |
13 | declare module 'emoji-regex/es2015' {
14 | function emojiRegex(): RegExp;
15 |
16 | export default emojiRegex;
17 | }
18 |
19 | declare module 'emoji-regex/es2015/text' {
20 | function emojiRegex(): RegExp;
21 |
22 | export default emojiRegex;
23 | }
24 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/cjs/commons.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | exports.ERROR_PACKET = exports.PACKET_TYPES_REVERSE = exports.PACKET_TYPES = void 0;
4 | const PACKET_TYPES = Object.create(null); // no Map = no polyfill
5 | exports.PACKET_TYPES = PACKET_TYPES;
6 | PACKET_TYPES["open"] = "0";
7 | PACKET_TYPES["close"] = "1";
8 | PACKET_TYPES["ping"] = "2";
9 | PACKET_TYPES["pong"] = "3";
10 | PACKET_TYPES["message"] = "4";
11 | PACKET_TYPES["upgrade"] = "5";
12 | PACKET_TYPES["noop"] = "6";
13 | const PACKET_TYPES_REVERSE = Object.create(null);
14 | exports.PACKET_TYPES_REVERSE = PACKET_TYPES_REVERSE;
15 | Object.keys(PACKET_TYPES).forEach(key => {
16 | PACKET_TYPES_REVERSE[PACKET_TYPES[key]] = key;
17 | });
18 | const ERROR_PACKET = { type: "error", data: "parser error" };
19 | exports.ERROR_PACKET = ERROR_PACKET;
20 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/cjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "engine.io-parser",
3 | "type": "commonjs",
4 | "browser": {
5 | "./encodePacket.js": "./encodePacket.browser.js",
6 | "./decodePacket.js": "./decodePacket.browser.js"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/commons.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare const PACKET_TYPES: any;
3 | declare const PACKET_TYPES_REVERSE: any;
4 | declare const ERROR_PACKET: Packet;
5 | export { PACKET_TYPES, PACKET_TYPES_REVERSE, ERROR_PACKET };
6 | export declare type PacketType = "open" | "close" | "ping" | "pong" | "message" | "upgrade" | "noop" | "error";
7 | export declare type RawData = string | Buffer | ArrayBuffer | ArrayBufferView | Blob;
8 | export interface Packet {
9 | type: PacketType;
10 | options?: {
11 | compress: boolean;
12 | };
13 | data?: RawData;
14 | }
15 | export declare type BinaryType = "nodebuffer" | "arraybuffer" | "blob";
16 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/commons.js:
--------------------------------------------------------------------------------
1 | const PACKET_TYPES = Object.create(null); // no Map = no polyfill
2 | PACKET_TYPES["open"] = "0";
3 | PACKET_TYPES["close"] = "1";
4 | PACKET_TYPES["ping"] = "2";
5 | PACKET_TYPES["pong"] = "3";
6 | PACKET_TYPES["message"] = "4";
7 | PACKET_TYPES["upgrade"] = "5";
8 | PACKET_TYPES["noop"] = "6";
9 | const PACKET_TYPES_REVERSE = Object.create(null);
10 | Object.keys(PACKET_TYPES).forEach(key => {
11 | PACKET_TYPES_REVERSE[PACKET_TYPES[key]] = key;
12 | });
13 | const ERROR_PACKET = { type: "error", data: "parser error" };
14 | export { PACKET_TYPES, PACKET_TYPES_REVERSE, ERROR_PACKET };
15 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/decodePacket.browser.d.ts:
--------------------------------------------------------------------------------
1 | import { Packet, BinaryType, RawData } from "./commons.js";
2 | declare const decodePacket: (encodedPacket: RawData, binaryType?: BinaryType) => Packet;
3 | export default decodePacket;
4 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/decodePacket.d.ts:
--------------------------------------------------------------------------------
1 | import { Packet, BinaryType, RawData } from "./commons.js";
2 | declare const decodePacket: (encodedPacket: RawData, binaryType?: BinaryType) => Packet;
3 | export default decodePacket;
4 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/encodePacket.browser.d.ts:
--------------------------------------------------------------------------------
1 | import { Packet, RawData } from "./commons.js";
2 | declare const encodePacket: ({ type, data }: Packet, supportsBinary: boolean, callback: (encodedPacket: RawData) => void) => void;
3 | export default encodePacket;
4 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/encodePacket.d.ts:
--------------------------------------------------------------------------------
1 | import { Packet, RawData } from "./commons.js";
2 | declare const encodePacket: ({ type, data }: Packet, supportsBinary: boolean, callback: (encodedPacket: RawData) => void) => void;
3 | export default encodePacket;
4 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/index.d.ts:
--------------------------------------------------------------------------------
1 | import encodePacket from "./encodePacket.js";
2 | import decodePacket from "./decodePacket.js";
3 | import { Packet, PacketType, RawData, BinaryType } from "./commons";
4 | declare const encodePayload: (packets: Packet[], callback: (encodedPayload: string) => void) => void;
5 | declare const decodePayload: (encodedPayload: string, binaryType?: BinaryType) => Packet[];
6 | export declare const protocol = 4;
7 | export { encodePacket, encodePayload, decodePacket, decodePayload, Packet, PacketType, RawData, BinaryType };
8 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io-parser/build/esm/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "engine.io-parser",
3 | "type": "module",
4 | "browser": {
5 | "./encodePacket.js": "./encodePacket.browser.js",
6 | "./decodePacket.js": "./decodePacket.browser.js"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/build/parser-v3/utf8.d.ts:
--------------------------------------------------------------------------------
1 | /*! https://mths.be/utf8js v2.1.2 by @mathias */
2 | declare var stringFromCharCode: (...codes: number[]) => string;
3 | declare function ucs2decode(string: any): any[];
4 | declare function ucs2encode(array: any): string;
5 | declare function checkScalarValue(codePoint: any, strict: any): boolean;
6 | declare function createByte(codePoint: any, shift: any): string;
7 | declare function encodeCodePoint(codePoint: any, strict: any): string;
8 | declare function utf8encode(string: any, opts: any): string;
9 | declare function readContinuationByte(): number;
10 | declare function decodeSymbol(strict: any): any;
11 | declare var byteArray: any;
12 | declare var byteCount: any;
13 | declare var byteIndex: any;
14 | declare function utf8decode(byteString: any, opts: any): string;
15 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/build/transports-uws/index.d.ts:
--------------------------------------------------------------------------------
1 | import { Polling } from "./polling";
2 | import { WebSocket } from "./websocket";
3 | declare const _default: {
4 | polling: typeof Polling;
5 | websocket: typeof WebSocket;
6 | };
7 | export default _default;
8 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/build/transports-uws/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | const polling_1 = require("./polling");
4 | const websocket_1 = require("./websocket");
5 | exports.default = {
6 | polling: polling_1.Polling,
7 | websocket: websocket_1.WebSocket
8 | };
9 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/build/transports/index.d.ts:
--------------------------------------------------------------------------------
1 | import { Polling as XHR } from "./polling";
2 | import { WebSocket } from "./websocket";
3 | declare const _default: {
4 | polling: typeof polling;
5 | websocket: typeof WebSocket;
6 | };
7 | export default _default;
8 | /**
9 | * Polling polymorphic constructor.
10 | *
11 | * @api private
12 | */
13 | declare function polling(req: any): XHR;
14 | declare namespace polling {
15 | var upgradesTo: string[];
16 | }
17 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/build/transports/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | const polling_1 = require("./polling");
4 | const polling_jsonp_1 = require("./polling-jsonp");
5 | const websocket_1 = require("./websocket");
6 | exports.default = {
7 | polling: polling,
8 | websocket: websocket_1.WebSocket
9 | };
10 | /**
11 | * Polling polymorphic constructor.
12 | *
13 | * @api private
14 | */
15 | function polling(req) {
16 | if ("string" === typeof req._query.j) {
17 | return new polling_jsonp_1.JSONP(req);
18 | }
19 | else {
20 | return new polling_1.Polling(req);
21 | }
22 | }
23 | polling.upgradesTo = ["websocket"];
24 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/build/transports/polling-jsonp.d.ts:
--------------------------------------------------------------------------------
1 | import { Polling } from "./polling";
2 | export declare class JSONP extends Polling {
3 | private readonly head;
4 | private readonly foot;
5 | /**
6 | * JSON-P polling transport.
7 | *
8 | * @api public
9 | */
10 | constructor(req: any);
11 | /**
12 | * Handles incoming data.
13 | * Due to a bug in \n handling by browsers, we expect a escaped string.
14 | *
15 | * @api private
16 | */
17 | onData(data: any): void;
18 | /**
19 | * Performs the write.
20 | *
21 | * @api private
22 | */
23 | doWrite(data: any, options: any, callback: any): void;
24 | }
25 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/node_modules/debug/src/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Detect Electron renderer / nwjs process, which is node, but we should
3 | * treat as a browser.
4 | */
5 |
6 | if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
7 | module.exports = require('./browser.js');
8 | } else {
9 | module.exports = require('./node.js');
10 | }
11 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/node_modules/ms/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ms",
3 | "version": "2.1.2",
4 | "description": "Tiny millisecond conversion utility",
5 | "repository": "zeit/ms",
6 | "main": "./index",
7 | "files": [
8 | "index.js"
9 | ],
10 | "scripts": {
11 | "precommit": "lint-staged",
12 | "lint": "eslint lib/* bin/*",
13 | "test": "mocha tests.js"
14 | },
15 | "eslintConfig": {
16 | "extends": "eslint:recommended",
17 | "env": {
18 | "node": true,
19 | "es6": true
20 | }
21 | },
22 | "lint-staged": {
23 | "*.js": [
24 | "npm run lint",
25 | "prettier --single-quote --write",
26 | "git add"
27 | ]
28 | },
29 | "license": "MIT",
30 | "devDependencies": {
31 | "eslint": "4.12.1",
32 | "expect.js": "0.3.1",
33 | "husky": "0.14.3",
34 | "lint-staged": "5.0.0",
35 | "mocha": "4.0.1"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/server/node_modules/engine.io/wrapper.mjs:
--------------------------------------------------------------------------------
1 | import lib from "./build/engine.io.js";
2 |
3 | export const { Server, Socket, Transport, transports, listen, attach, parser, protocol } = lib;
4 |
--------------------------------------------------------------------------------
/server/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
--------------------------------------------------------------------------------
/server/node_modules/escape-html/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "escape-html",
3 | "description": "Escape string for use in HTML",
4 | "version": "1.0.3",
5 | "license": "MIT",
6 | "keywords": [
7 | "escape",
8 | "html",
9 | "utility"
10 | ],
11 | "repository": "component/escape-html",
12 | "devDependencies": {
13 | "benchmark": "1.0.0",
14 | "beautify-benchmark": "0.2.4"
15 | },
16 | "files": [
17 | "LICENSE",
18 | "Readme.md",
19 | "index.js"
20 | ],
21 | "scripts": {
22 | "bench": "node benchmark/index.js"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/forwarded/HISTORY.md:
--------------------------------------------------------------------------------
1 | 0.2.0 / 2021-05-31
2 | ==================
3 |
4 | * Use `req.socket` over deprecated `req.connection`
5 |
6 | 0.1.2 / 2017-09-14
7 | ==================
8 |
9 | * perf: improve header parsing
10 | * perf: reduce overhead when no `X-Forwarded-For` header
11 |
12 | 0.1.1 / 2017-09-10
13 | ==================
14 |
15 | * Fix trimming leading / trailing OWS
16 | * perf: hoist regular expression
17 |
18 | 0.1.0 / 2014-09-21
19 | ==================
20 |
21 | * Initial release
22 |
--------------------------------------------------------------------------------
/server/node_modules/fsevents/fsevents.node:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/server/node_modules/fsevents/fsevents.node
--------------------------------------------------------------------------------
/server/node_modules/glob-parent/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) 2015, 2019 Elan Shanker
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/got/source/known-hook-events.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = [
4 | 'beforeError',
5 | 'init',
6 | 'beforeRequest',
7 | 'beforeRedirect',
8 | 'beforeRetry',
9 | 'afterResponse'
10 | ];
11 |
--------------------------------------------------------------------------------
/server/node_modules/got/source/utils/deep-freeze.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const is = require('@sindresorhus/is');
3 |
4 | module.exports = function deepFreeze(object) {
5 | for (const [key, value] of Object.entries(object)) {
6 | if (is.plainObject(value) || is.array(value)) {
7 | deepFreeze(object[key]);
8 | }
9 | }
10 |
11 | return Object.freeze(object);
12 | };
13 |
--------------------------------------------------------------------------------
/server/node_modules/got/source/utils/get-body-size.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const fs = require('fs');
3 | const util = require('util');
4 | const is = require('@sindresorhus/is');
5 | const isFormData = require('./is-form-data');
6 |
7 | module.exports = async options => {
8 | const {body} = options;
9 |
10 | if (options.headers['content-length']) {
11 | return Number(options.headers['content-length']);
12 | }
13 |
14 | if (!body && !options.stream) {
15 | return 0;
16 | }
17 |
18 | if (is.string(body)) {
19 | return Buffer.byteLength(body);
20 | }
21 |
22 | if (isFormData(body)) {
23 | return util.promisify(body.getLength.bind(body))();
24 | }
25 |
26 | if (body instanceof fs.ReadStream) {
27 | const {size} = await util.promisify(fs.stat)(body.path);
28 | return size;
29 | }
30 |
31 | return null;
32 | };
33 |
--------------------------------------------------------------------------------
/server/node_modules/got/source/utils/is-form-data.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const is = require('@sindresorhus/is');
3 |
4 | module.exports = body => is.nodeStream(body) && is.function(body.getBoundary);
5 |
--------------------------------------------------------------------------------
/server/node_modules/got/source/utils/url-to-options.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const is = require('@sindresorhus/is');
3 |
4 | module.exports = url => {
5 | const options = {
6 | protocol: url.protocol,
7 | hostname: url.hostname.startsWith('[') ? url.hostname.slice(1, -1) : url.hostname,
8 | hash: url.hash,
9 | search: url.search,
10 | pathname: url.pathname,
11 | href: url.href
12 | };
13 |
14 | if (is.string(url.port) && url.port.length > 0) {
15 | options.port = Number(url.port);
16 | }
17 |
18 | if (url.username || url.password) {
19 | options.auth = `${url.username}:${url.password}`;
20 | }
21 |
22 | options.path = is.null(url.search) ? url.pathname : `${url.pathname}${url.search}`;
23 |
24 | return options;
25 | };
26 |
--------------------------------------------------------------------------------
/server/node_modules/graceful-fs/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter, Ben Noordhuis, and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/graceful-fs/clone.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | module.exports = clone
4 |
5 | var getPrototypeOf = Object.getPrototypeOf || function (obj) {
6 | return obj.__proto__
7 | }
8 |
9 | function clone (obj) {
10 | if (obj === null || typeof obj !== 'object')
11 | return obj
12 |
13 | if (obj instanceof Object)
14 | var copy = { __proto__: getPrototypeOf(obj) }
15 | else
16 | var copy = Object.create(null)
17 |
18 | Object.getOwnPropertyNames(obj).forEach(function (key) {
19 | Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key))
20 | })
21 |
22 | return copy
23 | }
24 |
--------------------------------------------------------------------------------
/server/node_modules/has-flag/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = (flag, argv) => {
3 | argv = argv || process.argv;
4 | const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
5 | const pos = argv.indexOf(prefix + flag);
6 | const terminatorPos = argv.indexOf('--');
7 | return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
8 | };
9 |
--------------------------------------------------------------------------------
/server/node_modules/has-flag/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "has-flag",
3 | "version": "3.0.0",
4 | "description": "Check if argv has a specific flag",
5 | "license": "MIT",
6 | "repository": "sindresorhus/has-flag",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=4"
14 | },
15 | "scripts": {
16 | "test": "xo && ava"
17 | },
18 | "files": [
19 | "index.js"
20 | ],
21 | "keywords": [
22 | "has",
23 | "check",
24 | "detect",
25 | "contains",
26 | "find",
27 | "flag",
28 | "cli",
29 | "command-line",
30 | "argv",
31 | "process",
32 | "arg",
33 | "args",
34 | "argument",
35 | "arguments",
36 | "getopt",
37 | "minimist",
38 | "optimist"
39 | ],
40 | "devDependencies": {
41 | "ava": "*",
42 | "xo": "*"
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/server/node_modules/has-yarn/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const hasYarn: {
2 | /**
3 | * Check if a project is using [Yarn](https://yarnpkg.com).
4 | *
5 | * @param cwd - Current working directory. Default: `process.cwd()`.
6 | * @returns Whether the project uses Yarn.
7 | */
8 | (cwd?: string): boolean;
9 |
10 | // TODO: Remove this for the next major release, refactor the whole definition to:
11 | // declare function hasYarn(cwd?: string): boolean;
12 | // export = hasYarn;
13 | default: typeof hasYarn;
14 | };
15 |
16 | export = hasYarn;
17 |
--------------------------------------------------------------------------------
/server/node_modules/has-yarn/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const path = require('path');
3 | const fs = require('fs');
4 |
5 | const hasYarn = (cwd = process.cwd()) => fs.existsSync(path.resolve(cwd, 'yarn.lock'));
6 |
7 | module.exports = hasYarn;
8 | // TODO: Remove this for the next major release
9 | module.exports.default = hasYarn;
10 |
--------------------------------------------------------------------------------
/server/node_modules/has-yarn/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "has-yarn",
3 | "version": "2.1.0",
4 | "description": "Check if a project is using Yarn",
5 | "license": "MIT",
6 | "repository": "sindresorhus/has-yarn",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "yarn",
24 | "has",
25 | "detect",
26 | "is",
27 | "project",
28 | "app",
29 | "module",
30 | "package",
31 | "manager",
32 | "npm"
33 | ],
34 | "devDependencies": {
35 | "ava": "^1.4.1",
36 | "tsd": "^0.7.1",
37 | "xo": "^0.24.0"
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/server/node_modules/http-cache-semantics/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "http-cache-semantics",
3 | "version": "4.1.0",
4 | "description": "Parses Cache-Control and other headers. Helps building correct HTTP caches and proxies",
5 | "repository": "https://github.com/kornelski/http-cache-semantics.git",
6 | "main": "index.js",
7 | "scripts": {
8 | "test": "mocha"
9 | },
10 | "files": [
11 | "index.js"
12 | ],
13 | "author": "Kornel Lesiński (https://kornel.ski/)",
14 | "license": "BSD-2-Clause",
15 | "devDependencies": {
16 | "eslint": "^5.13.0",
17 | "eslint-plugin-prettier": "^3.0.1",
18 | "husky": "^0.14.3",
19 | "lint-staged": "^8.1.3",
20 | "mocha": "^5.1.0",
21 | "prettier": "^1.14.3",
22 | "prettier-eslint-cli": "^4.7.1"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/ignore-by-default/LICENSE:
--------------------------------------------------------------------------------
1 | ISC License (ISC)
2 | Copyright (c) 2016, Mark Wubben
3 |
4 | Permission to use, copy, modify, and/or distribute this software for any purpose
5 | with or without fee is hereby granted, provided that the above copyright notice
6 | and this permission notice appear in all copies.
7 |
8 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
10 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
12 | OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
13 | TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
14 | THIS SOFTWARE.
15 |
--------------------------------------------------------------------------------
/server/node_modules/ignore-by-default/README.md:
--------------------------------------------------------------------------------
1 | # ignore-by-default
2 |
3 | This is a package aimed at Node.js development tools. It provides a list of
4 | directories that should probably be ignored by such tools, e.g. when watching
5 | for file changes.
6 |
7 | It's used by [AVA](https://www.npmjs.com/package/ava) and
8 | [nodemon](https://www.npmjs.com/package/nodemon).
9 |
10 | [Please contribute!](./CONTRIBUTING.md)
11 |
12 | ## Installation
13 |
14 | ```
15 | npm install --save ignore-by-default
16 | ```
17 |
18 | ## Usage
19 |
20 | The `ignore-by-default` module exports a `directories()` function, which will
21 | return an array of directory names. These are the ones you should ignore.
22 |
23 | ```js
24 | // ['.git', '.sass_cache', …]
25 | var ignoredDirectories = require('ignore-by-default').directories()
26 | ```
27 |
--------------------------------------------------------------------------------
/server/node_modules/ignore-by-default/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | exports.directories = function () {
4 | return [
5 | '.git', // Git repository files, see
6 | '.nyc_output', // Temporary directory where nyc stores coverage data, see
7 | '.sass-cache', // Cache folder for node-sass, see
8 | 'bower_components', // Where Bower packages are installed, see
9 | 'coverage', // Standard output directory for code coverage reports, see
10 | 'node_modules' // Where Node modules are installed, see
11 | ]
12 | }
13 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/server/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 | if (superCtor) {
5 | ctor.super_ = superCtor
6 | ctor.prototype = Object.create(superCtor.prototype, {
7 | constructor: {
8 | value: ctor,
9 | enumerable: false,
10 | writable: true,
11 | configurable: true
12 | }
13 | })
14 | }
15 | };
16 | } else {
17 | // old school shim for old browsers
18 | module.exports = function inherits(ctor, superCtor) {
19 | if (superCtor) {
20 | ctor.super_ = superCtor
21 | var TempCtor = function () {}
22 | TempCtor.prototype = superCtor.prototype
23 | ctor.prototype = new TempCtor()
24 | ctor.prototype.constructor = ctor
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/server/node_modules/inherits/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "inherits",
3 | "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()",
4 | "version": "2.0.4",
5 | "keywords": [
6 | "inheritance",
7 | "class",
8 | "klass",
9 | "oop",
10 | "object-oriented",
11 | "inherits",
12 | "browser",
13 | "browserify"
14 | ],
15 | "main": "./inherits.js",
16 | "browser": "./inherits_browser.js",
17 | "repository": "git://github.com/isaacs/inherits",
18 | "license": "ISC",
19 | "scripts": {
20 | "test": "tap"
21 | },
22 | "devDependencies": {
23 | "tap": "^14.2.4"
24 | },
25 | "files": [
26 | "inherits.js",
27 | "inherits_browser.js"
28 | ]
29 | }
30 |
--------------------------------------------------------------------------------
/server/node_modules/ini/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/ipaddr.js/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ipaddr.js",
3 | "description": "A library for manipulating IPv4 and IPv6 addresses in JavaScript.",
4 | "version": "1.9.1",
5 | "author": "whitequark ",
6 | "directories": {
7 | "lib": "./lib"
8 | },
9 | "dependencies": {},
10 | "devDependencies": {
11 | "coffee-script": "~1.12.6",
12 | "nodeunit": "^0.11.3",
13 | "uglify-js": "~3.0.19"
14 | },
15 | "scripts": {
16 | "test": "cake build test"
17 | },
18 | "files": [
19 | "lib/",
20 | "LICENSE",
21 | "ipaddr.min.js"
22 | ],
23 | "keywords": [
24 | "ip",
25 | "ipv4",
26 | "ipv6"
27 | ],
28 | "repository": "git://github.com/whitequark/ipaddr.js",
29 | "main": "./lib/ipaddr.js",
30 | "engines": {
31 | "node": ">= 0.10"
32 | },
33 | "license": "MIT",
34 | "types": "./lib/ipaddr.js.d.ts"
35 | }
36 |
--------------------------------------------------------------------------------
/server/node_modules/is-binary-path/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if a file path is a binary file.
3 |
4 | @example
5 | ```
6 | import isBinaryPath = require('is-binary-path');
7 |
8 | isBinaryPath('source/unicorn.png');
9 | //=> true
10 |
11 | isBinaryPath('source/unicorn.txt');
12 | //=> false
13 | ```
14 | */
15 | declare function isBinaryPath(filePath: string): boolean;
16 |
17 | export = isBinaryPath;
18 |
--------------------------------------------------------------------------------
/server/node_modules/is-binary-path/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const path = require('path');
3 | const binaryExtensions = require('binary-extensions');
4 |
5 | const extensions = new Set(binaryExtensions);
6 |
7 | module.exports = filePath => extensions.has(path.extname(filePath).slice(1).toLowerCase());
8 |
--------------------------------------------------------------------------------
/server/node_modules/is-binary-path/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "is-binary-path",
3 | "version": "2.1.0",
4 | "description": "Check if a file path is a binary file",
5 | "license": "MIT",
6 | "repository": "sindresorhus/is-binary-path",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "binary",
24 | "extensions",
25 | "extension",
26 | "file",
27 | "path",
28 | "check",
29 | "detect",
30 | "is"
31 | ],
32 | "dependencies": {
33 | "binary-extensions": "^2.0.0"
34 | },
35 | "devDependencies": {
36 | "ava": "^1.4.1",
37 | "tsd": "^0.7.2",
38 | "xo": "^0.24.0"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/server/node_modules/is-binary-path/readme.md:
--------------------------------------------------------------------------------
1 | # is-binary-path [](https://travis-ci.org/sindresorhus/is-binary-path)
2 |
3 | > Check if a file path is a binary file
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install is-binary-path
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const isBinaryPath = require('is-binary-path');
17 |
18 | isBinaryPath('source/unicorn.png');
19 | //=> true
20 |
21 | isBinaryPath('source/unicorn.txt');
22 | //=> false
23 | ```
24 |
25 |
26 | ## Related
27 |
28 | - [binary-extensions](https://github.com/sindresorhus/binary-extensions) - List of binary file extensions
29 | - [is-text-path](https://github.com/sindresorhus/is-text-path) - Check if a filepath is a text file
30 |
31 |
32 | ## License
33 |
34 | MIT © [Sindre Sorhus](https://sindresorhus.com), [Paul Miller](https://paulmillr.com)
35 |
--------------------------------------------------------------------------------
/server/node_modules/is-ci/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | ## v2.0.0
4 |
5 | Breaking changes:
6 |
7 | * Drop support for Node.js end-of-life versions: 0.10, 0.12, 4, 5, 7,
8 | and 9
9 |
10 | Other changes:
11 |
12 | See [ci-info
13 | changelog](https://github.com/watson/ci-info/blob/master/CHANGELOG.md#v200)
14 | for a list of newly supported CI servers.
15 |
--------------------------------------------------------------------------------
/server/node_modules/is-ci/bin.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 | 'use strict'
3 |
4 | process.exit(require('./') ? 0 : 1)
5 |
--------------------------------------------------------------------------------
/server/node_modules/is-ci/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | module.exports = require('ci-info').isCI
4 |
--------------------------------------------------------------------------------
/server/node_modules/is-extglob/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * is-extglob
3 | *
4 | * Copyright (c) 2014-2016, Jon Schlinkert.
5 | * Licensed under the MIT License.
6 | */
7 |
8 | module.exports = function isExtglob(str) {
9 | if (typeof str !== 'string' || str === '') {
10 | return false;
11 | }
12 |
13 | var match;
14 | while ((match = /(\\).|([@?!+*]\(.*\))/g.exec(str))) {
15 | if (match[2]) return true;
16 | str = str.slice(match.index + match[0].length);
17 | }
18 |
19 | return false;
20 | };
21 |
--------------------------------------------------------------------------------
/server/node_modules/is-fullwidth-code-point/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms).
3 |
4 | @param codePoint - The [code point](https://en.wikipedia.org/wiki/Code_point) of a character.
5 |
6 | @example
7 | ```
8 | import isFullwidthCodePoint from 'is-fullwidth-code-point';
9 |
10 | isFullwidthCodePoint('谢'.codePointAt(0));
11 | //=> true
12 |
13 | isFullwidthCodePoint('a'.codePointAt(0));
14 | //=> false
15 | ```
16 | */
17 | export default function isFullwidthCodePoint(codePoint: number): boolean;
18 |
--------------------------------------------------------------------------------
/server/node_modules/is-installed-globally/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if your package was installed globally.
3 |
4 | @example
5 | ```
6 | import isInstalledGlobally = require('is-installed-globally');
7 |
8 | // With `npm install your-package`
9 | console.log(isInstalledGlobally);
10 | //=> false
11 |
12 | // With `npm install --global your-package`
13 | console.log(isInstalledGlobally);
14 | //=> true
15 | ```
16 | */
17 | declare const isInstalledGlobally: boolean;
18 |
19 | export = isInstalledGlobally;
20 |
--------------------------------------------------------------------------------
/server/node_modules/is-installed-globally/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const fs = require('fs');
3 | const globalDirs = require('global-dirs');
4 | const isPathInside = require('is-path-inside');
5 |
6 | module.exports = (() => {
7 | try {
8 | return (
9 | isPathInside(__dirname, globalDirs.yarn.packages) ||
10 | isPathInside(__dirname, fs.realpathSync(globalDirs.npm.packages))
11 | );
12 | } catch {
13 | return false;
14 | }
15 | })();
16 |
--------------------------------------------------------------------------------
/server/node_modules/is-npm/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const packageJson = process.env.npm_package_json;
4 | const userAgent = process.env.npm_config_user_agent;
5 | const isYarn = Boolean(userAgent && userAgent.startsWith('yarn'));
6 | const isNpm = Boolean(userAgent && userAgent.startsWith('npm'));
7 | const isNpm7 = Boolean(packageJson && packageJson.endsWith('package.json'));
8 |
9 | module.exports.isNpmOrYarn = isNpm || isNpm7 || isYarn;
10 | module.exports.isNpm = isNpm || isNpm7;
11 | module.exports.isYarn = isYarn;
12 |
--------------------------------------------------------------------------------
/server/node_modules/is-npm/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "is-npm",
3 | "version": "5.0.0",
4 | "description": "Check if your code is running as an npm script",
5 | "license": "MIT",
6 | "repository": "sindresorhus/is-npm",
7 | "funding": "https://github.com/sponsors/sindresorhus",
8 | "author": {
9 | "name": "Sindre Sorhus",
10 | "email": "sindresorhus@gmail.com",
11 | "url": "https://sindresorhus.com"
12 | },
13 | "engines": {
14 | "node": ">=10"
15 | },
16 | "scripts": {
17 | "test": "xo && ava && tsd"
18 | },
19 | "files": [
20 | "index.js",
21 | "index.d.ts"
22 | ],
23 | "keywords": [
24 | "npm",
25 | "yarn",
26 | "is",
27 | "check",
28 | "detect",
29 | "env",
30 | "environment",
31 | "run",
32 | "script"
33 | ],
34 | "devDependencies": {
35 | "ava": "^2.4.0",
36 | "tsd": "^0.11.0",
37 | "xo": "^0.30.0"
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/server/node_modules/is-number/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * is-number
3 | *
4 | * Copyright (c) 2014-present, Jon Schlinkert.
5 | * Released under the MIT License.
6 | */
7 |
8 | 'use strict';
9 |
10 | module.exports = function(num) {
11 | if (typeof num === 'number') {
12 | return num - num === 0;
13 | }
14 | if (typeof num === 'string' && num.trim() !== '') {
15 | return Number.isFinite ? Number.isFinite(+num) : isFinite(+num);
16 | }
17 | return false;
18 | };
19 |
--------------------------------------------------------------------------------
/server/node_modules/is-obj/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if a value is an object.
3 |
4 | Keep in mind that array, function, regexp, etc, are objects in JavaScript.
5 |
6 | @example
7 | ```
8 | import isObject = require('is-obj');
9 |
10 | isObject({foo: 'bar'});
11 | //=> true
12 |
13 | isObject([1, 2, 3]);
14 | //=> true
15 |
16 | isObject('foo');
17 | //=> false
18 | ```
19 | */
20 | declare function isObject(value: unknown): value is object;
21 |
22 | export = isObject;
23 |
--------------------------------------------------------------------------------
/server/node_modules/is-obj/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = value => {
4 | const type = typeof value;
5 | return value !== null && (type === 'object' || type === 'function');
6 | };
7 |
--------------------------------------------------------------------------------
/server/node_modules/is-obj/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "is-obj",
3 | "version": "2.0.0",
4 | "description": "Check if a value is an object",
5 | "license": "MIT",
6 | "repository": "sindresorhus/is-obj",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "object",
24 | "is",
25 | "check",
26 | "test",
27 | "type"
28 | ],
29 | "devDependencies": {
30 | "ava": "^1.4.1",
31 | "tsd": "^0.7.2",
32 | "xo": "^0.24.0"
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/server/node_modules/is-obj/readme.md:
--------------------------------------------------------------------------------
1 | # is-obj [](https://travis-ci.org/sindresorhus/is-obj)
2 |
3 | > Check if a value is an object
4 |
5 | Keep in mind that array, function, regexp, etc, are objects in JavaScript.
6 | See [`is-plain-obj`](https://github.com/sindresorhus/is-plain-obj) if you want to check for plain objects.
7 |
8 |
9 | ## Install
10 |
11 | ```
12 | $ npm install is-obj
13 | ```
14 |
15 |
16 | ## Usage
17 |
18 | ```js
19 | const isObject = require('is-obj');
20 |
21 | isObject({foo: 'bar'});
22 | //=> true
23 |
24 | isObject([1, 2, 3]);
25 | //=> true
26 |
27 | isObject('foo');
28 | //=> false
29 | ```
30 |
31 |
32 | ## Related
33 |
34 | - [is](https://github.com/sindresorhus/is) - Type check values
35 |
36 |
37 | ## License
38 |
39 | MIT © [Sindre Sorhus](https://sindresorhus.com)
40 |
--------------------------------------------------------------------------------
/server/node_modules/is-path-inside/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if a path is inside another path.
3 |
4 | Note that relative paths are resolved against `process.cwd()` to make them absolute.
5 |
6 | _Important:_ This package is meant for use with path manipulation. It does not check if the paths exist nor does it resolve symlinks. You should not use this as a security mechanism to guard against access to certain places on the file system.
7 |
8 | @example
9 | ```
10 | import isPathInside = require('is-path-inside');
11 |
12 | isPathInside('a/b/c', 'a/b');
13 | //=> true
14 |
15 | isPathInside('a/b/c', 'x/y');
16 | //=> false
17 |
18 | isPathInside('a/b/c', 'a/b/c');
19 | //=> false
20 |
21 | isPathInside('/Users/sindresorhus/dev/unicorn', '/Users/sindresorhus');
22 | //=> true
23 | ```
24 | */
25 | declare function isPathInside(childPath: string, parentPath: string): boolean;
26 |
27 | export = isPathInside;
28 |
--------------------------------------------------------------------------------
/server/node_modules/is-path-inside/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const path = require('path');
3 |
4 | module.exports = (childPath, parentPath) => {
5 | const relation = path.relative(parentPath, childPath);
6 | return Boolean(
7 | relation &&
8 | relation !== '..' &&
9 | !relation.startsWith(`..${path.sep}`) &&
10 | relation !== path.resolve(childPath)
11 | );
12 | };
13 |
--------------------------------------------------------------------------------
/server/node_modules/is-path-inside/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "is-path-inside",
3 | "version": "3.0.3",
4 | "description": "Check if a path is inside another path",
5 | "license": "MIT",
6 | "repository": "sindresorhus/is-path-inside",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "path",
24 | "inside",
25 | "folder",
26 | "directory",
27 | "dir",
28 | "file",
29 | "resolve"
30 | ],
31 | "devDependencies": {
32 | "ava": "^2.1.0",
33 | "tsd": "^0.7.2",
34 | "xo": "^0.24.0"
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/server/node_modules/is-typedarray/README.md:
--------------------------------------------------------------------------------
1 | # is-typedarray [](http://github.com/badges/stability-badges)
2 |
3 | Detect whether or not an object is a
4 | [Typed Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays).
5 |
6 | ## Usage
7 |
8 | [](https://nodei.co/npm/is-typedarray/)
9 |
10 | ### isTypedArray(array)
11 |
12 | Returns `true` when array is a Typed Array, and `false` when it is not.
13 |
14 | ## License
15 |
16 | MIT. See [LICENSE.md](http://github.com/hughsk/is-typedarray/blob/master/LICENSE.md) for details.
17 |
--------------------------------------------------------------------------------
/server/node_modules/is-typedarray/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "is-typedarray",
3 | "version": "1.0.0",
4 | "description": "Detect whether or not an object is a Typed Array",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "node test"
8 | },
9 | "author": "Hugh Kennedy (http://hughsk.io/)",
10 | "license": "MIT",
11 | "dependencies": {},
12 | "devDependencies": {
13 | "tape": "^2.13.1"
14 | },
15 | "repository": {
16 | "type": "git",
17 | "url": "git://github.com/hughsk/is-typedarray.git"
18 | },
19 | "keywords": [
20 | "typed",
21 | "array",
22 | "detect",
23 | "is",
24 | "util"
25 | ],
26 | "bugs": {
27 | "url": "https://github.com/hughsk/is-typedarray/issues"
28 | },
29 | "homepage": "https://github.com/hughsk/is-typedarray"
30 | }
31 |
--------------------------------------------------------------------------------
/server/node_modules/is-yarn-global/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "8"
4 | - "6"
5 |
--------------------------------------------------------------------------------
/server/node_modules/is-yarn-global/README.md:
--------------------------------------------------------------------------------
1 | # is-yarn-global
2 |
3 | [](https://travis-ci.org/LitoMore/is-yarn-global)
4 | [](https://www.npmjs.com/package/is-yarn-global)
5 | [](https://github.com/LitoMore/is-yarn-global/blob/master/LICENSE)
6 | [](https://github.com/sindresorhus/xo)
7 |
8 | Check if installed by yarn globally without any `fs` calls
9 |
10 | ## Install
11 |
12 | ```bash
13 | $ npm install is-yarn-global
14 | ```
15 |
16 | ## Usage
17 |
18 | Just require it in your package.
19 |
20 | ```javascript
21 | const isYarnGlobal = require('is-yarn-global');
22 |
23 | console.log(isYarnGlobal());
24 | ```
25 |
26 | ## License
27 |
28 | MIT © [LitoMore](https://github.com/LitoMore)
29 |
--------------------------------------------------------------------------------
/server/node_modules/is-yarn-global/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const path = require('path');
4 |
5 | module.exports = function () {
6 | const isWindows = process.platform === 'win32';
7 | const yarnPath = isWindows ? path.join('Yarn', 'config', 'global') : path.join('.config', 'yarn', 'global');
8 | if (__dirname.includes(yarnPath)) {
9 | return true;
10 | }
11 | return false;
12 | };
13 |
--------------------------------------------------------------------------------
/server/node_modules/is-yarn-global/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "is-yarn-global",
3 | "version": "0.3.0",
4 | "description": "Check if installed by yarn globally without any `fs` calls",
5 | "repository": "git@github.com:LitoMore/is-yarn-global.git",
6 | "author": "LitoMore (litomore@gmail.com)",
7 | "license": "MIT",
8 | "scripts": {
9 | "test": "xo"
10 | },
11 | "devDependencies": {
12 | "ava": "^0.24.0",
13 | "xo": "^0.18.2"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/server/node_modules/json-buffer/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | node_modules/*
3 | npm_debug.log
4 |
--------------------------------------------------------------------------------
/server/node_modules/json-buffer/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - '0.10'
4 |
--------------------------------------------------------------------------------
/server/node_modules/json-buffer/README.md:
--------------------------------------------------------------------------------
1 | # json-buffer
2 |
3 | JSON functions that can convert buffers!
4 |
5 | [](http://travis-ci.org/dominictarr/json-buffer)
6 |
7 | [](https://ci.testling.com/dominictarr/json-buffer)
8 |
9 | JSON mangles buffers by converting to an array...
10 | which isn't helpful. json-buffers converts to base64 instead,
11 | and deconverts base64 to a buffer.
12 |
13 | ``` js
14 | var JSONB = require('json-buffer')
15 | var Buffer = require('buffer').Buffer
16 |
17 | var str = JSONB.stringify(new Buffer('hello there!'))
18 |
19 | console.log(JSONB.parse(str)) //GET a BUFFER back
20 | ```
21 |
22 | ## License
23 |
24 | MIT
25 |
--------------------------------------------------------------------------------
/server/node_modules/latest-version/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const packageJson = require('package-json');
3 |
4 | const lastestVersion = async (packageName, options) => {
5 | const {version} = await packageJson(packageName.toLowerCase(), options);
6 | return version;
7 | };
8 |
9 | module.exports = lastestVersion;
10 | // TODO: Remove this for the next major release
11 | module.exports.default = lastestVersion;
12 |
--------------------------------------------------------------------------------
/server/node_modules/latest-version/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "latest-version",
3 | "version": "5.1.0",
4 | "description": "Get the latest version of an npm package",
5 | "license": "MIT",
6 | "repository": "sindresorhus/latest-version",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "latest",
24 | "version",
25 | "npm",
26 | "pkg",
27 | "package",
28 | "package.json",
29 | "current",
30 | "module"
31 | ],
32 | "dependencies": {
33 | "package-json": "^6.3.0"
34 | },
35 | "devDependencies": {
36 | "ava": "^1.4.1",
37 | "semver": "^6.0.0",
38 | "semver-regex": "^2.0.0",
39 | "tsd": "^0.7.2",
40 | "xo": "^0.24.0"
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/server/node_modules/lowercase-keys/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = function (obj) {
3 | var ret = {};
4 | var keys = Object.keys(Object(obj));
5 |
6 | for (var i = 0; i < keys.length; i++) {
7 | ret[keys[i].toLowerCase()] = obj[keys[i]];
8 | }
9 |
10 | return ret;
11 | };
12 |
--------------------------------------------------------------------------------
/server/node_modules/lowercase-keys/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "lowercase-keys",
3 | "version": "1.0.1",
4 | "description": "Lowercase the keys of an object",
5 | "license": "MIT",
6 | "repository": "sindresorhus/lowercase-keys",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=0.10.0"
14 | },
15 | "scripts": {
16 | "test": "ava"
17 | },
18 | "files": [
19 | "index.js"
20 | ],
21 | "keywords": [
22 | "object",
23 | "assign",
24 | "extend",
25 | "properties",
26 | "lowercase",
27 | "lower-case",
28 | "case",
29 | "keys",
30 | "key"
31 | ],
32 | "devDependencies": {
33 | "ava": "*"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/server/node_modules/lowercase-keys/readme.md:
--------------------------------------------------------------------------------
1 | # lowercase-keys [](https://travis-ci.org/sindresorhus/lowercase-keys)
2 |
3 | > Lowercase the keys of an object
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install --save lowercase-keys
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | var lowercaseKeys = require('lowercase-keys');
17 |
18 | lowercaseKeys({FOO: true, bAr: false});
19 | //=> {foo: true, bar: false}
20 | ```
21 |
22 |
23 | ## API
24 |
25 | ### lowercaseKeys(object)
26 |
27 | Lowercases the keys and returns a new object.
28 |
29 |
30 |
31 | ## License
32 |
33 | MIT © [Sindre Sorhus](http://sindresorhus.com)
34 |
--------------------------------------------------------------------------------
/server/node_modules/lru-cache/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/lru-cache/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "lru-cache",
3 | "description": "A cache object that deletes the least-recently-used items.",
4 | "version": "6.0.0",
5 | "author": "Isaac Z. Schlueter ",
6 | "keywords": [
7 | "mru",
8 | "lru",
9 | "cache"
10 | ],
11 | "scripts": {
12 | "test": "tap",
13 | "snap": "tap",
14 | "preversion": "npm test",
15 | "postversion": "npm publish",
16 | "prepublishOnly": "git push origin --follow-tags"
17 | },
18 | "main": "index.js",
19 | "repository": "git://github.com/isaacs/node-lru-cache.git",
20 | "devDependencies": {
21 | "benchmark": "^2.1.4",
22 | "tap": "^14.10.7"
23 | },
24 | "license": "ISC",
25 | "dependencies": {
26 | "yallist": "^4.0.0"
27 | },
28 | "files": [
29 | "index.js"
30 | ],
31 | "engines": {
32 | "node": ">=10"
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/server/node_modules/make-dir/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../../../semver/bin/semver.js
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/media-typer/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "media-typer",
3 | "description": "Simple RFC 6838 media type parser and formatter",
4 | "version": "0.3.0",
5 | "author": "Douglas Christopher Wilson ",
6 | "license": "MIT",
7 | "repository": "jshttp/media-typer",
8 | "devDependencies": {
9 | "istanbul": "0.3.2",
10 | "mocha": "~1.21.4",
11 | "should": "~4.0.4"
12 | },
13 | "files": [
14 | "LICENSE",
15 | "HISTORY.md",
16 | "index.js"
17 | ],
18 | "engines": {
19 | "node": ">= 0.6"
20 | },
21 | "scripts": {
22 | "test": "mocha --reporter spec --check-leaks --bail test/",
23 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
24 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/mime-db/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * mime-db
3 | * Copyright(c) 2014 Jonathan Ong
4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson
5 | * MIT Licensed
6 | */
7 |
8 | /**
9 | * Module exports.
10 | */
11 |
12 | module.exports = require('./db.json')
13 |
--------------------------------------------------------------------------------
/server/node_modules/mime/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/server/node_modules/mime/.npmignore
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/mimic-response/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | // We define these manually to ensure they're always copied
4 | // even if they would move up the prototype chain
5 | // https://nodejs.org/api/http.html#http_class_http_incomingmessage
6 | const knownProps = [
7 | 'destroy',
8 | 'setTimeout',
9 | 'socket',
10 | 'headers',
11 | 'trailers',
12 | 'rawHeaders',
13 | 'statusCode',
14 | 'httpVersion',
15 | 'httpVersionMinor',
16 | 'httpVersionMajor',
17 | 'rawTrailers',
18 | 'statusMessage'
19 | ];
20 |
21 | module.exports = (fromStream, toStream) => {
22 | const fromProps = new Set(Object.keys(fromStream).concat(knownProps));
23 |
24 | for (const prop of fromProps) {
25 | // Don't overwrite existing properties
26 | if (prop in toStream) {
27 | continue;
28 | }
29 |
30 | toStream[prop] = typeof fromStream[prop] === 'function' ? fromStream[prop].bind(fromStream) : fromStream[prop];
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/server/node_modules/mimic-response/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mimic-response",
3 | "version": "1.0.1",
4 | "description": "Mimic a Node.js HTTP response stream",
5 | "license": "MIT",
6 | "repository": "sindresorhus/mimic-response",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=4"
14 | },
15 | "scripts": {
16 | "test": "xo && ava"
17 | },
18 | "files": [
19 | "index.js"
20 | ],
21 | "keywords": [
22 | "mimic",
23 | "response",
24 | "stream",
25 | "http",
26 | "https",
27 | "request",
28 | "get",
29 | "core"
30 | ],
31 | "devDependencies": {
32 | "ava": "*",
33 | "create-test-server": "^0.1.0",
34 | "pify": "^3.0.0",
35 | "xo": "*"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/server/node_modules/minimatch/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/minimatch/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "author": "Isaac Z. Schlueter (http://blog.izs.me)",
3 | "name": "minimatch",
4 | "description": "a glob matcher in javascript",
5 | "version": "3.1.2",
6 | "publishConfig": {
7 | "tag": "v3-legacy"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "git://github.com/isaacs/minimatch.git"
12 | },
13 | "main": "minimatch.js",
14 | "scripts": {
15 | "test": "tap",
16 | "preversion": "npm test",
17 | "postversion": "npm publish",
18 | "postpublish": "git push origin --all; git push origin --tags"
19 | },
20 | "engines": {
21 | "node": "*"
22 | },
23 | "dependencies": {
24 | "brace-expansion": "^1.1.7"
25 | },
26 | "devDependencies": {
27 | "tap": "^15.1.6"
28 | },
29 | "license": "ISC",
30 | "files": [
31 | "minimatch.js"
32 | ]
33 | }
34 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.8"
4 | - "0.10"
5 | - "0.12"
6 | - "iojs"
7 | before_install:
8 | - npm install -g npm@~1.4.6
9 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/example/parse.js:
--------------------------------------------------------------------------------
1 | var argv = require('../')(process.argv.slice(2));
2 | console.log(argv);
3 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/all_bool.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('flag boolean true (default all --args to boolean)', function (t) {
5 | var argv = parse(['moo', '--honk', 'cow'], {
6 | boolean: true
7 | });
8 |
9 | t.deepEqual(argv, {
10 | honk: true,
11 | _: ['moo', 'cow']
12 | });
13 |
14 | t.deepEqual(typeof argv.honk, 'boolean');
15 | t.end();
16 | });
17 |
18 | test('flag boolean true only affects double hyphen arguments without equals signs', function (t) {
19 | var argv = parse(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], {
20 | boolean: true
21 | });
22 |
23 | t.deepEqual(argv, {
24 | honk: true,
25 | tacos: 'good',
26 | p: 55,
27 | _: ['moo', 'cow']
28 | });
29 |
30 | t.deepEqual(typeof argv.honk, 'boolean');
31 | t.end();
32 | });
33 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/dotted.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('dotted alias', function (t) {
5 | var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
6 | t.equal(argv.a.b, 22);
7 | t.equal(argv.aa.bb, 22);
8 | t.end();
9 | });
10 |
11 | test('dotted default', function (t) {
12 | var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
13 | t.equal(argv.a.b, 11);
14 | t.equal(argv.aa.bb, 11);
15 | t.end();
16 | });
17 |
18 | test('dotted default with no alias', function (t) {
19 | var argv = parse('', {default: {'a.b': 11}});
20 | t.equal(argv.a.b, 11);
21 | t.end();
22 | });
23 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/kv_short.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('short -k=v' , function (t) {
5 | t.plan(1);
6 |
7 | var argv = parse([ '-b=123' ]);
8 | t.deepEqual(argv, { b: 123, _: [] });
9 | });
10 |
11 | test('multi short -k=v' , function (t) {
12 | t.plan(1);
13 |
14 | var argv = parse([ '-a=whatever', '-b=robots' ]);
15 | t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] });
16 | });
17 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/long.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var parse = require('../');
3 |
4 | test('long opts', function (t) {
5 | t.deepEqual(
6 | parse([ '--bool' ]),
7 | { bool : true, _ : [] },
8 | 'long boolean'
9 | );
10 | t.deepEqual(
11 | parse([ '--pow', 'xixxle' ]),
12 | { pow : 'xixxle', _ : [] },
13 | 'long capture sp'
14 | );
15 | t.deepEqual(
16 | parse([ '--pow=xixxle' ]),
17 | { pow : 'xixxle', _ : [] },
18 | 'long capture eq'
19 | );
20 | t.deepEqual(
21 | parse([ '--host', 'localhost', '--port', '555' ]),
22 | { host : 'localhost', port : 555, _ : [] },
23 | 'long captures sp'
24 | );
25 | t.deepEqual(
26 | parse([ '--host=localhost', '--port=555' ]),
27 | { host : 'localhost', port : 555, _ : [] },
28 | 'long captures eq'
29 | );
30 | t.end();
31 | });
32 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/parse_modified.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('parse with modifier functions' , function (t) {
5 | t.plan(1);
6 |
7 | var argv = parse([ '-b', '123' ], { boolean: 'b' });
8 | t.deepEqual(argv, { b: true, _: [123] });
9 | });
10 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/stop_early.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('stops parsing on the first non-option when stopEarly is set', function (t) {
5 | var argv = parse(['--aaa', 'bbb', 'ccc', '--ddd'], {
6 | stopEarly: true
7 | });
8 |
9 | t.deepEqual(argv, {
10 | aaa: 'bbb',
11 | _: ['ccc', '--ddd']
12 | });
13 |
14 | t.end();
15 | });
16 |
--------------------------------------------------------------------------------
/server/node_modules/minimist/test/whitespace.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('whitespace should be whitespace' , function (t) {
5 | t.plan(1);
6 | var x = parse([ '-x', '\t' ]).x;
7 | t.equal(x, '\t');
8 | });
9 |
--------------------------------------------------------------------------------
/server/node_modules/ms/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ms",
3 | "version": "2.1.3",
4 | "description": "Tiny millisecond conversion utility",
5 | "repository": "vercel/ms",
6 | "main": "./index",
7 | "files": [
8 | "index.js"
9 | ],
10 | "scripts": {
11 | "precommit": "lint-staged",
12 | "lint": "eslint lib/* bin/*",
13 | "test": "mocha tests.js"
14 | },
15 | "eslintConfig": {
16 | "extends": "eslint:recommended",
17 | "env": {
18 | "node": true,
19 | "es6": true
20 | }
21 | },
22 | "lint-staged": {
23 | "*.js": [
24 | "npm run lint",
25 | "prettier --single-quote --write",
26 | "git add"
27 | ]
28 | },
29 | "license": "MIT",
30 | "devDependencies": {
31 | "eslint": "4.18.2",
32 | "expect.js": "0.3.1",
33 | "husky": "0.14.3",
34 | "lint-staged": "5.0.0",
35 | "mocha": "4.0.1",
36 | "prettier": "2.0.5"
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "browser": true,
4 | "commonjs": true,
5 | "es2021": true
6 | },
7 | "parserOptions": {
8 | "ecmaVersion": 12
9 | },
10 | "rules": {
11 | "space-before-function-paren": [
12 | 2,
13 | {
14 | "anonymous": "ignore",
15 | "named": "never"
16 | }
17 | ]
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "browser": true,
3 | "camelcase": true,
4 | "curly": true,
5 | "devel": true,
6 | "eqeqeq": true,
7 | "forin": true,
8 | "indent": 2,
9 | "noarg": true,
10 | "node": true,
11 | "quotmark": "single",
12 | "undef": true,
13 | "strict": false,
14 | "unused": true
15 | }
16 |
17 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/.releaserc:
--------------------------------------------------------------------------------
1 | {
2 | "branches": ["main"]
3 | }
4 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | cache:
3 | directories:
4 | - ~/.npm
5 | notifications:
6 | email: false
7 | node_js:
8 | - '14'
9 | - '12'
10 | - '10'
11 | before_install:
12 | - if [ "$TRAVIS_PULL_REQUEST_BRANCH" == "" ]; then echo "//registry.npmjs.org/:_authToken=\${NPM_TOKEN}" >> .npmrc; fi
13 | after_success:
14 | - npm run semantic-release
15 | branches:
16 | except:
17 | - /^v\d+\.\d+\.\d+$/
18 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/bin/nodemon.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | const cli = require('../lib/cli');
4 | const nodemon = require('../lib/');
5 | const options = cli.parse(process.argv);
6 |
7 | nodemon(options);
8 |
9 | const fs = require('fs');
10 |
11 | // checks for available update and returns an instance
12 | const pkg = JSON.parse(fs.readFileSync(__dirname + '/../package.json'));
13 |
14 | if (pkg.version.indexOf('0.0.0') !== 0 && options.noUpdateNotifier !== true) {
15 | require('update-notifier')({ pkg }).notify();
16 | }
17 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/bin/windows-kill.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/server/node_modules/nodemon/bin/windows-kill.exe
--------------------------------------------------------------------------------
/server/node_modules/nodemon/commitlint.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['@commitlint/config-conventional'],
3 | };
4 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/doc/cli/authors.txt:
--------------------------------------------------------------------------------
1 |
2 | Remy Sharp - author and maintainer
3 | https://github.com/remy
4 | https://twitter.com/rem
5 |
6 | Contributors: https://github.com/remy/nodemon/graphs/contributors ❤︎
7 |
8 | Please help make nodemon better: https://github.com/remy/nodemon/
9 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/doc/cli/logo.txt:
--------------------------------------------------------------------------------
1 | ; ;
2 | kO. x0
3 | KMX, .:x0kc. 'KMN
4 | 0MMM0: 'oKMMMMMMMXd, ;OMMMX
5 | oMMMMMWKOONMMMMMMMMMMMMMWOOKWMMMMMx
6 | OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMK.
7 | .oWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMd.
8 | KMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN
9 | KMMMMMMMMMMMMMMW0k0WMMMMMMMMMMMMMMW
10 | KMMMMMMMMMMMNk:. :xNMMMMMMMMMMMW
11 | KMMMMMMMMMMK OMMMMMMMMMMW
12 | KMMMMMMMMMMO xMMMMMMMMMMN
13 | KMMMMMMMMMMO xMMMMMMMMMMN
14 | KMMMMMMMMMMO xMMMMMMMMMMN
15 | KMMMMMMMMMMO xMMMMMMMMMMN
16 | KMMMMMMMMMMO xMMMMMMMMMMN
17 | KMMMMMMMMMNc ;NMMMMMMMMMN
18 | KMMMMMW0o' .lOWMMMMMN
19 | KMMKd; ,oKMMN
20 | kX: ,K0
--------------------------------------------------------------------------------
/server/node_modules/nodemon/doc/cli/topics.txt:
--------------------------------------------------------------------------------
1 |
2 | options .................. show all available nodemon options
3 | config ................... default config options using nodemon.json
4 | authors .................. contributors to this project
5 | logo ..................... <3
6 | whoami ................... I, AM, NODEMON \o/
7 |
8 | Please support https://github.com/remy/nodemon/
9 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/doc/cli/usage.txt:
--------------------------------------------------------------------------------
1 | Usage: nodemon [nodemon options] [script.js] [args]
2 |
3 | See "nodemon --help" for more.
4 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/lib/help/index.js:
--------------------------------------------------------------------------------
1 | var fs = require('fs');
2 | var path = require('path');
3 | const supportsColor = require('supports-color');
4 |
5 | module.exports = help;
6 |
7 | const highlight = supportsColor.stdout ? '\x1B\[$1m' : '';
8 |
9 | function help(item) {
10 | if (!item) {
11 | item = 'help';
12 | } else if (item === true) { // if used with -h or --help and no args
13 | item = 'help';
14 | }
15 |
16 | // cleanse the filename to only contain letters
17 | // aka: /\W/g but figured this was eaiser to read
18 | item = item.replace(/[^a-z]/gi, '');
19 |
20 | try {
21 | var dir = path.join(__dirname, '..', '..', 'doc', 'cli', item + '.txt');
22 | var body = fs.readFileSync(dir, 'utf8');
23 | return body.replace(/\\x1B\[(.)m/g, highlight);
24 | } catch (e) {
25 | return '"' + item + '" help can\'t be found';
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./nodemon');
--------------------------------------------------------------------------------
/server/node_modules/nodemon/lib/monitor/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | run: require('./run'),
3 | watch: require('./watch').watch,
4 | };
5 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/lib/monitor/signals.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SIGHUP: 1,
3 | SIGINT: 2,
4 | SIGQUIT: 3,
5 | SIGILL: 4,
6 | SIGTRAP: 5,
7 | SIGABRT: 6,
8 | SIGBUS: 7,
9 | SIGFPE: 8,
10 | SIGKILL: 9,
11 | SIGUSR1: 10,
12 | SIGSEGV: 11,
13 | SIGUSR2: 12,
14 | SIGPIPE: 13,
15 | SIGALRM: 14,
16 | SIGTERM: 15,
17 | SIGSTKFLT: 16,
18 | SIGCHLD: 17,
19 | SIGCONT: 18,
20 | SIGSTOP: 19,
21 | SIGTSTP: 20,
22 | SIGTTIN: 21,
23 | SIGTTOU: 22,
24 | SIGURG: 23,
25 | SIGXCPU: 24,
26 | SIGXFSZ: 25,
27 | SIGVTALRM: 26,
28 | SIGPROF: 27,
29 | SIGWINCH: 28,
30 | SIGIO: 29,
31 | SIGPWR: 30,
32 | SIGSYS: 31,
33 | SIGRTMIN: 35,
34 | }
35 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/lib/utils/colour.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Encodes a string in a colour: red, yellow or green
3 | * @param {String} c colour to highlight in
4 | * @param {String} str the string to encode
5 | * @return {String} coloured string for terminal printing
6 | */
7 | function colour(c, str) {
8 | return (colour[c] || colour.black) + str + colour.black;
9 | }
10 |
11 | function strip(str) {
12 | re.lastIndex = 0; // reset position
13 | return str.replace(re, '');
14 | }
15 |
16 | colour.red = '\x1B[31m';
17 | colour.yellow = '\x1B[33m';
18 | colour.green = '\x1B[32m';
19 | colour.black = '\x1B[39m';
20 |
21 | var reStr = Object.keys(colour).map(key => colour[key]).join('|');
22 | var re = new RegExp(('(' + reStr + ')').replace(/\[/g, '\\['), 'g');
23 |
24 | colour.strip = strip;
25 |
26 | module.exports = colour;
27 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | ../../../touch/bin/nodetouch.js
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../semver/bin/semver
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/debug/src/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | /**
4 | * Detect Electron renderer / nwjs process, which is node, but we should
5 | * treat as a browser.
6 | */
7 | if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
8 | module.exports = require('./browser.js');
9 | } else {
10 | module.exports = require('./node.js');
11 | }
12 |
13 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/semver/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # changes log
2 |
3 | ## 5.7
4 |
5 | * Add `minVersion` method
6 |
7 | ## 5.6
8 |
9 | * Move boolean `loose` param to an options object, with
10 | backwards-compatibility protection.
11 | * Add ability to opt out of special prerelease version handling with
12 | the `includePrerelease` option flag.
13 |
14 | ## 5.5
15 |
16 | * Add version coercion capabilities
17 |
18 | ## 5.4
19 |
20 | * Add intersection checking
21 |
22 | ## 5.3
23 |
24 | * Add `minSatisfying` method
25 |
26 | ## 5.2
27 |
28 | * Add `prerelease(v)` that returns prerelease components
29 |
30 | ## 5.1
31 |
32 | * Add Backus-Naur for ranges
33 | * Remove excessively cute inspection methods
34 |
35 | ## 5.0
36 |
37 | * Remove AMD/Browserified build artifacts
38 | * Fix ltr and gtr when using the `*` range
39 | * Fix for range `*` with a prerelease identifier
40 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/semver/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "semver",
3 | "version": "5.7.1",
4 | "description": "The semantic version parser used by npm.",
5 | "main": "semver.js",
6 | "scripts": {
7 | "test": "tap",
8 | "preversion": "npm test",
9 | "postversion": "npm publish",
10 | "postpublish": "git push origin --all; git push origin --tags"
11 | },
12 | "devDependencies": {
13 | "tap": "^13.0.0-rc.18"
14 | },
15 | "license": "ISC",
16 | "repository": "https://github.com/npm/node-semver",
17 | "bin": {
18 | "semver": "./bin/semver"
19 | },
20 | "files": [
21 | "bin",
22 | "range.bnf",
23 | "semver.js"
24 | ],
25 | "tap": {
26 | "check-coverage": true
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/server/node_modules/nodemon/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/server/node_modules/nopt/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/machadop1407/socket-io-react-example/45a24dd26fdb69c099e8bec5bb2f7fb402d4ff89/server/node_modules/nopt/.gitignore
--------------------------------------------------------------------------------
/server/node_modules/nopt/package.json:
--------------------------------------------------------------------------------
1 | { "name" : "nopt"
2 | , "version" : "1.0.10"
3 | , "description" : "Option parsing for Node, supporting types, shorthands, etc. Used by npm."
4 | , "author" : "Isaac Z. Schlueter (http://blog.izs.me/)"
5 | , "main" : "lib/nopt.js"
6 | , "scripts" : { "test" : "node lib/nopt.js" }
7 | , "repository" : "http://github.com/isaacs/nopt"
8 | , "bin" : "./bin/nopt.js"
9 | , "license" :
10 | { "type" : "MIT"
11 | , "url" : "https://github.com/isaacs/nopt/raw/master/LICENSE" }
12 | , "dependencies" : { "abbrev" : "1" }}
13 |
--------------------------------------------------------------------------------
/server/node_modules/normalize-url/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "normalize-url",
3 | "version": "4.5.1",
4 | "description": "Normalize a URL",
5 | "license": "MIT",
6 | "repository": "sindresorhus/normalize-url",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && nyc ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "normalize",
24 | "url",
25 | "uri",
26 | "address",
27 | "string",
28 | "normalization",
29 | "normalisation",
30 | "query",
31 | "querystring",
32 | "simplify",
33 | "strip",
34 | "trim",
35 | "canonical"
36 | ],
37 | "devDependencies": {
38 | "ava": "^2.4.0",
39 | "coveralls": "^3.0.6",
40 | "nyc": "^14.1.1",
41 | "tsd": "^0.8.0",
42 | "xo": "^0.24.0"
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/server/node_modules/once/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/once/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "once",
3 | "version": "1.4.0",
4 | "description": "Run a function exactly one time",
5 | "main": "once.js",
6 | "directories": {
7 | "test": "test"
8 | },
9 | "dependencies": {
10 | "wrappy": "1"
11 | },
12 | "devDependencies": {
13 | "tap": "^7.0.1"
14 | },
15 | "scripts": {
16 | "test": "tap test/*.js"
17 | },
18 | "files": [
19 | "once.js"
20 | ],
21 | "repository": {
22 | "type": "git",
23 | "url": "git://github.com/isaacs/once"
24 | },
25 | "keywords": [
26 | "once",
27 | "function",
28 | "one",
29 | "single"
30 | ],
31 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)",
32 | "license": "ISC"
33 | }
34 |
--------------------------------------------------------------------------------
/server/node_modules/package-json/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../../../semver/bin/semver.js
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/path-to-regexp/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "path-to-regexp",
3 | "description": "Express style path to RegExp utility",
4 | "version": "0.1.7",
5 | "files": [
6 | "index.js",
7 | "LICENSE"
8 | ],
9 | "scripts": {
10 | "test": "istanbul cover _mocha -- -R spec"
11 | },
12 | "keywords": [
13 | "express",
14 | "regexp"
15 | ],
16 | "component": {
17 | "scripts": {
18 | "path-to-regexp": "index.js"
19 | }
20 | },
21 | "license": "MIT",
22 | "repository": {
23 | "type": "git",
24 | "url": "https://github.com/component/path-to-regexp.git"
25 | },
26 | "devDependencies": {
27 | "mocha": "^1.17.1",
28 | "istanbul": "^0.2.6"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/server/node_modules/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/server/node_modules/prepend-http/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = (url, opts) => {
3 | if (typeof url !== 'string') {
4 | throw new TypeError(`Expected \`url\` to be of type \`string\`, got \`${typeof url}\``);
5 | }
6 |
7 | url = url.trim();
8 | opts = Object.assign({https: false}, opts);
9 |
10 | if (/^\.*\/|^(?!localhost)\w+:/.test(url)) {
11 | return url;
12 | }
13 |
14 | return url.replace(/^(?!(?:\w+:)?\/\/)/, opts.https ? 'https://' : 'http://');
15 | };
16 |
--------------------------------------------------------------------------------
/server/node_modules/prepend-http/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "prepend-http",
3 | "version": "2.0.0",
4 | "description": "Prepend `http://` to humanized URLs like todomvc.com and localhost",
5 | "license": "MIT",
6 | "repository": "sindresorhus/prepend-http",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=4"
14 | },
15 | "scripts": {
16 | "test": "xo && ava"
17 | },
18 | "files": [
19 | "index.js"
20 | ],
21 | "keywords": [
22 | "prepend",
23 | "protocol",
24 | "scheme",
25 | "url",
26 | "uri",
27 | "http",
28 | "https",
29 | "humanized"
30 | ],
31 | "devDependencies": {
32 | "ava": "*",
33 | "xo": "*"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/server/node_modules/pstree.remy/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | cache:
3 | directories:
4 | - ~/.npm
5 | notifications:
6 | email: false
7 | node_js:
8 | - '8'
9 |
--------------------------------------------------------------------------------
/server/node_modules/pstree.remy/README.md:
--------------------------------------------------------------------------------
1 | # pstree.remy
2 |
3 | > Cross platform ps-tree (including unix flavours without ps)
4 |
5 | ## Installation
6 |
7 | ```shel
8 | npm install pstree.remy
9 | ```
10 |
11 | ## Usage
12 |
13 | ```js
14 | const psTree = psTree require('pstree.remy');
15 |
16 | psTree(PID, (err, pids) => {
17 | if (err) {
18 | console.error(err);
19 | }
20 | console.log(pids)
21 | });
22 |
23 | console.log(psTree.hasPS
24 | ? "This platform has the ps shell command"
25 | : "This platform does not have the ps shell command");
26 | ```
27 |
--------------------------------------------------------------------------------
/server/node_modules/pstree.remy/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "pstree.remy",
3 | "version": "1.1.8",
4 | "main": "lib/index.js",
5 | "prettier": {
6 | "trailingComma": "es5",
7 | "semi": true,
8 | "singleQuote": true
9 | },
10 | "scripts": {
11 | "test": "tap tests/*.test.js",
12 | "_prepublish": "npm test"
13 | },
14 | "keywords": [
15 | "ps",
16 | "pstree",
17 | "ps tree"
18 | ],
19 | "author": "Remy Sharp",
20 | "license": "MIT",
21 | "repository": {
22 | "type": "git",
23 | "url": "https://github.com/remy/pstree.git"
24 | },
25 | "devDependencies": {
26 | "tap": "^11.0.0"
27 | },
28 | "directories": {
29 | "test": "tests"
30 | },
31 | "dependencies": {},
32 | "description": "Collects the full tree of processes from /proc"
33 | }
34 |
--------------------------------------------------------------------------------
/server/node_modules/pstree.remy/tests/fixtures/index.js:
--------------------------------------------------------------------------------
1 | const spawn = require('child_process').spawn;
2 | function run() {
3 | spawn(
4 | 'sh',
5 | ['-c', 'node -e "setInterval(() => console.log(`running`), 200)"'],
6 | {
7 | stdio: 'pipe',
8 | }
9 | );
10 | }
11 |
12 | var runCallCount = process.argv[2] || 1;
13 | for (var i = 0; i < runCallCount; i++) run();
14 |
--------------------------------------------------------------------------------
/server/node_modules/pump/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.10"
4 |
5 | script: "npm test"
6 |
--------------------------------------------------------------------------------
/server/node_modules/pump/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "pump",
3 | "version": "3.0.0",
4 | "repository": "git://github.com/mafintosh/pump.git",
5 | "license": "MIT",
6 | "description": "pipe streams together and close all of them if one of them closes",
7 | "browser": {
8 | "fs": false
9 | },
10 | "keywords": [
11 | "streams",
12 | "pipe",
13 | "destroy",
14 | "callback"
15 | ],
16 | "author": "Mathias Buus Madsen ",
17 | "dependencies": {
18 | "end-of-stream": "^1.1.0",
19 | "once": "^1.3.1"
20 | },
21 | "scripts": {
22 | "test": "node test-browser.js && node test-node.js"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/server/node_modules/pupa/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Simple micro templating.
3 |
4 | @param template - Text with placeholders for `data` properties.
5 | @param data - Data to interpolate into `template`.
6 |
7 | @example
8 | ```
9 | import pupa = require('pupa');
10 |
11 | pupa('The mobile number of {name} is {phone.mobile}', {
12 | name: 'Sindre',
13 | phone: {
14 | mobile: '609 24 363'
15 | }
16 | });
17 | //=> 'The mobile number of Sindre is 609 24 363'
18 |
19 | pupa('I like {0} and {1}', ['🦄', '🐮']);
20 | //=> 'I like 🦄 and 🐮'
21 |
22 | // Double braces encodes the HTML entities to avoid code injection
23 | pupa('I like {{0}} and {{1}}', ['
🦄', '🐮']);
24 | //=> 'I like <br>🦄</br> and <i>🐮</i>'
25 | ```
26 | */
27 | declare function pupa(
28 | template: string,
29 | data: unknown[] | {[key: string]: any}
30 | ): string;
31 |
32 | export = pupa;
33 |
--------------------------------------------------------------------------------
/server/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 = 160
11 | quote_type = single
12 |
13 | [test/*]
14 | max_line_length = off
15 |
16 | [LICENSE.md]
17 | indent_size = off
18 |
19 | [*.md]
20 | max_line_length = off
21 |
22 | [*.json]
23 | max_line_length = off
24 |
25 | [Makefile]
26 | max_line_length = off
27 |
28 | [CHANGELOG.md]
29 | indent_style = space
30 | indent_size = 2
31 |
32 | [LICENSE]
33 | indent_size = 2
34 | max_line_length = off
35 |
36 | [coverage/**/*]
37 | indent_size = off
38 | indent_style = off
39 | indent = off
40 | max_line_length = off
41 |
--------------------------------------------------------------------------------
/server/node_modules/qs/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: [ljharb]
4 | patreon: # Replace with a single Patreon username
5 | open_collective: # Replace with a single Open Collective username
6 | ko_fi: # Replace with a single Ko-fi username
7 | tidelift: npm/qs
8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | otechie: # Replace with a single Otechie username
12 | custom: # Replace with a single custom sponsorship URL
13 |
--------------------------------------------------------------------------------
/server/node_modules/qs/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "dist"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/server/node_modules/qs/lib/formats.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var replace = String.prototype.replace;
4 | var percentTwenties = /%20/g;
5 |
6 | var Format = {
7 | RFC1738: 'RFC1738',
8 | RFC3986: 'RFC3986'
9 | };
10 |
11 | module.exports = {
12 | 'default': Format.RFC3986,
13 | formatters: {
14 | RFC1738: function (value) {
15 | return replace.call(value, percentTwenties, '+');
16 | },
17 | RFC3986: function (value) {
18 | return String(value);
19 | }
20 | },
21 | RFC1738: Format.RFC1738,
22 | RFC3986: Format.RFC3986
23 | };
24 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/rc/LICENSE.APACHE2:
--------------------------------------------------------------------------------
1 | Apache License, Version 2.0
2 |
3 | Copyright (c) 2011 Dominic Tarr
4 |
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | you may not use this file except in compliance with the License.
7 | You may obtain a copy of the License at
8 |
9 | http://www.apache.org/licenses/LICENSE-2.0
10 |
11 | Unless required by applicable law or agreed to in writing, software
12 | distributed under the License is distributed on an "AS IS" BASIS,
13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | See the License for the specific language governing permissions and
15 | limitations under the License.
16 |
--------------------------------------------------------------------------------
/server/node_modules/rc/browser.js:
--------------------------------------------------------------------------------
1 |
2 | // when this is loaded into the browser,
3 | // just use the defaults...
4 |
5 | module.exports = function (name, defaults) {
6 | return defaults
7 | }
8 |
--------------------------------------------------------------------------------
/server/node_modules/rc/cli.js:
--------------------------------------------------------------------------------
1 | #! /usr/bin/env node
2 | var rc = require('./index')
3 |
4 | console.log(JSON.stringify(rc(process.argv[2]), false, 2))
5 |
--------------------------------------------------------------------------------
/server/node_modules/rc/node_modules/ini/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/rc/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "rc",
3 | "version": "1.2.8",
4 | "description": "hardwired configuration loader",
5 | "main": "index.js",
6 | "browser": "browser.js",
7 | "scripts": {
8 | "test": "set -e; node test/test.js; node test/ini.js; node test/nested-env-vars.js"
9 | },
10 | "repository": {
11 | "type": "git",
12 | "url": "https://github.com/dominictarr/rc.git"
13 | },
14 | "license": "(BSD-2-Clause OR MIT OR Apache-2.0)",
15 | "keywords": [
16 | "config",
17 | "rc",
18 | "unix",
19 | "defaults"
20 | ],
21 | "bin": "./cli.js",
22 | "author": "Dominic Tarr (dominictarr.com)",
23 | "dependencies": {
24 | "deep-extend": "^0.6.0",
25 | "ini": "~1.3.0",
26 | "minimist": "^1.2.0",
27 | "strip-json-comments": "~2.0.1"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/server/node_modules/rc/test/ini.js:
--------------------------------------------------------------------------------
1 | var cc =require('../lib/utils')
2 | var INI = require('ini')
3 | var assert = require('assert')
4 |
5 | function test(obj) {
6 |
7 | var _json, _ini
8 | var json = cc.parse (_json = JSON.stringify(obj))
9 | var ini = cc.parse (_ini = INI.stringify(obj))
10 | console.log(_ini, _json)
11 | assert.deepEqual(json, ini)
12 | }
13 |
14 |
15 | test({hello: true})
16 |
17 |
--------------------------------------------------------------------------------
/server/node_modules/registry-auth-token/base64.js:
--------------------------------------------------------------------------------
1 | function decodeBase64 (base64) {
2 | return Buffer.from(base64, 'base64').toString('utf8')
3 | }
4 |
5 | function encodeBase64 (string) {
6 | return Buffer.from(string, 'utf8').toString('base64')
7 | }
8 |
9 | module.exports = {
10 | decodeBase64: decodeBase64,
11 | encodeBase64: encodeBase64
12 | }
13 |
--------------------------------------------------------------------------------
/server/node_modules/registry-auth-token/node_modules/.bin/rc:
--------------------------------------------------------------------------------
1 | ../../../rc/cli.js
--------------------------------------------------------------------------------
/server/node_modules/registry-auth-token/registry-url.js:
--------------------------------------------------------------------------------
1 | module.exports = function (scope, npmrc) {
2 | var rc = npmrc || require('rc')('npm', { registry: 'https://registry.npmjs.org/' })
3 | var url = rc[scope + ':registry'] || rc.registry
4 | return url.slice(-1) === '/' ? url : url + '/'
5 | }
6 |
--------------------------------------------------------------------------------
/server/node_modules/registry-url/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const rc = require('rc');
3 |
4 | const registryUrl = scope => {
5 | const result = rc('npm', {registry: 'https://registry.npmjs.org/'});
6 | const url = result[`${scope}:registry`] || result.config_registry || result.registry;
7 | return url.slice(-1) === '/' ? url : `${url}/`;
8 | };
9 |
10 | module.exports = registryUrl;
11 | // TODO: Remove this for the next major release
12 | module.exports.default = registryUrl;
13 |
--------------------------------------------------------------------------------
/server/node_modules/registry-url/node_modules/.bin/rc:
--------------------------------------------------------------------------------
1 | ../../../rc/cli.js
--------------------------------------------------------------------------------
/server/node_modules/registry-url/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "registry-url",
3 | "version": "5.1.0",
4 | "description": "Get the set npm registry URL",
5 | "license": "MIT",
6 | "repository": "sindresorhus/registry-url",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "npm",
24 | "conf",
25 | "config",
26 | "npmconf",
27 | "registry",
28 | "url",
29 | "uri",
30 | "scope"
31 | ],
32 | "dependencies": {
33 | "rc": "^1.2.8"
34 | },
35 | "devDependencies": {
36 | "ava": "^1.4.1",
37 | "import-fresh": "^3.0.0",
38 | "tsd": "^0.7.2",
39 | "xo": "^0.24.0"
40 | },
41 | "ava": {
42 | "serial": true
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/server/node_modules/semver-diff/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const semver = require('semver');
3 |
4 | module.exports = (versionA, versionB) => {
5 | versionA = semver.parse(versionA);
6 | versionB = semver.parse(versionB);
7 |
8 | if (semver.compareBuild(versionA, versionB) >= 0) {
9 | return;
10 | }
11 |
12 | return semver.diff(versionA, versionB) || 'build';
13 | };
14 |
--------------------------------------------------------------------------------
/server/node_modules/semver-diff/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../../../semver/bin/semver.js
--------------------------------------------------------------------------------
/server/node_modules/semver-diff/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "semver-diff",
3 | "version": "3.1.1",
4 | "description": "Get the diff type of two semver versions: 0.0.1 0.0.2 → patch",
5 | "license": "MIT",
6 | "repository": "sindresorhus/semver-diff",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "semver",
24 | "version",
25 | "semantic",
26 | "diff",
27 | "difference"
28 | ],
29 | "dependencies": {
30 | "semver": "^6.3.0"
31 | },
32 | "devDependencies": {
33 | "ava": "^2.4.0",
34 | "tsd": "^0.9.0",
35 | "xo": "^0.25.3"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/server/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/semver/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "semver",
3 | "version": "6.3.0",
4 | "description": "The semantic version parser used by npm.",
5 | "main": "semver.js",
6 | "scripts": {
7 | "test": "tap",
8 | "preversion": "npm test",
9 | "postversion": "npm publish",
10 | "postpublish": "git push origin --follow-tags"
11 | },
12 | "devDependencies": {
13 | "tap": "^14.3.1"
14 | },
15 | "license": "ISC",
16 | "repository": "https://github.com/npm/node-semver",
17 | "bin": {
18 | "semver": "./bin/semver.js"
19 | },
20 | "files": [
21 | "bin",
22 | "range.bnf",
23 | "semver.js"
24 | ],
25 | "tap": {
26 | "check-coverage": true
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/server/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/server/node_modules/send/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | ../../../mime/cli.js
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/setprototypeof/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function setPrototypeOf(o: any, proto: object | null): any;
2 | export = setPrototypeOf;
3 |
--------------------------------------------------------------------------------
/server/node_modules/setprototypeof/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | /* eslint no-proto: 0 */
3 | module.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties)
4 |
5 | function setProtoOf (obj, proto) {
6 | obj.__proto__ = proto
7 | return obj
8 | }
9 |
10 | function mixinProperties (obj, proto) {
11 | for (var prop in proto) {
12 | if (!Object.prototype.hasOwnProperty.call(obj, prop)) {
13 | obj[prop] = proto[prop]
14 | }
15 | }
16 | return obj
17 | }
18 |
--------------------------------------------------------------------------------
/server/node_modules/setprototypeof/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | /* eslint-env mocha */
3 | /* eslint no-proto: 0 */
4 | var assert = require('assert')
5 | var setPrototypeOf = require('..')
6 |
7 | describe('setProtoOf(obj, proto)', function () {
8 | it('should merge objects', function () {
9 | var obj = { a: 1, b: 2 }
10 | var proto = { b: 3, c: 4 }
11 | var mergeObj = setPrototypeOf(obj, proto)
12 |
13 | if (Object.getPrototypeOf) {
14 | assert.strictEqual(Object.getPrototypeOf(obj), proto)
15 | } else if ({ __proto__: [] } instanceof Array) {
16 | assert.strictEqual(obj.__proto__, proto)
17 | } else {
18 | assert.strictEqual(obj.a, 1)
19 | assert.strictEqual(obj.b, 2)
20 | assert.strictEqual(obj.c, 4)
21 | }
22 | assert.strictEqual(mergeObj, obj)
23 | })
24 | })
25 |
--------------------------------------------------------------------------------
/server/node_modules/signal-exit/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) 2015, Contributors
4 |
5 | Permission to use, copy, modify, and/or distribute this software
6 | for any purpose with or without fee is hereby granted, provided
7 | that the above copyright notice and this permission notice
8 | appear in all copies.
9 |
10 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
12 | OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
13 | LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
14 | OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
15 | WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
16 | ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io-adapter/Readme.md:
--------------------------------------------------------------------------------
1 |
2 | # socket.io-adapter
3 |
4 | Default socket.io in-memory adapter class.
5 |
6 | Compatibility table:
7 |
8 | | Adapter version | Socket.IO server version |
9 | |-----------------| ------------------------ |
10 | | 1.x.x | 1.x.x / 2.x.x |
11 | | 2.x.x | 3.x.x |
12 |
13 | ## How to use
14 |
15 | This module is not intended for end-user usage, but can be used as an
16 | interface to inherit from other adapters you might want to build.
17 |
18 | As an example of an adapter that builds on top of this, please take a look
19 | at [socket.io-redis](https://github.com/learnboost/socket.io-redis).
20 |
21 | ## License
22 |
23 | MIT
24 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io-parser/dist/binary.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * Replaces every Buffer | ArrayBuffer | Blob | File in packet with a numbered placeholder.
3 | *
4 | * @param {Object} packet - socket.io event packet
5 | * @return {Object} with deconstructed packet and list of buffers
6 | * @public
7 | */
8 | export declare function deconstructPacket(packet: any): {
9 | packet: any;
10 | buffers: any[];
11 | };
12 | /**
13 | * Reconstructs a binary packet from its placeholder packet and buffers
14 | *
15 | * @param {Object} packet - event packet with placeholders
16 | * @param {Array} buffers - binary buffers to put in placeholder positions
17 | * @return {Object} reconstructed packet
18 | * @public
19 | */
20 | export declare function reconstructPacket(packet: any, buffers: any): any;
21 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io-parser/dist/is-binary.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * Returns true if obj is a Buffer, an ArrayBuffer, a Blob or a File.
3 | *
4 | * @private
5 | */
6 | export declare function isBinary(obj: any): boolean;
7 | export declare function hasBinary(obj: any, toJSON?: boolean): any;
8 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io-parser/node_modules/debug/src/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Detect Electron renderer / nwjs process, which is node, but we should
3 | * treat as a browser.
4 | */
5 |
6 | if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
7 | module.exports = require('./browser.js');
8 | } else {
9 | module.exports = require('./node.js');
10 | }
11 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io-parser/node_modules/ms/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ms",
3 | "version": "2.1.2",
4 | "description": "Tiny millisecond conversion utility",
5 | "repository": "zeit/ms",
6 | "main": "./index",
7 | "files": [
8 | "index.js"
9 | ],
10 | "scripts": {
11 | "precommit": "lint-staged",
12 | "lint": "eslint lib/* bin/*",
13 | "test": "mocha tests.js"
14 | },
15 | "eslintConfig": {
16 | "extends": "eslint:recommended",
17 | "env": {
18 | "node": true,
19 | "es6": true
20 | }
21 | },
22 | "lint-staged": {
23 | "*.js": [
24 | "npm run lint",
25 | "prettier --single-quote --write",
26 | "git add"
27 | ]
28 | },
29 | "license": "MIT",
30 | "devDependencies": {
31 | "eslint": "4.12.1",
32 | "expect.js": "0.3.1",
33 | "husky": "0.14.3",
34 | "lint-staged": "5.0.0",
35 | "mocha": "4.0.1"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io/dist/uws.d.ts:
--------------------------------------------------------------------------------
1 | export declare function patchAdapter(app: any): void;
2 | export declare function restoreAdapter(): void;
3 | export declare function serveFile(res: any, filepath: string): void;
4 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io/node_modules/debug/src/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Detect Electron renderer / nwjs process, which is node, but we should
3 | * treat as a browser.
4 | */
5 |
6 | if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
7 | module.exports = require('./browser.js');
8 | } else {
9 | module.exports = require('./node.js');
10 | }
11 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io/node_modules/ms/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ms",
3 | "version": "2.1.2",
4 | "description": "Tiny millisecond conversion utility",
5 | "repository": "zeit/ms",
6 | "main": "./index",
7 | "files": [
8 | "index.js"
9 | ],
10 | "scripts": {
11 | "precommit": "lint-staged",
12 | "lint": "eslint lib/* bin/*",
13 | "test": "mocha tests.js"
14 | },
15 | "eslintConfig": {
16 | "extends": "eslint:recommended",
17 | "env": {
18 | "node": true,
19 | "es6": true
20 | }
21 | },
22 | "lint-staged": {
23 | "*.js": [
24 | "npm run lint",
25 | "prettier --single-quote --write",
26 | "git add"
27 | ]
28 | },
29 | "license": "MIT",
30 | "devDependencies": {
31 | "eslint": "4.12.1",
32 | "expect.js": "0.3.1",
33 | "husky": "0.14.3",
34 | "lint-staged": "5.0.0",
35 | "mocha": "4.0.1"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/server/node_modules/socket.io/wrapper.mjs:
--------------------------------------------------------------------------------
1 | import io from "./dist/index.js";
2 |
3 | export const {Server, Namespace, Socket} = io;
4 |
--------------------------------------------------------------------------------
/server/node_modules/string-width/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const stringWidth: {
2 | /**
3 | Get the visual width of a string - the number of columns required to display it.
4 |
5 | Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width.
6 |
7 | @example
8 | ```
9 | import stringWidth = require('string-width');
10 |
11 | stringWidth('a');
12 | //=> 1
13 |
14 | stringWidth('古');
15 | //=> 2
16 |
17 | stringWidth('\u001B[1m古\u001B[22m');
18 | //=> 2
19 | ```
20 | */
21 | (string: string): number;
22 |
23 | // TODO: remove this in the next major version, refactor the whole definition to:
24 | // declare function stringWidth(string: string): number;
25 | // export = stringWidth;
26 | default: typeof stringWidth;
27 | }
28 |
29 | export = stringWidth;
30 |
--------------------------------------------------------------------------------
/server/node_modules/strip-ansi/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
3 |
4 | @example
5 | ```
6 | import stripAnsi = require('strip-ansi');
7 |
8 | stripAnsi('\u001B[4mUnicorn\u001B[0m');
9 | //=> 'Unicorn'
10 |
11 | stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
12 | //=> 'Click'
13 | ```
14 | */
15 | declare function stripAnsi(string: string): string;
16 |
17 | export = stripAnsi;
18 |
--------------------------------------------------------------------------------
/server/node_modules/strip-ansi/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const ansiRegex = require('ansi-regex');
3 |
4 | module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string;
5 |
--------------------------------------------------------------------------------
/server/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/server/node_modules/to-readable-stream/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const {Readable} = require('stream');
3 |
4 | module.exports = input => (
5 | new Readable({
6 | read() {
7 | this.push(input);
8 | this.push(null);
9 | }
10 | })
11 | );
12 |
--------------------------------------------------------------------------------
/server/node_modules/to-readable-stream/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "to-readable-stream",
3 | "version": "1.0.0",
4 | "description": "Convert a string/Buffer/Uint8Array to a readable stream",
5 | "license": "MIT",
6 | "repository": "sindresorhus/to-readable-stream",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=6"
14 | },
15 | "scripts": {
16 | "test": "xo && ava"
17 | },
18 | "files": [
19 | "index.js"
20 | ],
21 | "keywords": [
22 | "stream",
23 | "readablestream",
24 | "string",
25 | "buffer",
26 | "uint8array",
27 | "from",
28 | "into",
29 | "to",
30 | "transform",
31 | "convert",
32 | "readable",
33 | "pull"
34 | ],
35 | "devDependencies": {
36 | "ava": "*",
37 | "get-stream": "^3.0.0",
38 | "xo": "*"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/server/node_modules/toidentifier/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.1 / 2021-11-14
2 | ==================
3 |
4 | * pref: enable strict mode
5 |
6 | 1.0.0 / 2018-07-09
7 | ==================
8 |
9 | * Initial release
10 |
--------------------------------------------------------------------------------
/server/node_modules/toidentifier/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * toidentifier
3 | * Copyright(c) 2016 Douglas Christopher Wilson
4 | * MIT Licensed
5 | */
6 |
7 | 'use strict'
8 |
9 | /**
10 | * Module exports.
11 | * @public
12 | */
13 |
14 | module.exports = toIdentifier
15 |
16 | /**
17 | * Trasform the given string into a JavaScript identifier
18 | *
19 | * @param {string} str
20 | * @returns {string}
21 | * @public
22 | */
23 |
24 | function toIdentifier (str) {
25 | return str
26 | .split(' ')
27 | .map(function (token) {
28 | return token.slice(0, 1).toUpperCase() + token.slice(1)
29 | })
30 | .join('')
31 | .replace(/[^ _0-9a-z]/gi, '')
32 | }
33 |
--------------------------------------------------------------------------------
/server/node_modules/touch/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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/touch/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | ../../../nopt/bin/nopt.js
--------------------------------------------------------------------------------
/server/node_modules/touch/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)",
3 | "name": "touch",
4 | "description": "like touch(1) in node",
5 | "version": "3.1.0",
6 | "repository": "git://github.com/isaacs/node-touch.git",
7 | "bin": {
8 | "nodetouch": "./bin/nodetouch.js"
9 | },
10 | "dependencies": {
11 | "nopt": "~1.0.10"
12 | },
13 | "license": "ISC",
14 | "scripts": {
15 | "test": "tap test/*.js --100 -J",
16 | "preversion": "npm test",
17 | "postversion": "npm publish",
18 | "postpublish": "git push origin --all; git push origin --tags"
19 | },
20 | "devDependencies": {
21 | "mutate-fs": "^1.1.0",
22 | "tap": "^10.7.0"
23 | },
24 | "files": [
25 | "index.js",
26 | "bin/nodetouch.js"
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/index.d.ts:
--------------------------------------------------------------------------------
1 | // These are all the basic types that's compatible with all supported TypeScript versions.
2 | export * from './base';
3 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/source/async-return-type.d.ts:
--------------------------------------------------------------------------------
1 | import {PromiseValue} from './promise-value';
2 |
3 | type AsyncFunction = (...args: any[]) => Promise;
4 |
5 | /**
6 | Unwrap the return type of a function that returns a `Promise`.
7 |
8 | There has been [discussion](https://github.com/microsoft/TypeScript/pull/35998) about implementing this type in TypeScript.
9 |
10 | @example
11 | ```ts
12 | import {AsyncReturnType} from 'type-fest';
13 | import {asyncFunction} from 'api';
14 |
15 | // This type resolves to the unwrapped return type of `asyncFunction`.
16 | type Value = AsyncReturnType;
17 |
18 | async function doSomething(value: Value) {}
19 |
20 | asyncFunction().then(value => doSomething(value));
21 | ```
22 | */
23 | export type AsyncReturnType = PromiseValue>;
24 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/source/merge.d.ts:
--------------------------------------------------------------------------------
1 | import {Except} from './except';
2 |
3 | /**
4 | Merge two types into a new type. Keys of the second type overrides keys of the first type.
5 |
6 | @example
7 | ```
8 | import {Merge} from 'type-fest';
9 |
10 | type Foo = {
11 | a: number;
12 | b: string;
13 | };
14 |
15 | type Bar = {
16 | b: number;
17 | };
18 |
19 | const ab: Merge = {a: 1, b: 2};
20 | ```
21 | */
22 | export type Merge = Except> & SecondType;
23 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/source/promisable.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Create a type that represents either the value or the value wrapped in `PromiseLike`.
3 |
4 | Use-cases:
5 | - A function accepts a callback that may either return a value synchronously or may return a promised value.
6 | - This type could be the return type of `Promise#then()`, `Promise#catch()`, and `Promise#finally()` callbacks.
7 |
8 | Please upvote [this issue](https://github.com/microsoft/TypeScript/issues/31394) if you want to have this type as a built-in in TypeScript.
9 |
10 | @example
11 | ```
12 | import {Promisable} from 'type-fest';
13 |
14 | async function logger(getLogEntry: () => Promisable): Promise {
15 | const entry = await getLogEntry();
16 | console.log(entry);
17 | }
18 |
19 | logger(() => 'foo');
20 | logger(() => Promise.resolve('bar'));
21 | ```
22 | */
23 | export type Promisable = T | PromiseLike;
24 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/source/stringified.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Create a type with the keys of the given type changed to `string` type.
3 |
4 | Use-case: Changing interface values to strings in order to use them in a form model.
5 |
6 | @example
7 | ```
8 | import {Stringified} from 'type-fest';
9 |
10 | type Car {
11 | model: string;
12 | speed: number;
13 | }
14 |
15 | const carForm: Stringified = {
16 | model: 'Foo',
17 | speed: '101'
18 | };
19 | ```
20 | */
21 | export type Stringified = {[KeyType in keyof ObjectType]: string};
22 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/source/utilities.d.ts:
--------------------------------------------------------------------------------
1 | export type UpperCaseCharacters = 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z';
2 |
3 | export type WordSeparators = '-' | '_' | ' ';
4 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/ts41/index.d.ts:
--------------------------------------------------------------------------------
1 | // These are all the basic types that's compatible with all supported TypeScript versions.
2 | export * from '../base';
3 |
4 | // These are special types that require at least TypeScript 4.1.
5 | export {CamelCase} from './camel-case';
6 | export {KebabCase} from './kebab-case';
7 | export {PascalCase} from './pascal-case';
8 | export {SnakeCase} from './snake-case';
9 | export {DelimiterCase} from './delimiter-case';
10 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/ts41/kebab-case.d.ts:
--------------------------------------------------------------------------------
1 | import {DelimiterCase} from './delimiter-case';
2 |
3 | /**
4 | Convert a string literal to kebab-case.
5 |
6 | This can be useful when, for example, converting a camel-cased object property to a kebab-cased CSS class name or a command-line flag.
7 |
8 | @example
9 | ```
10 | import {KebabCase} from 'type-fest';
11 |
12 | // Simple
13 |
14 | const someVariable: KebabCase<'fooBar'> = 'foo-bar';
15 |
16 | // Advanced
17 |
18 | type KebabCasedProps = {
19 | [K in keyof T as KebabCase]: T[K]
20 | };
21 |
22 | interface CliOptions {
23 | dryRun: boolean;
24 | includeFile: string;
25 | foo: number;
26 | }
27 |
28 | const rawCliOptions: KebabCasedProps = {
29 | 'dry-run': true,
30 | 'include-file': 'bar.js',
31 | foo: 123
32 | };
33 | ```
34 | */
35 |
36 | export type KebabCase = DelimiterCase;
37 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/ts41/pascal-case.d.ts:
--------------------------------------------------------------------------------
1 | import {CamelCase} from './camel-case';
2 |
3 | /**
4 | Converts a string literal to pascal-case.
5 |
6 | @example
7 | ```
8 | import {PascalCase} from 'type-fest';
9 |
10 | // Simple
11 |
12 | const someVariable: PascalCase<'foo-bar'> = 'FooBar';
13 |
14 | // Advanced
15 |
16 | type PascalCaseProps = {
17 | [K in keyof T as PascalCase]: T[K]
18 | };
19 |
20 | interface RawOptions {
21 | 'dry-run': boolean;
22 | 'full_family_name': string;
23 | foo: number;
24 | }
25 |
26 | const dbResult: CamelCasedProps = {
27 | DryRun: true,
28 | FullFamilyName: 'bar.js',
29 | Foo: 123
30 | };
31 | ```
32 | */
33 |
34 | export type PascalCase = CamelCase extends string
35 | ? Capitalize>
36 | : CamelCase;
37 |
--------------------------------------------------------------------------------
/server/node_modules/type-fest/ts41/snake-case.d.ts:
--------------------------------------------------------------------------------
1 | import {DelimiterCase} from './delimiter-case';
2 |
3 | /**
4 | Convert a string literal to snake-case.
5 |
6 | This can be useful when, for example, converting a camel-cased object property to a snake-cased SQL column name.
7 |
8 | @example
9 | ```
10 | import {SnakeCase} from 'type-fest';
11 |
12 | // Simple
13 |
14 | const someVariable: SnakeCase<'fooBar'> = 'foo_bar';
15 |
16 | // Advanced
17 |
18 | type SnakeCasedProps = {
19 | [K in keyof T as SnakeCase]: T[K]
20 | };
21 |
22 | interface ModelProps {
23 | isHappy: boolean;
24 | fullFamilyName: string;
25 | foo: number;
26 | }
27 |
28 | const dbResult: SnakeCasedProps = {
29 | 'is_happy': true,
30 | 'full_family_name': 'Carla Smith',
31 | foo: 123
32 | };
33 | ```
34 | */
35 | export type SnakeCase = DelimiterCase;
36 |
--------------------------------------------------------------------------------
/server/node_modules/typedarray-to-buffer/.airtap.yml:
--------------------------------------------------------------------------------
1 | sauce_connect: true
2 | loopback: airtap.local
3 | browsers:
4 | - name: chrome
5 | version: latest
6 | - name: firefox
7 | version: latest
8 | - name: safari
9 | version: latest
10 | - name: microsoftedge
11 | version: latest
12 | - name: ie
13 | version: latest
14 | - name: iphone
15 | version: latest
16 |
--------------------------------------------------------------------------------
/server/node_modules/typedarray-to-buffer/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - lts/*
4 | addons:
5 | sauce_connect: true
6 | hosts:
7 | - airtap.local
8 | env:
9 | global:
10 | - secure: i51rE9rZGHbcZWlL58j3H1qtL23OIV2r0X4TcQKNI3pw2mubdHFJmfPNNO19ItfReu8wwQMxOehKamwaNvqMiKWyHfn/QcThFQysqzgGZ6AgnUbYx9od6XFNDeWd1sVBf7QBAL07y7KWlYGWCwFwWjabSVySzQhEBdisPcskfkI=
11 | - secure: BKq6/5z9LK3KDkTjs7BGeBZ1KsWgz+MsAXZ4P64NSeVGFaBdXU45+ww1mwxXFt5l22/mhyOQZfebQl+kGVqRSZ+DEgQeCymkNZ6CD8c6w6cLuOJXiXwuu/cDM2DD0tfGeu2YZC7yEikP7BqEFwH3D324rRzSGLF2RSAAwkOI7bE=
12 |
--------------------------------------------------------------------------------
/server/node_modules/typedarray-to-buffer/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Convert a typed array to a Buffer without a copy
3 | *
4 | * Author: Feross Aboukhadijeh
5 | * License: MIT
6 | *
7 | * `npm install typedarray-to-buffer`
8 | */
9 |
10 | var isTypedArray = require('is-typedarray').strict
11 |
12 | module.exports = function typedarrayToBuffer (arr) {
13 | if (isTypedArray(arr)) {
14 | // To avoid a copy, use the typed array's underlying ArrayBuffer to back new Buffer
15 | var buf = Buffer.from(arr.buffer)
16 | if (arr.byteLength !== arr.buffer.byteLength) {
17 | // Respect the "view", i.e. byteOffset and byteLength, without doing a copy
18 | buf = buf.slice(arr.byteOffset, arr.byteOffset + arr.byteLength)
19 | }
20 | return buf
21 | } else {
22 | // Pass through all other types to `Buffer.from`
23 | return Buffer.from(arr)
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/server/node_modules/undefsafe/.github/workflows/release.yml:
--------------------------------------------------------------------------------
1 | name: Release
2 | on:
3 | push:
4 | branches:
5 | - master
6 | jobs:
7 | release:
8 | name: Release
9 | runs-on: ubuntu-18.04
10 | steps:
11 | - name: Checkout
12 | uses: actions/checkout@v1
13 | - name: Setup Node.js
14 | uses: actions/setup-node@v1
15 | with:
16 | node-version: 16
17 | - name: Install dependencies
18 | run: npm ci
19 | - name: Test
20 | run: npm run test
21 | - name: Release
22 | env:
23 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
24 | NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
25 | run: npx semantic-release
26 |
--------------------------------------------------------------------------------
/server/node_modules/undefsafe/.jscsrc:
--------------------------------------------------------------------------------
1 | {
2 | "preset": "node-style-guide",
3 | "requireCapitalizedComments": null,
4 | "requireSpacesInAnonymousFunctionExpression": {
5 | "beforeOpeningCurlyBrace": true,
6 | "beforeOpeningRoundBrace": true
7 | },
8 | "disallowSpacesInNamedFunctionExpression": {
9 | "beforeOpeningRoundBrace": true
10 | },
11 | "excludeFiles": ["node_modules/**"],
12 | "disallowSpacesInFunction": null
13 | }
14 |
--------------------------------------------------------------------------------
/server/node_modules/undefsafe/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "browser": false,
3 | "camelcase": true,
4 | "curly": true,
5 | "devel": true,
6 | "eqeqeq": true,
7 | "forin": true,
8 | "indent": 2,
9 | "noarg": true,
10 | "node": true,
11 | "quotmark": "single",
12 | "undef": true,
13 | "strict": false,
14 | "unused": true
15 | }
16 |
17 |
--------------------------------------------------------------------------------
/server/node_modules/undefsafe/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 | language: node_js
3 | cache:
4 | directories:
5 | - node_modules
6 | notifications:
7 | email: false
8 | node_js:
9 | - '4'
10 | before_install:
11 | - npm i -g npm@^2.0.0
12 | before_script:
13 | - npm prune
14 | after_success:
15 | - npm run semantic-release
16 | branches:
17 | except:
18 | - "/^v\\d+\\.\\d+\\.\\d+$/"
19 |
--------------------------------------------------------------------------------
/server/node_modules/undefsafe/example.js:
--------------------------------------------------------------------------------
1 | var undefsafe = require('undefsafe');
2 |
3 | var object = {
4 | a: {
5 | b: {
6 | c: 1,
7 | d: [1, 2, 3],
8 | e: 'remy'
9 | }
10 | }
11 | };
12 |
13 | console.log(undefsafe(object, 'a.b.e')); // "remy"
14 | console.log(undefsafe(object, 'a.b.not.found')); // undefined
15 |
--------------------------------------------------------------------------------
/server/node_modules/unique-string/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Generate a unique random string.
3 |
4 | @returns A 32 character unique string. Matches the length of MD5, which is [unique enough](https://stackoverflow.com/a/2444336/64949) for non-crypto purposes.
5 |
6 | @example
7 | ```
8 | import uniqueString = require('unique-string');
9 |
10 | uniqueString();
11 | //=> 'b4de2a49c8ffa3fbee04446f045483b2'
12 | ```
13 | */
14 | declare function uniqueString(): string;
15 |
16 | export = uniqueString;
17 |
--------------------------------------------------------------------------------
/server/node_modules/unique-string/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const cryptoRandomString = require('crypto-random-string');
3 |
4 | module.exports = () => cryptoRandomString(32);
5 |
--------------------------------------------------------------------------------
/server/node_modules/unique-string/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "unique-string",
3 | "version": "2.0.0",
4 | "description": "Generate a unique random string",
5 | "license": "MIT",
6 | "repository": "sindresorhus/unique-string",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "unique",
24 | "string",
25 | "random",
26 | "text",
27 | "id",
28 | "identifier",
29 | "slug",
30 | "hex"
31 | ],
32 | "dependencies": {
33 | "crypto-random-string": "^2.0.0"
34 | },
35 | "devDependencies": {
36 | "ava": "^1.4.1",
37 | "tsd": "^0.7.2",
38 | "xo": "^0.24.0"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/server/node_modules/unique-string/readme.md:
--------------------------------------------------------------------------------
1 | # unique-string [](https://travis-ci.org/sindresorhus/unique-string)
2 |
3 | > Generate a unique random string
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install unique-string
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const uniqueString = require('unique-string');
17 |
18 | uniqueString();
19 | //=> 'b4de2a49c8ffa3fbee04446f045483b2'
20 | ```
21 |
22 |
23 | ## API
24 |
25 | ### uniqueString()
26 |
27 | Returns a 32 character unique string. Matches the length of MD5, which is [unique enough](https://stackoverflow.com/a/2444336/64949) for non-crypto purposes.
28 |
29 |
30 | ## License
31 |
32 | MIT © [Sindre Sorhus](https://sindresorhus.com)
33 |
--------------------------------------------------------------------------------
/server/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/server/node_modules/unpipe/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "unpipe",
3 | "description": "Unpipe a stream from all destinations",
4 | "version": "1.0.0",
5 | "author": "Douglas Christopher Wilson ",
6 | "license": "MIT",
7 | "repository": "stream-utils/unpipe",
8 | "devDependencies": {
9 | "istanbul": "0.3.15",
10 | "mocha": "2.2.5",
11 | "readable-stream": "1.1.13"
12 | },
13 | "files": [
14 | "HISTORY.md",
15 | "LICENSE",
16 | "README.md",
17 | "index.js"
18 | ],
19 | "engines": {
20 | "node": ">= 0.8"
21 | },
22 | "scripts": {
23 | "test": "mocha --reporter spec --bail --check-leaks test/",
24 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
25 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/check.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable unicorn/no-process-exit */
2 | 'use strict';
3 | let updateNotifier = require('.');
4 |
5 | const options = JSON.parse(process.argv[2]);
6 |
7 | updateNotifier = new updateNotifier.UpdateNotifier(options);
8 |
9 | (async () => {
10 | // Exit process when offline
11 | setTimeout(process.exit, 1000 * 30);
12 |
13 | const update = await updateNotifier.fetchInfo();
14 |
15 | // Only update the last update check time on success
16 | updateNotifier.config.set('lastUpdateCheck', Date.now());
17 |
18 | if (update.type && update.type !== 'latest') {
19 | updateNotifier.config.set('update', update);
20 | }
21 |
22 | // Call process exit explicitly to terminate the child process,
23 | // otherwise the child process will run forever, according to the Node.js docs
24 | process.exit();
25 | })().catch(error => {
26 | console.error(error);
27 | process.exit(1);
28 | });
29 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/.bin/is-ci:
--------------------------------------------------------------------------------
1 | ../../../is-ci/bin.js
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../semver/bin/semver.js
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/classes/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SemVer: require('./semver.js'),
3 | Range: require('./range.js'),
4 | Comparator: require('./comparator.js')
5 | }
6 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/clean.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const clean = (version, options) => {
3 | const s = parse(version.trim().replace(/^[=v]+/, ''), options)
4 | return s ? s.version : null
5 | }
6 | module.exports = clean
7 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/compare-build.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compareBuild = (a, b, loose) => {
3 | const versionA = new SemVer(a, loose)
4 | const versionB = new SemVer(b, loose)
5 | return versionA.compare(versionB) || versionA.compareBuild(versionB)
6 | }
7 | module.exports = compareBuild
8 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/compare-loose.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const compareLoose = (a, b) => compare(a, b, true)
3 | module.exports = compareLoose
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/compare.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compare = (a, b, loose) =>
3 | new SemVer(a, loose).compare(new SemVer(b, loose))
4 |
5 | module.exports = compare
6 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/diff.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const eq = require('./eq')
3 |
4 | const diff = (version1, version2) => {
5 | if (eq(version1, version2)) {
6 | return null
7 | } else {
8 | const v1 = parse(version1)
9 | const v2 = parse(version2)
10 | const hasPre = v1.prerelease.length || v2.prerelease.length
11 | const prefix = hasPre ? 'pre' : ''
12 | const defaultResult = hasPre ? 'prerelease' : ''
13 | for (const key in v1) {
14 | if (key === 'major' || key === 'minor' || key === 'patch') {
15 | if (v1[key] !== v2[key]) {
16 | return prefix + key
17 | }
18 | }
19 | }
20 | return defaultResult // may be undefined
21 | }
22 | }
23 | module.exports = diff
24 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/eq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const eq = (a, b, loose) => compare(a, b, loose) === 0
3 | module.exports = eq
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/gt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gt = (a, b, loose) => compare(a, b, loose) > 0
3 | module.exports = gt
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/gte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gte = (a, b, loose) => compare(a, b, loose) >= 0
3 | module.exports = gte
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/inc.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 |
3 | const inc = (version, release, options, identifier) => {
4 | if (typeof (options) === 'string') {
5 | identifier = options
6 | options = undefined
7 | }
8 |
9 | try {
10 | return new SemVer(version, options).inc(release, identifier).version
11 | } catch (er) {
12 | return null
13 | }
14 | }
15 | module.exports = inc
16 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/lt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lt = (a, b, loose) => compare(a, b, loose) < 0
3 | module.exports = lt
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/lte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lte = (a, b, loose) => compare(a, b, loose) <= 0
3 | module.exports = lte
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/major.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const major = (a, loose) => new SemVer(a, loose).major
3 | module.exports = major
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/minor.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const minor = (a, loose) => new SemVer(a, loose).minor
3 | module.exports = minor
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/neq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const neq = (a, b, loose) => compare(a, b, loose) !== 0
3 | module.exports = neq
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/parse.js:
--------------------------------------------------------------------------------
1 | const {MAX_LENGTH} = require('../internal/constants')
2 | const { re, t } = require('../internal/re')
3 | const SemVer = require('../classes/semver')
4 |
5 | const parseOptions = require('../internal/parse-options')
6 | const parse = (version, options) => {
7 | options = parseOptions(options)
8 |
9 | if (version instanceof SemVer) {
10 | return version
11 | }
12 |
13 | if (typeof version !== 'string') {
14 | return null
15 | }
16 |
17 | if (version.length > MAX_LENGTH) {
18 | return null
19 | }
20 |
21 | const r = options.loose ? re[t.LOOSE] : re[t.FULL]
22 | if (!r.test(version)) {
23 | return null
24 | }
25 |
26 | try {
27 | return new SemVer(version, options)
28 | } catch (er) {
29 | return null
30 | }
31 | }
32 |
33 | module.exports = parse
34 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/patch.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const patch = (a, loose) => new SemVer(a, loose).patch
3 | module.exports = patch
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/prerelease.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const prerelease = (version, options) => {
3 | const parsed = parse(version, options)
4 | return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
5 | }
6 | module.exports = prerelease
7 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/rcompare.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const rcompare = (a, b, loose) => compare(b, a, loose)
3 | module.exports = rcompare
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/rsort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
3 | module.exports = rsort
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/satisfies.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const satisfies = (version, range, options) => {
3 | try {
4 | range = new Range(range, options)
5 | } catch (er) {
6 | return false
7 | }
8 | return range.test(version)
9 | }
10 | module.exports = satisfies
11 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/sort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
3 | module.exports = sort
4 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/functions/valid.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const valid = (version, options) => {
3 | const v = parse(version, options)
4 | return v ? v.version : null
5 | }
6 | module.exports = valid
7 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/internal/constants.js:
--------------------------------------------------------------------------------
1 | // Note: this is the semver.org version of the spec that it implements
2 | // Not necessarily the package version of this code.
3 | const SEMVER_SPEC_VERSION = '2.0.0'
4 |
5 | const MAX_LENGTH = 256
6 | const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
7 | /* istanbul ignore next */ 9007199254740991
8 |
9 | // Max safe segment length for coercion.
10 | const MAX_SAFE_COMPONENT_LENGTH = 16
11 |
12 | module.exports = {
13 | SEMVER_SPEC_VERSION,
14 | MAX_LENGTH,
15 | MAX_SAFE_INTEGER,
16 | MAX_SAFE_COMPONENT_LENGTH
17 | }
18 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/internal/debug.js:
--------------------------------------------------------------------------------
1 | const debug = (
2 | typeof process === 'object' &&
3 | process.env &&
4 | process.env.NODE_DEBUG &&
5 | /\bsemver\b/i.test(process.env.NODE_DEBUG)
6 | ) ? (...args) => console.error('SEMVER', ...args)
7 | : () => {}
8 |
9 | module.exports = debug
10 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/internal/identifiers.js:
--------------------------------------------------------------------------------
1 | const numeric = /^[0-9]+$/
2 | const compareIdentifiers = (a, b) => {
3 | const anum = numeric.test(a)
4 | const bnum = numeric.test(b)
5 |
6 | if (anum && bnum) {
7 | a = +a
8 | b = +b
9 | }
10 |
11 | return a === b ? 0
12 | : (anum && !bnum) ? -1
13 | : (bnum && !anum) ? 1
14 | : a < b ? -1
15 | : 1
16 | }
17 |
18 | const rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)
19 |
20 | module.exports = {
21 | compareIdentifiers,
22 | rcompareIdentifiers
23 | }
24 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/internal/parse-options.js:
--------------------------------------------------------------------------------
1 | // parse out just the options we care about so we always get a consistent
2 | // obj with keys in a consistent order.
3 | const opts = ['includePrerelease', 'loose', 'rtl']
4 | const parseOptions = options =>
5 | !options ? {}
6 | : typeof options !== 'object' ? { loose: true }
7 | : opts.filter(k => options[k]).reduce((options, k) => {
8 | options[k] = true
9 | return options
10 | }, {})
11 | module.exports = parseOptions
12 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/preload.js:
--------------------------------------------------------------------------------
1 | // XXX remove in v8 or beyond
2 | module.exports = require('./index.js')
3 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/gtr.js:
--------------------------------------------------------------------------------
1 | // Determine if version is greater than all the versions possible in the range.
2 | const outside = require('./outside')
3 | const gtr = (version, range, options) => outside(version, range, '>', options)
4 | module.exports = gtr
5 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/intersects.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const intersects = (r1, r2, options) => {
3 | r1 = new Range(r1, options)
4 | r2 = new Range(r2, options)
5 | return r1.intersects(r2)
6 | }
7 | module.exports = intersects
8 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/ltr.js:
--------------------------------------------------------------------------------
1 | const outside = require('./outside')
2 | // Determine if version is less than all the versions possible in the range
3 | const ltr = (version, range, options) => outside(version, range, '<', options)
4 | module.exports = ltr
5 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/max-satisfying.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const Range = require('../classes/range')
3 |
4 | const maxSatisfying = (versions, range, options) => {
5 | let max = null
6 | let maxSV = null
7 | let rangeObj = null
8 | try {
9 | rangeObj = new Range(range, options)
10 | } catch (er) {
11 | return null
12 | }
13 | versions.forEach((v) => {
14 | if (rangeObj.test(v)) {
15 | // satisfies(v, range, options)
16 | if (!max || maxSV.compare(v) === -1) {
17 | // compare(max, v, true)
18 | max = v
19 | maxSV = new SemVer(max, options)
20 | }
21 | }
22 | })
23 | return max
24 | }
25 | module.exports = maxSatisfying
26 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/min-satisfying.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const Range = require('../classes/range')
3 | const minSatisfying = (versions, range, options) => {
4 | let min = null
5 | let minSV = null
6 | let rangeObj = null
7 | try {
8 | rangeObj = new Range(range, options)
9 | } catch (er) {
10 | return null
11 | }
12 | versions.forEach((v) => {
13 | if (rangeObj.test(v)) {
14 | // satisfies(v, range, options)
15 | if (!min || minSV.compare(v) === 1) {
16 | // compare(min, v, true)
17 | min = v
18 | minSV = new SemVer(min, options)
19 | }
20 | }
21 | })
22 | return min
23 | }
24 | module.exports = minSatisfying
25 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/to-comparators.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 |
3 | // Mostly just for testing and legacy API reasons
4 | const toComparators = (range, options) =>
5 | new Range(range, options).set
6 | .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
7 |
8 | module.exports = toComparators
9 |
--------------------------------------------------------------------------------
/server/node_modules/update-notifier/node_modules/semver/ranges/valid.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const validRange = (range, options) => {
3 | try {
4 | // Return '*' instead of '' so that truthiness works.
5 | // This will throw if it's invalid anyway
6 | return new Range(range, options).range || '*'
7 | } catch (er) {
8 | return null
9 | }
10 | }
11 | module.exports = validRange
12 |
--------------------------------------------------------------------------------
/server/node_modules/url-parse-lax/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const url = require('url');
3 | const prependHttp = require('prepend-http');
4 |
5 | module.exports = (input, options) => {
6 | if (typeof input !== 'string') {
7 | throw new TypeError(`Expected \`url\` to be of type \`string\`, got \`${typeof input}\` instead.`);
8 | }
9 |
10 | const finalUrl = prependHttp(input, Object.assign({https: true}, options));
11 | return url.parse(finalUrl);
12 | };
13 |
--------------------------------------------------------------------------------
/server/node_modules/url-parse-lax/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "url-parse-lax",
3 | "version": "3.0.0",
4 | "description": "Lax url.parse() with support for protocol-less URLs & IPs",
5 | "license": "MIT",
6 | "repository": "sindresorhus/url-parse-lax",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=4"
14 | },
15 | "scripts": {
16 | "test": "xo && ava"
17 | },
18 | "files": [
19 | "index.js"
20 | ],
21 | "keywords": [
22 | "url",
23 | "uri",
24 | "parse",
25 | "parser",
26 | "loose",
27 | "lax",
28 | "protocol",
29 | "less",
30 | "protocol-less",
31 | "ip",
32 | "ipv4",
33 | "ipv6"
34 | ],
35 | "dependencies": {
36 | "prepend-http": "^2.0.0"
37 | },
38 | "devDependencies": {
39 | "ava": "*",
40 | "xo": "*"
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/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 |
--------------------------------------------------------------------------------
/server/node_modules/widest-line/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const widestLine: {
2 | /**
3 | Get the visual width of the widest line in a string - the number of columns required to display it.
4 |
5 | @example
6 | ```
7 | import widestLine = require('widest-line');
8 |
9 | widestLine('古\n\u001B[1m@\u001B[22m');
10 | //=> 2
11 | ```
12 | */
13 | (input: string): number;
14 |
15 | // TODO: remove this in the next major version, refactor definition to:
16 | // declare function widestLine(input: string): number;
17 | // export = widestLine;
18 | default: typeof widestLine;
19 | };
20 |
21 | export = widestLine;
22 |
--------------------------------------------------------------------------------
/server/node_modules/widest-line/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const stringWidth = require('string-width');
3 |
4 | const widestLine = input => {
5 | let max = 0;
6 |
7 | for (const line of input.split('\n')) {
8 | max = Math.max(max, stringWidth(line));
9 | }
10 |
11 | return max;
12 | };
13 |
14 | module.exports = widestLine;
15 | // TODO: remove this in the next major version
16 | module.exports.default = widestLine;
17 |
--------------------------------------------------------------------------------
/server/node_modules/wrappy/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/wrappy/README.md:
--------------------------------------------------------------------------------
1 | # wrappy
2 |
3 | Callback wrapping utility
4 |
5 | ## USAGE
6 |
7 | ```javascript
8 | var wrappy = require("wrappy")
9 |
10 | // var wrapper = wrappy(wrapperFunction)
11 |
12 | // make sure a cb is called only once
13 | // See also: http://npm.im/once for this specific use case
14 | var once = wrappy(function (cb) {
15 | var called = false
16 | return function () {
17 | if (called) return
18 | called = true
19 | return cb.apply(this, arguments)
20 | }
21 | })
22 |
23 | function printBoo () {
24 | console.log('boo')
25 | }
26 | // has some rando property
27 | printBoo.iAmBooPrinter = true
28 |
29 | var onlyPrintOnce = once(printBoo)
30 |
31 | onlyPrintOnce() // prints 'boo'
32 | onlyPrintOnce() // does nothing
33 |
34 | // random property is retained!
35 | assert.equal(onlyPrintOnce.iAmBooPrinter, true)
36 | ```
37 |
--------------------------------------------------------------------------------
/server/node_modules/wrappy/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "wrappy",
3 | "version": "1.0.2",
4 | "description": "Callback wrapping utility",
5 | "main": "wrappy.js",
6 | "files": [
7 | "wrappy.js"
8 | ],
9 | "directories": {
10 | "test": "test"
11 | },
12 | "dependencies": {},
13 | "devDependencies": {
14 | "tap": "^2.3.1"
15 | },
16 | "scripts": {
17 | "test": "tap --coverage test/*.js"
18 | },
19 | "repository": {
20 | "type": "git",
21 | "url": "https://github.com/npm/wrappy"
22 | },
23 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)",
24 | "license": "ISC",
25 | "bugs": {
26 | "url": "https://github.com/npm/wrappy/issues"
27 | },
28 | "homepage": "https://github.com/npm/wrappy"
29 | }
30 |
--------------------------------------------------------------------------------
/server/node_modules/write-file-atomic/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015, Rebecca Turner
2 |
3 | Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
4 |
5 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
6 |
7 |
--------------------------------------------------------------------------------
/server/node_modules/ws/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function () {
4 | throw new Error(
5 | 'ws does not work in the browser. Browser clients must use the native ' +
6 | 'WebSocket object'
7 | );
8 | };
9 |
--------------------------------------------------------------------------------
/server/node_modules/ws/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const WebSocket = require('./lib/websocket');
4 |
5 | WebSocket.createWebSocketStream = require('./lib/stream');
6 | WebSocket.Server = require('./lib/websocket-server');
7 | WebSocket.Receiver = require('./lib/receiver');
8 | WebSocket.Sender = require('./lib/sender');
9 |
10 | WebSocket.WebSocket = WebSocket;
11 | WebSocket.WebSocketServer = WebSocket.Server;
12 |
13 | module.exports = WebSocket;
14 |
--------------------------------------------------------------------------------
/server/node_modules/ws/lib/constants.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | BINARY_TYPES: ['nodebuffer', 'arraybuffer', 'fragments'],
5 | EMPTY_BUFFER: Buffer.alloc(0),
6 | GUID: '258EAFA5-E914-47DA-95CA-C5AB0DC85B11',
7 | kForOnEventAttribute: Symbol('kIsForOnEventAttribute'),
8 | kListener: Symbol('kListener'),
9 | kStatusCode: Symbol('status-code'),
10 | kWebSocket: Symbol('websocket'),
11 | NOOP: () => {}
12 | };
13 |
--------------------------------------------------------------------------------
/server/node_modules/ws/wrapper.mjs:
--------------------------------------------------------------------------------
1 | import createWebSocketStream from './lib/stream.js';
2 | import Receiver from './lib/receiver.js';
3 | import Sender from './lib/sender.js';
4 | import WebSocket from './lib/websocket.js';
5 | import WebSocketServer from './lib/websocket-server.js';
6 |
7 | export { createWebSocketStream, Receiver, Sender, WebSocket, WebSocketServer };
8 | export default WebSocket;
9 |
--------------------------------------------------------------------------------
/server/node_modules/xdg-basedir/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const os = require('os');
3 | const path = require('path');
4 |
5 | const homeDirectory = os.homedir();
6 | const {env} = process;
7 |
8 | exports.data = env.XDG_DATA_HOME ||
9 | (homeDirectory ? path.join(homeDirectory, '.local', 'share') : undefined);
10 |
11 | exports.config = env.XDG_CONFIG_HOME ||
12 | (homeDirectory ? path.join(homeDirectory, '.config') : undefined);
13 |
14 | exports.cache = env.XDG_CACHE_HOME || (homeDirectory ? path.join(homeDirectory, '.cache') : undefined);
15 |
16 | exports.runtime = env.XDG_RUNTIME_DIR || undefined;
17 |
18 | exports.dataDirs = (env.XDG_DATA_DIRS || '/usr/local/share/:/usr/share/').split(':');
19 |
20 | if (exports.data) {
21 | exports.dataDirs.unshift(exports.data);
22 | }
23 |
24 | exports.configDirs = (env.XDG_CONFIG_DIRS || '/etc/xdg').split(':');
25 |
26 | if (exports.config) {
27 | exports.configDirs.unshift(exports.config);
28 | }
29 |
--------------------------------------------------------------------------------
/server/node_modules/xdg-basedir/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "xdg-basedir",
3 | "version": "4.0.0",
4 | "description": "Get XDG Base Directory paths",
5 | "license": "MIT",
6 | "repository": "sindresorhus/xdg-basedir",
7 | "author": {
8 | "name": "Sindre Sorhus",
9 | "email": "sindresorhus@gmail.com",
10 | "url": "sindresorhus.com"
11 | },
12 | "engines": {
13 | "node": ">=8"
14 | },
15 | "scripts": {
16 | "test": "xo && ava && tsd"
17 | },
18 | "files": [
19 | "index.js",
20 | "index.d.ts"
21 | ],
22 | "keywords": [
23 | "xdg",
24 | "base",
25 | "directory",
26 | "basedir",
27 | "path",
28 | "data",
29 | "config",
30 | "cache",
31 | "linux",
32 | "unix",
33 | "spec"
34 | ],
35 | "devDependencies": {
36 | "ava": "^1.4.1",
37 | "import-fresh": "^3.0.0",
38 | "tsd": "^0.7.2",
39 | "xo": "^0.24.0"
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/server/node_modules/yallist/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter and Contributors
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
10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 |
--------------------------------------------------------------------------------
/server/node_modules/yallist/iterator.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = function (Yallist) {
3 | Yallist.prototype[Symbol.iterator] = function* () {
4 | for (let walker = this.head; walker; walker = walker.next) {
5 | yield walker.value
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/server/node_modules/yallist/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "yallist",
3 | "version": "4.0.0",
4 | "description": "Yet Another Linked List",
5 | "main": "yallist.js",
6 | "directories": {
7 | "test": "test"
8 | },
9 | "files": [
10 | "yallist.js",
11 | "iterator.js"
12 | ],
13 | "dependencies": {},
14 | "devDependencies": {
15 | "tap": "^12.1.0"
16 | },
17 | "scripts": {
18 | "test": "tap test/*.js --100",
19 | "preversion": "npm test",
20 | "postversion": "npm publish",
21 | "postpublish": "git push origin --all; git push origin --tags"
22 | },
23 | "repository": {
24 | "type": "git",
25 | "url": "git+https://github.com/isaacs/yallist.git"
26 | },
27 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)",
28 | "license": "ISC"
29 | }
30 |
--------------------------------------------------------------------------------
/server/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "server",
3 | "version": "1.0.0",
4 | "main": "index.js",
5 | "license": "MIT",
6 | "scripts": {
7 | "start": "nodemon index.js"
8 | },
9 | "dependencies": {
10 | "cors": "^2.8.5",
11 | "express": "^4.17.3",
12 | "nodemon": "^2.0.15",
13 | "socket.io": "^4.4.1"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------