├── .gitignore ├── README.md ├── assets ├── 1.png ├── 2.png ├── 3.png ├── 4.jpg └── 5.jpg ├── backend ├── .gitIgnore ├── index.js ├── node_modules │ ├── .bin │ │ ├── is-ci │ │ ├── is-ci.cmd │ │ ├── is-ci.ps1 │ │ ├── mime │ │ ├── mime.cmd │ │ ├── mime.ps1 │ │ ├── nodemon │ │ ├── nodemon.cmd │ │ ├── nodemon.ps1 │ │ ├── nodetouch │ │ ├── nodetouch.cmd │ │ ├── nodetouch.ps1 │ │ ├── nopt │ │ ├── nopt.cmd │ │ ├── nopt.ps1 │ │ ├── rc │ │ ├── rc.cmd │ │ ├── rc.ps1 │ │ ├── semver │ │ ├── semver.cmd │ │ └── semver.ps1 │ ├── .package-lock.json │ ├── @sindresorhus │ │ └── is │ │ │ ├── dist │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ └── index.js.map │ │ │ ├── license │ │ │ ├── package.json │ │ │ └── readme.md │ ├── @szmarczak │ │ └── http-timer │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ └── source │ │ │ └── index.js │ ├── @types │ │ ├── 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 │ │ ├── webidl-conversions │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.d.ts │ │ │ └── package.json │ │ └── whatwg-url │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── dist │ │ │ ├── URL-impl.d.ts │ │ │ ├── URL.d.ts │ │ │ ├── URLSearchParams-impl.d.ts │ │ │ └── URLSearchParams.d.ts │ │ │ ├── index.d.ts │ │ │ ├── package.json │ │ │ ├── ts3.9 │ │ │ ├── dist │ │ │ │ ├── URL-impl.d.ts │ │ │ │ ├── URL.d.ts │ │ │ │ ├── URLSearchParams-impl.d.ts │ │ │ │ └── URLSearchParams.d.ts │ │ │ ├── index.d.ts │ │ │ └── webidl2js-wrapper.d.ts │ │ │ └── webidl2js-wrapper.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 │ ├── asynckit │ │ ├── LICENSE │ │ ├── README.md │ │ ├── bench.js │ │ ├── index.js │ │ ├── lib │ │ │ ├── abort.js │ │ │ ├── async.js │ │ │ ├── defer.js │ │ │ ├── iterate.js │ │ │ ├── readable_asynckit.js │ │ │ ├── readable_parallel.js │ │ │ ├── readable_serial.js │ │ │ ├── readable_serial_ordered.js │ │ │ ├── state.js │ │ │ ├── streamify.js │ │ │ └── terminator.js │ │ ├── package.json │ │ ├── parallel.js │ │ ├── serial.js │ │ ├── serialOrdered.js │ │ └── stream.js │ ├── axios │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── UPGRADE_GUIDE.md │ │ ├── dist │ │ │ ├── axios.js │ │ │ ├── axios.map │ │ │ ├── axios.min.js │ │ │ └── axios.min.map │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── lib │ │ │ ├── adapters │ │ │ │ ├── README.md │ │ │ │ ├── http.js │ │ │ │ └── xhr.js │ │ │ ├── axios.js │ │ │ ├── cancel │ │ │ │ ├── CancelToken.js │ │ │ │ ├── CanceledError.js │ │ │ │ └── isCancel.js │ │ │ ├── core │ │ │ │ ├── Axios.js │ │ │ │ ├── AxiosError.js │ │ │ │ ├── InterceptorManager.js │ │ │ │ ├── README.md │ │ │ │ ├── buildFullPath.js │ │ │ │ ├── dispatchRequest.js │ │ │ │ ├── mergeConfig.js │ │ │ │ ├── settle.js │ │ │ │ └── transformData.js │ │ │ ├── defaults │ │ │ │ ├── env │ │ │ │ │ └── FormData.js │ │ │ │ ├── index.js │ │ │ │ └── transitional.js │ │ │ ├── env │ │ │ │ ├── README.md │ │ │ │ └── data.js │ │ │ ├── helpers │ │ │ │ ├── README.md │ │ │ │ ├── bind.js │ │ │ │ ├── buildURL.js │ │ │ │ ├── combineURLs.js │ │ │ │ ├── cookies.js │ │ │ │ ├── deprecatedMethod.js │ │ │ │ ├── isAbsoluteURL.js │ │ │ │ ├── isAxiosError.js │ │ │ │ ├── isURLSameOrigin.js │ │ │ │ ├── normalizeHeaderName.js │ │ │ │ ├── null.js │ │ │ │ ├── parseHeaders.js │ │ │ │ ├── parseProtocol.js │ │ │ │ ├── spread.js │ │ │ │ ├── toFormData.js │ │ │ │ └── validator.js │ │ │ └── utils.js │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── tslint.json │ ├── balanced-match │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── base64-js │ │ ├── LICENSE │ │ ├── README.md │ │ ├── base64js.min.js │ │ ├── index.d.ts │ │ ├── index.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 │ │ ├── SECURITY.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 │ ├── bson │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── bower.json │ │ ├── bson-ts34.d.ts │ │ ├── bson.d.ts │ │ ├── dist │ │ │ ├── bson.browser.esm.js │ │ │ ├── bson.browser.esm.js.map │ │ │ ├── bson.browser.umd.js │ │ │ ├── bson.browser.umd.js.map │ │ │ ├── bson.bundle.js │ │ │ ├── bson.bundle.js.map │ │ │ ├── bson.esm.js │ │ │ └── bson.esm.js.map │ │ ├── etc │ │ │ └── prepare.js │ │ ├── lib │ │ │ ├── binary.js │ │ │ ├── binary.js.map │ │ │ ├── bson.js │ │ │ ├── bson.js.map │ │ │ ├── code.js │ │ │ ├── code.js.map │ │ │ ├── constants.js │ │ │ ├── constants.js.map │ │ │ ├── db_ref.js │ │ │ ├── db_ref.js.map │ │ │ ├── decimal128.js │ │ │ ├── decimal128.js.map │ │ │ ├── double.js │ │ │ ├── double.js.map │ │ │ ├── ensure_buffer.js │ │ │ ├── ensure_buffer.js.map │ │ │ ├── error.js │ │ │ ├── error.js.map │ │ │ ├── extended_json.js │ │ │ ├── extended_json.js.map │ │ │ ├── float_parser.js │ │ │ ├── float_parser.js.map │ │ │ ├── int_32.js │ │ │ ├── int_32.js.map │ │ │ ├── long.js │ │ │ ├── long.js.map │ │ │ ├── map.js │ │ │ ├── map.js.map │ │ │ ├── max_key.js │ │ │ ├── max_key.js.map │ │ │ ├── min_key.js │ │ │ ├── min_key.js.map │ │ │ ├── objectid.js │ │ │ ├── objectid.js.map │ │ │ ├── parser │ │ │ │ ├── calculate_size.js │ │ │ │ ├── calculate_size.js.map │ │ │ │ ├── deserializer.js │ │ │ │ ├── deserializer.js.map │ │ │ │ ├── serializer.js │ │ │ │ ├── serializer.js.map │ │ │ │ ├── utils.js │ │ │ │ └── utils.js.map │ │ │ ├── regexp.js │ │ │ ├── regexp.js.map │ │ │ ├── symbol.js │ │ │ ├── symbol.js.map │ │ │ ├── timestamp.js │ │ │ ├── timestamp.js.map │ │ │ ├── utils │ │ │ │ ├── global.js │ │ │ │ └── global.js.map │ │ │ ├── uuid.js │ │ │ ├── uuid.js.map │ │ │ ├── uuid_utils.js │ │ │ ├── uuid_utils.js.map │ │ │ ├── validate_utf8.js │ │ │ └── validate_utf8.js.map │ │ ├── package.json │ │ └── src │ │ │ ├── binary.ts │ │ │ ├── bson.ts │ │ │ ├── code.ts │ │ │ ├── constants.ts │ │ │ ├── db_ref.ts │ │ │ ├── decimal128.ts │ │ │ ├── double.ts │ │ │ ├── ensure_buffer.ts │ │ │ ├── error.ts │ │ │ ├── extended_json.ts │ │ │ ├── float_parser.ts │ │ │ ├── int_32.ts │ │ │ ├── long.ts │ │ │ ├── map.ts │ │ │ ├── max_key.ts │ │ │ ├── min_key.ts │ │ │ ├── objectid.ts │ │ │ ├── parser │ │ │ ├── calculate_size.ts │ │ │ ├── deserializer.ts │ │ │ ├── serializer.ts │ │ │ └── utils.ts │ │ │ ├── regexp.ts │ │ │ ├── symbol.ts │ │ │ ├── timestamp.ts │ │ │ ├── utils │ │ │ └── global.ts │ │ │ ├── uuid.ts │ │ │ ├── uuid_utils.ts │ │ │ └── validate_utf8.ts │ ├── buffer │ │ ├── AUTHORS.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.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 │ ├── call-bind │ │ ├── .eslintignore │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── callBound.js │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ ├── callBound.js │ │ │ └── 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 │ ├── combined-stream │ │ ├── License │ │ ├── Readme.md │ │ ├── lib │ │ │ └── combined_stream.js │ │ ├── package.json │ │ └── yarn.lock │ ├── 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 │ │ ├── SECURITY.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 │ │ ├── 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 │ ├── delayed-stream │ │ ├── .npmignore │ │ ├── License │ │ ├── Makefile │ │ ├── Readme.md │ │ ├── lib │ │ │ └── delayed_stream.js │ │ └── package.json │ ├── denque │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ └── package.json │ ├── depd │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ ├── lib │ │ │ └── browser │ │ │ │ └── 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 │ ├── 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 │ │ ├── SECURITY.md │ │ ├── index.js │ │ └── package.json │ ├── follow-redirects │ │ ├── LICENSE │ │ ├── README.md │ │ ├── debug.js │ │ ├── http.js │ │ ├── https.js │ │ ├── index.js │ │ └── package.json │ ├── form-data │ │ ├── License │ │ ├── README.md.bak │ │ ├── Readme.md │ │ ├── index.d.ts │ │ ├── lib │ │ │ ├── browser.js │ │ │ ├── form_data.js │ │ │ └── populate.js │ │ └── package.json │ ├── forwarded │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── fresh │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── function-bind │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .jscs.json │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── implementation.js │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ ├── .eslintrc │ │ │ └── index.js │ ├── get-intrinsic │ │ ├── .eslintignore │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ └── GetIntrinsic.js │ ├── 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-symbols │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ ├── shams.js │ │ └── test │ │ │ ├── index.js │ │ │ ├── shams │ │ │ ├── core-js.js │ │ │ └── get-own-property-symbols.js │ │ │ └── tests.js │ ├── has-yarn │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── license │ │ ├── package.json │ │ └── readme.md │ ├── has │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ │ └── index.js │ │ └── test │ │ │ └── index.js │ ├── 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 │ ├── ieee754 │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.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 │ ├── ip │ │ ├── README.md │ │ ├── lib │ │ │ └── ip.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 │ ├── kareem │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── docs.js │ │ ├── gulpfile.js │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ ├── examples.test.js │ │ │ ├── misc.test.js │ │ │ ├── post.test.js │ │ │ ├── pre.test.js │ │ │ └── wrap.test.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 │ │ │ │ ├── semver.cmd │ │ │ │ └── semver.ps1 │ │ │ └── semver │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── bin │ │ │ │ └── semver.js │ │ │ │ ├── package.json │ │ │ │ ├── range.bnf │ │ │ │ └── semver.js │ │ ├── package.json │ │ └── readme.md │ ├── media-typer │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── memory-pager │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test.js │ ├── 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 │ ├── mongodb-connection-string-url │ │ ├── .esm-wrapper.mjs │ │ ├── LICENSE │ │ ├── README.md │ │ ├── lib │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── index.js.map │ │ │ ├── redact.d.ts │ │ │ ├── redact.js │ │ │ └── redact.js.map │ │ └── package.json │ ├── mongodb │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── etc │ │ │ └── prepare.js │ │ ├── lib │ │ │ ├── admin.js │ │ │ ├── admin.js.map │ │ │ ├── bson.js │ │ │ ├── bson.js.map │ │ │ ├── bulk │ │ │ │ ├── common.js │ │ │ │ ├── common.js.map │ │ │ │ ├── ordered.js │ │ │ │ ├── ordered.js.map │ │ │ │ ├── unordered.js │ │ │ │ └── unordered.js.map │ │ │ ├── change_stream.js │ │ │ ├── change_stream.js.map │ │ │ ├── cmap │ │ │ │ ├── auth │ │ │ │ │ ├── auth_provider.js │ │ │ │ │ ├── auth_provider.js.map │ │ │ │ │ ├── gssapi.js │ │ │ │ │ ├── gssapi.js.map │ │ │ │ │ ├── mongo_credentials.js │ │ │ │ │ ├── mongo_credentials.js.map │ │ │ │ │ ├── mongocr.js │ │ │ │ │ ├── mongocr.js.map │ │ │ │ │ ├── mongodb_aws.js │ │ │ │ │ ├── mongodb_aws.js.map │ │ │ │ │ ├── plain.js │ │ │ │ │ ├── plain.js.map │ │ │ │ │ ├── providers.js │ │ │ │ │ ├── providers.js.map │ │ │ │ │ ├── scram.js │ │ │ │ │ ├── scram.js.map │ │ │ │ │ ├── x509.js │ │ │ │ │ └── x509.js.map │ │ │ │ ├── command_monitoring_events.js │ │ │ │ ├── command_monitoring_events.js.map │ │ │ │ ├── commands.js │ │ │ │ ├── commands.js.map │ │ │ │ ├── connect.js │ │ │ │ ├── connect.js.map │ │ │ │ ├── connection.js │ │ │ │ ├── connection.js.map │ │ │ │ ├── connection_pool.js │ │ │ │ ├── connection_pool.js.map │ │ │ │ ├── connection_pool_events.js │ │ │ │ ├── connection_pool_events.js.map │ │ │ │ ├── errors.js │ │ │ │ ├── errors.js.map │ │ │ │ ├── message_stream.js │ │ │ │ ├── message_stream.js.map │ │ │ │ ├── metrics.js │ │ │ │ ├── metrics.js.map │ │ │ │ ├── stream_description.js │ │ │ │ ├── stream_description.js.map │ │ │ │ └── wire_protocol │ │ │ │ │ ├── compression.js │ │ │ │ │ ├── compression.js.map │ │ │ │ │ ├── constants.js │ │ │ │ │ ├── constants.js.map │ │ │ │ │ ├── shared.js │ │ │ │ │ └── shared.js.map │ │ │ ├── collection.js │ │ │ ├── collection.js.map │ │ │ ├── connection_string.js │ │ │ ├── connection_string.js.map │ │ │ ├── constants.js │ │ │ ├── constants.js.map │ │ │ ├── cursor │ │ │ │ ├── abstract_cursor.js │ │ │ │ ├── abstract_cursor.js.map │ │ │ │ ├── aggregation_cursor.js │ │ │ │ ├── aggregation_cursor.js.map │ │ │ │ ├── find_cursor.js │ │ │ │ └── find_cursor.js.map │ │ │ ├── db.js │ │ │ ├── db.js.map │ │ │ ├── deps.js │ │ │ ├── deps.js.map │ │ │ ├── encrypter.js │ │ │ ├── encrypter.js.map │ │ │ ├── error.js │ │ │ ├── error.js.map │ │ │ ├── explain.js │ │ │ ├── explain.js.map │ │ │ ├── gridfs │ │ │ │ ├── download.js │ │ │ │ ├── download.js.map │ │ │ │ ├── index.js │ │ │ │ ├── index.js.map │ │ │ │ ├── upload.js │ │ │ │ └── upload.js.map │ │ │ ├── index.js │ │ │ ├── index.js.map │ │ │ ├── logger.js │ │ │ ├── logger.js.map │ │ │ ├── mongo_client.js │ │ │ ├── mongo_client.js.map │ │ │ ├── mongo_types.js │ │ │ ├── mongo_types.js.map │ │ │ ├── operations │ │ │ │ ├── add_user.js │ │ │ │ ├── add_user.js.map │ │ │ │ ├── aggregate.js │ │ │ │ ├── aggregate.js.map │ │ │ │ ├── bulk_write.js │ │ │ │ ├── bulk_write.js.map │ │ │ │ ├── collections.js │ │ │ │ ├── collections.js.map │ │ │ │ ├── command.js │ │ │ │ ├── command.js.map │ │ │ │ ├── common_functions.js │ │ │ │ ├── common_functions.js.map │ │ │ │ ├── connect.js │ │ │ │ ├── connect.js.map │ │ │ │ ├── count.js │ │ │ │ ├── count.js.map │ │ │ │ ├── count_documents.js │ │ │ │ ├── count_documents.js.map │ │ │ │ ├── create_collection.js │ │ │ │ ├── create_collection.js.map │ │ │ │ ├── delete.js │ │ │ │ ├── delete.js.map │ │ │ │ ├── distinct.js │ │ │ │ ├── distinct.js.map │ │ │ │ ├── drop.js │ │ │ │ ├── drop.js.map │ │ │ │ ├── estimated_document_count.js │ │ │ │ ├── estimated_document_count.js.map │ │ │ │ ├── eval.js │ │ │ │ ├── eval.js.map │ │ │ │ ├── execute_operation.js │ │ │ │ ├── execute_operation.js.map │ │ │ │ ├── find.js │ │ │ │ ├── find.js.map │ │ │ │ ├── find_and_modify.js │ │ │ │ ├── find_and_modify.js.map │ │ │ │ ├── get_more.js │ │ │ │ ├── get_more.js.map │ │ │ │ ├── indexes.js │ │ │ │ ├── indexes.js.map │ │ │ │ ├── insert.js │ │ │ │ ├── insert.js.map │ │ │ │ ├── is_capped.js │ │ │ │ ├── is_capped.js.map │ │ │ │ ├── list_collections.js │ │ │ │ ├── list_collections.js.map │ │ │ │ ├── list_databases.js │ │ │ │ ├── list_databases.js.map │ │ │ │ ├── map_reduce.js │ │ │ │ ├── map_reduce.js.map │ │ │ │ ├── operation.js │ │ │ │ ├── operation.js.map │ │ │ │ ├── options_operation.js │ │ │ │ ├── options_operation.js.map │ │ │ │ ├── profiling_level.js │ │ │ │ ├── profiling_level.js.map │ │ │ │ ├── remove_user.js │ │ │ │ ├── remove_user.js.map │ │ │ │ ├── rename.js │ │ │ │ ├── rename.js.map │ │ │ │ ├── run_command.js │ │ │ │ ├── run_command.js.map │ │ │ │ ├── set_profiling_level.js │ │ │ │ ├── set_profiling_level.js.map │ │ │ │ ├── stats.js │ │ │ │ ├── stats.js.map │ │ │ │ ├── update.js │ │ │ │ ├── update.js.map │ │ │ │ ├── validate_collection.js │ │ │ │ └── validate_collection.js.map │ │ │ ├── promise_provider.js │ │ │ ├── promise_provider.js.map │ │ │ ├── read_concern.js │ │ │ ├── read_concern.js.map │ │ │ ├── read_preference.js │ │ │ ├── read_preference.js.map │ │ │ ├── sdam │ │ │ │ ├── common.js │ │ │ │ ├── common.js.map │ │ │ │ ├── events.js │ │ │ │ ├── events.js.map │ │ │ │ ├── monitor.js │ │ │ │ ├── monitor.js.map │ │ │ │ ├── server.js │ │ │ │ ├── server.js.map │ │ │ │ ├── server_description.js │ │ │ │ ├── server_description.js.map │ │ │ │ ├── server_selection.js │ │ │ │ ├── server_selection.js.map │ │ │ │ ├── srv_polling.js │ │ │ │ ├── srv_polling.js.map │ │ │ │ ├── topology.js │ │ │ │ ├── topology.js.map │ │ │ │ ├── topology_description.js │ │ │ │ └── topology_description.js.map │ │ │ ├── sessions.js │ │ │ ├── sessions.js.map │ │ │ ├── sort.js │ │ │ ├── sort.js.map │ │ │ ├── transactions.js │ │ │ ├── transactions.js.map │ │ │ ├── utils.js │ │ │ ├── utils.js.map │ │ │ ├── write_concern.js │ │ │ └── write_concern.js.map │ │ ├── mongodb.d.ts │ │ ├── package.json │ │ ├── src │ │ │ ├── admin.ts │ │ │ ├── bson.ts │ │ │ ├── bulk │ │ │ │ ├── common.ts │ │ │ │ ├── ordered.ts │ │ │ │ └── unordered.ts │ │ │ ├── change_stream.ts │ │ │ ├── cmap │ │ │ │ ├── auth │ │ │ │ │ ├── auth_provider.ts │ │ │ │ │ ├── gssapi.ts │ │ │ │ │ ├── mongo_credentials.ts │ │ │ │ │ ├── mongocr.ts │ │ │ │ │ ├── mongodb_aws.ts │ │ │ │ │ ├── plain.ts │ │ │ │ │ ├── providers.ts │ │ │ │ │ ├── scram.ts │ │ │ │ │ └── x509.ts │ │ │ │ ├── command_monitoring_events.ts │ │ │ │ ├── commands.ts │ │ │ │ ├── connect.ts │ │ │ │ ├── connection.ts │ │ │ │ ├── connection_pool.ts │ │ │ │ ├── connection_pool_events.ts │ │ │ │ ├── errors.ts │ │ │ │ ├── message_stream.ts │ │ │ │ ├── metrics.ts │ │ │ │ ├── stream_description.ts │ │ │ │ └── wire_protocol │ │ │ │ │ ├── compression.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ └── shared.ts │ │ │ ├── collection.ts │ │ │ ├── connection_string.ts │ │ │ ├── constants.ts │ │ │ ├── cursor │ │ │ │ ├── abstract_cursor.ts │ │ │ │ ├── aggregation_cursor.ts │ │ │ │ └── find_cursor.ts │ │ │ ├── db.ts │ │ │ ├── deps.ts │ │ │ ├── encrypter.ts │ │ │ ├── error.ts │ │ │ ├── explain.ts │ │ │ ├── gridfs │ │ │ │ ├── download.ts │ │ │ │ ├── index.ts │ │ │ │ └── upload.ts │ │ │ ├── index.ts │ │ │ ├── logger.ts │ │ │ ├── mongo_client.ts │ │ │ ├── mongo_types.ts │ │ │ ├── operations │ │ │ │ ├── add_user.ts │ │ │ │ ├── aggregate.ts │ │ │ │ ├── bulk_write.ts │ │ │ │ ├── collections.ts │ │ │ │ ├── command.ts │ │ │ │ ├── common_functions.ts │ │ │ │ ├── connect.ts │ │ │ │ ├── count.ts │ │ │ │ ├── count_documents.ts │ │ │ │ ├── create_collection.ts │ │ │ │ ├── delete.ts │ │ │ │ ├── distinct.ts │ │ │ │ ├── drop.ts │ │ │ │ ├── estimated_document_count.ts │ │ │ │ ├── eval.ts │ │ │ │ ├── execute_operation.ts │ │ │ │ ├── find.ts │ │ │ │ ├── find_and_modify.ts │ │ │ │ ├── get_more.ts │ │ │ │ ├── indexes.ts │ │ │ │ ├── insert.ts │ │ │ │ ├── is_capped.ts │ │ │ │ ├── list_collections.ts │ │ │ │ ├── list_databases.ts │ │ │ │ ├── map_reduce.ts │ │ │ │ ├── operation.ts │ │ │ │ ├── options_operation.ts │ │ │ │ ├── profiling_level.ts │ │ │ │ ├── remove_user.ts │ │ │ │ ├── rename.ts │ │ │ │ ├── run_command.ts │ │ │ │ ├── set_profiling_level.ts │ │ │ │ ├── stats.ts │ │ │ │ ├── update.ts │ │ │ │ └── validate_collection.ts │ │ │ ├── promise_provider.ts │ │ │ ├── read_concern.ts │ │ │ ├── read_preference.ts │ │ │ ├── sdam │ │ │ │ ├── common.ts │ │ │ │ ├── events.ts │ │ │ │ ├── monitor.ts │ │ │ │ ├── server.ts │ │ │ │ ├── server_description.ts │ │ │ │ ├── server_selection.ts │ │ │ │ ├── srv_polling.ts │ │ │ │ ├── topology.ts │ │ │ │ └── topology_description.ts │ │ │ ├── sessions.ts │ │ │ ├── sort.ts │ │ │ ├── transactions.ts │ │ │ ├── utils.ts │ │ │ └── write_concern.ts │ │ └── tsconfig.json │ ├── mongoose │ │ ├── .eslintrc.json │ │ ├── .lgtm.yml │ │ ├── CHANGELOG.md │ │ ├── History.md │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── browser.js │ │ ├── build-browser.js │ │ ├── dist │ │ │ └── browser.umd.js │ │ ├── index.js │ │ ├── lib │ │ │ ├── aggregate.js │ │ │ ├── browser.js │ │ │ ├── browserDocument.js │ │ │ ├── cast.js │ │ │ ├── cast │ │ │ │ ├── boolean.js │ │ │ │ ├── date.js │ │ │ │ ├── decimal128.js │ │ │ │ ├── number.js │ │ │ │ ├── objectid.js │ │ │ │ └── string.js │ │ │ ├── collection.js │ │ │ ├── connection.js │ │ │ ├── connectionstate.js │ │ │ ├── cursor │ │ │ │ ├── AggregationCursor.js │ │ │ │ ├── ChangeStream.js │ │ │ │ └── QueryCursor.js │ │ │ ├── document.js │ │ │ ├── document_provider.js │ │ │ ├── driver.js │ │ │ ├── drivers │ │ │ │ ├── SPEC.md │ │ │ │ ├── browser │ │ │ │ │ ├── ReadPreference.js │ │ │ │ │ ├── binary.js │ │ │ │ │ ├── decimal128.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── objectid.js │ │ │ │ └── node-mongodb-native │ │ │ │ │ ├── ReadPreference.js │ │ │ │ │ ├── binary.js │ │ │ │ │ ├── collection.js │ │ │ │ │ ├── connection.js │ │ │ │ │ ├── decimal128.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── objectid.js │ │ │ ├── error │ │ │ │ ├── browserMissingSchema.js │ │ │ │ ├── cast.js │ │ │ │ ├── disconnected.js │ │ │ │ ├── divergentArray.js │ │ │ │ ├── eachAsyncMultiError.js │ │ │ │ ├── index.js │ │ │ │ ├── messages.js │ │ │ │ ├── missingSchema.js │ │ │ │ ├── mongooseError.js │ │ │ │ ├── notFound.js │ │ │ │ ├── objectExpected.js │ │ │ │ ├── objectParameter.js │ │ │ │ ├── overwriteModel.js │ │ │ │ ├── parallelSave.js │ │ │ │ ├── parallelValidate.js │ │ │ │ ├── serverSelection.js │ │ │ │ ├── strict.js │ │ │ │ ├── syncIndexes.js │ │ │ │ ├── validation.js │ │ │ │ ├── validator.js │ │ │ │ └── version.js │ │ │ ├── helpers │ │ │ │ ├── aggregate │ │ │ │ │ ├── prepareDiscriminatorPipeline.js │ │ │ │ │ └── stringifyFunctionOperators.js │ │ │ │ ├── arrayDepth.js │ │ │ │ ├── clone.js │ │ │ │ ├── common.js │ │ │ │ ├── cursor │ │ │ │ │ └── eachAsync.js │ │ │ │ ├── discriminator │ │ │ │ │ ├── areDiscriminatorValuesEqual.js │ │ │ │ │ ├── checkEmbeddedDiscriminatorKeyProjection.js │ │ │ │ │ ├── getConstructor.js │ │ │ │ │ ├── getDiscriminatorByValue.js │ │ │ │ │ └── getSchemaDiscriminatorByValue.js │ │ │ │ ├── document │ │ │ │ │ ├── cleanModifiedSubpaths.js │ │ │ │ │ ├── compile.js │ │ │ │ │ ├── getEmbeddedDiscriminatorPath.js │ │ │ │ │ └── handleSpreadDoc.js │ │ │ │ ├── each.js │ │ │ │ ├── get.js │ │ │ │ ├── getConstructorName.js │ │ │ │ ├── getDefaultBulkwriteResult.js │ │ │ │ ├── getFunctionName.js │ │ │ │ ├── immediate.js │ │ │ │ ├── indexes │ │ │ │ │ ├── applySchemaCollation.js │ │ │ │ │ ├── decorateDiscriminatorIndexOptions.js │ │ │ │ │ ├── getRelatedIndexes.js │ │ │ │ │ ├── isDefaultIdIndex.js │ │ │ │ │ ├── isIndexEqual.js │ │ │ │ │ └── isTextIndex.js │ │ │ │ ├── isAsyncFunction.js │ │ │ │ ├── isBsonType.js │ │ │ │ ├── isMongooseObject.js │ │ │ │ ├── isObject.js │ │ │ │ ├── isPromise.js │ │ │ │ ├── isSimpleValidator.js │ │ │ │ ├── model │ │ │ │ │ ├── applyHooks.js │ │ │ │ │ ├── applyMethods.js │ │ │ │ │ ├── applyStaticHooks.js │ │ │ │ │ ├── applyStatics.js │ │ │ │ │ ├── castBulkWrite.js │ │ │ │ │ └── discriminator.js │ │ │ │ ├── once.js │ │ │ │ ├── parallelLimit.js │ │ │ │ ├── path │ │ │ │ │ ├── flattenObjectWithDottedPaths.js │ │ │ │ │ ├── parentPaths.js │ │ │ │ │ └── setDottedPath.js │ │ │ │ ├── pluralize.js │ │ │ │ ├── populate │ │ │ │ │ ├── SkipPopulateValue.js │ │ │ │ │ ├── assignRawDocsToIdStructure.js │ │ │ │ │ ├── assignVals.js │ │ │ │ │ ├── createPopulateQueryFilter.js │ │ │ │ │ ├── getModelsMapForPopulate.js │ │ │ │ │ ├── getSchemaTypes.js │ │ │ │ │ ├── getVirtual.js │ │ │ │ │ ├── leanPopulateMap.js │ │ │ │ │ ├── lookupLocalFields.js │ │ │ │ │ ├── markArraySubdocsPopulated.js │ │ │ │ │ ├── modelNamesFromRefPath.js │ │ │ │ │ ├── removeDeselectedForeignField.js │ │ │ │ │ └── validateRef.js │ │ │ │ ├── printJestWarning.js │ │ │ │ ├── processConnectionOptions.js │ │ │ │ ├── projection │ │ │ │ │ ├── applyProjection.js │ │ │ │ │ ├── hasIncludedChildren.js │ │ │ │ │ ├── isDefiningProjection.js │ │ │ │ │ ├── isExclusive.js │ │ │ │ │ ├── isInclusive.js │ │ │ │ │ ├── isPathExcluded.js │ │ │ │ │ ├── isPathSelectedInclusive.js │ │ │ │ │ ├── isSubpath.js │ │ │ │ │ └── parseProjection.js │ │ │ │ ├── promiseOrCallback.js │ │ │ │ ├── query │ │ │ │ │ ├── applyGlobalOption.js │ │ │ │ │ ├── applyQueryMiddleware.js │ │ │ │ │ ├── cast$expr.js │ │ │ │ │ ├── castFilterPath.js │ │ │ │ │ ├── castUpdate.js │ │ │ │ │ ├── completeMany.js │ │ │ │ │ ├── getEmbeddedDiscriminatorPath.js │ │ │ │ │ ├── handleImmutable.js │ │ │ │ │ ├── hasDollarKeys.js │ │ │ │ │ ├── isOperator.js │ │ │ │ │ ├── sanitizeFilter.js │ │ │ │ │ ├── sanitizeProjection.js │ │ │ │ │ ├── selectPopulatedFields.js │ │ │ │ │ ├── trusted.js │ │ │ │ │ ├── validOps.js │ │ │ │ │ └── wrapThunk.js │ │ │ │ ├── schema │ │ │ │ │ ├── addAutoId.js │ │ │ │ │ ├── applyPlugins.js │ │ │ │ │ ├── applyWriteConcern.js │ │ │ │ │ ├── cleanPositionalOperators.js │ │ │ │ │ ├── getIndexes.js │ │ │ │ │ ├── getKeysInSchemaOrder.js │ │ │ │ │ ├── getPath.js │ │ │ │ │ ├── handleIdOption.js │ │ │ │ │ ├── handleTimestampOption.js │ │ │ │ │ ├── idGetter.js │ │ │ │ │ └── merge.js │ │ │ │ ├── schematype │ │ │ │ │ └── handleImmutable.js │ │ │ │ ├── setDefaultsOnInsert.js │ │ │ │ ├── specialProperties.js │ │ │ │ ├── symbols.js │ │ │ │ ├── timers.js │ │ │ │ ├── timestamps │ │ │ │ │ └── setupTimestamps.js │ │ │ │ ├── topology │ │ │ │ │ ├── allServersUnknown.js │ │ │ │ │ ├── isAtlas.js │ │ │ │ │ └── isSSLError.js │ │ │ │ ├── update │ │ │ │ │ ├── applyTimestampsToChildren.js │ │ │ │ │ ├── applyTimestampsToUpdate.js │ │ │ │ │ ├── castArrayFilters.js │ │ │ │ │ ├── modifiedPaths.js │ │ │ │ │ ├── moveImmutableProperties.js │ │ │ │ │ ├── removeUnusedArrayFilters.js │ │ │ │ │ └── updatedPathsByArrayFilter.js │ │ │ │ └── updateValidators.js │ │ │ ├── index.js │ │ │ ├── internal.js │ │ │ ├── model.js │ │ │ ├── options.js │ │ │ ├── options │ │ │ │ ├── PopulateOptions.js │ │ │ │ ├── SchemaArrayOptions.js │ │ │ │ ├── SchemaBufferOptions.js │ │ │ │ ├── SchemaDateOptions.js │ │ │ │ ├── SchemaDocumentArrayOptions.js │ │ │ │ ├── SchemaMapOptions.js │ │ │ │ ├── SchemaNumberOptions.js │ │ │ │ ├── SchemaObjectIdOptions.js │ │ │ │ ├── SchemaStringOptions.js │ │ │ │ ├── SchemaSubdocumentOptions.js │ │ │ │ ├── SchemaTypeOptions.js │ │ │ │ ├── VirtualOptions.js │ │ │ │ ├── propertyOptions.js │ │ │ │ ├── removeOptions.js │ │ │ │ └── saveOptions.js │ │ │ ├── plugins │ │ │ │ ├── clearValidating.js │ │ │ │ ├── removeSubdocs.js │ │ │ │ ├── saveSubdocs.js │ │ │ │ ├── sharding.js │ │ │ │ ├── trackTransaction.js │ │ │ │ └── validateBeforeSave.js │ │ │ ├── promise_provider.js │ │ │ ├── query.js │ │ │ ├── queryhelpers.js │ │ │ ├── schema.js │ │ │ ├── schema │ │ │ │ ├── SubdocumentPath.js │ │ │ │ ├── array.js │ │ │ │ ├── boolean.js │ │ │ │ ├── buffer.js │ │ │ │ ├── date.js │ │ │ │ ├── decimal128.js │ │ │ │ ├── documentarray.js │ │ │ │ ├── index.js │ │ │ │ ├── map.js │ │ │ │ ├── mixed.js │ │ │ │ ├── number.js │ │ │ │ ├── objectid.js │ │ │ │ ├── operators │ │ │ │ │ ├── bitwise.js │ │ │ │ │ ├── exists.js │ │ │ │ │ ├── geospatial.js │ │ │ │ │ ├── helpers.js │ │ │ │ │ ├── text.js │ │ │ │ │ └── type.js │ │ │ │ ├── string.js │ │ │ │ └── symbols.js │ │ │ ├── schematype.js │ │ │ ├── statemachine.js │ │ │ ├── types │ │ │ │ ├── ArraySubdocument.js │ │ │ │ ├── DocumentArray │ │ │ │ │ ├── index.js │ │ │ │ │ ├── isMongooseDocumentArray.js │ │ │ │ │ └── methods │ │ │ │ │ │ └── index.js │ │ │ │ ├── array │ │ │ │ │ ├── index.js │ │ │ │ │ ├── isMongooseArray.js │ │ │ │ │ └── methods │ │ │ │ │ │ └── index.js │ │ │ │ ├── buffer.js │ │ │ │ ├── decimal128.js │ │ │ │ ├── index.js │ │ │ │ ├── map.js │ │ │ │ ├── objectid.js │ │ │ │ └── subdocument.js │ │ │ ├── utils.js │ │ │ ├── validoptions.js │ │ │ └── virtualtype.js │ │ ├── node_modules │ │ │ └── ms │ │ │ │ ├── index.js │ │ │ │ ├── license.md │ │ │ │ ├── package.json │ │ │ │ └── readme.md │ │ ├── package.json │ │ ├── tools │ │ │ ├── auth.js │ │ │ ├── repl.js │ │ │ └── sharded.js │ │ ├── tsconfig.json │ │ └── types │ │ │ ├── aggregate.d.ts │ │ │ ├── connection.d.ts │ │ │ ├── cursor.d.ts │ │ │ ├── document.d.ts │ │ │ ├── error.d.ts │ │ │ ├── index.d.ts │ │ │ ├── mongooseoptions.d.ts │ │ │ ├── pipelinestage.d.ts │ │ │ └── schemaoptions.d.ts │ ├── mpath │ │ ├── .travis.yml │ │ ├── History.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── index.js │ │ │ └── stringToParts.js │ │ ├── package.json │ │ └── test │ │ │ ├── .eslintrc.yml │ │ │ ├── index.js │ │ │ └── stringToParts.js │ ├── mquery │ │ ├── .eslintignore │ │ ├── .eslintrc.json │ │ ├── .travis.yml │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── lib │ │ │ ├── collection │ │ │ │ ├── collection.js │ │ │ │ ├── index.js │ │ │ │ └── node.js │ │ │ ├── env.js │ │ │ ├── mquery.js │ │ │ ├── permissions.js │ │ │ └── utils.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 │ │ └── test │ │ │ ├── .eslintrc.yml │ │ │ ├── collection │ │ │ ├── browser.js │ │ │ ├── mongo.js │ │ │ └── node.js │ │ │ ├── env.js │ │ │ ├── index.js │ │ │ └── utils.test.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 │ │ │ ├── debug │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── node.js │ │ │ │ ├── package.json │ │ │ │ └── src │ │ │ │ │ ├── browser.js │ │ │ │ │ ├── common.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── node.js │ │ │ └── ms │ │ │ │ ├── index.js │ │ │ │ ├── license.md │ │ │ │ ├── package.json │ │ │ │ └── readme.md │ │ └── package.json │ ├── nopt │ │ ├── .npmignore │ │ ├── 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 │ ├── object-inspect │ │ ├── .eslintignore │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── example │ │ │ ├── all.js │ │ │ ├── circular.js │ │ │ ├── fn.js │ │ │ └── inspect.js │ │ ├── index.js │ │ ├── package.json │ │ ├── readme.markdown │ │ ├── test-core-js.js │ │ ├── test │ │ │ ├── bigint.js │ │ │ ├── browser │ │ │ │ └── dom.js │ │ │ ├── circular.js │ │ │ ├── deep.js │ │ │ ├── element.js │ │ │ ├── err.js │ │ │ ├── fakes.js │ │ │ ├── fn.js │ │ │ ├── has.js │ │ │ ├── holes.js │ │ │ ├── indent-option.js │ │ │ ├── inspect.js │ │ │ ├── lowbyte.js │ │ │ ├── number.js │ │ │ ├── quoteStyle.js │ │ │ ├── toStringTag.js │ │ │ ├── undef.js │ │ │ └── values.js │ │ └── util.inspect.js │ ├── 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 │ │ │ │ ├── semver.cmd │ │ │ │ └── semver.ps1 │ │ │ └── semver │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── bin │ │ │ │ └── semver.js │ │ │ │ ├── package.json │ │ │ │ ├── range.bnf │ │ │ │ └── semver.js │ │ ├── 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 │ ├── punycode │ │ ├── LICENSE-MIT.txt │ │ ├── README.md │ │ ├── package.json │ │ ├── punycode.es6.js │ │ └── punycode.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 │ │ ├── SECURITY.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 │ │ ├── package.json │ │ └── registry-url.js │ ├── registry-url │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── license │ │ ├── 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 │ ├── saslprep │ │ ├── .editorconfig │ │ ├── .gitattributes │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── code-points.mem │ │ ├── generate-code-points.js │ │ ├── index.js │ │ ├── lib │ │ │ ├── code-points.js │ │ │ ├── memory-code-points.js │ │ │ └── util.js │ │ ├── package.json │ │ ├── readme.md │ │ └── test │ │ │ ├── index.js │ │ │ └── util.js │ ├── semver-diff │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── license │ │ ├── node_modules │ │ │ ├── .bin │ │ │ │ ├── semver │ │ │ │ ├── semver.cmd │ │ │ │ └── semver.ps1 │ │ │ └── semver │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── bin │ │ │ │ └── semver.js │ │ │ │ ├── package.json │ │ │ │ ├── range.bnf │ │ │ │ └── semver.js │ │ ├── package.json │ │ └── readme.md │ ├── semver │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── bin │ │ │ └── semver │ │ ├── package.json │ │ ├── range.bnf │ │ └── semver.js │ ├── send │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.js │ │ ├── node_modules │ │ │ └── ms │ │ │ │ ├── index.js │ │ │ │ ├── license.md │ │ │ │ ├── package.json │ │ │ │ └── readme.md │ │ └── 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 │ ├── side-channel │ │ ├── .eslintignore │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ └── index.js │ ├── sift │ │ ├── MIT-LICENSE.txt │ │ ├── README.md │ │ ├── es │ │ │ ├── index.js │ │ │ └── index.js.map │ │ ├── es5m │ │ │ ├── index.js │ │ │ └── index.js.map │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── lib │ │ │ ├── core.d.ts │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── index.js.map │ │ │ ├── operations.d.ts │ │ │ └── utils.d.ts │ │ ├── package.json │ │ ├── sift.csp.min.js │ │ ├── sift.csp.min.js.map │ │ ├── sift.min.js │ │ ├── sift.min.js.map │ │ └── src │ │ │ ├── core.d.ts │ │ │ ├── core.js │ │ │ ├── core.js.map │ │ │ ├── core.ts │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── index.js.map │ │ │ ├── index.ts │ │ │ ├── operations.d.ts │ │ │ ├── operations.js │ │ │ ├── operations.js.map │ │ │ ├── operations.ts │ │ │ ├── utils.d.ts │ │ │ ├── utils.js │ │ │ ├── utils.js.map │ │ │ └── utils.ts │ ├── signal-exit │ │ ├── LICENSE.txt │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── signals.js │ ├── smart-buffer │ │ ├── .prettierrc.yaml │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── build │ │ │ ├── smartbuffer.js │ │ │ ├── smartbuffer.js.map │ │ │ ├── utils.js │ │ │ └── utils.js.map │ │ ├── docs │ │ │ ├── CHANGELOG.md │ │ │ ├── README_v3.md │ │ │ └── ROADMAP.md │ │ ├── package.json │ │ └── typings │ │ │ ├── smartbuffer.d.ts │ │ │ └── utils.d.ts │ ├── socks │ │ ├── .prettierrc.yaml │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── build │ │ │ ├── client │ │ │ │ ├── socksclient.js │ │ │ │ └── socksclient.js.map │ │ │ ├── common │ │ │ │ ├── constants.js │ │ │ │ ├── constants.js.map │ │ │ │ ├── helpers.js │ │ │ │ ├── helpers.js.map │ │ │ │ ├── receivebuffer.js │ │ │ │ ├── receivebuffer.js.map │ │ │ │ ├── util.js │ │ │ │ └── util.js.map │ │ │ ├── index.js │ │ │ └── index.js.map │ │ ├── docs │ │ │ ├── examples │ │ │ │ ├── index.md │ │ │ │ ├── javascript │ │ │ │ │ ├── associateExample.md │ │ │ │ │ ├── bindExample.md │ │ │ │ │ └── connectExample.md │ │ │ │ └── typescript │ │ │ │ │ ├── associateExample.md │ │ │ │ │ ├── bindExample.md │ │ │ │ │ └── connectExample.md │ │ │ ├── index.md │ │ │ └── migratingFromV1.md │ │ ├── package.json │ │ └── typings │ │ │ ├── client │ │ │ └── socksclient.d.ts │ │ │ ├── common │ │ │ ├── constants.d.ts │ │ │ ├── helpers.d.ts │ │ │ ├── receivebuffer.d.ts │ │ │ └── util.d.ts │ │ │ └── index.d.ts │ ├── sparse-bitfield │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test.js │ ├── 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 │ │ └── package.json │ ├── tr46 │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── mappingTable.json │ │ │ ├── regexes.js │ │ │ └── statusMapping.js │ │ └── 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 │ │ │ │ ├── semver │ │ │ │ ├── semver.cmd │ │ │ │ └── semver.ps1 │ │ │ └── semver │ │ │ │ ├── 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 │ ├── webidl-conversions │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── lib │ │ │ └── index.js │ │ └── package.json │ ├── whatwg-url │ │ ├── LICENSE.txt │ │ ├── README.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── Function.js │ │ │ ├── URL-impl.js │ │ │ ├── URL.js │ │ │ ├── URLSearchParams-impl.js │ │ │ ├── URLSearchParams.js │ │ │ ├── VoidFunction.js │ │ │ ├── encoding.js │ │ │ ├── infra.js │ │ │ ├── percent-encoding.js │ │ │ ├── url-state-machine.js │ │ │ ├── urlencoded.js │ │ │ └── utils.js │ │ ├── package.json │ │ └── webidl2js-wrapper.js │ ├── 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 │ ├── xdg-basedir │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── license │ │ ├── package.json │ │ └── readme.md │ └── yallist │ │ ├── LICENSE │ │ ├── README.md │ │ ├── iterator.js │ │ ├── package.json │ │ └── yallist.js ├── package-lock.json └── package.json ├── build ├── asset-manifest.json ├── favicon.ico ├── index.html ├── logo192.png ├── logo512.png ├── manifest.json ├── robots.txt └── static │ ├── css │ ├── main.c3134dee.css │ └── main.c3134dee.css.map │ └── js │ ├── 787.f263b81f.chunk.js │ ├── 787.f263b81f.chunk.js.map │ ├── main.8961c87b.js │ ├── main.8961c87b.js.LICENSE.txt │ └── main.8961c87b.js.map ├── documentation └── APIRoutes.md ├── package-lock.json ├── package.json ├── public ├── android-chrome-192x192.png ├── android-chrome-512x512.png ├── apple-touch-icon.png ├── favicon-16x16.png ├── favicon-32x32.png ├── favicon.ico ├── index.html ├── manifest.json ├── robots.txt └── site.webmanifest └── src ├── App.css ├── App.js ├── App.test.js ├── components ├── InputBox.css ├── InputBox.js ├── SendBtn.css ├── SendBtn.js ├── TextCards.css └── TextCards.js ├── index.css ├── index.js ├── logo.svg ├── reportWebVitals.js └── setupTests.js /.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 | 12 | # misc 13 | .DS_Store 14 | .env.local 15 | .env.development.local 16 | .env.test.local 17 | .env.production.local 18 | 19 | npm-debug.log* 20 | yarn-debug.log* 21 | yarn-error.log* 22 | -------------------------------------------------------------------------------- /assets/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/assets/1.png -------------------------------------------------------------------------------- /assets/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/assets/2.png -------------------------------------------------------------------------------- /assets/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/assets/3.png -------------------------------------------------------------------------------- /assets/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/assets/4.jpg -------------------------------------------------------------------------------- /assets/5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/assets/5.jpg -------------------------------------------------------------------------------- /backend/.gitIgnore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/is-ci: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../is-ci/bin.js" "$@" 10 | else 11 | exec node "$basedir/../is-ci/bin.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/is-ci.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\is-ci\bin.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/mime: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../mime/cli.js" "$@" 10 | else 11 | exec node "$basedir/../mime/cli.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/mime.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\mime\cli.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/nodemon: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../nodemon/bin/nodemon.js" "$@" 10 | else 11 | exec node "$basedir/../nodemon/bin/nodemon.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/nodemon.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nodemon\bin\nodemon.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/nodetouch: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../touch/bin/nodetouch.js" "$@" 10 | else 11 | exec node "$basedir/../touch/bin/nodetouch.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/nodetouch.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\touch\bin\nodetouch.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/nopt: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@" 10 | else 11 | exec node "$basedir/../nopt/bin/nopt.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/nopt.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nopt\bin\nopt.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/rc: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../rc/cli.js" "$@" 10 | else 11 | exec node "$basedir/../rc/cli.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/rc.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\rc\cli.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/semver: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../semver/bin/semver" "$@" 10 | else 11 | exec node "$basedir/../semver/bin/semver" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/.bin/semver.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver" %* 18 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/@types/node/globals.global.d.ts: -------------------------------------------------------------------------------- 1 | declare var global: typeof globalThis; 2 | -------------------------------------------------------------------------------- /backend/node_modules/@types/webidl-conversions/README.md: -------------------------------------------------------------------------------- 1 | # Installation 2 | > `npm install --save @types/webidl-conversions` 3 | 4 | # Summary 5 | This package contains type definitions for webidl-conversions (https://github.com/jsdom/webidl-conversions#readme). 6 | 7 | # Details 8 | Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/webidl-conversions. 9 | 10 | ### Additional Details 11 | * Last updated: Fri, 02 Jul 2021 18:05:21 GMT 12 | * Dependencies: none 13 | * Global values: none 14 | 15 | # Credits 16 | These definitions were written by [ExE Boss](https://github.com/ExE-Boss). 17 | -------------------------------------------------------------------------------- /backend/node_modules/@types/whatwg-url/dist/URL-impl.d.ts: -------------------------------------------------------------------------------- 1 | declare class URLImpl { 2 | constructor( 3 | globalObject: object, 4 | constructorArgs: readonly [url: string, base?: string], 5 | privateData?: {}, 6 | ); 7 | 8 | href: string; 9 | readonly origin: string; 10 | protocol: string; 11 | username: string; 12 | password: string; 13 | host: string; 14 | hostname: string; 15 | port: string; 16 | pathname: string; 17 | search: string; 18 | readonly searchParams: URLSearchParams; 19 | hash: string; 20 | 21 | toJSON(): string; 22 | } 23 | export { URLImpl as implementation }; 24 | -------------------------------------------------------------------------------- /backend/node_modules/@types/whatwg-url/ts3.9/dist/URL-impl.d.ts: -------------------------------------------------------------------------------- 1 | declare class URLImpl { 2 | constructor( 3 | globalObject: object, 4 | [url, base]: readonly [string, string?], 5 | privateData?: {}, 6 | ); 7 | 8 | href: string; 9 | readonly origin: string; 10 | protocol: string; 11 | username: string; 12 | password: string; 13 | host: string; 14 | hostname: string; 15 | port: string; 16 | pathname: string; 17 | search: string; 18 | readonly searchParams: URLSearchParams; 19 | hash: string; 20 | 21 | toJSON(): string; 22 | } 23 | export { URLImpl as implementation }; 24 | -------------------------------------------------------------------------------- /backend/node_modules/@types/whatwg-url/ts3.9/webidl2js-wrapper.d.ts: -------------------------------------------------------------------------------- 1 | import * as URL from "./dist/URL"; 2 | import * as URLSearchParams from "./dist/URLSearchParams"; 3 | 4 | export { URL, URLSearchParams }; 5 | -------------------------------------------------------------------------------- /backend/node_modules/@types/whatwg-url/webidl2js-wrapper.d.ts: -------------------------------------------------------------------------------- 1 | import * as URL from "./dist/URL"; 2 | import * as URLSearchParams from "./dist/URLSearchParams"; 3 | 4 | export { URL, URLSearchParams }; 5 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/asynckit/index.js: -------------------------------------------------------------------------------- 1 | module.exports = 2 | { 3 | parallel : require('./parallel.js'), 4 | serial : require('./serial.js'), 5 | serialOrdered : require('./serialOrdered.js') 6 | }; 7 | -------------------------------------------------------------------------------- /backend/node_modules/asynckit/lib/abort.js: -------------------------------------------------------------------------------- 1 | // API 2 | module.exports = abort; 3 | 4 | /** 5 | * Aborts leftover active jobs 6 | * 7 | * @param {object} state - current state object 8 | */ 9 | function abort(state) 10 | { 11 | Object.keys(state.jobs).forEach(clean.bind(state)); 12 | 13 | // reset leftover jobs 14 | state.jobs = {}; 15 | } 16 | 17 | /** 18 | * Cleans up leftover job by invoking abort function for the provided job id 19 | * 20 | * @this state 21 | * @param {string|number} key - job id to abort 22 | */ 23 | function clean(key) 24 | { 25 | if (typeof this.jobs[key] == 'function') 26 | { 27 | this.jobs[key](); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /backend/node_modules/asynckit/lib/defer.js: -------------------------------------------------------------------------------- 1 | module.exports = defer; 2 | 3 | /** 4 | * Runs provided function on next iteration of the event loop 5 | * 6 | * @param {function} fn - function to run 7 | */ 8 | function defer(fn) 9 | { 10 | var nextTick = typeof setImmediate == 'function' 11 | ? setImmediate 12 | : ( 13 | typeof process == 'object' && typeof process.nextTick == 'function' 14 | ? process.nextTick 15 | : null 16 | ); 17 | 18 | if (nextTick) 19 | { 20 | nextTick(fn); 21 | } 22 | else 23 | { 24 | setTimeout(fn, 0); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /backend/node_modules/asynckit/lib/terminator.js: -------------------------------------------------------------------------------- 1 | var abort = require('./abort.js') 2 | , async = require('./async.js') 3 | ; 4 | 5 | // API 6 | module.exports = terminator; 7 | 8 | /** 9 | * Terminates jobs in the attached state context 10 | * 11 | * @this AsyncKitState# 12 | * @param {function} callback - final callback to invoke after termination 13 | */ 14 | function terminator(callback) 15 | { 16 | if (!Object.keys(this.jobs).length) 17 | { 18 | return; 19 | } 20 | 21 | // fast forward iteration index 22 | this.index = this.size; 23 | 24 | // abort jobs 25 | abort(this); 26 | 27 | // send back results we have so far 28 | async(callback)(null, this.results); 29 | } 30 | -------------------------------------------------------------------------------- /backend/node_modules/asynckit/serial.js: -------------------------------------------------------------------------------- 1 | var serialOrdered = require('./serialOrdered.js'); 2 | 3 | // Public API 4 | module.exports = serial; 5 | 6 | /** 7 | * Runs iterator over provided array elements in series 8 | * 9 | * @param {array|object} list - array or object (named list) to iterate over 10 | * @param {function} iterator - iterator to run 11 | * @param {function} callback - invoked when all elements processed 12 | * @returns {function} - jobs terminator 13 | */ 14 | function serial(list, iterator, callback) 15 | { 16 | return serialOrdered(list, iterator, null, callback); 17 | } 18 | -------------------------------------------------------------------------------- /backend/node_modules/axios/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | ## Reporting a Vulnerability 4 | 5 | Please report security issues to jasonsaayman@gmail.com 6 | -------------------------------------------------------------------------------- /backend/node_modules/axios/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/axios'); -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/cancel/CanceledError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var AxiosError = require('../core/AxiosError'); 4 | var utils = require('../utils'); 5 | 6 | /** 7 | * A `CanceledError` is an object that is thrown when an operation is canceled. 8 | * 9 | * @class 10 | * @param {string=} message The message. 11 | */ 12 | function CanceledError(message) { 13 | // eslint-disable-next-line no-eq-null,eqeqeq 14 | AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED); 15 | this.name = 'CanceledError'; 16 | } 17 | 18 | utils.inherits(CanceledError, AxiosError, { 19 | __CANCEL__: true 20 | }); 21 | 22 | module.exports = CanceledError; 23 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/cancel/isCancel.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function isCancel(value) { 4 | return !!(value && value.__CANCEL__); 5 | }; 6 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/core/README.md: -------------------------------------------------------------------------------- 1 | # axios // core 2 | 3 | The modules found in `core/` should be modules that are specific to the domain logic of axios. These modules would most likely not make sense to be consumed outside of the axios module, as their logic is too specific. Some examples of core modules are: 4 | 5 | - Dispatching requests 6 | - Requests sent via `adapters/` (see lib/adapters/README.md) 7 | - Managing interceptors 8 | - Handling config 9 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/defaults/env/FormData.js: -------------------------------------------------------------------------------- 1 | // eslint-disable-next-line strict 2 | module.exports = require('form-data'); 3 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/defaults/transitional.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = { 4 | silentJSONParsing: true, 5 | forcedJSONParsing: true, 6 | clarifyTimeoutError: false 7 | }; 8 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/env/README.md: -------------------------------------------------------------------------------- 1 | # axios // env 2 | 3 | The `data.js` file is updated automatically when the package version is upgrading. Please do not edit it manually. 4 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/env/data.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "version": "0.27.2" 3 | }; -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/README.md: -------------------------------------------------------------------------------- 1 | # axios // helpers 2 | 3 | The modules found in `helpers/` should be generic modules that are _not_ specific to the domain logic of axios. These modules could theoretically be published to npm on their own and consumed by other modules or apps. Some examples of generic modules are things like: 4 | 5 | - Browser polyfills 6 | - Managing cookies 7 | - Parsing HTTP headers 8 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/bind.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function bind(fn, thisArg) { 4 | return function wrap() { 5 | var args = new Array(arguments.length); 6 | for (var i = 0; i < args.length; i++) { 7 | args[i] = arguments[i]; 8 | } 9 | return fn.apply(thisArg, args); 10 | }; 11 | }; 12 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/combineURLs.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Creates a new URL by combining the specified URLs 5 | * 6 | * @param {string} baseURL The base URL 7 | * @param {string} relativeURL The relative URL 8 | * @returns {string} The combined URL 9 | */ 10 | module.exports = function combineURLs(baseURL, relativeURL) { 11 | return relativeURL 12 | ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '') 13 | : baseURL; 14 | }; 15 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/isAbsoluteURL.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Determines whether the specified URL is absolute 5 | * 6 | * @param {string} url The URL to test 7 | * @returns {boolean} True if the specified URL is absolute, otherwise false 8 | */ 9 | module.exports = function isAbsoluteURL(url) { 10 | // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL). 11 | // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed 12 | // by any combination of letters, digits, plus, period, or hyphen. 13 | return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); 14 | }; 15 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/isAxiosError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('./../utils'); 4 | 5 | /** 6 | * Determines whether the payload is an error thrown by Axios 7 | * 8 | * @param {*} payload The value to test 9 | * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false 10 | */ 11 | module.exports = function isAxiosError(payload) { 12 | return utils.isObject(payload) && (payload.isAxiosError === true); 13 | }; 14 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/normalizeHeaderName.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('../utils'); 4 | 5 | module.exports = function normalizeHeaderName(headers, normalizedName) { 6 | utils.forEach(headers, function processHeader(value, name) { 7 | if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) { 8 | headers[normalizedName] = value; 9 | delete headers[name]; 10 | } 11 | }); 12 | }; 13 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/null.js: -------------------------------------------------------------------------------- 1 | // eslint-disable-next-line strict 2 | module.exports = null; 3 | -------------------------------------------------------------------------------- /backend/node_modules/axios/lib/helpers/parseProtocol.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function parseProtocol(url) { 4 | var match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); 5 | return match && match[1] || ''; 6 | }; 7 | -------------------------------------------------------------------------------- /backend/node_modules/axios/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "es2015", 4 | "lib": ["dom", "es2015"], 5 | "types": [], 6 | "moduleResolution": "node", 7 | "strict": true, 8 | "noEmit": true, 9 | "baseUrl": ".", 10 | "paths": { 11 | "axios": ["."] 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /backend/node_modules/axios/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "dtslint/dtslint.json", 3 | "rules": { 4 | "no-unnecessary-generics": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /backend/node_modules/balanced-match/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | tidelift: "npm/balanced-match" 2 | patreon: juliangruber 3 | -------------------------------------------------------------------------------- /backend/node_modules/base64-js/index.d.ts: -------------------------------------------------------------------------------- 1 | export function byteLength(b64: string): number; 2 | export function toByteArray(b64: string): Uint8Array; 3 | export function fromByteArray(uint8: Uint8Array): string; 4 | -------------------------------------------------------------------------------- /backend/node_modules/binary-extensions/binary-extensions.json.d.ts: -------------------------------------------------------------------------------- 1 | declare const binaryExtensionsJson: readonly string[]; 2 | 3 | export = binaryExtensionsJson; 4 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/binary-extensions/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./binary-extensions.json'); 2 | -------------------------------------------------------------------------------- /backend/node_modules/bson/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bson", 3 | "description": "A bson parser for node.js and the browser", 4 | "keywords": [ 5 | "mongodb", 6 | "bson", 7 | "parser" 8 | ], 9 | "author": "Christian Amor Kvalheim ", 10 | "main": "./dist/bson.js", 11 | "license": "Apache-2.0", 12 | "moduleType": [ 13 | "globals", 14 | "node" 15 | ], 16 | "ignore": [ 17 | "**/.*", 18 | "alternate_parsers", 19 | "benchmarks", 20 | "bower_components", 21 | "node_modules", 22 | "test", 23 | "tools" 24 | ], 25 | "version": "4.6.4" 26 | } 27 | -------------------------------------------------------------------------------- /backend/node_modules/bson/lib/ensure_buffer.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"ensure_buffer.js","sourceRoot":"","sources":["../src/ensure_buffer.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAChC,iCAAwC;AACxC,wCAAkD;AAElD;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,eAAuD;IAClF,IAAI,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;QACvC,OAAO,eAAM,CAAC,IAAI,CAChB,eAAe,CAAC,MAAM,EACtB,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,UAAU,CAC3B,CAAC;KACH;IAED,IAAI,wBAAgB,CAAC,eAAe,CAAC,EAAE;QACrC,OAAO,eAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;KACrC;IAED,MAAM,IAAI,qBAAa,CAAC,sCAAsC,CAAC,CAAC;AAClE,CAAC;AAdD,oCAcC"} -------------------------------------------------------------------------------- /backend/node_modules/bson/lib/error.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,cAAc;AACd;IAA+B,6BAAK;IAClC,mBAAY,OAAe;QAA3B,YACE,kBAAM,OAAO,CAAC,SAEf;QADC,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;;IACnD,CAAC;IAED,sBAAI,2BAAI;aAAR;YACE,OAAO,WAAW,CAAC;QACrB,CAAC;;;OAAA;IACH,gBAAC;AAAD,CAAC,AATD,CAA+B,KAAK,GASnC;AATY,8BAAS;AAWtB,cAAc;AACd;IAAmC,iCAAS;IAC1C,uBAAY,OAAe;QAA3B,YACE,kBAAM,OAAO,CAAC,SAEf;QADC,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;;IACvD,CAAC;IAED,sBAAI,+BAAI;aAAR;YACE,OAAO,eAAe,CAAC;QACzB,CAAC;;;OAAA;IACH,oBAAC;AAAD,CAAC,AATD,CAAmC,SAAS,GAS3C;AATY,sCAAa"} -------------------------------------------------------------------------------- /backend/node_modules/bson/lib/max_key.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"max_key.js","sourceRoot":"","sources":["../src/max_key.ts"],"names":[],"mappings":";;;AAKA;;;;GAIG;AACH;IAGE;QACE,IAAI,CAAC,CAAC,IAAI,YAAY,MAAM,CAAC;YAAE,OAAO,IAAI,MAAM,EAAE,CAAC;IACrD,CAAC;IAED,gBAAgB;IAChB,+BAAc,GAAd;QACE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACxB,CAAC;IAED,gBAAgB;IACT,uBAAgB,GAAvB;QACE,OAAO,IAAI,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,gBAAgB;IAChB,iBAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,GAA1C;QACE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,wBAAO,GAAP;QACE,OAAO,cAAc,CAAC;IACxB,CAAC;IACH,aAAC;AAAD,CAAC,AAzBD,IAyBC;AAzBY,wBAAM;AA2BnB,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC"} -------------------------------------------------------------------------------- /backend/node_modules/bson/lib/min_key.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"min_key.js","sourceRoot":"","sources":["../src/min_key.ts"],"names":[],"mappings":";;;AAKA;;;;GAIG;AACH;IAGE;QACE,IAAI,CAAC,CAAC,IAAI,YAAY,MAAM,CAAC;YAAE,OAAO,IAAI,MAAM,EAAE,CAAC;IACrD,CAAC;IAED,gBAAgB;IAChB,+BAAc,GAAd;QACE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACxB,CAAC;IAED,gBAAgB;IACT,uBAAgB,GAAvB;QACE,OAAO,IAAI,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,gBAAgB;IAChB,iBAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,GAA1C;QACE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,wBAAO,GAAP;QACE,OAAO,cAAc,CAAC;IACxB,CAAC;IACH,aAAC;AAAD,CAAC,AAzBD,IAyBC;AAzBY,wBAAM;AA2BnB,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC"} -------------------------------------------------------------------------------- /backend/node_modules/bson/lib/utils/global.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/utils/global.ts"],"names":[],"mappings":";;;AAMA,SAAS,YAAY,CAAC,eAAoB;IACxC,kCAAkC;IAClC,OAAO,eAAe,IAAI,eAAe,CAAC,IAAI,IAAI,IAAI,IAAI,eAAe,CAAC;AAC5E,CAAC;AAED,uEAAuE;AACvE,SAAgB,SAAS;IACvB,oCAAoC;IACpC,OAAO,CACL,YAAY,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC;QAC1D,YAAY,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC;QAClD,YAAY,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC;QAC9C,YAAY,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC;QAClD,QAAQ,CAAC,aAAa,CAAC,EAAE,CAC1B,CAAC;AACJ,CAAC;AATD,8BASC"} -------------------------------------------------------------------------------- /backend/node_modules/bson/src/error.ts: -------------------------------------------------------------------------------- 1 | /** @public */ 2 | export class BSONError extends Error { 3 | constructor(message: string) { 4 | super(message); 5 | Object.setPrototypeOf(this, BSONError.prototype); 6 | } 7 | 8 | get name(): string { 9 | return 'BSONError'; 10 | } 11 | } 12 | 13 | /** @public */ 14 | export class BSONTypeError extends TypeError { 15 | constructor(message: string) { 16 | super(message); 17 | Object.setPrototypeOf(this, BSONTypeError.prototype); 18 | } 19 | 20 | get name(): string { 21 | return 'BSONTypeError'; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/call-bind/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /backend/node_modules/call-bind/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-name-matching": 0, 8 | "id-length": 0, 9 | "new-cap": [2, { 10 | "capIsNewExceptions": [ 11 | "GetIntrinsic", 12 | ], 13 | }], 14 | "no-magic-numbers": 0, 15 | "operator-linebreak": [2, "before"], 16 | }, 17 | } 18 | -------------------------------------------------------------------------------- /backend/node_modules/call-bind/.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/call-bind 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 up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /backend/node_modules/call-bind/.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 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /backend/node_modules/call-bind/README.md: -------------------------------------------------------------------------------- 1 | # call-bind 2 | Robustly `.call.bind()` a function. 3 | -------------------------------------------------------------------------------- /backend/node_modules/call-bind/callBound.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GetIntrinsic = require('get-intrinsic'); 4 | 5 | var callBind = require('./'); 6 | 7 | var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf')); 8 | 9 | module.exports = function callBoundIntrinsic(name, allowMissing) { 10 | var intrinsic = GetIntrinsic(name, !!allowMissing); 11 | if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { 12 | return callBind(intrinsic); 13 | } 14 | return intrinsic; 15 | }; 16 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/chalk/node_modules/supports-color/browser.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | module.exports = { 3 | stdout: false, 4 | stderr: false 5 | }; 6 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | [![NPM](https://nodei.co/npm/color-name.png?mini=true)](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 | -------------------------------------------------------------------------------- /backend/node_modules/combined-stream/yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | delayed-stream@~1.0.0: 6 | version "1.0.0" 7 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 8 | 9 | far@~0.0.7: 10 | version "0.0.7" 11 | resolved "https://registry.yarnpkg.com/far/-/far-0.0.7.tgz#01c1fd362bcd26ce9cf161af3938aa34619f79a7" 12 | dependencies: 13 | oop "0.0.3" 14 | 15 | oop@0.0.3: 16 | version "0.0.3" 17 | resolved "https://registry.yarnpkg.com/oop/-/oop-0.0.3.tgz#70fa405a5650891a194fdc82ca68dad6dabf4401" 18 | -------------------------------------------------------------------------------- /backend/node_modules/concat-map/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 0.4 4 | - 0.6 5 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/cookie-signature/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/deep-extend/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/deep-extend'); 2 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/delayed-stream/.npmignore: -------------------------------------------------------------------------------- 1 | test 2 | -------------------------------------------------------------------------------- /backend/node_modules/delayed-stream/Makefile: -------------------------------------------------------------------------------- 1 | SHELL := /bin/bash 2 | 3 | test: 4 | @./test/run.js 5 | 6 | .PHONY: test 7 | 8 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/follow-redirects/debug.js: -------------------------------------------------------------------------------- 1 | var debug; 2 | 3 | module.exports = function () { 4 | if (!debug) { 5 | try { 6 | /* eslint global-require: off */ 7 | debug = require("debug")("follow-redirects"); 8 | } 9 | catch (error) { /* */ } 10 | if (typeof debug !== "function") { 11 | debug = function () { /* */ }; 12 | } 13 | } 14 | debug.apply(null, arguments); 15 | }; 16 | -------------------------------------------------------------------------------- /backend/node_modules/follow-redirects/http.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./").http; 2 | -------------------------------------------------------------------------------- /backend/node_modules/follow-redirects/https.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./").https; 2 | -------------------------------------------------------------------------------- /backend/node_modules/form-data/lib/browser.js: -------------------------------------------------------------------------------- 1 | /* eslint-env browser */ 2 | module.exports = typeof self == 'object' ? self.FormData : window.FormData; 3 | -------------------------------------------------------------------------------- /backend/node_modules/form-data/lib/populate.js: -------------------------------------------------------------------------------- 1 | // populates missing values 2 | module.exports = function(dst, src) { 3 | 4 | Object.keys(src).forEach(function(prop) 5 | { 6 | dst[prop] = dst[prop] || src[prop]; 7 | }); 8 | 9 | return dst; 10 | }; 11 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/function-bind/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = tab 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 = 120 11 | 12 | [CHANGELOG.md] 13 | indent_style = space 14 | indent_size = 2 15 | 16 | [*.json] 17 | max_line_length = off 18 | 19 | [Makefile] 20 | max_line_length = off 21 | -------------------------------------------------------------------------------- /backend/node_modules/function-bind/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-name-matching": 0, 8 | "indent": [2, 4], 9 | "max-nested-callbacks": [2, 3], 10 | "max-params": [2, 3], 11 | "max-statements": [2, 20], 12 | "no-new-func": [1], 13 | "strict": [0] 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /backend/node_modules/function-bind/.npmignore: -------------------------------------------------------------------------------- 1 | # gitignore 2 | .DS_Store 3 | .monitor 4 | .*.swp 5 | .nodemonignore 6 | releases 7 | *.log 8 | *.err 9 | fleet.json 10 | public/browserify 11 | bin/*.json 12 | .bin 13 | build 14 | compile 15 | .lock-wscript 16 | coverage 17 | node_modules 18 | 19 | # Only apps should have lockfiles 20 | npm-shrinkwrap.json 21 | package-lock.json 22 | yarn.lock 23 | -------------------------------------------------------------------------------- /backend/node_modules/function-bind/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var implementation = require('./implementation'); 4 | 5 | module.exports = Function.prototype.bind || implementation; 6 | -------------------------------------------------------------------------------- /backend/node_modules/function-bind/test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "array-bracket-newline": 0, 4 | "array-element-newline": 0, 5 | "max-statements-per-line": [2, { "max": 2 }], 6 | "no-invalid-this": 0, 7 | "no-magic-numbers": 0, 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /backend/node_modules/get-intrinsic/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /backend/node_modules/get-intrinsic/.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/get-intrinsic 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 up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /backend/node_modules/get-intrinsic/.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 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/has-symbols/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-statements-per-line": [2, { "max": 2 }], 8 | "no-magic-numbers": 0, 9 | "multiline-comment-style": 0, 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /backend/node_modules/has-symbols/.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/has-symbols 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 up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /backend/node_modules/has-symbols/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /backend/node_modules/has-symbols/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var origSymbol = typeof Symbol !== 'undefined' && Symbol; 4 | var hasSymbolSham = require('./shams'); 5 | 6 | module.exports = function hasNativeSymbols() { 7 | if (typeof origSymbol !== 'function') { return false; } 8 | if (typeof Symbol !== 'function') { return false; } 9 | if (typeof origSymbol('foo') !== 'symbol') { return false; } 10 | if (typeof Symbol('bar') !== 'symbol') { return false; } 11 | 12 | return hasSymbolSham(); 13 | }; 14 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/has/README.md: -------------------------------------------------------------------------------- 1 | # has 2 | 3 | > Object.prototype.hasOwnProperty.call shortcut 4 | 5 | ## Installation 6 | 7 | ```sh 8 | npm install --save has 9 | ``` 10 | 11 | ## Usage 12 | 13 | ```js 14 | var has = require('has'); 15 | 16 | has({}, 'hasOwnProperty'); // false 17 | has(Object.prototype, 'hasOwnProperty'); // true 18 | ``` 19 | -------------------------------------------------------------------------------- /backend/node_modules/has/src/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var bind = require('function-bind'); 4 | 5 | module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); 6 | -------------------------------------------------------------------------------- /backend/node_modules/has/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var has = require('../'); 5 | 6 | test('has', function (t) { 7 | t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"'); 8 | t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"'); 9 | t.end(); 10 | }); 11 | -------------------------------------------------------------------------------- /backend/node_modules/ieee754/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace ieee754 { 2 | export function read( 3 | buffer: Uint8Array, offset: number, isLE: boolean, mLen: number, 4 | nBytes: number): number; 5 | export function write( 6 | buffer: Uint8Array, value: number, offset: number, isLE: boolean, 7 | mLen: number, nBytes: number): void; 8 | } 9 | 10 | export = ieee754; -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/ip/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ip", 3 | "version": "1.1.8", 4 | "author": "Fedor Indutny ", 5 | "homepage": "https://github.com/indutny/node-ip", 6 | "repository": { 7 | "type": "git", 8 | "url": "http://github.com/indutny/node-ip.git" 9 | }, 10 | "files": [ 11 | "lib", 12 | "README.md" 13 | ], 14 | "main": "lib/ip", 15 | "devDependencies": { 16 | "eslint": "^8.15.0", 17 | "mocha": "^10.0.0" 18 | }, 19 | "scripts": { 20 | "lint": "eslint lib/*.js test/*.js", 21 | "test": "npm run lint && mocha --reporter spec test/*-test.js", 22 | "fix": "npm run lint -- --fix" 23 | }, 24 | "license": "MIT" 25 | } 26 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/is-ci/bin.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 'use strict' 3 | 4 | process.exit(require('./') ? 0 : 1) 5 | -------------------------------------------------------------------------------- /backend/node_modules/is-ci/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = require('ci-info').isCI 4 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/is-typedarray/README.md: -------------------------------------------------------------------------------- 1 | # is-typedarray [![locked](http://badges.github.io/stability-badges/dist/locked.svg)](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 | [![NPM](https://nodei.co/npm/is-typedarray.png)](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 | -------------------------------------------------------------------------------- /backend/node_modules/is-yarn-global/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "8" 4 | - "6" 5 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/json-buffer/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | node_modules/* 3 | npm_debug.log 4 | -------------------------------------------------------------------------------- /backend/node_modules/json-buffer/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '0.10' 4 | -------------------------------------------------------------------------------- /backend/node_modules/kareem/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "12" 4 | - "10" 5 | - "9" 6 | - "8" 7 | - "7" 8 | - "6" 9 | - "5" 10 | - "4" 11 | script: "npm run-script test-travis" 12 | after_script: "npm install coveralls@2.10.0 && cat ./coverage/lcov.info | coveralls" 13 | -------------------------------------------------------------------------------- /backend/node_modules/kareem/Makefile: -------------------------------------------------------------------------------- 1 | docs: 2 | node ./docs.js 3 | 4 | coverage: 5 | ./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/* 6 | -------------------------------------------------------------------------------- /backend/node_modules/kareem/gulpfile.js: -------------------------------------------------------------------------------- 1 | var gulp = require('gulp'); 2 | var mocha = require('gulp-mocha'); 3 | var config = require('./package.json'); 4 | var jscs = require('gulp-jscs'); 5 | 6 | gulp.task('mocha', function() { 7 | return gulp.src('./test/*'). 8 | pipe(mocha({ reporter: 'dot' })); 9 | }); 10 | 11 | gulp.task('jscs', function() { 12 | return gulp.src('./index.js'). 13 | pipe(jscs(config.jscsConfig)); 14 | }); 15 | 16 | gulp.task('watch', function() { 17 | gulp.watch('./index.js', ['jscs', 'mocha']); 18 | }); 19 | -------------------------------------------------------------------------------- /backend/node_modules/kareem/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "kareem", 3 | "version": "2.3.5", 4 | "description": "Next-generation take on pre/post function hooks", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "mocha ./test/*", 8 | "test-travis": "nyc mocha ./test/*" 9 | }, 10 | "repository": { 11 | "type": "git", 12 | "url": "git://github.com/vkarpov15/kareem.git" 13 | }, 14 | "devDependencies": { 15 | "acquit": "1.x", 16 | "acquit-ignore": "0.1.x", 17 | "mocha": "9.2.0", 18 | "nyc": "15.1.0" 19 | }, 20 | "author": "Valeri Karpov ", 21 | "license": "Apache-2.0" 22 | } 23 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/lowercase-keys/readme.md: -------------------------------------------------------------------------------- 1 | # lowercase-keys [![Build Status](https://travis-ci.org/sindresorhus/lowercase-keys.svg?branch=master)](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 | -------------------------------------------------------------------------------- /backend/node_modules/make-dir/node_modules/.bin/semver: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@" 10 | else 11 | exec node "$basedir/../semver/bin/semver.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/make-dir/node_modules/.bin/semver.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver.js" %* 18 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/memory-pager/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '4' 4 | - '6' 5 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/mime/.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/mime/.npmignore -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/minimist/example/parse.js: -------------------------------------------------------------------------------- 1 | var argv = require('../')(process.argv.slice(2)); 2 | console.log(argv); 3 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/mongodb-connection-string-url/.esm-wrapper.mjs: -------------------------------------------------------------------------------- 1 | import mod from "./lib/index.js"; 2 | 3 | export default mod["default"]; 4 | export const CommaAndColonSeparatedRecord = mod.CommaAndColonSeparatedRecord; 5 | export const ConnectionString = mod.ConnectionString; 6 | export const redactConnectionString = mod.redactConnectionString; 7 | -------------------------------------------------------------------------------- /backend/node_modules/mongodb-connection-string-url/lib/redact.d.ts: -------------------------------------------------------------------------------- 1 | import ConnectionString from './index'; 2 | export interface ConnectionStringRedactionOptions { 3 | redactUsernames?: boolean; 4 | replacementString?: string; 5 | } 6 | export declare function redactValidConnectionString(inputUrl: Readonly, options?: ConnectionStringRedactionOptions): ConnectionString; 7 | export declare function redactConnectionString(uri: string, options?: ConnectionStringRedactionOptions): string; 8 | -------------------------------------------------------------------------------- /backend/node_modules/mongodb/etc/prepare.js: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env node 2 | var cp = require('child_process'); 3 | var fs = require('fs'); 4 | var os = require('os'); 5 | 6 | if (fs.existsSync('src')) { 7 | cp.spawn('npm', ['run', 'build:dts'], { stdio: 'inherit', shell: os.platform() === 'win32' }); 8 | } else { 9 | if (!fs.existsSync('lib')) { 10 | console.warn('MongoDB: No compiled javascript present, the driver is not installed correctly.'); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /backend/node_modules/mongodb/lib/cmap/auth/auth_provider.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"auth_provider.js","sourceRoot":"","sources":["../../../src/cmap/auth/auth_provider.ts"],"names":[],"mappings":";;;AACA,uCAAgD;AAQhD,yCAAyC;AACzC,MAAa,WAAW;IAatB,YACE,UAAsB,EACtB,WAAyC,EACzC,OAA2B;QAE3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAtBD,kCAsBC;AAED,MAAa,YAAY;IACvB;;;;;OAKG;IACH,OAAO,CACL,YAA+B,EAC/B,WAAwB,EACxB,QAAqC;QAErC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,OAAoB,EAAE,QAAkB;QAC3C,8DAA8D;QAC9D,QAAQ,CAAC,IAAI,yBAAiB,CAAC,8CAA8C,CAAC,CAAC,CAAC;IAClF,CAAC;CACF;AAzBD,oCAyBC"} -------------------------------------------------------------------------------- /backend/node_modules/mongodb/lib/cmap/auth/providers.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/cmap/auth/providers.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACD,QAAA,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,SAAS;IAC1B,cAAc,EAAE,QAAQ;IACxB,aAAa,EAAE,OAAO;IACtB,kBAAkB,EAAE,aAAa;IACjC,oBAAoB,EAAE,eAAe;IACrC,YAAY,EAAE,cAAc;CACpB,CAAC,CAAC;AAKZ,gBAAgB;AACH,QAAA,4BAA4B,GAAG,IAAI,GAAG,CAAgB;IACjE,qBAAa,CAAC,cAAc;IAC5B,qBAAa,CAAC,WAAW;IACzB,qBAAa,CAAC,YAAY;CAC3B,CAAC,CAAC"} -------------------------------------------------------------------------------- /backend/node_modules/mongodb/lib/cmap/errors.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/cmap/errors.ts"],"names":[],"mappings":";;;AAAA,oCAA4C;AAG5C;;;GAGG;AACH,MAAa,eAAgB,SAAQ,wBAAgB;IAInD,YAAY,IAAoB;QAC9B,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,IAAa,IAAI;QACf,OAAO,sBAAsB,CAAC;IAChC,CAAC;CACF;AAZD,0CAYC;AAED;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,wBAAgB;IAIzD,YAAY,OAAe,EAAE,OAAe;QAC1C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,IAAa,IAAI;QACf,OAAO,4BAA4B,CAAC;IACtC,CAAC;CACF;AAZD,sDAYC"} -------------------------------------------------------------------------------- /backend/node_modules/mongodb/lib/cmap/wire_protocol/constants.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/cmap/wire_protocol/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,KAAK,CAAC;AACrC,QAAA,4BAA4B,GAAG,KAAK,CAAC;AACrC,QAAA,0BAA0B,GAAG,CAAC,CAAC;AAC/B,QAAA,0BAA0B,GAAG,EAAE,CAAC;AAChC,QAAA,QAAQ,GAAG,CAAC,CAAC;AACb,QAAA,SAAS,GAAG,IAAI,CAAC;AACjB,QAAA,SAAS,GAAG,IAAI,CAAC;AACjB,QAAA,QAAQ,GAAG,IAAI,CAAC;AAChB,QAAA,UAAU,GAAG,IAAI,CAAC;AAClB,QAAA,SAAS,GAAG,IAAI,CAAC;AACjB,QAAA,eAAe,GAAG,IAAI,CAAC;AACvB,QAAA,aAAa,GAAG,IAAI,CAAC;AACrB,QAAA,MAAM,GAAG,IAAI,CAAC"} -------------------------------------------------------------------------------- /backend/node_modules/mongodb/src/cmap/wire_protocol/constants.ts: -------------------------------------------------------------------------------- 1 | export const MIN_SUPPORTED_SERVER_VERSION = '3.6'; 2 | export const MAX_SUPPORTED_SERVER_VERSION = '5.1'; 3 | export const MIN_SUPPORTED_WIRE_VERSION = 6; 4 | export const MAX_SUPPORTED_WIRE_VERSION = 14; 5 | export const OP_REPLY = 1; 6 | export const OP_UPDATE = 2001; 7 | export const OP_INSERT = 2002; 8 | export const OP_QUERY = 2004; 9 | export const OP_GETMORE = 2005; 10 | export const OP_DELETE = 2006; 11 | export const OP_KILL_CURSORS = 2007; 12 | export const OP_COMPRESSED = 2012; 13 | export const OP_MSG = 2013; 14 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/.lgtm.yml: -------------------------------------------------------------------------------- 1 | path_classifiers: 2 | test: 3 | - lib -------------------------------------------------------------------------------- /backend/node_modules/mongoose/History.md: -------------------------------------------------------------------------------- 1 | This file has been renamed [CHANGELOG.md](./CHANGELOG.md) 2 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/SECURITY.md: -------------------------------------------------------------------------------- 1 | Please follow the instructions on [Tidelift's security page](https://tidelift.com/docs/security) to report a security issue. 2 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/browser.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Export lib/mongoose 3 | * 4 | */ 5 | 6 | 'use strict'; 7 | 8 | module.exports = require('./lib/browser'); 9 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/build-browser.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const config = require('./webpack.config.js'); 4 | const webpack = require('webpack'); 5 | 6 | const compiler = webpack(config); 7 | 8 | console.log('Starting browser build...'); 9 | compiler.run((err, stats) => { 10 | if (err) { 11 | console.err(stats.toString()); 12 | console.err('Browser build unsuccessful.'); 13 | process.exit(1); 14 | } 15 | console.log(stats.toString()); 16 | console.log('Browser build successful.'); 17 | process.exit(0); 18 | }); 19 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/index.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * Export lib/mongoose 4 | * 5 | */ 6 | 7 | 'use strict'; 8 | 9 | const mongoose = require('./lib/'); 10 | 11 | module.exports = mongoose; 12 | module.exports.default = mongoose; 13 | module.exports.mongoose = mongoose; 14 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/cast/objectid.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const ObjectId = require('../driver').get().ObjectId; 4 | 5 | module.exports = function castObjectId(value) { 6 | if (value == null) { 7 | return value; 8 | } 9 | 10 | if (value instanceof ObjectId) { 11 | return value; 12 | } 13 | 14 | if (value._id) { 15 | if (value._id instanceof ObjectId) { 16 | return value._id; 17 | } 18 | if (value._id.toString instanceof Function) { 19 | return new ObjectId(value._id.toString()); 20 | } 21 | } 22 | 23 | if (value.toString instanceof Function) { 24 | return new ObjectId(value.toString()); 25 | } 26 | 27 | return new ObjectId(value); 28 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/connectionstate.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * Connection states 4 | */ 5 | 6 | 'use strict'; 7 | 8 | const STATES = module.exports = exports = Object.create(null); 9 | 10 | const disconnected = 'disconnected'; 11 | const connected = 'connected'; 12 | const connecting = 'connecting'; 13 | const disconnecting = 'disconnecting'; 14 | const uninitialized = 'uninitialized'; 15 | 16 | STATES[0] = disconnected; 17 | STATES[1] = connected; 18 | STATES[2] = connecting; 19 | STATES[3] = disconnecting; 20 | STATES[99] = uninitialized; 21 | 22 | STATES[disconnected] = 0; 23 | STATES[connected] = 1; 24 | STATES[connecting] = 2; 25 | STATES[disconnecting] = 3; 26 | STATES[uninitialized] = 99; 27 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/document_provider.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /* eslint-env browser */ 4 | 5 | /*! 6 | * Module dependencies. 7 | */ 8 | const Document = require('./document.js'); 9 | const BrowserDocument = require('./browserDocument.js'); 10 | 11 | let isBrowser = false; 12 | 13 | /** 14 | * Returns the Document constructor for the current context 15 | * 16 | * @api private 17 | */ 18 | module.exports = function() { 19 | if (isBrowser) { 20 | return BrowserDocument; 21 | } 22 | return Document; 23 | }; 24 | 25 | /*! 26 | * ignore 27 | */ 28 | module.exports.setBrowser = function(flag) { 29 | isBrowser = flag; 30 | }; 31 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/driver.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | let driver = null; 8 | 9 | module.exports.get = function() { 10 | return driver; 11 | }; 12 | 13 | module.exports.set = function(v) { 14 | driver = v; 15 | }; 16 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/SPEC.md: -------------------------------------------------------------------------------- 1 | 2 | # Driver Spec 3 | 4 | TODO 5 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/browser/ReadPreference.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * ignore 3 | */ 4 | 5 | 'use strict'; 6 | 7 | module.exports = function() {}; 8 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/browser/binary.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * Module dependencies. 4 | */ 5 | 6 | 'use strict'; 7 | 8 | const Binary = require('bson').Binary; 9 | 10 | /*! 11 | * Module exports. 12 | */ 13 | 14 | module.exports = exports = Binary; 15 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/browser/decimal128.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * ignore 3 | */ 4 | 5 | 'use strict'; 6 | 7 | module.exports = require('bson').Decimal128; 8 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/browser/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Module exports. 3 | */ 4 | 5 | 'use strict'; 6 | 7 | exports.Binary = require('./binary'); 8 | exports.Collection = function() { 9 | throw new Error('Cannot create a collection from browser library'); 10 | }; 11 | exports.getConnection = () => function() { 12 | throw new Error('Cannot create a connection from browser library'); 13 | }; 14 | exports.Decimal128 = require('./decimal128'); 15 | exports.ObjectId = require('./objectid'); 16 | exports.ReadPreference = require('./ReadPreference'); 17 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/browser/objectid.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * [node-mongodb-native](https://github.com/mongodb/node-mongodb-native) ObjectId 4 | * @constructor NodeMongoDbObjectId 5 | * @see ObjectId 6 | */ 7 | 8 | 'use strict'; 9 | 10 | const ObjectId = require('bson').ObjectID; 11 | 12 | /*! 13 | * Getter for convenience with populate, see gh-6115 14 | */ 15 | 16 | Object.defineProperty(ObjectId.prototype, '_id', { 17 | enumerable: false, 18 | configurable: true, 19 | get: function() { 20 | return this; 21 | } 22 | }); 23 | 24 | /*! 25 | * ignore 26 | */ 27 | 28 | module.exports = exports = ObjectId; 29 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * Module dependencies. 4 | */ 5 | 6 | 'use strict'; 7 | 8 | const Binary = require('mongodb').Binary; 9 | 10 | module.exports = exports = Binary; 11 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * ignore 3 | */ 4 | 5 | 'use strict'; 6 | 7 | module.exports = require('mongodb').Decimal128; 8 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Module exports. 3 | */ 4 | 5 | 'use strict'; 6 | 7 | exports.Binary = require('./binary'); 8 | exports.Collection = require('./collection'); 9 | exports.Decimal128 = require('./decimal128'); 10 | exports.ObjectId = require('./objectid'); 11 | exports.ReadPreference = require('./ReadPreference'); 12 | exports.getConnection = () => require('./connection'); -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * [node-mongodb-native](https://github.com/mongodb/node-mongodb-native) ObjectId 4 | * @constructor NodeMongoDbObjectId 5 | * @see ObjectId 6 | */ 7 | 8 | 'use strict'; 9 | 10 | const ObjectId = require('mongodb').ObjectId; 11 | 12 | /*! 13 | * ignore 14 | */ 15 | 16 | module.exports = exports = ObjectId; 17 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/error/browserMissingSchema.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Module dependencies. 3 | */ 4 | 5 | 'use strict'; 6 | 7 | const MongooseError = require('./'); 8 | 9 | 10 | class MissingSchemaError extends MongooseError { 11 | /*! 12 | * MissingSchema Error constructor. 13 | */ 14 | constructor() { 15 | super('Schema hasn\'t been registered for document.\n' 16 | + 'Use mongoose.Document(name, schema)'); 17 | } 18 | } 19 | 20 | Object.defineProperty(MissingSchemaError.prototype, 'name', { 21 | value: 'MongooseError' 22 | }); 23 | 24 | /*! 25 | * exports 26 | */ 27 | 28 | module.exports = MissingSchemaError; 29 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/error/mongooseError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | class MongooseError extends Error { } 8 | 9 | Object.defineProperty(MongooseError.prototype, 'name', { 10 | value: 'MongooseError' 11 | }); 12 | 13 | module.exports = MongooseError; 14 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/error/overwriteModel.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * Module dependencies. 4 | */ 5 | 6 | 'use strict'; 7 | 8 | const MongooseError = require('./'); 9 | 10 | 11 | class OverwriteModelError extends MongooseError { 12 | /*! 13 | * OverwriteModel Error constructor. 14 | * @param {String} name 15 | */ 16 | constructor(name) { 17 | super('Cannot overwrite `' + name + '` model once compiled.'); 18 | } 19 | } 20 | 21 | Object.defineProperty(OverwriteModelError.prototype, 'name', { 22 | value: 'OverwriteModelError' 23 | }); 24 | 25 | /*! 26 | * exports 27 | */ 28 | 29 | module.exports = OverwriteModelError; 30 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/error/parallelSave.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Module dependencies. 5 | */ 6 | 7 | const MongooseError = require('./'); 8 | 9 | class ParallelSaveError extends MongooseError { 10 | /** 11 | * ParallelSave Error constructor. 12 | * 13 | * @param {Document} doc 14 | * @api private 15 | */ 16 | constructor(doc) { 17 | const msg = 'Can\'t save() the same doc multiple times in parallel. Document: '; 18 | super(msg + doc._id); 19 | } 20 | } 21 | 22 | Object.defineProperty(ParallelSaveError.prototype, 'name', { 23 | value: 'ParallelSaveError' 24 | }); 25 | 26 | /*! 27 | * exports 28 | */ 29 | 30 | module.exports = ParallelSaveError; 31 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/error/syncIndexes.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Module dependencies. 5 | */ 6 | 7 | const MongooseError = require('./mongooseError'); 8 | 9 | /** 10 | * SyncIndexes Error constructor. 11 | * 12 | * @param {String} message 13 | * @param {String} errorsMap 14 | * @inherits MongooseError 15 | * @api private 16 | */ 17 | 18 | class SyncIndexesError extends MongooseError { 19 | constructor(message, errorsMap) { 20 | super(message); 21 | this.errors = errorsMap; 22 | } 23 | } 24 | 25 | Object.defineProperty(SyncIndexesError.prototype, 'name', { 26 | value: 'SyncIndexesError' 27 | }); 28 | 29 | 30 | module.exports = SyncIndexesError; 31 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const ObjectId = require('../../types/objectid'); 4 | 5 | module.exports = function areDiscriminatorValuesEqual(a, b) { 6 | if (typeof a === 'string' && typeof b === 'string') { 7 | return a === b; 8 | } 9 | if (typeof a === 'number' && typeof b === 'number') { 10 | return a === b; 11 | } 12 | if (a instanceof ObjectId && b instanceof ObjectId) { 13 | return a.toString() === b.toString(); 14 | } 15 | return false; 16 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function checkEmbeddedDiscriminatorKeyProjection(userProjection, path, schema, selected, addedPaths) { 4 | const userProjectedInPath = Object.keys(userProjection). 5 | reduce((cur, key) => cur || key.startsWith(path + '.'), false); 6 | const _discriminatorKey = path + '.' + schema.options.discriminatorKey; 7 | if (!userProjectedInPath && 8 | addedPaths.length === 1 && 9 | addedPaths[0] === _discriminatorKey) { 10 | selected.splice(selected.indexOf(_discriminatorKey), 1); 11 | } 12 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/each.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function each(arr, cb, done) { 4 | if (arr.length === 0) { 5 | return done(); 6 | } 7 | 8 | let remaining = arr.length; 9 | let err = null; 10 | for (const v of arr) { 11 | cb(v, function(_err) { 12 | if (err != null) { 13 | return; 14 | } 15 | if (_err != null) { 16 | err = _err; 17 | return done(err); 18 | } 19 | 20 | if (--remaining <= 0) { 21 | return done(); 22 | } 23 | }); 24 | } 25 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/getConstructorName.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * If `val` is an object, returns constructor name, if possible. Otherwise returns undefined. 5 | */ 6 | 7 | module.exports = function getConstructorName(val) { 8 | if (val == null) { 9 | return void 0; 10 | } 11 | if (typeof val.constructor !== 'function') { 12 | return void 0; 13 | } 14 | return val.constructor.name; 15 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | function getDefaultBulkwriteResult() { 3 | return { 4 | result: { 5 | ok: 1, 6 | writeErrors: [], 7 | writeConcernErrors: [], 8 | insertedIds: [], 9 | nInserted: 0, 10 | nUpserted: 0, 11 | nMatched: 0, 12 | nModified: 0, 13 | nRemoved: 0, 14 | upserted: [] 15 | }, 16 | insertedCount: 0, 17 | matchedCount: 0, 18 | modifiedCount: 0, 19 | deletedCount: 0, 20 | upsertedCount: 0, 21 | upsertedIds: {}, 22 | insertedIds: {}, 23 | n: 0 24 | }; 25 | } 26 | 27 | module.exports = getDefaultBulkwriteResult; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/getFunctionName.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const functionNameRE = /^function\s*([^\s(]+)/; 4 | 5 | module.exports = function(fn) { 6 | return ( 7 | fn.name || 8 | (fn.toString().trim().match(functionNameRE) || [])[1] 9 | ); 10 | }; 11 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/immediate.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Centralize this so we can more easily work around issues with people 3 | * stubbing out `process.nextTick()` in tests using sinon: 4 | * https://github.com/sinonjs/lolex#automatically-incrementing-mocked-time 5 | * See gh-6074 6 | */ 7 | 8 | 'use strict'; 9 | 10 | const nextTick = typeof process !== 'undefined' && typeof process.nextTick === 'function' ? 11 | process.nextTick.bind(process) : 12 | cb => setTimeout(cb, 0); // Fallback for browser build 13 | 14 | module.exports = function immediate(cb) { 15 | return nextTick(cb); 16 | }; 17 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/indexes/applySchemaCollation.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const isTextIndex = require('./isTextIndex'); 4 | 5 | module.exports = function applySchemaCollation(indexKeys, indexOptions, schemaOptions) { 6 | if (isTextIndex(indexKeys)) { 7 | return; 8 | } 9 | 10 | if (schemaOptions.hasOwnProperty('collation') && !indexOptions.hasOwnProperty('collation')) { 11 | indexOptions.collation = schemaOptions.collation; 12 | } 13 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const get = require('../get'); 4 | 5 | module.exports = function isDefaultIdIndex(index) { 6 | if (Array.isArray(index)) { 7 | // Mongoose syntax 8 | const keys = Object.keys(index[0]); 9 | return keys.length === 1 && keys[0] === '_id' && index[0]._id !== 'hashed'; 10 | } 11 | 12 | if (typeof index !== 'object') { 13 | return false; 14 | } 15 | 16 | const key = get(index, 'key', {}); 17 | return Object.keys(key).length === 1 && key.hasOwnProperty('_id'); 18 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/indexes/isTextIndex.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Returns `true` if the given index options have a `text` option. 5 | */ 6 | 7 | module.exports = function isTextIndex(indexKeys) { 8 | let isTextIndex = false; 9 | for (const key of Object.keys(indexKeys)) { 10 | if (indexKeys[key] === 'text') { 11 | isTextIndex = true; 12 | } 13 | } 14 | 15 | return isTextIndex; 16 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/isBsonType.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const get = require('./get'); 4 | 5 | /*! 6 | * Get the bson type, if it exists 7 | */ 8 | 9 | function isBsonType(obj, typename) { 10 | return get(obj, '_bsontype', void 0) === typename; 11 | } 12 | 13 | module.exports = isBsonType; 14 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/isMongooseObject.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const isMongooseArray = require('../types/array/isMongooseArray').isMongooseArray; 4 | /*! 5 | * Returns if `v` is a mongoose object that has a `toObject()` method we can use. 6 | * 7 | * This is for compatibility with libs like Date.js which do foolish things to Natives. 8 | * 9 | * @param {any} v 10 | * @api private 11 | */ 12 | 13 | module.exports = function(v) { 14 | return ( 15 | v != null && ( 16 | isMongooseArray(v) || // Array or Document Array 17 | v.$__ != null || // Document 18 | v.isMongooseBuffer || // Buffer 19 | v.$isMongooseMap // Map 20 | ) 21 | ); 22 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/isObject.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Determines if `arg` is an object. 5 | * 6 | * @param {Object|Array|String|Function|RegExp|any} arg 7 | * @api private 8 | * @return {Boolean} 9 | */ 10 | 11 | module.exports = function(arg) { 12 | return ( 13 | Buffer.isBuffer(arg) || 14 | Object.prototype.toString.call(arg) === '[object Object]' 15 | ); 16 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/isPromise.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | function isPromise(val) { 3 | return !!val && (typeof val === 'object' || typeof val === 'function') && typeof val.then === 'function'; 4 | } 5 | 6 | module.exports = isPromise; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/isSimpleValidator.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Determines if `arg` is a flat object. 5 | * 6 | * @param {Object|Array|String|Function|RegExp|any} arg 7 | * @api private 8 | * @return {Boolean} 9 | */ 10 | 11 | module.exports = function isSimpleValidator(obj) { 12 | const keys = Object.keys(obj); 13 | let result = true; 14 | for (let i = 0, len = keys.length; i < len; ++i) { 15 | if (typeof obj[keys[i]] === 'object' && obj[keys[i]] !== null) { 16 | result = false; 17 | break; 18 | } 19 | } 20 | 21 | return result; 22 | }; 23 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/model/applyStatics.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Register statics for this model 5 | * @param {Model} model 6 | * @param {Schema} schema 7 | */ 8 | module.exports = function applyStatics(model, schema) { 9 | for (const i in schema.statics) { 10 | model[i] = schema.statics[i]; 11 | } 12 | }; 13 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/once.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function once(fn) { 4 | let called = false; 5 | return function() { 6 | if (called) { 7 | return; 8 | } 9 | called = true; 10 | return fn.apply(null, arguments); 11 | }; 12 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/path/parentPaths.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const dotRE = /\./g; 4 | module.exports = function parentPaths(path) { 5 | if (path.indexOf('.') === -1) { 6 | return [path]; 7 | } 8 | const pieces = path.split(dotRE); 9 | const len = pieces.length; 10 | const ret = new Array(len); 11 | let cur = ''; 12 | for (let i = 0; i < len; ++i) { 13 | cur += (cur.length !== 0) ? '.' + pieces[i] : pieces[i]; 14 | ret[i] = cur; 15 | } 16 | 17 | return ret; 18 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/path/setDottedPath.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function setDottedPath(obj, path, val) { 4 | if (path.indexOf('.') === -1) { 5 | obj[path] = val; 6 | return; 7 | } 8 | const parts = path.split('.'); 9 | const last = parts.pop(); 10 | let cur = obj; 11 | for (const part of parts) { 12 | if (cur[part] == null) { 13 | cur[part] = {}; 14 | } 15 | 16 | cur = cur[part]; 17 | } 18 | 19 | cur[last] = val; 20 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function SkipPopulateValue(val) { 4 | if (!(this instanceof SkipPopulateValue)) { 5 | return new SkipPopulateValue(val); 6 | } 7 | 8 | this.val = val; 9 | return this; 10 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | module.exports = new WeakMap(); -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/populate/validateRef.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const MongooseError = require('../../error/mongooseError'); 4 | const util = require('util'); 5 | 6 | module.exports = validateRef; 7 | 8 | function validateRef(ref, path) { 9 | if (typeof ref === 'string') { 10 | return; 11 | } 12 | 13 | if (typeof ref === 'function') { 14 | return; 15 | } 16 | 17 | throw new MongooseError('Invalid ref at path "' + path + '". Got ' + 18 | util.inspect(ref, { depth: 0 })); 19 | } -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | module.exports = function isDefiningProjection(val) { 8 | if (val == null) { 9 | // `undefined` or `null` become exclusive projections 10 | return true; 11 | } 12 | if (typeof val === 'object') { 13 | // Only cases where a value does **not** define whether the whole projection 14 | // is inclusive or exclusive are `$meta` and `$slice`. 15 | return !('$meta' in val) && !('$slice' in val); 16 | } 17 | return true; 18 | }; 19 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/projection/isSubpath.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Determines if `path2` is a subpath of or equal to `path1` 5 | * 6 | * @param {string} path1 7 | * @param {string} path2 8 | * @return {Boolean} 9 | */ 10 | 11 | module.exports = function isSubpath(path1, path2) { 12 | return path1 === path2 || path2.startsWith(path1 + '.'); 13 | }; 14 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/query/hasDollarKeys.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | module.exports = function hasDollarKeys(obj) { 8 | 9 | if (typeof obj !== 'object' || obj === null) { 10 | return false; 11 | } 12 | 13 | const keys = Object.keys(obj); 14 | const len = keys.length; 15 | 16 | for (let i = 0; i < len; ++i) { 17 | if (keys[i][0] === '$') { 18 | return true; 19 | } 20 | } 21 | 22 | return false; 23 | }; 24 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/query/isOperator.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const specialKeys = new Set([ 4 | '$ref', 5 | '$id', 6 | '$db' 7 | ]); 8 | 9 | module.exports = function isOperator(path) { 10 | return ( 11 | path[0] === '$' && 12 | !specialKeys.has(path) 13 | ); 14 | }; 15 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/query/sanitizeProjection.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function sanitizeProjection(projection) { 4 | if (projection == null) { 5 | return; 6 | } 7 | 8 | const keys = Object.keys(projection); 9 | for (let i = 0; i < keys.length; ++i) { 10 | if (typeof projection[keys[i]] === 'string') { 11 | projection[keys[i]] = 1; 12 | } 13 | } 14 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/query/trusted.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const trustedSymbol = Symbol('mongoose#trustedSymbol'); 4 | 5 | exports.trustedSymbol = trustedSymbol; 6 | 7 | exports.trusted = function trusted(obj) { 8 | if (obj == null || typeof obj !== 'object') { 9 | return obj; 10 | } 11 | obj[trustedSymbol] = true; 12 | return obj; 13 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/query/validOps.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = Object.freeze([ 4 | // Read 5 | 'count', 6 | 'countDocuments', 7 | 'distinct', 8 | 'estimatedDocumentCount', 9 | 'find', 10 | 'findOne', 11 | // Update 12 | 'findOneAndReplace', 13 | 'findOneAndUpdate', 14 | 'replaceOne', 15 | 'update', 16 | 'updateMany', 17 | 'updateOne', 18 | // Delete 19 | 'deleteMany', 20 | 'deleteOne', 21 | 'findOneAndDelete', 22 | 'findOneAndRemove', 23 | 'remove' 24 | ]); -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/schema/addAutoId.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function addAutoId(schema) { 4 | const _obj = { _id: { auto: true } }; 5 | _obj._id[schema.options.typeKey] = 'ObjectId'; 6 | schema.add(_obj); 7 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * For consistency's sake, we replace positional operator `$` and array filters 5 | * `$[]` and `$[foo]` with `0` when looking up schema paths. 6 | */ 7 | 8 | module.exports = function cleanPositionalOperators(path) { 9 | return path. 10 | replace(/\.\$(\[[^\]]*\])?(?=\.)/g, '.0'). 11 | replace(/\.\$(\[[^\]]*\])?$/g, '.0'); 12 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/schema/handleIdOption.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const addAutoId = require('./addAutoId'); 4 | 5 | module.exports = function handleIdOption(schema, options) { 6 | if (options == null || options._id == null) { 7 | return schema; 8 | } 9 | 10 | schema = schema.clone(); 11 | if (!options._id) { 12 | schema.remove('_id'); 13 | schema.options._id = false; 14 | } else if (!schema.paths['_id']) { 15 | addAutoId(schema); 16 | schema.options._id = true; 17 | } 18 | 19 | return schema; 20 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = handleTimestampOption; 4 | 5 | /*! 6 | * ignore 7 | */ 8 | 9 | function handleTimestampOption(arg, prop) { 10 | if (arg == null) { 11 | return null; 12 | } 13 | 14 | if (typeof arg === 'boolean') { 15 | return prop; 16 | } 17 | if (typeof arg[prop] === 'boolean') { 18 | return arg[prop] ? prop : null; 19 | } 20 | if (!(prop in arg)) { 21 | return prop; 22 | } 23 | return arg[prop]; 24 | } -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/schema/idGetter.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | module.exports = function addIdGetter(schema) { 8 | // ensure the documents receive an id getter unless disabled 9 | const autoIdGetter = !schema.paths['id'] && 10 | schema.paths['_id'] && 11 | schema.options.id; 12 | if (!autoIdGetter) { 13 | return schema; 14 | } 15 | 16 | schema.virtual('id').get(idGetter); 17 | 18 | return schema; 19 | }; 20 | 21 | /*! 22 | * Returns this documents _id cast to a string. 23 | */ 24 | 25 | function idGetter() { 26 | if (this._id != null) { 27 | return String(this._id); 28 | } 29 | 30 | return null; 31 | } 32 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/specialProperties.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = new Set(['__proto__', 'constructor', 'prototype']); -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/timers.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.setTimeout = setTimeout; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/topology/allServersUnknown.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const getConstructorName = require('../getConstructorName'); 4 | 5 | module.exports = function allServersUnknown(topologyDescription) { 6 | if (getConstructorName(topologyDescription) !== 'TopologyDescription') { 7 | return false; 8 | } 9 | 10 | const servers = Array.from(topologyDescription.servers.values()); 11 | return servers.length > 0 && servers.every(server => server.type === 'Unknown'); 12 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/topology/isAtlas.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const getConstructorName = require('../getConstructorName'); 4 | 5 | module.exports = function isAtlas(topologyDescription) { 6 | if (getConstructorName(topologyDescription) !== 'TopologyDescription') { 7 | return false; 8 | } 9 | 10 | const hostnames = Array.from(topologyDescription.servers.keys()); 11 | return hostnames.length > 0 && 12 | hostnames.every(host => host.endsWith('.mongodb.net:27017')); 13 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/helpers/topology/isSSLError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const getConstructorName = require('../getConstructorName'); 4 | 5 | const nonSSLMessage = 'Client network socket disconnected before secure TLS ' + 6 | 'connection was established'; 7 | 8 | module.exports = function isSSLError(topologyDescription) { 9 | if (getConstructorName(topologyDescription) !== 'TopologyDescription') { 10 | return false; 11 | } 12 | 13 | const descriptions = Array.from(topologyDescription.servers.values()); 14 | return descriptions.length > 0 && 15 | descriptions.every(descr => descr.error && descr.error.message.indexOf(nonSSLMessage) !== -1); 16 | }; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/options.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | exports.internalToObjectOptions = { 8 | transform: false, 9 | virtuals: false, 10 | getters: false, 11 | _skipDepopulateTopLevel: true, 12 | depopulate: true, 13 | flattenDecimals: false, 14 | useProjection: false 15 | }; 16 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/options/propertyOptions.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = Object.freeze({ 4 | enumerable: true, 5 | configurable: true, 6 | writable: true, 7 | value: void 0 8 | }); -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/options/removeOptions.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const clone = require('../helpers/clone'); 4 | 5 | class RemoveOptions { 6 | constructor(obj) { 7 | if (obj == null) { 8 | return; 9 | } 10 | Object.assign(this, clone(obj)); 11 | } 12 | } 13 | 14 | module.exports = RemoveOptions; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/options/saveOptions.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const clone = require('../helpers/clone'); 4 | 5 | class SaveOptions { 6 | constructor(obj) { 7 | if (obj == null) { 8 | return; 9 | } 10 | Object.assign(this, clone(obj)); 11 | } 12 | } 13 | 14 | module.exports = SaveOptions; -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/schema/operators/exists.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const castBoolean = require('../../cast/boolean'); 4 | 5 | /*! 6 | * ignore 7 | */ 8 | 9 | module.exports = function(val) { 10 | const path = this != null ? this.path : null; 11 | return castBoolean(val, path); 12 | }; 13 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/schema/operators/helpers.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * Module requirements. 5 | */ 6 | 7 | const SchemaNumber = require('../number'); 8 | 9 | /*! 10 | * @ignore 11 | */ 12 | 13 | exports.castToNumber = castToNumber; 14 | exports.castArraysOfNumbers = castArraysOfNumbers; 15 | 16 | /*! 17 | * @ignore 18 | */ 19 | 20 | function castToNumber(val) { 21 | return SchemaNumber.cast()(val); 22 | } 23 | 24 | function castArraysOfNumbers(arr, self) { 25 | arr.forEach(function(v, i) { 26 | if (Array.isArray(v)) { 27 | castArraysOfNumbers(v, self); 28 | } else { 29 | arr[i] = castToNumber.call(self, v); 30 | } 31 | }); 32 | } 33 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/schema/operators/type.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * ignore 5 | */ 6 | 7 | module.exports = function(val) { 8 | if (Array.isArray(val)) { 9 | if (!val.every(v => typeof v === 'number' || typeof v === 'string')) { 10 | throw new Error('$type array values must be strings or numbers'); 11 | } 12 | return val; 13 | } 14 | 15 | if (typeof val !== 'number' && typeof val !== 'string') { 16 | throw new Error('$type parameter must be number, string, or array of numbers and strings'); 17 | } 18 | 19 | return val; 20 | }; 21 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/schema/symbols.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.schemaMixedSymbol = Symbol.for('mongoose:schema_mixed'); 4 | 5 | exports.builtInMiddleware = Symbol.for('mongoose:built-in-middleware'); -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/types/DocumentArray/isMongooseDocumentArray.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.isMongooseDocumentArray = function(mongooseDocumentArray) { 4 | return Array.isArray(mongooseDocumentArray) && mongooseDocumentArray.isMongooseDocumentArray; 5 | }; 6 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/types/array/isMongooseArray.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.isMongooseArray = function(mongooseArray) { 4 | return Array.isArray(mongooseArray) && mongooseArray.isMongooseArray; 5 | }; 6 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/types/decimal128.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ObjectId type constructor 3 | * 4 | * #### Example 5 | * 6 | * const id = new mongoose.Types.ObjectId; 7 | * 8 | * @constructor ObjectId 9 | */ 10 | 11 | 'use strict'; 12 | 13 | module.exports = require('../driver').get().Decimal128; 14 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/lib/types/index.js: -------------------------------------------------------------------------------- 1 | 2 | /*! 3 | * Module exports. 4 | */ 5 | 6 | 'use strict'; 7 | 8 | exports.Array = require('./array'); 9 | exports.Buffer = require('./buffer'); 10 | 11 | exports.Document = // @deprecate 12 | exports.Embedded = require('./ArraySubdocument'); 13 | 14 | exports.DocumentArray = require('./DocumentArray'); 15 | exports.Decimal128 = require('./decimal128'); 16 | exports.ObjectId = require('./objectid'); 17 | 18 | exports.Map = require('./map'); 19 | 20 | exports.Subdocument = require('./subdocument'); 21 | -------------------------------------------------------------------------------- /backend/node_modules/mongoose/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "strictNullChecks": true, 4 | "paths": { 5 | "mongoose" : ["./types/index.d.ts"] 6 | } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /backend/node_modules/mpath/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "4" 4 | - "5" 5 | - "6" 6 | - "7" 7 | - "8" 8 | - "9" 9 | - "10" 10 | -------------------------------------------------------------------------------- /backend/node_modules/mpath/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Reporting a Vulnerability 2 | 3 | Please report suspected security vulnerabilities to val [at] karpov [dot] io. 4 | You will receive a response from us within 72 hours. 5 | If the issue is confirmed, we will release a patch as soon as possible depending on complexity. 6 | -------------------------------------------------------------------------------- /backend/node_modules/mpath/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = exports = require('./lib'); 4 | -------------------------------------------------------------------------------- /backend/node_modules/mpath/test/.eslintrc.yml: -------------------------------------------------------------------------------- 1 | env: 2 | mocha: true 3 | rules: 4 | no-unused-vars: off -------------------------------------------------------------------------------- /backend/node_modules/mquery/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ -------------------------------------------------------------------------------- /backend/node_modules/mquery/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "12" 4 | matrix: 5 | include: 6 | - node_js: "13" 7 | env: "NVM_NODEJS_ORG_MIRROR=https://nodejs.org/download/nightly" 8 | allow_failures: 9 | # Allow the nightly installs to fail 10 | - env: "NVM_NODEJS_ORG_MIRROR=https://nodejs.org/download/nightly" 11 | script: 12 | - npm test 13 | - npm run lint 14 | services: 15 | - mongodb 16 | -------------------------------------------------------------------------------- /backend/node_modules/mquery/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @NODE_ENV=test ./node_modules/.bin/mocha $(T) $(TESTS) 4 | 5 | test-cov: 6 | @NODE_ENV=test node \ 7 | node_modules/.bin/istanbul cover \ 8 | ./node_modules/.bin/_mocha \ 9 | -- -u exports \ 10 | 11 | open-cov: 12 | open coverage/lcov-report/index.html 13 | 14 | lint: 15 | @NODE_ENV=test node ./node_modules/eslint/bin/eslint.js . 16 | 17 | test-travis: 18 | @NODE_ENV=test node \ 19 | node_modules/.bin/istanbul cover \ 20 | ./node_modules/.bin/_mocha \ 21 | --report lcovonly \ 22 | --bail 23 | @NODE_ENV=test node \ 24 | ./node_modules/eslint/bin/eslint.js . 25 | 26 | .PHONY: test test-cov open-cov lint test-travis 27 | -------------------------------------------------------------------------------- /backend/node_modules/mquery/SECURITY.md: -------------------------------------------------------------------------------- 1 | Please follow the instructions on [Tidelift's security page](https://tidelift.com/docs/security) to report a security issue. 2 | -------------------------------------------------------------------------------- /backend/node_modules/mquery/lib/collection/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const env = require('../env'); 4 | 5 | if ('unknown' == env.type) { 6 | throw new Error('Unknown environment'); 7 | } 8 | 9 | module.exports = 10 | env.isNode ? require('./node') : 11 | env.isMongo ? require('./collection') : 12 | require('./collection'); 13 | 14 | -------------------------------------------------------------------------------- /backend/node_modules/mquery/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 | -------------------------------------------------------------------------------- /backend/node_modules/mquery/test/.eslintrc.yml: -------------------------------------------------------------------------------- 1 | env: 2 | mocha: true -------------------------------------------------------------------------------- /backend/node_modules/mquery/test/collection/browser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/mquery/test/collection/browser.js -------------------------------------------------------------------------------- /backend/node_modules/mquery/test/collection/mongo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/mquery/test/collection/mongo.js -------------------------------------------------------------------------------- /backend/node_modules/mquery/test/env.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const env = require('../').env; 4 | 5 | console.log('environment: %s', env.type); 6 | 7 | let col; 8 | switch (env.type) { 9 | case 'node': 10 | col = require('./collection/node'); 11 | break; 12 | case 'mongo': 13 | col = require('./collection/mongo'); 14 | break; 15 | case 'browser': 16 | col = require('./collection/browser'); 17 | break; 18 | default: 19 | throw new Error('missing collection implementation for environment: ' + env.type); 20 | } 21 | 22 | module.exports = exports = col; 23 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/nodemon/.releaserc: -------------------------------------------------------------------------------- 1 | { 2 | "branches": ["main"] 3 | } 4 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/nodemon/bin/windows-kill.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/nodemon/bin/windows-kill.exe -------------------------------------------------------------------------------- /backend/node_modules/nodemon/commitlint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ['@commitlint/config-conventional'], 3 | }; 4 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/nodemon/doc/cli/usage.txt: -------------------------------------------------------------------------------- 1 | Usage: nodemon [nodemon options] [script.js] [args] 2 | 3 | See "nodemon --help" for more. 4 | -------------------------------------------------------------------------------- /backend/node_modules/nodemon/lib/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./nodemon'); -------------------------------------------------------------------------------- /backend/node_modules/nodemon/lib/monitor/index.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | run: require('./run'), 3 | watch: require('./watch').watch, 4 | }; 5 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/nodemon/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/nopt/.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/nopt/.npmignore -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/.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/object-inspect 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 up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "instrumentation": false, 5 | "sourceMap": false, 6 | "reporter": ["text-summary", "text", "html", "json"], 7 | "exclude": [ 8 | "coverage", 9 | "example", 10 | "test", 11 | "test-core-js.js" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/example/all.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var Buffer = require('safer-buffer').Buffer; 5 | 6 | var holes = ['a', 'b']; 7 | holes[4] = 'e'; 8 | holes[6] = 'g'; 9 | 10 | var obj = { 11 | a: 1, 12 | b: [3, 4, undefined, null], 13 | c: undefined, 14 | d: null, 15 | e: { 16 | regex: /^x/i, 17 | buf: Buffer.from('abc'), 18 | holes: holes 19 | }, 20 | now: new Date() 21 | }; 22 | obj.self = obj; 23 | console.log(inspect(obj)); 24 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/example/circular.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var obj = { a: 1, b: [3, 4] }; 5 | obj.c = obj; 6 | console.log(inspect(obj)); 7 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/example/fn.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var obj = [1, 2, function f(n) { return n + 5; }, 4]; 5 | console.log(inspect(obj)); 6 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/example/inspect.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /* eslint-env browser */ 4 | var inspect = require('../'); 5 | 6 | var d = document.createElement('div'); 7 | d.setAttribute('id', 'beep'); 8 | d.innerHTML = 'woooiiiii'; 9 | 10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }])); 11 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test-core-js.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('core-js'); 4 | 5 | var inspect = require('./'); 6 | var test = require('tape'); 7 | 8 | test('Maps', function (t) { 9 | t.equal(inspect(new Map([[1, 2]])), 'Map (1) {1 => 2}'); 10 | t.end(); 11 | }); 12 | 13 | test('WeakMaps', function (t) { 14 | t.equal(inspect(new WeakMap([[{}, 2]])), 'WeakMap { ? }'); 15 | t.end(); 16 | }); 17 | 18 | test('Sets', function (t) { 19 | t.equal(inspect(new Set([[1, 2]])), 'Set (1) {[ 1, 2 ]}'); 20 | t.end(); 21 | }); 22 | 23 | test('WeakSets', function (t) { 24 | t.equal(inspect(new WeakSet([[1, 2]])), 'WeakSet { ? }'); 25 | t.end(); 26 | }); 27 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test/browser/dom.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../../'); 2 | var test = require('tape'); 3 | 4 | test('dom element', function (t) { 5 | t.plan(1); 6 | 7 | var d = document.createElement('div'); 8 | d.setAttribute('id', 'beep'); 9 | d.innerHTML = 'woooiiiii'; 10 | 11 | t.equal( 12 | inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]), 13 | '[
...
, { a: 3, b: 4, c: [ 5, 6, [ 7, [ 8, [Object] ] ] ] } ]' 14 | ); 15 | }); 16 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test/circular.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../'); 2 | var test = require('tape'); 3 | 4 | test('circular', function (t) { 5 | t.plan(2); 6 | var obj = { a: 1, b: [3, 4] }; 7 | obj.c = obj; 8 | t.equal(inspect(obj), '{ a: 1, b: [ 3, 4 ], c: [Circular] }'); 9 | 10 | var double = {}; 11 | double.a = [double]; 12 | double.b = {}; 13 | double.b.inner = double.b; 14 | double.b.obj = double; 15 | t.equal(inspect(double), '{ a: [ [Circular] ], b: { inner: [Circular], obj: [Circular] } }'); 16 | }); 17 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test/deep.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../'); 2 | var test = require('tape'); 3 | 4 | test('deep', function (t) { 5 | t.plan(4); 6 | var obj = [[[[[[500]]]]]]; 7 | t.equal(inspect(obj), '[ [ [ [ [ [Array] ] ] ] ] ]'); 8 | t.equal(inspect(obj, { depth: 4 }), '[ [ [ [ [Array] ] ] ] ]'); 9 | t.equal(inspect(obj, { depth: 2 }), '[ [ [Array] ] ]'); 10 | 11 | t.equal(inspect([[[{ a: 1 }]]], { depth: 3 }), '[ [ [ [Object] ] ] ]'); 12 | }); 13 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test/holes.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var xs = ['a', 'b']; 5 | xs[5] = 'f'; 6 | xs[7] = 'j'; 7 | xs[8] = 'k'; 8 | 9 | test('holes', function (t) { 10 | t.plan(1); 11 | t.equal( 12 | inspect(xs), 13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]" 14 | ); 15 | }); 16 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test/lowbyte.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' }; 5 | 6 | test('interpolate low bytes', function (t) { 7 | t.plan(1); 8 | t.equal( 9 | inspect(obj), 10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }" 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/test/undef.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null }; 5 | 6 | test('undef and null', function (t) { 7 | t.plan(1); 8 | t.equal( 9 | inspect(obj), 10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }' 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /backend/node_modules/object-inspect/util.inspect.js: -------------------------------------------------------------------------------- 1 | module.exports = require('util').inspect; 2 | -------------------------------------------------------------------------------- /backend/node_modules/package-json/node_modules/.bin/semver: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@" 10 | else 11 | exec node "$basedir/../semver/bin/semver.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/package-json/node_modules/.bin/semver.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver.js" %* 18 | -------------------------------------------------------------------------------- /backend/node_modules/picomatch/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = require('./lib/picomatch'); 4 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/pump/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.10" 4 | 5 | script: "npm test" 6 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/saslprep/.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | -------------------------------------------------------------------------------- /backend/node_modules/saslprep/.gitattributes: -------------------------------------------------------------------------------- 1 | *.mem binary 2 | -------------------------------------------------------------------------------- /backend/node_modules/saslprep/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | node_js: 4 | - "6" 5 | - "8" 6 | - "10" 7 | - "12" 8 | 9 | before_install: 10 | - npm install -g npm@6 11 | -------------------------------------------------------------------------------- /backend/node_modules/saslprep/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | All notable changes to the "saslprep" package will be documented in this file. 3 | 4 | ## [1.0.3] - 2019-05-01 5 | 6 | - Correctly get code points >U+FFFF ([#5](https://github.com/reklatsmasters/saslprep/pull/5)) 7 | - Fix perfomance downgrades from [#5](https://github.com/reklatsmasters/saslprep/pull/5). 8 | 9 | ## [1.0.2] - 2018-09-13 10 | 11 | - Reduced initialization time ([#3](https://github.com/reklatsmasters/saslprep/issues/3)) 12 | 13 | ## [1.0.1] - 2018-06-20 14 | 15 | - Reduced stack overhead of range creation ([#2](https://github.com/reklatsmasters/saslprep/pull/2)) 16 | 17 | ## [1.0.0] - 2017-06-21 18 | 19 | - First release 20 | -------------------------------------------------------------------------------- /backend/node_modules/saslprep/code-points.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/saslprep/code-points.mem -------------------------------------------------------------------------------- /backend/node_modules/saslprep/lib/util.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Create an array of numbers. 5 | * @param {number} from 6 | * @param {number} to 7 | * @returns {number[]} 8 | */ 9 | function range(from, to) { 10 | // TODO: make this inlined. 11 | const list = new Array(to - from + 1); 12 | 13 | for (let i = 0; i < list.length; i += 1) { 14 | list[i] = from + i; 15 | } 16 | return list; 17 | } 18 | 19 | module.exports = { 20 | range, 21 | }; 22 | -------------------------------------------------------------------------------- /backend/node_modules/saslprep/test/util.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const { setFlagsFromString } = require('v8'); 4 | const { range } = require('../lib/util'); 5 | 6 | // 984 by default. 7 | setFlagsFromString('--stack_size=500'); 8 | 9 | test('should work', () => { 10 | const list = range(1, 3); 11 | expect(list).toEqual([1, 2, 3]); 12 | }); 13 | 14 | test('should work for large ranges', () => { 15 | expect(() => range(1, 1e6)).not.toThrow(); 16 | }); 17 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/semver-diff/node_modules/.bin/semver: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@" 10 | else 11 | exec node "$basedir/../semver/bin/semver.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/semver-diff/node_modules/.bin/semver.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver.js" %* 18 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/setprototypeof/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function setPrototypeOf(o: any, proto: object | null): any; 2 | export = setPrototypeOf; 3 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/side-channel/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /backend/node_modules/side-channel/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-lines-per-function": 0, 8 | "max-params": 0, 9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /backend/node_modules/side-channel/.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/side-channel 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 up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /backend/node_modules/side-channel/.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 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /backend/node_modules/side-channel/README.md: -------------------------------------------------------------------------------- 1 | # side-channel 2 | Store information about any JS value in a side channel. Uses WeakMap if available. 3 | -------------------------------------------------------------------------------- /backend/node_modules/sift/index.d.ts: -------------------------------------------------------------------------------- 1 | import sift from "./lib"; 2 | 3 | export default sift; 4 | export * from "./lib"; 5 | -------------------------------------------------------------------------------- /backend/node_modules/sift/index.js: -------------------------------------------------------------------------------- 1 | const lib = require("./lib"); 2 | 3 | module.exports = lib.default; 4 | Object.assign(module.exports, lib); 5 | -------------------------------------------------------------------------------- /backend/node_modules/sift/lib/utils.d.ts: -------------------------------------------------------------------------------- 1 | export declare type Key = string | number; 2 | export declare type Comparator = (a: any, b: any) => boolean; 3 | export declare const typeChecker: (type: any) => (value: any) => value is TType; 4 | export declare const comparable: (value: any) => any; 5 | export declare const isArray: (value: any) => value is any[]; 6 | export declare const isObject: (value: any) => value is Object; 7 | export declare const isFunction: (value: any) => value is Function; 8 | export declare const isVanillaObject: (value: any) => boolean; 9 | export declare const equals: (a: any, b: any) => boolean; 10 | -------------------------------------------------------------------------------- /backend/node_modules/sift/src/utils.d.ts: -------------------------------------------------------------------------------- 1 | export declare type Key = string | number; 2 | export declare type Comparator = (a: any, b: any) => boolean; 3 | export declare const typeChecker: (type: any) => (value: any) => value is TType; 4 | export declare const comparable: (value: any) => any; 5 | export declare const isArray: (value: any) => value is any[]; 6 | export declare const isObject: (value: any) => value is Object; 7 | export declare const isFunction: (value: any) => value is Function; 8 | export declare const isVanillaObject: (value: any) => boolean; 9 | export declare const equals: (a: any, b: any) => boolean; 10 | -------------------------------------------------------------------------------- /backend/node_modules/smart-buffer/.prettierrc.yaml: -------------------------------------------------------------------------------- 1 | parser: typescript 2 | printWidth: 120 3 | tabWidth: 2 4 | singleQuote: true 5 | trailingComma: none -------------------------------------------------------------------------------- /backend/node_modules/smart-buffer/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 6 4 | - 8 5 | - 10 6 | - 12 7 | - stable 8 | 9 | before_script: 10 | - npm install -g typescript 11 | - tsc -p ./ 12 | 13 | script: "npm run coveralls" -------------------------------------------------------------------------------- /backend/node_modules/smart-buffer/docs/ROADMAP.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/backend/node_modules/smart-buffer/docs/ROADMAP.md -------------------------------------------------------------------------------- /backend/node_modules/socks/.prettierrc.yaml: -------------------------------------------------------------------------------- 1 | parser: typescript 2 | printWidth: 80 3 | tabWidth: 2 4 | singleQuote: true 5 | trailingComma: all 6 | arrowParens: always 7 | bracketSpacing: false -------------------------------------------------------------------------------- /backend/node_modules/socks/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 10 4 | - 12 5 | - 14 6 | - stable 7 | 8 | before_install: 9 | - npm add -g typescript prettier tslint coveralls 10 | 11 | script: "npm run build && npm run coveralls" -------------------------------------------------------------------------------- /backend/node_modules/socks/build/common/util.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/common/util.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACH,MAAM,gBAAiB,SAAQ,KAAK;IAClC,YACE,OAAe,EACR,OAAqD;QAE5D,KAAK,CAAC,OAAO,CAAC,CAAC;QAFR,YAAO,GAAP,OAAO,CAA8C;IAG9D,CAAC;CACF;AAwBuB,4CAAgB;AAtBxC;;;GAGG;AACH,SAAS,YAAY,CAAC,KAAY;IAChC,kDAAkD;IAClD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KAC7C;AACH,CAAC;AAYyC,oCAAY"} -------------------------------------------------------------------------------- /backend/node_modules/socks/build/index.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAqC"} -------------------------------------------------------------------------------- /backend/node_modules/socks/docs/examples/index.md: -------------------------------------------------------------------------------- 1 | # socks examples 2 | 3 | ## TypeScript Examples 4 | 5 | [Connect command](typescript/connectExample.md) 6 | 7 | [Bind command](typescript/bindExample.md) 8 | 9 | [Associate command](typescript/associateExample.md) 10 | 11 | ## JavaScript Examples 12 | 13 | [Connect command](javascript/connectExample.md) 14 | 15 | [Bind command](javascript/bindExample.md) 16 | 17 | [Associate command](javascript/associateExample.md) -------------------------------------------------------------------------------- /backend/node_modules/socks/docs/index.md: -------------------------------------------------------------------------------- 1 | # Documentation 2 | 3 | - [API Reference](https://github.com/JoshGlazebrook/socks#api-reference) 4 | 5 | - [Code Examples](./examples/index.md) -------------------------------------------------------------------------------- /backend/node_modules/socks/typings/common/receivebuffer.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | declare class ReceiveBuffer { 3 | private buffer; 4 | private offset; 5 | private originalSize; 6 | constructor(size?: number); 7 | get length(): number; 8 | append(data: Buffer): number; 9 | peek(length: number): Buffer; 10 | get(length: number): Buffer; 11 | } 12 | export { ReceiveBuffer }; 13 | -------------------------------------------------------------------------------- /backend/node_modules/socks/typings/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from './client/socksclient'; 2 | -------------------------------------------------------------------------------- /backend/node_modules/sparse-bitfield/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /backend/node_modules/sparse-bitfield/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '0.10' 4 | - '0.12' 5 | - '4.0' 6 | - '5.0' 7 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/supports-color/browser.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | module.exports = { 3 | stdout: false, 4 | stderr: false 5 | }; 6 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/tr46/lib/statusMapping.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | module.exports.STATUS_MAPPING = { 4 | mapped: 1, 5 | valid: 2, 6 | disallowed: 3, 7 | disallowed_STD3_valid: 4, 8 | disallowed_STD3_mapped: 5, 9 | deviation: 6, 10 | ignored: 7 11 | }; 12 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/unique-string/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const cryptoRandomString = require('crypto-random-string'); 3 | 4 | module.exports = () => cryptoRandomString(32); 5 | -------------------------------------------------------------------------------- /backend/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /backend/node_modules/update-notifier/node_modules/.bin/semver: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@" 10 | else 11 | exec node "$basedir/../semver/bin/semver.js" "$@" 12 | fi 13 | -------------------------------------------------------------------------------- /backend/node_modules/update-notifier/node_modules/.bin/semver.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | GOTO start 3 | :find_dp0 4 | SET dp0=%~dp0 5 | EXIT /b 6 | :start 7 | SETLOCAL 8 | CALL :find_dp0 9 | 10 | IF EXIST "%dp0%\node.exe" ( 11 | SET "_prog=%dp0%\node.exe" 12 | ) ELSE ( 13 | SET "_prog=node" 14 | SET PATHEXT=%PATHEXT:;.JS;=;% 15 | ) 16 | 17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver.js" %* 18 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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( 11 | version instanceof SemVer ? version.version : version, 12 | options 13 | ).inc(release, identifier).version 14 | } catch (er) { 15 | return null 16 | } 17 | } 18 | module.exports = inc 19 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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((o, k) => { 8 | o[k] = true 9 | return o 10 | }, {}) 11 | module.exports = parseOptions 12 | -------------------------------------------------------------------------------- /backend/node_modules/update-notifier/node_modules/semver/preload.js: -------------------------------------------------------------------------------- 1 | // XXX remove in v8 or beyond 2 | module.exports = require('./index.js') 3 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/node_modules/whatwg-url/lib/encoding.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | const utf8Encoder = new TextEncoder(); 3 | const utf8Decoder = new TextDecoder("utf-8", { ignoreBOM: true }); 4 | 5 | function utf8Encode(string) { 6 | return utf8Encoder.encode(string); 7 | } 8 | 9 | function utf8DecodeWithoutBOM(bytes) { 10 | return utf8Decoder.decode(bytes); 11 | } 12 | 13 | module.exports = { 14 | utf8Encode, 15 | utf8DecodeWithoutBOM 16 | }; 17 | -------------------------------------------------------------------------------- /backend/node_modules/whatwg-url/lib/infra.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | // Note that we take code points as JS numbers, not JS strings. 4 | 5 | function isASCIIDigit(c) { 6 | return c >= 0x30 && c <= 0x39; 7 | } 8 | 9 | function isASCIIAlpha(c) { 10 | return (c >= 0x41 && c <= 0x5A) || (c >= 0x61 && c <= 0x7A); 11 | } 12 | 13 | function isASCIIAlphanumeric(c) { 14 | return isASCIIAlpha(c) || isASCIIDigit(c); 15 | } 16 | 17 | function isASCIIHex(c) { 18 | return isASCIIDigit(c) || (c >= 0x41 && c <= 0x46) || (c >= 0x61 && c <= 0x66); 19 | } 20 | 21 | module.exports = { 22 | isASCIIDigit, 23 | isASCIIAlpha, 24 | isASCIIAlphanumeric, 25 | isASCIIHex 26 | }; 27 | -------------------------------------------------------------------------------- /backend/node_modules/whatwg-url/webidl2js-wrapper.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | const URL = require("./lib/URL"); 4 | const URLSearchParams = require("./lib/URLSearchParams"); 5 | 6 | exports.URL = URL; 7 | exports.URLSearchParams = URLSearchParams; 8 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/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 | -------------------------------------------------------------------------------- /backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "backend", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "start": "node index.js", 8 | "test": "echo \"Error: no test specified\" && exit 1" 9 | }, 10 | "keywords": [], 11 | "author": "", 12 | "license": "ISC", 13 | "dependencies": { 14 | "axios": "^0.27.2", 15 | "cors": "^2.8.5", 16 | "express": "^4.18.1", 17 | "mongoose": "^6.3.4", 18 | "nodemon": "^2.0.16" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /build/asset-manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": { 3 | "main.css": "/static/css/main.c3134dee.css", 4 | "main.js": "/static/js/main.8961c87b.js", 5 | "static/js/787.f263b81f.chunk.js": "/static/js/787.f263b81f.chunk.js", 6 | "index.html": "/index.html", 7 | "main.c3134dee.css.map": "/static/css/main.c3134dee.css.map", 8 | "main.8961c87b.js.map": "/static/js/main.8961c87b.js.map", 9 | "787.f263b81f.chunk.js.map": "/static/js/787.f263b81f.chunk.js.map" 10 | }, 11 | "entrypoints": [ 12 | "static/css/main.c3134dee.css", 13 | "static/js/main.8961c87b.js" 14 | ] 15 | } -------------------------------------------------------------------------------- /build/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/build/favicon.ico -------------------------------------------------------------------------------- /build/index.html: -------------------------------------------------------------------------------- 1 | Words of Strangers
-------------------------------------------------------------------------------- /build/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/build/logo192.png -------------------------------------------------------------------------------- /build/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/build/logo512.png -------------------------------------------------------------------------------- /build/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 | -------------------------------------------------------------------------------- /build/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /public/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/public/android-chrome-192x192.png -------------------------------------------------------------------------------- /public/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/public/android-chrome-512x512.png -------------------------------------------------------------------------------- /public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/public/apple-touch-icon.png -------------------------------------------------------------------------------- /public/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/public/favicon-16x16.png -------------------------------------------------------------------------------- /public/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/public/favicon-32x32.png -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dagmawibabi/wallOfTexts/9a396fcfeb0a258672ea505908151bc6db013115/public/favicon.ico -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /public/site.webmanifest: -------------------------------------------------------------------------------- 1 | {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} -------------------------------------------------------------------------------- /src/App.test.js: -------------------------------------------------------------------------------- 1 | import { render, screen } from '@testing-library/react'; 2 | import App from './App'; 3 | 4 | test('renders learn react link', () => { 5 | render(); 6 | const linkElement = screen.getByText(/learn react/i); 7 | expect(linkElement).toBeInTheDocument(); 8 | }); 9 | -------------------------------------------------------------------------------- /src/components/SendBtn.js: -------------------------------------------------------------------------------- 1 | import './SendBtn.css'; 2 | 3 | export const SendBtn = (props) => { 4 | return ( 5 |
6 | 7 |
8 | ); 9 | } -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 5 | sans-serif; 6 | -webkit-font-smoothing: antialiased; 7 | -moz-osx-font-smoothing: grayscale; 8 | } 9 | 10 | code { 11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', 12 | monospace; 13 | } 14 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom/client'; 3 | import './index.css'; 4 | import App from './App'; 5 | import reportWebVitals from './reportWebVitals'; 6 | 7 | const root = ReactDOM.createRoot(document.getElementById('root')); 8 | root.render( 9 | 10 | 11 | 12 | ); 13 | 14 | // If you want to start measuring performance in your app, pass a function 15 | // to log results (for example: reportWebVitals(console.log)) 16 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals 17 | reportWebVitals(); 18 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /src/setupTests.js: -------------------------------------------------------------------------------- 1 | // jest-dom adds custom jest matchers for asserting on DOM nodes. 2 | // allows you to do things like: 3 | // expect(element).toHaveTextContent(/react/i) 4 | // learn more: https://github.com/testing-library/jest-dom 5 | import '@testing-library/jest-dom'; 6 | --------------------------------------------------------------------------------