├── Backend
├── db
│ ├── Admin
│ │ └── Admin.js
│ ├── Seller
│ │ ├── Additem.js
│ │ └── Sellers.js
│ ├── Users
│ │ ├── Wishlist.js
│ │ ├── myorders.js
│ │ └── userschema.js
│ └── config.js
├── node_modules
│ ├── .bin
│ │ ├── mime
│ │ ├── mime.cmd
│ │ ├── mime.ps1
│ │ ├── mkdirp
│ │ ├── mkdirp.cmd
│ │ ├── mkdirp.ps1
│ │ ├── nodemon
│ │ ├── nodemon.cmd
│ │ ├── nodemon.ps1
│ │ ├── nodetouch
│ │ ├── nodetouch.cmd
│ │ ├── nodetouch.ps1
│ │ ├── nopt
│ │ ├── nopt.cmd
│ │ ├── nopt.ps1
│ │ ├── semver
│ │ ├── semver.cmd
│ │ └── semver.ps1
│ ├── .package-lock.json
│ ├── @mongodb-js
│ │ └── saslprep
│ │ │ ├── LICENSE
│ │ │ ├── dist
│ │ │ ├── .esm-wrapper.mjs
│ │ │ ├── code-points-data.d.ts
│ │ │ ├── code-points-data.d.ts.map
│ │ │ ├── code-points-data.js
│ │ │ ├── code-points-data.js.map
│ │ │ ├── code-points-src.d.ts
│ │ │ ├── code-points-src.d.ts.map
│ │ │ ├── code-points-src.js
│ │ │ ├── code-points-src.js.map
│ │ │ ├── generate-code-points.d.ts
│ │ │ ├── generate-code-points.d.ts.map
│ │ │ ├── generate-code-points.js
│ │ │ ├── generate-code-points.js.map
│ │ │ ├── index.d.ts
│ │ │ ├── index.d.ts.map
│ │ │ ├── index.js
│ │ │ ├── index.js.map
│ │ │ ├── memory-code-points.d.ts
│ │ │ ├── memory-code-points.d.ts.map
│ │ │ ├── memory-code-points.js
│ │ │ ├── memory-code-points.js.map
│ │ │ ├── util.d.ts
│ │ │ ├── util.d.ts.map
│ │ │ ├── util.js
│ │ │ └── util.js.map
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── @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
│ │ │ ├── dom-events.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
│ │ │ ├── readline
│ │ │ │ └── promises.d.ts
│ │ │ ├── repl.d.ts
│ │ │ ├── stream.d.ts
│ │ │ ├── stream
│ │ │ │ ├── consumers.d.ts
│ │ │ │ ├── promises.d.ts
│ │ │ │ └── web.d.ts
│ │ │ ├── string_decoder.d.ts
│ │ │ ├── test.d.ts
│ │ │ ├── timers.d.ts
│ │ │ ├── timers
│ │ │ │ └── promises.d.ts
│ │ │ ├── tls.d.ts
│ │ │ ├── trace_events.d.ts
│ │ │ ├── ts4.8
│ │ │ │ ├── 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
│ │ │ │ ├── dom-events.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
│ │ │ │ ├── path.d.ts
│ │ │ │ ├── perf_hooks.d.ts
│ │ │ │ ├── process.d.ts
│ │ │ │ ├── punycode.d.ts
│ │ │ │ ├── querystring.d.ts
│ │ │ │ ├── readline.d.ts
│ │ │ │ ├── readline
│ │ │ │ │ └── promises.d.ts
│ │ │ │ ├── repl.d.ts
│ │ │ │ ├── stream.d.ts
│ │ │ │ ├── stream
│ │ │ │ │ ├── consumers.d.ts
│ │ │ │ │ ├── promises.d.ts
│ │ │ │ │ └── web.d.ts
│ │ │ │ ├── string_decoder.d.ts
│ │ │ │ ├── test.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
│ │ │ ├── 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
│ │ │ └── webidl2js-wrapper.d.ts
│ ├── abbrev
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── abbrev.js
│ │ └── package.json
│ ├── accepts
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── anymatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── append-field
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── parse-path.js
│ │ │ └── set-value.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── forms.js
│ ├── array-flatten
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── array-flatten.js
│ │ └── package.json
│ ├── balanced-match
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── 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
│ ├── 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
│ │ ├── bson.d.ts
│ │ ├── etc
│ │ │ └── prepare.js
│ │ ├── lib
│ │ │ ├── bson.bundle.js
│ │ │ ├── bson.bundle.js.map
│ │ │ ├── bson.cjs
│ │ │ ├── bson.cjs.map
│ │ │ ├── bson.mjs
│ │ │ ├── bson.mjs.map
│ │ │ ├── bson.rn.cjs
│ │ │ └── bson.rn.cjs.map
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── binary.ts
│ │ │ ├── bson.ts
│ │ │ ├── bson_value.ts
│ │ │ ├── code.ts
│ │ │ ├── constants.ts
│ │ │ ├── db_ref.ts
│ │ │ ├── decimal128.ts
│ │ │ ├── double.ts
│ │ │ ├── error.ts
│ │ │ ├── extended_json.ts
│ │ │ ├── index.ts
│ │ │ ├── int_32.ts
│ │ │ ├── long.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
│ │ │ │ ├── byte_utils.ts
│ │ │ │ ├── node_byte_utils.ts
│ │ │ │ └── web_byte_utils.ts
│ │ │ └── validate_utf8.ts
│ │ └── vendor
│ │ │ ├── base64
│ │ │ ├── LICENSE-MIT.txt
│ │ │ ├── README.md
│ │ │ ├── base64.js
│ │ │ └── package.json
│ │ │ └── text-encoding
│ │ │ ├── LICENSE.md
│ │ │ ├── README.md
│ │ │ ├── index.js
│ │ │ ├── lib
│ │ │ ├── encoding-indexes.js
│ │ │ └── encoding.js
│ │ │ └── package.json
│ ├── buffer-from
│ │ ├── LICENSE
│ │ ├── index.js
│ │ ├── package.json
│ │ └── readme.md
│ ├── busboy
│ │ ├── .eslintrc.js
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ ├── ci.yml
│ │ │ │ └── lint.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bench
│ │ │ ├── bench-multipart-fields-100mb-big.js
│ │ │ ├── bench-multipart-fields-100mb-small.js
│ │ │ ├── bench-multipart-files-100mb-big.js
│ │ │ ├── bench-multipart-files-100mb-small.js
│ │ │ ├── bench-urlencoded-fields-100pairs-small.js
│ │ │ └── bench-urlencoded-fields-900pairs-small-alt.js
│ │ ├── lib
│ │ │ ├── index.js
│ │ │ ├── types
│ │ │ │ ├── multipart.js
│ │ │ │ └── urlencoded.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── common.js
│ │ │ ├── test-types-multipart-charsets.js
│ │ │ ├── test-types-multipart-stream-pause.js
│ │ │ ├── test-types-multipart.js
│ │ │ ├── test-types-urlencoded.js
│ │ │ └── test.js
│ ├── bytes
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ └── package.json
│ ├── call-bind
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── callBound.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── callBound.js
│ │ │ └── index.js
│ ├── chokidar
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── constants.js
│ │ │ ├── fsevents-handler.js
│ │ │ └── nodefs-handler.js
│ │ ├── package.json
│ │ └── types
│ │ │ └── index.d.ts
│ ├── concat-map
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.markdown
│ │ ├── example
│ │ │ └── map.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── map.js
│ ├── concat-stream
│ │ ├── LICENSE
│ │ ├── index.js
│ │ ├── 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
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ └── package.json
│ ├── core-util-is
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── util.js
│ │ └── package.json
│ ├── cors
│ │ ├── CONTRIBUTING.md
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── index.js
│ │ └── package.json
│ ├── debug
│ │ ├── .coveralls.yml
│ │ ├── .eslintrc
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── component.json
│ │ ├── karma.conf.js
│ │ ├── node.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── browser.js
│ │ │ ├── debug.js
│ │ │ ├── index.js
│ │ │ ├── inspector-log.js
│ │ │ └── node.js
│ ├── define-data-property
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── test
│ │ │ └── index.js
│ │ └── tsconfig.json
│ ├── depd
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── browser
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── destroy
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── ee-first
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── encodeurl
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── es-define-property
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── test
│ │ │ └── index.js
│ │ └── tsconfig.json
│ ├── es-errors
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── eval.d.ts
│ │ ├── eval.js
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── range.d.ts
│ │ ├── range.js
│ │ ├── ref.d.ts
│ │ ├── ref.js
│ │ ├── syntax.d.ts
│ │ ├── syntax.js
│ │ ├── test
│ │ │ └── index.js
│ │ ├── tsconfig.json
│ │ ├── type.d.ts
│ │ ├── type.js
│ │ ├── uri.d.ts
│ │ └── uri.js
│ ├── 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
│ ├── forwarded
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── fresh
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── function-bind
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ ├── FUNDING.yml
│ │ │ └── SECURITY.md
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── implementation.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── .eslintrc
│ │ │ └── index.js
│ ├── get-intrinsic
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── GetIntrinsic.js
│ ├── glob-parent
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── gopd
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── has-flag
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── has-property-descriptors
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── has-proto
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── test
│ │ │ └── index.js
│ │ └── tsconfig.json
│ ├── 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
│ ├── hasown
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── http-errors
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── iconv-lite
│ │ ├── Changelog.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── encodings
│ │ │ ├── dbcs-codec.js
│ │ │ ├── dbcs-data.js
│ │ │ ├── index.js
│ │ │ ├── internal.js
│ │ │ ├── sbcs-codec.js
│ │ │ ├── sbcs-data-generated.js
│ │ │ ├── sbcs-data.js
│ │ │ ├── tables
│ │ │ │ ├── big5-added.json
│ │ │ │ ├── cp936.json
│ │ │ │ ├── cp949.json
│ │ │ │ ├── cp950.json
│ │ │ │ ├── eucjp.json
│ │ │ │ ├── gb18030-ranges.json
│ │ │ │ ├── gbk-added.json
│ │ │ │ └── shiftjis.json
│ │ │ ├── utf16.js
│ │ │ └── utf7.js
│ │ ├── lib
│ │ │ ├── bom-handling.js
│ │ │ ├── extend-node.js
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ └── streams.js
│ │ └── package.json
│ ├── ignore-by-default
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.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-extglob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-glob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-number
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── isarray
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── component.json
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test.js
│ ├── kareem
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── lru-cache
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── minimatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── minimatch.js
│ │ └── package.json
│ ├── minimist
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example
│ │ │ └── parse.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── 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
│ ├── mkdirp
│ │ ├── LICENSE
│ │ ├── bin
│ │ │ ├── cmd.js
│ │ │ └── usage.txt
│ │ ├── index.js
│ │ ├── package.json
│ │ └── readme.markdown
│ ├── 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
│ │ │ ├── client-side-encryption
│ │ │ │ ├── auto_encrypter.js
│ │ │ │ ├── auto_encrypter.js.map
│ │ │ │ ├── client_encryption.js
│ │ │ │ ├── client_encryption.js.map
│ │ │ │ ├── crypto_callbacks.js
│ │ │ │ ├── crypto_callbacks.js.map
│ │ │ │ ├── errors.js
│ │ │ │ ├── errors.js.map
│ │ │ │ ├── mongocryptd_manager.js
│ │ │ │ ├── mongocryptd_manager.js.map
│ │ │ │ ├── providers
│ │ │ │ │ ├── aws.js
│ │ │ │ │ ├── aws.js.map
│ │ │ │ │ ├── azure.js
│ │ │ │ │ ├── azure.js.map
│ │ │ │ │ ├── gcp.js
│ │ │ │ │ ├── gcp.js.map
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── index.js.map
│ │ │ │ │ ├── utils.js
│ │ │ │ │ └── utils.js.map
│ │ │ │ ├── state_machine.js
│ │ │ │ └── state_machine.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
│ │ │ │ │ ├── mongodb_oidc.js
│ │ │ │ │ ├── mongodb_oidc.js.map
│ │ │ │ │ ├── mongodb_oidc
│ │ │ │ │ │ ├── aws_service_workflow.js
│ │ │ │ │ │ ├── aws_service_workflow.js.map
│ │ │ │ │ │ ├── azure_service_workflow.js
│ │ │ │ │ │ ├── azure_service_workflow.js.map
│ │ │ │ │ │ ├── azure_token_cache.js
│ │ │ │ │ │ ├── azure_token_cache.js.map
│ │ │ │ │ │ ├── cache.js
│ │ │ │ │ │ ├── cache.js.map
│ │ │ │ │ │ ├── callback_lock_cache.js
│ │ │ │ │ │ ├── callback_lock_cache.js.map
│ │ │ │ │ │ ├── callback_workflow.js
│ │ │ │ │ │ ├── callback_workflow.js.map
│ │ │ │ │ │ ├── service_workflow.js
│ │ │ │ │ │ ├── service_workflow.js.map
│ │ │ │ │ │ ├── token_entry_cache.js
│ │ │ │ │ │ └── token_entry_cache.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
│ │ │ │ ├── handshake
│ │ │ │ │ ├── client_metadata.js
│ │ │ │ │ └── client_metadata.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
│ │ │ │ ├── change_stream_cursor.js
│ │ │ │ ├── change_stream_cursor.js.map
│ │ │ │ ├── find_cursor.js
│ │ │ │ ├── find_cursor.js.map
│ │ │ │ ├── list_collections_cursor.js
│ │ │ │ ├── list_collections_cursor.js.map
│ │ │ │ ├── list_indexes_cursor.js
│ │ │ │ ├── list_indexes_cursor.js.map
│ │ │ │ ├── list_search_indexes_cursor.js
│ │ │ │ ├── list_search_indexes_cursor.js.map
│ │ │ │ ├── run_command_cursor.js
│ │ │ │ └── run_command_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
│ │ │ ├── mongo_client.js
│ │ │ ├── mongo_client.js.map
│ │ │ ├── mongo_logger.js
│ │ │ ├── mongo_logger.js.map
│ │ │ ├── mongo_types.js
│ │ │ ├── mongo_types.js.map
│ │ │ ├── operations
│ │ │ │ ├── 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
│ │ │ │ ├── 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
│ │ │ │ ├── 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
│ │ │ │ ├── kill_cursors.js
│ │ │ │ ├── kill_cursors.js.map
│ │ │ │ ├── list_collections.js
│ │ │ │ ├── list_collections.js.map
│ │ │ │ ├── list_databases.js
│ │ │ │ ├── list_databases.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
│ │ │ │ ├── search_indexes
│ │ │ │ │ ├── create.js
│ │ │ │ │ ├── create.js.map
│ │ │ │ │ ├── drop.js
│ │ │ │ │ ├── drop.js.map
│ │ │ │ │ ├── update.js
│ │ │ │ │ └── update.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
│ │ │ ├── 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
│ │ │ ├── client-side-encryption
│ │ │ │ ├── auto_encrypter.ts
│ │ │ │ ├── client_encryption.ts
│ │ │ │ ├── crypto_callbacks.ts
│ │ │ │ ├── errors.ts
│ │ │ │ ├── mongocryptd_manager.ts
│ │ │ │ ├── providers
│ │ │ │ │ ├── aws.ts
│ │ │ │ │ ├── azure.ts
│ │ │ │ │ ├── gcp.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ └── utils.ts
│ │ │ │ └── state_machine.ts
│ │ │ ├── cmap
│ │ │ │ ├── auth
│ │ │ │ │ ├── auth_provider.ts
│ │ │ │ │ ├── gssapi.ts
│ │ │ │ │ ├── mongo_credentials.ts
│ │ │ │ │ ├── mongocr.ts
│ │ │ │ │ ├── mongodb_aws.ts
│ │ │ │ │ ├── mongodb_oidc.ts
│ │ │ │ │ ├── mongodb_oidc
│ │ │ │ │ │ ├── aws_service_workflow.ts
│ │ │ │ │ │ ├── azure_service_workflow.ts
│ │ │ │ │ │ ├── azure_token_cache.ts
│ │ │ │ │ │ ├── cache.ts
│ │ │ │ │ │ ├── callback_lock_cache.ts
│ │ │ │ │ │ ├── callback_workflow.ts
│ │ │ │ │ │ ├── service_workflow.ts
│ │ │ │ │ │ └── token_entry_cache.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
│ │ │ │ ├── handshake
│ │ │ │ │ └── client_metadata.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
│ │ │ │ ├── change_stream_cursor.ts
│ │ │ │ ├── find_cursor.ts
│ │ │ │ ├── list_collections_cursor.ts
│ │ │ │ ├── list_indexes_cursor.ts
│ │ │ │ ├── list_search_indexes_cursor.ts
│ │ │ │ └── run_command_cursor.ts
│ │ │ ├── db.ts
│ │ │ ├── deps.ts
│ │ │ ├── encrypter.ts
│ │ │ ├── error.ts
│ │ │ ├── explain.ts
│ │ │ ├── gridfs
│ │ │ │ ├── download.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── upload.ts
│ │ │ ├── index.ts
│ │ │ ├── mongo_client.ts
│ │ │ ├── mongo_logger.ts
│ │ │ ├── mongo_types.ts
│ │ │ ├── operations
│ │ │ │ ├── aggregate.ts
│ │ │ │ ├── bulk_write.ts
│ │ │ │ ├── collections.ts
│ │ │ │ ├── command.ts
│ │ │ │ ├── common_functions.ts
│ │ │ │ ├── count.ts
│ │ │ │ ├── count_documents.ts
│ │ │ │ ├── create_collection.ts
│ │ │ │ ├── delete.ts
│ │ │ │ ├── distinct.ts
│ │ │ │ ├── drop.ts
│ │ │ │ ├── estimated_document_count.ts
│ │ │ │ ├── execute_operation.ts
│ │ │ │ ├── find.ts
│ │ │ │ ├── find_and_modify.ts
│ │ │ │ ├── get_more.ts
│ │ │ │ ├── indexes.ts
│ │ │ │ ├── insert.ts
│ │ │ │ ├── is_capped.ts
│ │ │ │ ├── kill_cursors.ts
│ │ │ │ ├── list_collections.ts
│ │ │ │ ├── list_databases.ts
│ │ │ │ ├── operation.ts
│ │ │ │ ├── options_operation.ts
│ │ │ │ ├── profiling_level.ts
│ │ │ │ ├── remove_user.ts
│ │ │ │ ├── rename.ts
│ │ │ │ ├── run_command.ts
│ │ │ │ ├── search_indexes
│ │ │ │ │ ├── create.ts
│ │ │ │ │ ├── drop.ts
│ │ │ │ │ └── update.ts
│ │ │ │ ├── set_profiling_level.ts
│ │ │ │ ├── stats.ts
│ │ │ │ ├── update.ts
│ │ │ │ └── validate_collection.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
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── browser.js
│ │ ├── dist
│ │ │ └── browser.umd.js
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── aggregate.js
│ │ │ ├── browser.js
│ │ │ ├── browserDocument.js
│ │ │ ├── cast.js
│ │ │ ├── cast
│ │ │ │ ├── bigint.js
│ │ │ │ ├── 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
│ │ │ ├── documentProvider.js
│ │ │ ├── driver.js
│ │ │ ├── drivers
│ │ │ │ ├── SPEC.md
│ │ │ │ ├── browser
│ │ │ │ │ ├── binary.js
│ │ │ │ │ ├── decimal128.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── objectid.js
│ │ │ │ └── node-mongodb-native
│ │ │ │ │ ├── collection.js
│ │ │ │ │ ├── connection.js
│ │ │ │ │ └── index.js
│ │ │ ├── error
│ │ │ │ ├── browserMissingSchema.js
│ │ │ │ ├── bulkWriteError.js
│ │ │ │ ├── cast.js
│ │ │ │ ├── createCollectionsError.js
│ │ │ │ ├── divergentArray.js
│ │ │ │ ├── eachAsyncMultiError.js
│ │ │ │ ├── index.js
│ │ │ │ ├── invalidSchemaOption.js
│ │ │ │ ├── messages.js
│ │ │ │ ├── missingSchema.js
│ │ │ │ ├── mongooseError.js
│ │ │ │ ├── notFound.js
│ │ │ │ ├── objectExpected.js
│ │ │ │ ├── objectParameter.js
│ │ │ │ ├── overwriteModel.js
│ │ │ │ ├── parallelSave.js
│ │ │ │ ├── parallelValidate.js
│ │ │ │ ├── serverSelection.js
│ │ │ │ ├── setOptionError.js
│ │ │ │ ├── strict.js
│ │ │ │ ├── strictPopulate.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
│ │ │ │ │ └── mergeDiscriminatorSchema.js
│ │ │ │ ├── document
│ │ │ │ │ ├── applyDefaults.js
│ │ │ │ │ ├── cleanModifiedSubpaths.js
│ │ │ │ │ ├── compile.js
│ │ │ │ │ ├── getDeepestSubdocumentForPath.js
│ │ │ │ │ ├── getEmbeddedDiscriminatorPath.js
│ │ │ │ │ └── handleSpreadDoc.js
│ │ │ │ ├── each.js
│ │ │ │ ├── error
│ │ │ │ │ └── combinePathErrors.js
│ │ │ │ ├── firstKey.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
│ │ │ │ ├── isPOJO.js
│ │ │ │ ├── isPromise.js
│ │ │ │ ├── isSimpleValidator.js
│ │ │ │ ├── minimize.js
│ │ │ │ ├── model
│ │ │ │ │ ├── applyDefaultsToPOJO.js
│ │ │ │ │ ├── applyHooks.js
│ │ │ │ │ ├── applyMethods.js
│ │ │ │ │ ├── applyStaticHooks.js
│ │ │ │ │ ├── applyStatics.js
│ │ │ │ │ ├── castBulkWrite.js
│ │ │ │ │ ├── discriminator.js
│ │ │ │ │ └── pushNestedArrayPaths.js
│ │ │ │ ├── once.js
│ │ │ │ ├── parallelLimit.js
│ │ │ │ ├── path
│ │ │ │ │ ├── parentPaths.js
│ │ │ │ │ └── setDottedPath.js
│ │ │ │ ├── pluralize.js
│ │ │ │ ├── populate
│ │ │ │ │ ├── assignRawDocsToIdStructure.js
│ │ │ │ │ ├── assignVals.js
│ │ │ │ │ ├── createPopulateQueryFilter.js
│ │ │ │ │ ├── getModelsMapForPopulate.js
│ │ │ │ │ ├── getSchemaTypes.js
│ │ │ │ │ ├── getVirtual.js
│ │ │ │ │ ├── leanPopulateMap.js
│ │ │ │ │ ├── lookupLocalFields.js
│ │ │ │ │ ├── markArraySubdocsPopulated.js
│ │ │ │ │ ├── modelNamesFromRefPath.js
│ │ │ │ │ ├── removeDeselectedForeignField.js
│ │ │ │ │ ├── skipPopulateValue.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
│ │ │ │ │ ├── handleReadPreferenceAliases.js
│ │ │ │ │ ├── hasDollarKeys.js
│ │ │ │ │ ├── isOperator.js
│ │ │ │ │ ├── sanitizeFilter.js
│ │ │ │ │ ├── sanitizeProjection.js
│ │ │ │ │ ├── selectPopulatedFields.js
│ │ │ │ │ ├── trusted.js
│ │ │ │ │ └── validOps.js
│ │ │ │ ├── schema
│ │ │ │ │ ├── addAutoId.js
│ │ │ │ │ ├── applyBuiltinPlugins.js
│ │ │ │ │ ├── applyPlugins.js
│ │ │ │ │ ├── applyWriteConcern.js
│ │ │ │ │ ├── cleanPositionalOperators.js
│ │ │ │ │ ├── getIndexes.js
│ │ │ │ │ ├── getKeysInSchemaOrder.js
│ │ │ │ │ ├── getPath.js
│ │ │ │ │ ├── getSubdocumentStrictValue.js
│ │ │ │ │ ├── handleIdOption.js
│ │ │ │ │ ├── handleTimestampOption.js
│ │ │ │ │ ├── idGetter.js
│ │ │ │ │ └── merge.js
│ │ │ │ ├── schematype
│ │ │ │ │ └── handleImmutable.js
│ │ │ │ ├── setDefaultsOnInsert.js
│ │ │ │ ├── specialProperties.js
│ │ │ │ ├── symbols.js
│ │ │ │ ├── timers.js
│ │ │ │ ├── timestamps
│ │ │ │ │ ├── setDocumentTimestamps.js
│ │ │ │ │ └── setupTimestamps.js
│ │ │ │ ├── topology
│ │ │ │ │ ├── allServersUnknown.js
│ │ │ │ │ ├── isAtlas.js
│ │ │ │ │ └── isSSLError.js
│ │ │ │ ├── update
│ │ │ │ │ ├── applyTimestampsToChildren.js
│ │ │ │ │ ├── applyTimestampsToUpdate.js
│ │ │ │ │ ├── castArrayFilters.js
│ │ │ │ │ ├── decorateUpdateWithVersionKey.js
│ │ │ │ │ ├── modifiedPaths.js
│ │ │ │ │ ├── moveImmutableProperties.js
│ │ │ │ │ ├── removeUnusedArrayFilters.js
│ │ │ │ │ └── updatedPathsByArrayFilter.js
│ │ │ │ └── updateValidators.js
│ │ │ ├── index.js
│ │ │ ├── internal.js
│ │ │ ├── model.js
│ │ │ ├── mongoose.js
│ │ │ ├── options.js
│ │ │ ├── options
│ │ │ │ ├── populateOptions.js
│ │ │ │ ├── propertyOptions.js
│ │ │ │ ├── saveOptions.js
│ │ │ │ ├── schemaArrayOptions.js
│ │ │ │ ├── schemaBufferOptions.js
│ │ │ │ ├── schemaDateOptions.js
│ │ │ │ ├── schemaDocumentArrayOptions.js
│ │ │ │ ├── schemaMapOptions.js
│ │ │ │ ├── schemaNumberOptions.js
│ │ │ │ ├── schemaObjectIdOptions.js
│ │ │ │ ├── schemaStringOptions.js
│ │ │ │ ├── schemaSubdocumentOptions.js
│ │ │ │ ├── schemaTypeOptions.js
│ │ │ │ └── virtualOptions.js
│ │ │ ├── plugins
│ │ │ │ ├── index.js
│ │ │ │ ├── saveSubdocs.js
│ │ │ │ ├── sharding.js
│ │ │ │ ├── trackTransaction.js
│ │ │ │ └── validateBeforeSave.js
│ │ │ ├── query.js
│ │ │ ├── queryHelpers.js
│ │ │ ├── schema.js
│ │ │ ├── schema
│ │ │ │ ├── array.js
│ │ │ │ ├── bigint.js
│ │ │ │ ├── boolean.js
│ │ │ │ ├── buffer.js
│ │ │ │ ├── date.js
│ │ │ │ ├── decimal128.js
│ │ │ │ ├── documentArray.js
│ │ │ │ ├── documentArrayElement.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
│ │ │ │ ├── subdocument.js
│ │ │ │ ├── symbols.js
│ │ │ │ └── uuid.js
│ │ │ ├── schemaType.js
│ │ │ ├── stateMachine.js
│ │ │ ├── types
│ │ │ │ ├── array
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── isMongooseArray.js
│ │ │ │ │ └── methods
│ │ │ │ │ │ └── index.js
│ │ │ │ ├── arraySubdocument.js
│ │ │ │ ├── buffer.js
│ │ │ │ ├── decimal128.js
│ │ │ │ ├── documentArray
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── isMongooseDocumentArray.js
│ │ │ │ │ └── methods
│ │ │ │ │ │ └── index.js
│ │ │ │ ├── index.js
│ │ │ │ ├── map.js
│ │ │ │ ├── objectid.js
│ │ │ │ ├── subdocument.js
│ │ │ │ └── uuid.js
│ │ │ ├── utils.js
│ │ │ ├── validOptions.js
│ │ │ └── virtualType.js
│ │ ├── node_modules
│ │ │ └── ms
│ │ │ │ ├── index.js
│ │ │ │ ├── license.md
│ │ │ │ ├── package.json
│ │ │ │ └── readme.md
│ │ ├── package.json
│ │ └── types
│ │ │ ├── aggregate.d.ts
│ │ │ ├── augmentations.d.ts
│ │ │ ├── callback.d.ts
│ │ │ ├── collection.d.ts
│ │ │ ├── connection.d.ts
│ │ │ ├── cursor.d.ts
│ │ │ ├── document.d.ts
│ │ │ ├── error.d.ts
│ │ │ ├── expressions.d.ts
│ │ │ ├── helpers.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── indexes.d.ts
│ │ │ ├── inferschematype.d.ts
│ │ │ ├── middlewares.d.ts
│ │ │ ├── models.d.ts
│ │ │ ├── mongooseoptions.d.ts
│ │ │ ├── pipelinestage.d.ts
│ │ │ ├── populate.d.ts
│ │ │ ├── query.d.ts
│ │ │ ├── schemaoptions.d.ts
│ │ │ ├── schematypes.d.ts
│ │ │ ├── session.d.ts
│ │ │ ├── types.d.ts
│ │ │ ├── utility.d.ts
│ │ │ ├── validation.d.ts
│ │ │ └── virtuals.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
│ │ ├── .github
│ │ │ ├── ISSUE_TEMPLATE.md
│ │ │ └── PULL_REQUEST_TEMPLATE.md
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── 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
│ ├── ms
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── package.json
│ │ └── readme.md
│ ├── multer
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── counter.js
│ │ │ ├── file-appender.js
│ │ │ ├── make-middleware.js
│ │ │ ├── multer-error.js
│ │ │ └── remove-uploaded-files.js
│ │ ├── package.json
│ │ └── storage
│ │ │ ├── disk.js
│ │ │ └── memory.js
│ ├── negotiator
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── charset.js
│ │ │ ├── encoding.js
│ │ │ ├── language.js
│ │ │ └── mediaType.js
│ │ └── package.json
│ ├── nodemon
│ │ ├── .prettierrc.json
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── nodemon.js
│ │ │ └── windows-kill.exe
│ │ ├── 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
│ ├── object-assign
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── object-inspect
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── example
│ │ │ ├── all.js
│ │ │ ├── circular.js
│ │ │ ├── fn.js
│ │ │ └── inspect.js
│ │ ├── index.js
│ │ ├── package-support.json
│ │ ├── 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
│ │ │ ├── global.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
│ ├── parseurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── path-to-regexp
│ │ ├── 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
│ ├── process-nextick-args
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── 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
│ ├── punycode
│ │ ├── LICENSE-MIT.txt
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── punycode.es6.js
│ │ └── punycode.js
│ ├── 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
│ │ │ ├── empty-keys-cases.js
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ ├── range-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── raw-body
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── readable-stream
│ │ ├── .travis.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── GOVERNANCE.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── doc
│ │ │ └── wg-meetings
│ │ │ │ └── 2015-01-30.md
│ │ ├── duplex-browser.js
│ │ ├── duplex.js
│ │ ├── lib
│ │ │ ├── _stream_duplex.js
│ │ │ ├── _stream_passthrough.js
│ │ │ ├── _stream_readable.js
│ │ │ ├── _stream_transform.js
│ │ │ ├── _stream_writable.js
│ │ │ └── internal
│ │ │ │ └── streams
│ │ │ │ ├── BufferList.js
│ │ │ │ ├── destroy.js
│ │ │ │ ├── stream-browser.js
│ │ │ │ └── stream.js
│ │ ├── node_modules
│ │ │ └── safe-buffer
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ ├── package.json
│ │ ├── passthrough.js
│ │ ├── readable-browser.js
│ │ ├── readable.js
│ │ ├── transform.js
│ │ ├── writable-browser.js
│ │ └── writable.js
│ ├── readdirp
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── safe-buffer
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── safer-buffer
│ │ ├── LICENSE
│ │ ├── Porting-Buffer.md
│ │ ├── Readme.md
│ │ ├── dangerous.js
│ │ ├── package.json
│ │ ├── safer.js
│ │ └── tests.js
│ ├── semver
│ │ ├── 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
│ ├── send
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ ├── node_modules
│ │ │ ├── encodeurl
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ │ └── ms
│ │ │ │ ├── index.js
│ │ │ │ ├── license.md
│ │ │ │ ├── package.json
│ │ │ │ └── readme.md
│ │ └── package.json
│ ├── serve-static
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── set-function-length
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── env.d.ts
│ │ ├── env.js
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── setprototypeof
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── side-channel
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── test
│ │ │ └── index.js
│ │ └── tsconfig.json
│ ├── 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
│ ├── simple-update-notifier
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── borderedText.ts
│ │ │ ├── cache.spec.ts
│ │ │ ├── cache.ts
│ │ │ ├── getDistVersion.spec.ts
│ │ │ ├── getDistVersion.ts
│ │ │ ├── hasNewVersion.spec.ts
│ │ │ ├── hasNewVersion.ts
│ │ │ ├── index.spec.ts
│ │ │ ├── index.ts
│ │ │ ├── isNpmOrYarn.ts
│ │ │ └── types.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
│ ├── streamsearch
│ │ ├── .eslintrc.js
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ ├── ci.yml
│ │ │ │ └── lint.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── sbmh.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── test.js
│ ├── string_decoder
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── string_decoder.js
│ │ ├── node_modules
│ │ │ └── safe-buffer
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── supports-color
│ │ ├── browser.js
│ │ ├── 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-is
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── typedarray
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── example
│ │ │ └── tarray.js
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ └── test
│ │ │ ├── server
│ │ │ └── undef_globals.js
│ │ │ └── tarray.js
│ ├── undefsafe
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── release.yml
│ │ ├── .jscsrc
│ │ ├── .jshintrc
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── lib
│ │ │ └── undefsafe.js
│ │ └── package.json
│ ├── undici-types
│ │ ├── README.md
│ │ ├── agent.d.ts
│ │ ├── api.d.ts
│ │ ├── balanced-pool.d.ts
│ │ ├── cache.d.ts
│ │ ├── client.d.ts
│ │ ├── connector.d.ts
│ │ ├── content-type.d.ts
│ │ ├── cookies.d.ts
│ │ ├── diagnostics-channel.d.ts
│ │ ├── dispatcher.d.ts
│ │ ├── errors.d.ts
│ │ ├── fetch.d.ts
│ │ ├── file.d.ts
│ │ ├── filereader.d.ts
│ │ ├── formdata.d.ts
│ │ ├── global-dispatcher.d.ts
│ │ ├── global-origin.d.ts
│ │ ├── handlers.d.ts
│ │ ├── header.d.ts
│ │ ├── index.d.ts
│ │ ├── interceptors.d.ts
│ │ ├── mock-agent.d.ts
│ │ ├── mock-client.d.ts
│ │ ├── mock-errors.d.ts
│ │ ├── mock-interceptor.d.ts
│ │ ├── mock-pool.d.ts
│ │ ├── package.json
│ │ ├── patch.d.ts
│ │ ├── pool-stats.d.ts
│ │ ├── pool.d.ts
│ │ ├── proxy-agent.d.ts
│ │ ├── readable.d.ts
│ │ ├── webidl.d.ts
│ │ └── websocket.d.ts
│ ├── unpipe
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── util-deprecate
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── browser.js
│ │ ├── node.js
│ │ └── package.json
│ ├── 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
│ ├── xtend
│ │ ├── .jshintrc
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── immutable.js
│ │ ├── mutable.js
│ │ ├── package.json
│ │ └── test.js
│ └── yallist
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── iterator.js
│ │ ├── package.json
│ │ └── yallist.js
├── package-lock.json
├── package.json
├── server.js
└── uploads
│ ├── 1700547839231-caht er diagram.svg
│ ├── 1700552239319-i8smu3fv.svg
│ ├── 1700552864534-caht er diagram.svg
│ ├── 1700553777776-i8smu3fv.svg
│ ├── 1700555762140-caht er diagram.svg
│ ├── 1700630676613-i8smu3fv.svg
│ ├── 1700630708206-1979210[1].jpg
│ ├── 1700631424222-18505809[1].jpg
│ ├── 1700632005607-136251[1].jpg
│ ├── 1700632074778-136251.jpg
│ ├── 1700632515790-29502358[1].jpg
│ ├── 1700632736939-30186948[1].jpg
│ ├── 1700632928170-80830635[1].jpg
│ ├── 1700633112352-42983957[1].jpg
│ ├── 1700633869849-122765395[1].jpg
│ ├── 1700638048715-61111298[1].jpg
│ ├── 1700643491707-63331415[1].jpg
│ ├── 1700721610720-29502358[1].jpg
│ ├── 1731650424237-book1.jpg
│ ├── 1731650587954-book2.jpg
│ ├── 1731654559323-book3.jpg
│ └── 1731659304232-book3.jpg
├── Frontend
├── .eslintrc.cjs
├── .gitignore
├── README.md
├── index.html
├── package-lock.json
├── package.json
├── public
│ └── vite.svg
├── src
│ ├── Admin
│ │ ├── Ahome.jsx
│ │ ├── Alogin.jsx
│ │ ├── Anavbar.jsx
│ │ ├── Asignup.jsx
│ │ ├── Seller.jsx
│ │ ├── Users.jsx
│ │ └── users.css
│ ├── App.css
│ ├── App.jsx
│ ├── Assets
│ │ └── Bookbg.jpg
│ ├── Componenets
│ │ ├── Footer.jsx
│ │ └── Home.jsx
│ ├── Seller
│ │ ├── Addbook.jsx
│ │ ├── Book.jsx
│ │ ├── List.css
│ │ ├── Myproducts.jsx
│ │ ├── Orders.jsx
│ │ ├── Shome.jsx
│ │ ├── Slogin.jsx
│ │ ├── Snavbar.jsx
│ │ └── Ssignup.jsx
│ ├── User
│ │ ├── Login.jsx
│ │ ├── Myorders.jsx
│ │ ├── OrderItem.jsx
│ │ ├── Products.jsx
│ │ ├── Signup.jsx
│ │ ├── Uhome.jsx
│ │ ├── Uitem.jsx
│ │ ├── Unavbar.jsx
│ │ ├── Wishlist.jsx
│ │ └── uhome.css
│ ├── index.css
│ └── main.jsx
└── vite.config.js
├── Report
└── NaanMudhalvan-BookStore Report.pdf
└── Video
├── DriveLink
└── Screenshots
├── Screenshot 2024-11-15 121710.png
├── Screenshot 2024-11-15 121725.png
├── Screenshot 2024-11-15 145129.png
├── Screenshot 2024-11-15 145215.png
├── Screenshot 2024-11-15 145232.png
├── Screenshot 2024-11-15 145322.png
├── Screenshot 2024-11-15 145343.png
├── Screenshot 2024-11-15 145416.png
├── Screenshot 2024-11-15 145431.png
├── Screenshot 2024-11-15 145443.png
├── Screenshot 2024-11-15 145456.png
├── Screenshot 2024-11-15 145517.png
├── Screenshot 2024-11-15 150107.png
├── Screenshot 2024-11-15 150159.png
├── Screenshot 2024-11-15 150225.png
├── Screenshot 2024-11-15 150307.png
├── Screenshot 2024-11-15 150320.png
├── Screenshot 2024-11-15 150333.png
├── Screenshot 2024-11-15 150504.png
├── Screenshot 2024-11-15 150518.png
├── Screenshot 2024-11-15 150531.png
└── Screenshot 2024-11-15 150551.png
/Backend/db/Admin/Admin.js:
--------------------------------------------------------------------------------
1 | const mongoose = require('mongoose');
2 |
3 | const UserSchema = new mongoose.Schema({
4 | name:String,
5 | email: String,
6 | password: String,
7 | userId:{
8 | type:mongoose.Schema.Types.ObjectId,
9 | ref:"admin",
10 |
11 | }
12 | })
13 |
14 | module.exports =mongoose.model('admin',UserSchema)
--------------------------------------------------------------------------------
/Backend/db/Seller/Sellers.js:
--------------------------------------------------------------------------------
1 | const mongoose = require('mongoose');
2 |
3 | const UserSchema = new mongoose.Schema({
4 | name:String,
5 | email: String,
6 | password: String,
7 | userId:{
8 | type:mongoose.Schema.Types.ObjectId,
9 | ref:"vendor",
10 |
11 | }
12 | })
13 |
14 | module.exports =mongoose.model('Seller',UserSchema)
--------------------------------------------------------------------------------
/Backend/db/Users/Wishlist.js:
--------------------------------------------------------------------------------
1 |
2 | // models/WishlistItem.js
3 |
4 | const mongoose = require('mongoose');
5 |
6 | const wishlistItemSchema = new mongoose.Schema({
7 | itemId: { type: mongoose.Schema.Types.ObjectId, ref: 'User' },
8 | userId: { type: mongoose.Schema.Types.ObjectId, ref: 'User' },
9 | userName:String,
10 | itemImage:String,
11 | title:String,
12 | });
13 |
14 | module.exports = mongoose.model('WishlistItem', wishlistItemSchema);
15 |
16 |
17 |
--------------------------------------------------------------------------------
/Backend/db/Users/userschema.js:
--------------------------------------------------------------------------------
1 |
2 | const mongoose = require('mongoose');
3 |
4 | const UserSchema = new mongoose.Schema({
5 | name:String,
6 | email: String,
7 | password: String,
8 | userId:{
9 | type:mongoose.Schema.Types.ObjectId,
10 | ref:"user",
11 |
12 | }
13 | })
14 |
15 | module.exports =mongoose.model('users',UserSchema)
--------------------------------------------------------------------------------
/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*)
6 | if command -v cygpath > /dev/null 2>&1; then
7 | basedir=`cygpath -w "$basedir"`
8 | fi
9 | ;;
10 | esac
11 |
12 | if [ -x "$basedir/node" ]; then
13 | exec "$basedir/node" "$basedir/../mime/cli.js" "$@"
14 | else
15 | exec node "$basedir/../mime/cli.js" "$@"
16 | fi
17 |
--------------------------------------------------------------------------------
/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/mkdirp:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*)
6 | if command -v cygpath > /dev/null 2>&1; then
7 | basedir=`cygpath -w "$basedir"`
8 | fi
9 | ;;
10 | esac
11 |
12 | if [ -x "$basedir/node" ]; then
13 | exec "$basedir/node" "$basedir/../mkdirp/bin/cmd.js" "$@"
14 | else
15 | exec node "$basedir/../mkdirp/bin/cmd.js" "$@"
16 | fi
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/.bin/mkdirp.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%\..\mkdirp\bin\cmd.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*)
6 | if command -v cygpath > /dev/null 2>&1; then
7 | basedir=`cygpath -w "$basedir"`
8 | fi
9 | ;;
10 | esac
11 |
12 | if [ -x "$basedir/node" ]; then
13 | exec "$basedir/node" "$basedir/../nodemon/bin/nodemon.js" "$@"
14 | else
15 | exec node "$basedir/../nodemon/bin/nodemon.js" "$@"
16 | fi
17 |
--------------------------------------------------------------------------------
/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*)
6 | if command -v cygpath > /dev/null 2>&1; then
7 | basedir=`cygpath -w "$basedir"`
8 | fi
9 | ;;
10 | esac
11 |
12 | if [ -x "$basedir/node" ]; then
13 | exec "$basedir/node" "$basedir/../touch/bin/nodetouch.js" "$@"
14 | else
15 | exec node "$basedir/../touch/bin/nodetouch.js" "$@"
16 | fi
17 |
--------------------------------------------------------------------------------
/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*)
6 | if command -v cygpath > /dev/null 2>&1; then
7 | basedir=`cygpath -w "$basedir"`
8 | fi
9 | ;;
10 | esac
11 |
12 | if [ -x "$basedir/node" ]; then
13 | exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@"
14 | else
15 | exec node "$basedir/../nopt/bin/nopt.js" "$@"
16 | fi
17 |
--------------------------------------------------------------------------------
/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/semver:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*)
6 | if command -v cygpath > /dev/null 2>&1; then
7 | basedir=`cygpath -w "$basedir"`
8 | fi
9 | ;;
10 | esac
11 |
12 | if [ -x "$basedir/node" ]; then
13 | exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@"
14 | else
15 | exec node "$basedir/../semver/bin/semver.js" "$@"
16 | fi
17 |
--------------------------------------------------------------------------------
/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.js" %*
18 |
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/.esm-wrapper.mjs:
--------------------------------------------------------------------------------
1 | import mod from "./index.js";
2 |
3 | export default mod;
4 | export const saslprep = mod.saslprep;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/code-points-data.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare const _default: Buffer;
3 | export default _default;
4 | //# sourceMappingURL=code-points-data.d.ts.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/code-points-data.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"code-points-data.d.ts","sourceRoot":"","sources":["../src/code-points-data.ts"],"names":[],"mappings":";;AAEA,wBAKE"}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/code-points-data.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"code-points-data.js","sourceRoot":"","sources":["../src/code-points-data.ts"],"names":[],"mappings":";;AAAA,+BAAkC;AAElC,kBAAe,IAAA,iBAAU,EACvB,MAAM,CAAC,IAAI,CACT,0nFAA0nF,EAC1nF,QAAQ,CACT,CACF,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/code-points-src.d.ts:
--------------------------------------------------------------------------------
1 | export declare const unassigned_code_points: Set;
2 | export declare const commonly_mapped_to_nothing: Set;
3 | export declare const non_ASCII_space_characters: Set;
4 | export declare const prohibited_characters: Set;
5 | export declare const bidirectional_r_al: Set;
6 | export declare const bidirectional_l: Set;
7 | //# sourceMappingURL=code-points-src.d.ts.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/code-points-src.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"code-points-src.d.ts","sourceRoot":"","sources":["../src/code-points-src.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,sBAAsB,aA6YjC,CAAC;AAMH,eAAO,MAAM,0BAA0B,aAIrC,CAAC;AAMH,eAAO,MAAM,0BAA0B,aASrC,CAAC;AAMH,eAAO,MAAM,qBAAqB,aA6GhC,CAAC;AAMH,eAAO,MAAM,kBAAkB,aAmC7B,CAAC;AAMH,eAAO,MAAM,eAAe,aAyW1B,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/generate-code-points.d.ts:
--------------------------------------------------------------------------------
1 | export {};
2 | //# sourceMappingURL=generate-code-points.d.ts.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/generate-code-points.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"generate-code-points.d.ts","sourceRoot":"","sources":["../src/generate-code-points.ts"],"names":[],"mappings":""}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function saslprep(input: string, opts?: {
2 | allowUnassigned?: boolean;
3 | }): string;
4 | declare namespace saslprep {
5 | export var saslprep: typeof import(".");
6 | var _a: typeof import(".");
7 | export { _a as default };
8 | }
9 | export = saslprep;
10 | //# sourceMappingURL=index.d.ts.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/index.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA2DA,iBAAS,QAAQ,CACf,KAAK,EAAE,MAAM,EACb,IAAI,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GACvC,MAAM,CAuFR;kBA1FQ,QAAQ;;;;;AA8FjB,SAAS,QAAQ,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/memory-code-points.d.ts:
--------------------------------------------------------------------------------
1 | import bitfield from 'sparse-bitfield';
2 | export declare const unassigned_code_points: bitfield.BitFieldInstance;
3 | export declare const commonly_mapped_to_nothing: bitfield.BitFieldInstance;
4 | export declare const non_ASCII_space_characters: bitfield.BitFieldInstance;
5 | export declare const prohibited_characters: bitfield.BitFieldInstance;
6 | export declare const bidirectional_r_al: bitfield.BitFieldInstance;
7 | export declare const bidirectional_l: bitfield.BitFieldInstance;
8 | //# sourceMappingURL=memory-code-points.d.ts.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/memory-code-points.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"memory-code-points.d.ts","sourceRoot":"","sources":["../src/memory-code-points.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAkBvC,eAAO,MAAM,sBAAsB,2BAAS,CAAC;AAC7C,eAAO,MAAM,0BAA0B,2BAAS,CAAC;AACjD,eAAO,MAAM,0BAA0B,2BAAS,CAAC;AACjD,eAAO,MAAM,qBAAqB,2BAAS,CAAC;AAC5C,eAAO,MAAM,kBAAkB,2BAAS,CAAC;AACzC,eAAO,MAAM,eAAe,2BAAS,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/util.d.ts:
--------------------------------------------------------------------------------
1 | export declare function range(from: number, to: number): number[];
2 | //# sourceMappingURL=util.d.ts.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/util.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAGA,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAQxD"}
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/util.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 | Object.defineProperty(exports, "__esModule", { value: true });
3 | exports.range = void 0;
4 | function range(from, to) {
5 | const list = new Array(to - from + 1);
6 | for (let i = 0; i < list.length; i += 1) {
7 | list[i] = from + i;
8 | }
9 | return list;
10 | }
11 | exports.range = range;
12 | //# sourceMappingURL=util.js.map
--------------------------------------------------------------------------------
/Backend/node_modules/@mongodb-js/saslprep/dist/util.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;AAGA,SAAgB,KAAK,CAAC,IAAY,EAAE,EAAU;IAE5C,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;IAEtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QACvC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;KACpB;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AARD,sBAQC"}
--------------------------------------------------------------------------------
/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/node/ts4.8/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/ts4.8/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: Tue, 07 Nov 2023 15:11:36 GMT
12 | * Dependencies: none
13 |
14 | # Credits
15 | These definitions were written by [ExE Boss](https://github.com/ExE-Boss), and [BendingBender](https://github.com/BendingBender).
16 |
--------------------------------------------------------------------------------
/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/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/append-field/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/append-field/index.js:
--------------------------------------------------------------------------------
1 | var parsePath = require('./lib/parse-path')
2 | var setValue = require('./lib/set-value')
3 |
4 | function appendField (store, key, value) {
5 | var steps = parsePath(key)
6 |
7 | steps.reduce(function (context, step) {
8 | return setValue(context, step, context[step.key], value)
9 | }, store)
10 | }
11 |
12 | module.exports = appendField
13 |
--------------------------------------------------------------------------------
/Backend/node_modules/append-field/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "append-field",
3 | "version": "1.0.0",
4 | "license": "MIT",
5 | "author": "Linus Unnebäck ",
6 | "main": "index.js",
7 | "devDependencies": {
8 | "mocha": "^2.2.4",
9 | "standard": "^6.0.5",
10 | "testdata-w3c-json-form": "^0.2.0"
11 | },
12 | "scripts": {
13 | "test": "standard && mocha"
14 | },
15 | "repository": {
16 | "type": "git",
17 | "url": "http://github.com/LinusU/node-append-field.git"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/append-field/test/forms.js:
--------------------------------------------------------------------------------
1 | /* eslint-env mocha */
2 |
3 | var assert = require('assert')
4 | var appendField = require('../')
5 | var testData = require('testdata-w3c-json-form')
6 |
7 | describe('Append Field', function () {
8 | for (var test of testData) {
9 | it('handles ' + test.name, function () {
10 | var store = Object.create(null)
11 |
12 | for (var field of test.fields) {
13 | appendField(store, field.key, field.value)
14 | }
15 |
16 | assert.deepEqual(store, test.expected)
17 | })
18 | }
19 | })
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/balanced-match/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/balanced-match"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/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/etc/prepare.js:
--------------------------------------------------------------------------------
1 | #! /usr/bin/env node
2 | var cp = require('child_process');
3 | var fs = require('fs');
4 |
5 | var nodeMajorVersion = +process.version.match(/^v(\d+)\.\d+/)[1];
6 |
7 | if (fs.existsSync('src') && nodeMajorVersion >= 10) {
8 | cp.spawnSync('npm', ['run', 'build'], { stdio: 'inherit', shell: true });
9 | } else {
10 | if (!fs.existsSync('lib')) {
11 | console.warn('BSON: No compiled javascript present, the library is not installed correctly.');
12 | if (nodeMajorVersion < 10) {
13 | console.warn(
14 | 'This library can only be compiled in nodejs version 10 or later, currently running: ' +
15 | nodeMajorVersion
16 | );
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/bson/src/index.ts:
--------------------------------------------------------------------------------
1 | import * as BSON from './bson';
2 |
3 | // Export all named properties from BSON to support
4 | // import { ObjectId, serialize } from 'bson';
5 | // const { ObjectId, serialize } = require('bson');
6 | export * from './bson';
7 |
8 | // Export BSON as a namespace to support:
9 | // import { BSON } from 'bson';
10 | // const { BSON } = require('bson');
11 | export { BSON };
12 |
13 | // BSON does **NOT** have a default export
14 |
15 | // The following will crash in es module environments
16 | // import BSON from 'bson';
17 |
18 | // The following will work as expected, BSON as a namespace of all the APIs (BSON.ObjectId, BSON.serialize)
19 | // const BSON = require('bson');
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/bson/src/max_key.ts:
--------------------------------------------------------------------------------
1 | import { BSONValue } from './bson_value';
2 |
3 | /** @public */
4 | export interface MaxKeyExtended {
5 | $maxKey: 1;
6 | }
7 |
8 | /**
9 | * A class representation of the BSON MaxKey type.
10 | * @public
11 | * @category BSONType
12 | */
13 | export class MaxKey extends BSONValue {
14 | get _bsontype(): 'MaxKey' {
15 | return 'MaxKey';
16 | }
17 |
18 | /** @internal */
19 | toExtendedJSON(): MaxKeyExtended {
20 | return { $maxKey: 1 };
21 | }
22 |
23 | /** @internal */
24 | static fromExtendedJSON(): MaxKey {
25 | return new MaxKey();
26 | }
27 |
28 | inspect(): string {
29 | return 'new MaxKey()';
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Backend/node_modules/bson/src/min_key.ts:
--------------------------------------------------------------------------------
1 | import { BSONValue } from './bson_value';
2 |
3 | /** @public */
4 | export interface MinKeyExtended {
5 | $minKey: 1;
6 | }
7 |
8 | /**
9 | * A class representation of the BSON MinKey type.
10 | * @public
11 | * @category BSONType
12 | */
13 | export class MinKey extends BSONValue {
14 | get _bsontype(): 'MinKey' {
15 | return 'MinKey';
16 | }
17 |
18 | /** @internal */
19 | toExtendedJSON(): MinKeyExtended {
20 | return { $minKey: 1 };
21 | }
22 |
23 | /** @internal */
24 | static fromExtendedJSON(): MinKey {
25 | return new MinKey();
26 | }
27 |
28 | inspect(): string {
29 | return 'new MinKey()';
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Backend/node_modules/bson/vendor/text-encoding/index.js:
--------------------------------------------------------------------------------
1 | // This is free and unencumbered software released into the public domain.
2 | // See LICENSE.md for more information.
3 |
4 | var encoding = require("./lib/encoding.js");
5 |
6 | module.exports = {
7 | TextEncoder: encoding.TextEncoder,
8 | TextDecoder: encoding.TextDecoder,
9 | };
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/buffer-from/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "buffer-from",
3 | "version": "1.1.2",
4 | "license": "MIT",
5 | "repository": "LinusU/buffer-from",
6 | "files": [
7 | "index.js"
8 | ],
9 | "scripts": {
10 | "test": "standard && node test"
11 | },
12 | "devDependencies": {
13 | "standard": "^12.0.1"
14 | },
15 | "keywords": [
16 | "buffer",
17 | "buffer from"
18 | ]
19 | }
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/busboy/.eslintrc.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | extends: '@mscdex/eslint-config',
5 | };
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/busboy/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches: [ master ]
7 |
8 | jobs:
9 | tests-linux:
10 | runs-on: ubuntu-latest
11 | strategy:
12 | fail-fast: false
13 | matrix:
14 | node-version: [10.16.0, 10.x, 12.x, 14.x, 16.x]
15 | steps:
16 | - uses: actions/checkout@v2
17 | - name: Use Node.js ${{ matrix.node-version }}
18 | uses: actions/setup-node@v1
19 | with:
20 | node-version: ${{ matrix.node-version }}
21 | - name: Install module
22 | run: npm install
23 | - name: Run tests
24 | run: npm test
25 |
--------------------------------------------------------------------------------
/Backend/node_modules/busboy/.github/workflows/lint.yml:
--------------------------------------------------------------------------------
1 | name: lint
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches: [ master ]
7 |
8 | env:
9 | NODE_VERSION: 16.x
10 |
11 | jobs:
12 | lint-js:
13 | runs-on: ubuntu-latest
14 | steps:
15 | - uses: actions/checkout@v2
16 | - name: Use Node.js ${{ env.NODE_VERSION }}
17 | uses: actions/setup-node@v1
18 | with:
19 | node-version: ${{ env.NODE_VERSION }}
20 | - name: Install ESLint + ESLint configs/plugins
21 | run: npm install --only=dev
22 | - name: Lint files
23 | run: npm run lint
24 |
--------------------------------------------------------------------------------
/Backend/node_modules/busboy/test/test.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const { spawnSync } = require('child_process');
4 | const { readdirSync } = require('fs');
5 | const { join } = require('path');
6 |
7 | const files = readdirSync(__dirname).sort();
8 | for (const filename of files) {
9 | if (filename.startsWith('test-')) {
10 | const path = join(__dirname, filename);
11 | console.log(`> Running ${filename} ...`);
12 | const result = spawnSync(`${process.argv0} ${path}`, {
13 | shell: true,
14 | stdio: 'inherit',
15 | windowsHide: true
16 | });
17 | if (result.status !== 0)
18 | process.exitCode = 1;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/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 | },
16 | }
17 |
--------------------------------------------------------------------------------
/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 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/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/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.5 / 2023-01-29
2 | ==================
3 |
4 | * perf: skip value escaping when unnecessary
5 |
6 | 1.0.4 / 2017-09-11
7 | ==================
8 |
9 | * perf: skip parameter parsing when no parameters
10 |
11 | 1.0.3 / 2017-09-10
12 | ==================
13 |
14 | * perf: remove argument reassignment
15 |
16 | 1.0.2 / 2016-05-09
17 | ==================
18 |
19 | * perf: enable strict mode
20 |
21 | 1.0.1 / 2015-02-13
22 | ==================
23 |
24 | * Improve missing `Content-Type` header error message
25 |
26 | 1.0.0 / 2015-02-01
27 | ==================
28 |
29 | * Initial implementation, derived from `media-typer@0.3.0`
30 |
--------------------------------------------------------------------------------
/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/core-util-is/README.md:
--------------------------------------------------------------------------------
1 | # core-util-is
2 |
3 | The `util.is*` functions introduced in Node v0.12.
4 |
--------------------------------------------------------------------------------
/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/define-data-property/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "complexity": 0,
8 | "id-length": 0,
9 | "new-cap": ["error", {
10 | "capIsNewExceptions": [
11 | "GetIntrinsic",
12 | ],
13 | }],
14 | },
15 |
16 | "overrides": [
17 | {
18 | "files": "test/**",
19 | "rules": {
20 | "max-lines-per-function": "off",
21 | },
22 | },
23 | ],
24 | }
25 |
--------------------------------------------------------------------------------
/Backend/node_modules/define-data-property/.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/define-data-property
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/define-data-property/.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/define-data-property/index.d.ts:
--------------------------------------------------------------------------------
1 |
2 | declare function defineDataProperty(
3 | obj: Record,
4 | property: keyof typeof obj,
5 | value: typeof obj[typeof property],
6 | nonEnumerable?: boolean | null,
7 | nonWritable?: boolean | null,
8 | nonConfigurable?: boolean | null,
9 | loose?: boolean
10 | ): void;
11 |
12 | export = defineDataProperty;
--------------------------------------------------------------------------------
/Backend/node_modules/es-define-property/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "new-cap": ["error", {
8 | "capIsNewExceptions": [
9 | "GetIntrinsic",
10 | ],
11 | }],
12 | },
13 | }
14 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-define-property/.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/es-define-property
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/es-define-property/.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/es-define-property/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const defineProperty: false | typeof Object.defineProperty;
2 |
3 | export = defineProperty;
--------------------------------------------------------------------------------
/Backend/node_modules/es-define-property/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var GetIntrinsic = require('get-intrinsic');
4 |
5 | /** @type {import('.')} */
6 | var $defineProperty = GetIntrinsic('%Object.defineProperty%', true) || false;
7 | if ($defineProperty) {
8 | try {
9 | $defineProperty({}, 'a', { value: 1 });
10 | } catch (e) {
11 | // IE 8 has a broken defineProperty
12 | $defineProperty = false;
13 | }
14 | }
15 |
16 | module.exports = $defineProperty;
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 | }
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/.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/es-errors
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/es-errors/eval.d.ts:
--------------------------------------------------------------------------------
1 | declare const EvalError: EvalErrorConstructor;
2 |
3 | export = EvalError;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/eval.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('./eval')} */
4 | module.exports = EvalError;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const Error: ErrorConstructor;
2 |
3 | export = Error;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('.')} */
4 | module.exports = Error;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/range.d.ts:
--------------------------------------------------------------------------------
1 | declare const RangeError: RangeErrorConstructor;
2 |
3 | export = RangeError;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/range.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('./range')} */
4 | module.exports = RangeError;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/ref.d.ts:
--------------------------------------------------------------------------------
1 | declare const ReferenceError: ReferenceErrorConstructor;
2 |
3 | export = ReferenceError;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/ref.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('./ref')} */
4 | module.exports = ReferenceError;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/syntax.d.ts:
--------------------------------------------------------------------------------
1 | declare const SyntaxError: SyntaxErrorConstructor;
2 |
3 | export = SyntaxError;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/syntax.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('./syntax')} */
4 | module.exports = SyntaxError;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = require('tape');
4 |
5 | var E = require('../');
6 | var R = require('../range');
7 | var Ref = require('../ref');
8 | var S = require('../syntax');
9 | var T = require('../type');
10 |
11 | test('errors', function (t) {
12 | t.equal(E, Error);
13 | t.equal(R, RangeError);
14 | t.equal(Ref, ReferenceError);
15 | t.equal(S, SyntaxError);
16 | t.equal(T, TypeError);
17 |
18 | t.end();
19 | });
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/type.d.ts:
--------------------------------------------------------------------------------
1 | declare const TypeError: TypeErrorConstructor
2 |
3 | export = TypeError;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/type.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('./type')} */
4 | module.exports = TypeError;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/uri.d.ts:
--------------------------------------------------------------------------------
1 | declare const URIError: URIErrorConstructor;
2 |
3 | export = URIError;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/es-errors/uri.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /** @type {import('./uri')} */
4 | module.exports = URIError;
5 |
--------------------------------------------------------------------------------
/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/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/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "indent": [2, 4],
9 | "no-new-func": [1],
10 | },
11 |
12 | "overrides": [
13 | {
14 | "files": "test/**",
15 | "rules": {
16 | "max-lines-per-function": 0,
17 | "strict": [0]
18 | },
19 | },
20 | ],
21 | }
22 |
--------------------------------------------------------------------------------
/Backend/node_modules/function-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/function-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/function-bind/.github/SECURITY.md:
--------------------------------------------------------------------------------
1 | # Security
2 |
3 | Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report.
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/function-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/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/.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 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/gopd/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-style": [2, "declaration"],
8 | "id-length": 0,
9 | "multiline-comment-style": 0,
10 | "new-cap": [2, {
11 | "capIsNewExceptions": [
12 | "GetIntrinsic",
13 | ],
14 | }],
15 | },
16 | }
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/gopd/.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/gopd
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/gopd/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var GetIntrinsic = require('get-intrinsic');
4 |
5 | var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);
6 |
7 | if ($gOPD) {
8 | try {
9 | $gOPD([], 'length');
10 | } catch (e) {
11 | // IE 8 has a broken gOPD
12 | $gOPD = null;
13 | }
14 | }
15 |
16 | module.exports = $gOPD;
17 |
--------------------------------------------------------------------------------
/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-property-descriptors/.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": ["GetIntrinsic"],
11 | }],
12 | },
13 | }
14 |
--------------------------------------------------------------------------------
/Backend/node_modules/has-property-descriptors/.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-property-descriptors
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-property-descriptors/.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-property-descriptors/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var $defineProperty = require('es-define-property');
4 |
5 | var hasPropertyDescriptors = function hasPropertyDescriptors() {
6 | return !!$defineProperty;
7 | };
8 |
9 | hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {
10 | // node v0.6 has a bug where array lengths can be Set but not Defined
11 | if (!$defineProperty) {
12 | return null;
13 | }
14 | try {
15 | return $defineProperty([], 'length', { value: 1 }).length !== 1;
16 | } catch (e) {
17 | // In Firefox 4-22, defining length on an array throws an exception.
18 | return true;
19 | }
20 | };
21 |
22 | module.exports = hasPropertyDescriptors;
23 |
--------------------------------------------------------------------------------
/Backend/node_modules/has-proto/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 | }
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/has-proto/.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-proto
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-proto/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function hasProto(): boolean;
2 |
3 | export = hasProto;
--------------------------------------------------------------------------------
/Backend/node_modules/has-proto/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = {
4 | __proto__: null,
5 | foo: {}
6 | };
7 |
8 | var $Object = Object;
9 |
10 | /** @type {import('.')} */
11 | module.exports = function hasProto() {
12 | // @ts-expect-error: TS errors on an inherited property for some reason
13 | return { __proto__: test }.foo === test.foo
14 | && !(test instanceof $Object);
15 | };
16 |
--------------------------------------------------------------------------------
/Backend/node_modules/has-proto/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = require('tape');
4 | var hasProto = require('../');
5 |
6 | test('hasProto', function (t) {
7 | var result = hasProto();
8 | t.equal(typeof result, 'boolean', 'returns a boolean (' + result + ')');
9 |
10 | var obj = { __proto__: null };
11 | if (result) {
12 | t.notOk('toString' in obj, 'null object lacks toString');
13 | } else {
14 | t.ok('toString' in obj, 'without proto, null object has toString');
15 | t.equal(obj.__proto__, null); // eslint-disable-line no-proto
16 | }
17 |
18 | t.end();
19 | });
20 |
--------------------------------------------------------------------------------
/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/hasown/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 | }
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/hasown/.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/hasown
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/hasown/.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/hasown/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function hasOwn(o: O, p: K): o is O & Record;
2 |
3 | export = hasOwn;
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/hasown/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var call = Function.prototype.call;
4 | var $hasOwn = Object.prototype.hasOwnProperty;
5 | var bind = require('function-bind');
6 |
7 | /** @type {import('.')} */
8 | module.exports = bind.call(call, $hasOwn);
9 |
--------------------------------------------------------------------------------
/Backend/node_modules/hasown/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@ljharb/tsconfig",
3 | "exclude": [
4 | "coverage",
5 | ],
6 | }
7 |
--------------------------------------------------------------------------------
/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/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-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-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/isarray/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/isarray/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.8"
4 | - "0.10"
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/isarray/Makefile:
--------------------------------------------------------------------------------
1 |
2 | test:
3 | @node_modules/.bin/tape test.js
4 |
5 | .PHONY: test
6 |
7 |
--------------------------------------------------------------------------------
/Backend/node_modules/isarray/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name" : "isarray",
3 | "description" : "Array#isArray for older browsers",
4 | "version" : "0.0.1",
5 | "repository" : "juliangruber/isarray",
6 | "homepage": "https://github.com/juliangruber/isarray",
7 | "main" : "index.js",
8 | "scripts" : [
9 | "index.js"
10 | ],
11 | "dependencies" : {},
12 | "keywords": ["browser","isarray","array"],
13 | "author": {
14 | "name": "Julian Gruber",
15 | "email": "mail@juliangruber.com",
16 | "url": "http://juliangruber.com"
17 | },
18 | "license": "MIT"
19 | }
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/isarray/index.js:
--------------------------------------------------------------------------------
1 | var toString = {}.toString;
2 |
3 | module.exports = Array.isArray || function (arr) {
4 | return toString.call(arr) == '[object Array]';
5 | };
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/isarray/test.js:
--------------------------------------------------------------------------------
1 | var isArray = require('./');
2 | var test = require('tape');
3 |
4 | test('is array', function(t){
5 | t.ok(isArray([]));
6 | t.notOk(isArray({}));
7 | t.notOk(isArray(null));
8 | t.notOk(isArray(false));
9 |
10 | var obj = {};
11 | obj[0] = true;
12 | t.notOk(isArray(obj));
13 |
14 | var arr = [];
15 | arr.foo = 'bar';
16 | t.ok(isArray(arr));
17 |
18 | t.end();
19 | });
20 |
21 |
--------------------------------------------------------------------------------
/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/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/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/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb/eslint-config/node/0.4",
5 |
6 | "rules": {
7 | "array-element-newline": 0,
8 | "complexity": 0,
9 | "func-style": [2, "declaration"],
10 | "max-lines-per-function": 0,
11 | "max-nested-callbacks": 1,
12 | "max-statements-per-line": 1,
13 | "max-statements": 0,
14 | "multiline-comment-style": 0,
15 | "no-continue": 1,
16 | "no-param-reassign": 1,
17 | "no-restricted-syntax": 1,
18 | "object-curly-newline": 0,
19 | },
20 |
21 | "overrides": [
22 | {
23 | "files": "test/**",
24 | "rules": {
25 | "camelcase": 0,
26 | },
27 | },
28 | ]
29 | }
30 |
--------------------------------------------------------------------------------
/Backend/node_modules/minimist/.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/minimist
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/minimist/.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 | "example",
12 | "test"
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/Backend/node_modules/minimist/example/parse.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var argv = require('../')(process.argv.slice(2));
4 | console.log(argv);
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/minimist/test/parse_modified.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var parse = require('../');
4 | var test = require('tape');
5 |
6 | test('parse with modifier functions', function (t) {
7 | t.plan(1);
8 |
9 | var argv = parse(['-b', '123'], { boolean: 'b' });
10 | t.deepEqual(argv, { b: true, _: [123] });
11 | });
12 |
--------------------------------------------------------------------------------
/Backend/node_modules/minimist/test/stop_early.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var parse = require('../');
4 | var test = require('tape');
5 |
6 | test('stops parsing on the first non-option when stopEarly is set', function (t) {
7 | var argv = parse(['--aaa', 'bbb', 'ccc', '--ddd'], {
8 | stopEarly: true,
9 | });
10 |
11 | t.deepEqual(argv, {
12 | aaa: 'bbb',
13 | _: ['ccc', '--ddd'],
14 | });
15 |
16 | t.end();
17 | });
18 |
--------------------------------------------------------------------------------
/Backend/node_modules/minimist/test/whitespace.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var parse = require('../');
4 | var test = require('tape');
5 |
6 | test('whitespace should be whitespace', function (t) {
7 | t.plan(1);
8 | var x = parse(['-x', '\t']).x;
9 | t.equal(x, '\t');
10 | });
11 |
--------------------------------------------------------------------------------
/Backend/node_modules/mkdirp/bin/usage.txt:
--------------------------------------------------------------------------------
1 | usage: mkdirp [DIR1,DIR2..] {OPTIONS}
2 |
3 | Create each supplied directory including any necessary parent directories that
4 | don't yet exist.
5 |
6 | If the directory already exists, do nothing.
7 |
8 | OPTIONS are:
9 |
10 | -m, --mode If a directory needs to be created, set the mode as an octal
11 | permission string.
12 |
13 |
--------------------------------------------------------------------------------
/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/client-side-encryption/providers/aws.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"aws.js","sourceRoot":"","sources":["../../../src/client-side-encryption/providers/aws.ts"],"names":[],"mappings":";;;AAAA,qCAAsD;AAGtD;;GAEG;AACI,KAAK,UAAU,kBAAkB,CAAC,YAA0B;IACjE,MAAM,kBAAkB,GAAG,IAAA,+BAAwB,GAAE,CAAC;IAEtD,IAAI,cAAc,IAAI,kBAAkB,EAAE;QACxC,OAAO,YAAY,CAAC;KACrB;IAED,MAAM,EAAE,qBAAqB,EAAE,GAAG,kBAAkB,CAAC;IACrD,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACzC,8DAA8D;IAC9D,sCAAsC;IACtC,MAAM,GAAG,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC7B,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,CAAC;AAClC,CAAC;AAbD,gDAaC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/client-side-encryption/providers/gcp.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"gcp.js","sourceRoot":"","sources":["../../../src/client-side-encryption/providers/gcp.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAG5C,gBAAgB;AACT,KAAK,UAAU,kBAAkB,CAAC,YAA0B;IACjE,MAAM,WAAW,GAAG,IAAA,qBAAc,GAAE,CAAC;IAErC,IAAI,cAAc,IAAI,WAAW,EAAE;QACjC,OAAO,YAAY,CAAC;KACrB;IAED,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,CAA2B;QACzF,QAAQ,EAAE,gCAAgC;KAC3C,CAAC,CAAC;IACH,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC;AACnD,CAAC;AAXD,gDAWC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/aws_service_workflow.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"aws_service_workflow.js","sourceRoot":"","sources":["../../../../src/cmap/auth/mongodb_oidc/aws_service_workflow.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AAEzB,0CAA+C;AAC/C,yDAAqD;AAErD,8DAA8D;AAC9D,MAAM,mBAAmB,GAAG,6DAA6D,CAAC;AAE1F;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,kCAAe;IACrD;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,qBAAa,CAAC,mBAAmB,CAAC,CAAC;SAC9C;QACD,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;CACF;AAfD,gDAeC"}
--------------------------------------------------------------------------------
/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;IAC5B,oBAAoB;IACpB,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;IAC1B,qBAAa,CAAC,YAAY;CAC3B,CAAC,CAAC"}
--------------------------------------------------------------------------------
/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,6BAA6B,GAAG,EAAE,CAAC;AACnC,QAAA,+BAA+B,GAAG,KAAK,CAAC;AACxC,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,SAAS,GAAG,IAAI,CAAC;AACjB,QAAA,aAAa,GAAG,IAAI,CAAC;AACrB,QAAA,MAAM,GAAG,IAAI,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/cursor/list_search_indexes_cursor.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"list_search_indexes_cursor.js","sourceRoot":"","sources":["../../src/cursor/list_search_indexes_cursor.ts"],"names":[],"mappings":";;;AAEA,6DAAyD;AAKzD,cAAc;AACd,MAAa,uBAAwB,SAAQ,sCAAmC;IAC9E,gBAAgB;IAChB,YACE,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,EAAc,EACzC,IAAmB,EACnB,UAAoC,EAAE;QAEtC,MAAM,QAAQ,GACZ,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACnF,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;CACF;AAXD,0DAWC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/mongo_types.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"mongo_types.js","sourceRoot":"","sources":["../src/mongo_types.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AA2YtC;;;GAGG;AAEH,MAAa,iBAAoD,SAAQ,qBAAY;IAKnF,gBAAgB;IACN,UAAU,CAClB,KAAwB,EACxB,GAAG,IAAkC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;CACF;AAbD,8CAaC;AAED,cAAc;AACd,MAAa,iBAAkB,SAAQ,iBAAqC;CAAG;AAA/E,8CAA+E"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/operations/remove_user.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"remove_user.js","sourceRoot":"","sources":["../../src/operations/remove_user.ts"],"names":[],"mappings":";;;AAGA,uCAA2E;AAC3E,2CAAoD;AAKpD,gBAAgB;AAChB,MAAa,mBAAoB,SAAQ,0BAAyB;IAIhE,YAAY,EAAM,EAAE,QAAgB,EAAE,OAA0B;QAC9D,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEQ,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,OAAkC;QACvE,MAAM,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAdD,kDAcC;AAED,IAAA,yBAAa,EAAC,mBAAmB,EAAE,CAAC,kBAAM,CAAC,eAAe,CAAC,CAAC,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/operations/search_indexes/update.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/operations/search_indexes/update.ts"],"names":[],"mappings":";;;AAKA,4CAAiD;AAEjD,gBAAgB;AAChB,MAAa,0BAA2B,SAAQ,6BAAuB;IACrE,YACmB,UAAsB,EACtB,IAAY,EACZ,UAAoB;QAErC,KAAK,EAAE,CAAC;QAJS,eAAU,GAAV,UAAU,CAAY;QACtB,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAU;IAGvC,CAAC;IAEQ,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,OAAkC;QACvE,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAChD,MAAM,OAAO,GAAG;YACd,iBAAiB,EAAE,SAAS,CAAC,UAAU;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QAEF,MAAM,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;CACF;AApBD,gEAoBC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/lib/operations/stats.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/operations/stats.ts"],"names":[],"mappings":";;;AAIA,uCAA2E;AAC3E,2CAAoD;AAQpD,gBAAgB;AAChB,MAAa,gBAAiB,SAAQ,0BAA0B;IAG9D,YAAY,EAAM,EAAE,OAAuB;QACzC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEQ,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,OAAkC;QACvE,MAAM,OAAO,GAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE;YAC9B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;SACpC;QAED,OAAO,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;CACF;AAhBD,4CAgBC;AAED,IAAA,yBAAa,EAAC,gBAAgB,EAAE,CAAC,kBAAM,CAAC,cAAc,CAAC,CAAC,CAAC"}
--------------------------------------------------------------------------------
/Backend/node_modules/mongodb/src/client-side-encryption/providers/gcp.ts:
--------------------------------------------------------------------------------
1 | import { getGcpMetadata } from '../../deps';
2 | import { type KMSProviders } from '.';
3 |
4 | /** @internal */
5 | export async function loadGCPCredentials(kmsProviders: KMSProviders): Promise {
6 | const gcpMetadata = getGcpMetadata();
7 |
8 | if ('kModuleError' in gcpMetadata) {
9 | return kmsProviders;
10 | }
11 |
12 | const { access_token: accessToken } = await gcpMetadata.instance<{ access_token: string }>({
13 | property: 'service-accounts/default/token'
14 | });
15 | return { ...kmsProviders, gcp: { accessToken } };
16 | }
17 |
--------------------------------------------------------------------------------
/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 = '7.0';
3 | export const MIN_SUPPORTED_WIRE_VERSION = 6;
4 | export const MAX_SUPPORTED_WIRE_VERSION = 21;
5 | export const MIN_SUPPORTED_QE_WIRE_VERSION = 21;
6 | export const MIN_SUPPORTED_QE_SERVER_VERSION = '7.0';
7 | export const OP_REPLY = 1;
8 | export const OP_UPDATE = 2001;
9 | export const OP_INSERT = 2002;
10 | export const OP_QUERY = 2004;
11 | export const OP_DELETE = 2006;
12 | export const OP_COMPRESSED = 2012;
13 | export const OP_MSG = 2013;
14 |
--------------------------------------------------------------------------------
/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/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/documentProvider.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 documentProvider() {
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/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.Collection = function() {
8 | throw new Error('Cannot create a collection from browser library');
9 | };
10 | exports.Connection = function() {
11 | throw new Error('Cannot create a connection from browser library');
12 | };
13 |
--------------------------------------------------------------------------------
/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 | * @api private
15 | */
16 |
17 | Object.defineProperty(ObjectId.prototype, '_id', {
18 | enumerable: false,
19 | configurable: true,
20 | get: function() {
21 | return this;
22 | }
23 | });
24 |
25 | /*!
26 | * ignore
27 | */
28 |
29 | module.exports = exports = ObjectId;
30 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * Module exports.
3 | */
4 |
5 | 'use strict';
6 |
7 | exports.Collection = require('./collection');
8 | exports.Connection = require('./connection');
9 |
--------------------------------------------------------------------------------
/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/createCollectionsError.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const MongooseError = require('./mongooseError');
4 |
5 | /**
6 | * createCollections Error constructor
7 | *
8 | * @param {String} message
9 | * @param {String} errorsMap
10 | * @inherits MongooseError
11 | * @api private
12 | */
13 |
14 | class CreateCollectionsError extends MongooseError {
15 | constructor(message, errorsMap) {
16 | super(message);
17 | this.errors = errorsMap;
18 | }
19 | }
20 |
21 | Object.defineProperty(CreateCollectionsError.prototype, 'name', {
22 | value: 'CreateCollectionsError'
23 | });
24 |
25 | module.exports = CreateCollectionsError;
26 |
27 |
--------------------------------------------------------------------------------
/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 | * @api private
16 | */
17 | constructor(name) {
18 | super('Cannot overwrite `' + name + '` model once compiled.');
19 | }
20 | }
21 |
22 | Object.defineProperty(OverwriteModelError.prototype, 'name', {
23 | value: 'OverwriteModelError'
24 | });
25 |
26 | /*!
27 | * exports
28 | */
29 |
30 | module.exports = OverwriteModelError;
31 |
--------------------------------------------------------------------------------
/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 isBsonType = require('../isBsonType');
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 (isBsonType(a, 'ObjectId') && isBsonType(b, 'ObjectId')) {
13 | return a.toString() === b.toString();
14 | }
15 | return false;
16 | };
17 |
--------------------------------------------------------------------------------
/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 | };
13 |
--------------------------------------------------------------------------------
/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 | };
26 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/error/combinePathErrors.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /*!
4 | * ignore
5 | */
6 |
7 | module.exports = function combinePathErrors(err) {
8 | const keys = Object.keys(err.errors || {});
9 | const len = keys.length;
10 | const msgs = [];
11 | let key;
12 |
13 | for (let i = 0; i < len; ++i) {
14 | key = keys[i];
15 | if (err === err.errors[key]) {
16 | continue;
17 | }
18 | msgs.push(key + ': ' + err.errors[key].message);
19 | }
20 |
21 | return msgs.join(', ');
22 | };
23 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/firstKey.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function firstKey(obj) {
4 | if (obj == null) {
5 | return null;
6 | }
7 | return Object.keys(obj)[0];
8 | };
9 |
--------------------------------------------------------------------------------
/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 | * @api private
6 | */
7 |
8 | module.exports = function getConstructorName(val) {
9 | if (val == null) {
10 | return void 0;
11 | }
12 | if (typeof val.constructor !== 'function') {
13 | return void 0;
14 | }
15 | return val.constructor.name;
16 | };
17 |
--------------------------------------------------------------------------------
/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;
28 |
--------------------------------------------------------------------------------
/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 | };
14 |
--------------------------------------------------------------------------------
/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 | };
19 |
--------------------------------------------------------------------------------
/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 | };
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/isAsyncFunction.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function isAsyncFunction(v) {
4 | return (
5 | typeof v === 'function' &&
6 | v.constructor &&
7 | v.constructor.name === 'AsyncFunction'
8 | );
9 | };
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/isBsonType.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /**
4 | * Get the bson type, if it exists
5 | * @api private
6 | */
7 |
8 | function isBsonType(obj, typename) {
9 | return (
10 | typeof obj === 'object' &&
11 | obj !== null &&
12 | obj._bsontype === typename
13 | );
14 | }
15 |
16 | module.exports = isBsonType;
17 |
--------------------------------------------------------------------------------
/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 | };
23 |
--------------------------------------------------------------------------------
/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 | };
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/isPOJO.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function isPOJO(arg) {
4 | if (arg == null || typeof arg !== 'object') {
5 | return false;
6 | }
7 | const proto = Object.getPrototypeOf(arg);
8 | // Prototype may be null if you used `Object.create(null)`
9 | // Checking `proto`'s constructor is safe because `getPrototypeOf()`
10 | // explicitly crosses the boundary from object data to object metadata
11 | return !proto || proto.constructor.name === 'Object';
12 | };
13 |
--------------------------------------------------------------------------------
/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;
7 |
--------------------------------------------------------------------------------
/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 | * @api private
8 | */
9 | module.exports = function applyStatics(model, schema) {
10 | for (const i in schema.statics) {
11 | model[i] = schema.statics[i];
12 | }
13 | };
14 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/model/pushNestedArrayPaths.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function pushNestedArrayPaths(paths, nestedArray, path) {
4 | if (nestedArray == null) {
5 | return;
6 | }
7 |
8 | for (let i = 0; i < nestedArray.length; ++i) {
9 | if (Array.isArray(nestedArray[i])) {
10 | pushNestedArrayPaths(paths, nestedArray[i], path + '.' + i);
11 | } else {
12 | paths.push(path + '.' + i);
13 | }
14 | }
15 | };
16 |
--------------------------------------------------------------------------------
/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 | };
13 |
--------------------------------------------------------------------------------
/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 | };
19 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /*!
4 | * ignore
5 | */
6 |
7 | module.exports = new WeakMap();
8 |
--------------------------------------------------------------------------------
/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 | };
11 |
--------------------------------------------------------------------------------
/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 | }
20 |
--------------------------------------------------------------------------------
/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 | * @api private
10 | */
11 |
12 | module.exports = function isSubpath(path1, path2) {
13 | return path1 === path2 || path2.startsWith(path1 + '.');
14 | };
15 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/query/handleReadPreferenceAliases.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function handleReadPreferenceAliases(pref) {
4 | switch (pref) {
5 | case 'p':
6 | pref = 'primary';
7 | break;
8 | case 'pp':
9 | pref = 'primaryPreferred';
10 | break;
11 | case 's':
12 | pref = 'secondary';
13 | break;
14 | case 'sp':
15 | pref = 'secondaryPreferred';
16 | break;
17 | case 'n':
18 | pref = 'nearest';
19 | break;
20 | }
21 |
22 | return pref;
23 | };
24 |
--------------------------------------------------------------------------------
/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 | };
15 |
--------------------------------------------------------------------------------
/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 | };
14 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/query/validOps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = Object.freeze([
4 | // Read
5 | 'countDocuments',
6 | 'distinct',
7 | 'estimatedDocumentCount',
8 | 'find',
9 | 'findOne',
10 | // Update
11 | 'findOneAndReplace',
12 | 'findOneAndUpdate',
13 | 'replaceOne',
14 | 'updateMany',
15 | 'updateOne',
16 | // Delete
17 | 'deleteMany',
18 | 'deleteOne',
19 | 'findOneAndDelete'
20 | ]);
21 |
--------------------------------------------------------------------------------
/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 | };
8 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/schema/applyBuiltinPlugins.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const builtinPlugins = require('../../plugins');
4 |
5 | module.exports = function applyBuiltinPlugins(schema) {
6 | for (const plugin of Object.values(builtinPlugins)) {
7 | plugin(schema, { deduplicate: true });
8 | }
9 | schema.plugins = Object.values(builtinPlugins).
10 | map(fn => ({ fn, opts: { deduplicate: true } })).
11 | concat(schema.plugins);
12 | };
13 |
--------------------------------------------------------------------------------
/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 | };
13 |
--------------------------------------------------------------------------------
/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 | };
21 |
--------------------------------------------------------------------------------
/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 | }
25 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/specialProperties.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = new Set(['__proto__', 'constructor', 'prototype']);
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/helpers/timers.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | exports.setTimeout = setTimeout;
4 |
--------------------------------------------------------------------------------
/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 | };
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 | };
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /*!
4 | * Module dependencies.
5 | */
6 |
7 | require('./driver').set(require('./drivers/node-mongodb-native'));
8 |
9 | const mongoose = require('./mongoose');
10 |
11 | mongoose.Mongoose.prototype.mongo = require('mongodb');
12 |
13 | module.exports = mongoose;
14 |
--------------------------------------------------------------------------------
/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 | });
9 |
--------------------------------------------------------------------------------
/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;
15 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/plugins/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | exports.saveSubdocs = require('./saveSubdocs');
4 | exports.sharding = require('./sharding');
5 | exports.trackTransaction = require('./trackTransaction');
6 | exports.validateBeforeSave = require('./validateBeforeSave');
7 |
--------------------------------------------------------------------------------
/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');
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 | * Decimal128 type constructor
3 | *
4 | * #### Example:
5 | *
6 | * const id = new mongoose.Types.Decimal128('3.1415');
7 | *
8 | * @constructor Decimal128
9 | */
10 |
11 | 'use strict';
12 |
13 | module.exports = require('bson').Decimal128;
14 |
--------------------------------------------------------------------------------
/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/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 |
22 | exports.UUID = require('./uuid');
23 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/lib/types/uuid.js:
--------------------------------------------------------------------------------
1 | /**
2 | * UUID type constructor
3 | *
4 | * #### Example:
5 | *
6 | * const id = new mongoose.Types.UUID();
7 | *
8 | * @constructor UUID
9 | */
10 |
11 | 'use strict';
12 |
13 | module.exports = require('bson').UUID;
14 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/types/augmentations.d.ts:
--------------------------------------------------------------------------------
1 | // this import is required so that types get merged instead of completely overwritten
2 | import 'bson';
3 |
4 | declare module 'bson' {
5 | interface ObjectId {
6 | /** Mongoose automatically adds a conveniency "_id" getter on the base ObjectId class */
7 | _id: this;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/mongoose/types/callback.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'mongoose' {
2 | type CallbackError = NativeError | null;
3 |
4 | type Callback = (error: CallbackError, result: T) => void;
5 |
6 | type CallbackWithoutResult = (error: CallbackError) => void;
7 | type CallbackWithoutResultAndOptionalError = (error?: CallbackError) => void;
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/.github/ISSUE_TEMPLATE.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | **Do you want to request a *feature* or report a *bug*?**
4 |
5 | **What is the current behavior?**
6 |
7 | **If the current behavior is a bug, please provide the steps to reproduce.**
8 |
9 | **What is the expected behavior?**
10 |
11 | **What are the versions of Node.js and mquery are you are using? Note that "latest" is not a version.**
12 |
--------------------------------------------------------------------------------
/Backend/node_modules/mquery/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | **Summary**
4 |
5 |
6 |
7 | **Examples**
8 |
9 |
10 |
--------------------------------------------------------------------------------
/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/multer/lib/remove-uploaded-files.js:
--------------------------------------------------------------------------------
1 | function removeUploadedFiles (uploadedFiles, remove, cb) {
2 | var length = uploadedFiles.length
3 | var errors = []
4 |
5 | if (length === 0) return cb(null, errors)
6 |
7 | function handleFile (idx) {
8 | var file = uploadedFiles[idx]
9 |
10 | remove(file, function (err) {
11 | if (err) {
12 | err.file = file
13 | err.field = file.fieldname
14 | errors.push(err)
15 | }
16 |
17 | if (idx < length - 1) {
18 | handleFile(idx + 1)
19 | } else {
20 | cb(null, errors)
21 | }
22 | })
23 | }
24 |
25 | handleFile(0)
26 | }
27 |
28 | module.exports = removeUploadedFiles
29 |
--------------------------------------------------------------------------------
/Backend/node_modules/multer/storage/memory.js:
--------------------------------------------------------------------------------
1 | var concat = require('concat-stream')
2 |
3 | function MemoryStorage (opts) {}
4 |
5 | MemoryStorage.prototype._handleFile = function _handleFile (req, file, cb) {
6 | file.stream.pipe(concat({ encoding: 'buffer' }, function (data) {
7 | cb(null, {
8 | buffer: data,
9 | size: data.length
10 | })
11 | }))
12 | }
13 |
14 | MemoryStorage.prototype._removeFile = function _removeFile (req, file, cb) {
15 | delete file.buffer
16 | cb(null)
17 | }
18 |
19 | module.exports = function (opts) {
20 | return new MemoryStorage(opts)
21 | }
22 |
--------------------------------------------------------------------------------
/Backend/node_modules/nodemon/.prettierrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "singleQuote": true
3 | }
4 |
--------------------------------------------------------------------------------
/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('simple-update-notifier')({ pkg });
16 | }
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/nodemon/bin/windows-kill.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/node_modules/nodemon/bin/windows-kill.exe
--------------------------------------------------------------------------------
/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/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/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/.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/package-support.json:
--------------------------------------------------------------------------------
1 | {
2 | "versions": [
3 | {
4 | "version": "*",
5 | "target": {
6 | "node": "all"
7 | },
8 | "response": {
9 | "type": "time-permitting"
10 | },
11 | "backing": {
12 | "npm-funding": true,
13 | "donations": [
14 | "https://github.com/ljharb",
15 | "https://tidelift.com/funding/github/npm/object-inspect"
16 | ]
17 | }
18 | }
19 | ]
20 | }
21 |
--------------------------------------------------------------------------------
/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/global.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 |
5 | var test = require('tape');
6 | var globalThis = require('globalthis')();
7 |
8 | test('global object', function (t) {
9 | /* eslint-env browser */
10 | var expected = typeof window === 'undefined' ? 'globalThis' : 'Window';
11 | t.equal(
12 | inspect([globalThis]),
13 | '[ { [object ' + expected + '] } ]'
14 | );
15 |
16 | t.end();
17 | });
18 |
--------------------------------------------------------------------------------
/Backend/node_modules/object-inspect/test/has.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var test = require('tape');
5 | var mockProperty = require('mock-property');
6 |
7 | test('when Object#hasOwnProperty is deleted', function (t) {
8 | t.plan(1);
9 | var arr = [1, , 3]; // eslint-disable-line no-sparse-arrays
10 |
11 | t.teardown(mockProperty(Array.prototype, 1, { value: 2 })); // this is needed to account for "in" vs "hasOwnProperty"
12 | t.teardown(mockProperty(Object.prototype, 'hasOwnProperty', { 'delete': true }));
13 |
14 | t.equal(inspect(arr), '[ 1, , 3 ]');
15 | });
16 |
--------------------------------------------------------------------------------
/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/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/Backend/node_modules/process-nextick-args/readme.md:
--------------------------------------------------------------------------------
1 | process-nextick-args
2 | =====
3 |
4 | [](https://travis-ci.org/calvinmetcalf/process-nextick-args)
5 |
6 | ```bash
7 | npm install --save process-nextick-args
8 | ```
9 |
10 | Always be able to pass arguments to process.nextTick, no matter the platform
11 |
12 | ```js
13 | var pna = require('process-nextick-args');
14 |
15 | pna.nextTick(function (a, b, c) {
16 | console.log(a, b, c);
17 | }, 'step', 3, 'profit');
18 | ```
19 |
--------------------------------------------------------------------------------
/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/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/readable-stream/duplex-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/_stream_duplex.js');
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/duplex.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').Duplex
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/lib/internal/streams/stream-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('events').EventEmitter;
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/lib/internal/streams/stream.js:
--------------------------------------------------------------------------------
1 | module.exports = require('stream');
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/passthrough.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').PassThrough
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/readable-browser.js:
--------------------------------------------------------------------------------
1 | exports = module.exports = require('./lib/_stream_readable.js');
2 | exports.Stream = exports;
3 | exports.Readable = exports;
4 | exports.Writable = require('./lib/_stream_writable.js');
5 | exports.Duplex = require('./lib/_stream_duplex.js');
6 | exports.Transform = require('./lib/_stream_transform.js');
7 | exports.PassThrough = require('./lib/_stream_passthrough.js');
8 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/transform.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').Transform
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/writable-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/_stream_writable.js');
2 |
--------------------------------------------------------------------------------
/Backend/node_modules/readable-stream/writable.js:
--------------------------------------------------------------------------------
1 | var Stream = require("stream")
2 | var Writable = require("./lib/_stream_writable.js")
3 |
4 | if (process.env.READABLE_STREAM === 'disable') {
5 | module.exports = Stream && Stream.Writable || Writable
6 | } else {
7 | module.exports = Writable
8 | }
9 |
--------------------------------------------------------------------------------
/Backend/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/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/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/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/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/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/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/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/semver/functions/inc.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 |
3 | const inc = (version, release, options, identifier, identifierBase) => {
4 | if (typeof (options) === 'string') {
5 | identifierBase = identifier
6 | identifier = options
7 | options = undefined
8 | }
9 |
10 | try {
11 | return new SemVer(
12 | version instanceof SemVer ? version.version : version,
13 | options
14 | ).inc(release, identifier, identifierBase).version
15 | } catch (er) {
16 | return null
17 | }
18 | }
19 | module.exports = inc
20 |
--------------------------------------------------------------------------------
/Backend/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/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/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/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/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/semver/functions/parse.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const parse = (version, options, throwErrors = false) => {
3 | if (version instanceof SemVer) {
4 | return version
5 | }
6 | try {
7 | return new SemVer(version, options)
8 | } catch (er) {
9 | if (!throwErrors) {
10 | return null
11 | }
12 | throw er
13 | }
14 | }
15 |
16 | module.exports = parse
17 |
--------------------------------------------------------------------------------
/Backend/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/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/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/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/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/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/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/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/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/semver/internal/parse-options.js:
--------------------------------------------------------------------------------
1 | // parse out just the options we care about
2 | const looseOption = Object.freeze({ loose: true })
3 | const emptyOpts = Object.freeze({ })
4 | const parseOptions = options => {
5 | if (!options) {
6 | return emptyOpts
7 | }
8 |
9 | if (typeof options !== 'object') {
10 | return looseOption
11 | }
12 |
13 | return options
14 | }
15 | module.exports = parseOptions
16 |
--------------------------------------------------------------------------------
/Backend/node_modules/semver/preload.js:
--------------------------------------------------------------------------------
1 | // XXX remove in v8 or beyond
2 | module.exports = require('./index.js')
3 |
--------------------------------------------------------------------------------
/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/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/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, options)
6 | }
7 | module.exports = intersects
8 |
--------------------------------------------------------------------------------
/Backend/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/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/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/send/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/set-function-length/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "id-length": "off",
8 | "new-cap": ["error", {
9 | "capIsNewExceptions": [
10 | "GetIntrinsic"
11 | ],
12 | }],
13 | "no-extra-parens": "off",
14 | },
15 |
16 | "overrides": [
17 | {
18 | "files": ["test/**/*.js"],
19 | "rules": {
20 | "id-length": "off",
21 | "max-lines-per-function": "off",
22 | "multiline-comment-style": "off",
23 | "no-empty-function": "off",
24 | },
25 | },
26 | ],
27 | }
28 |
--------------------------------------------------------------------------------
/Backend/node_modules/set-function-length/.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/set-function-name
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/set-function-length/.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/set-function-length/env.d.ts:
--------------------------------------------------------------------------------
1 | declare const env: {
2 | __proto__: null,
3 | boundFnsHaveConfigurableLengths: boolean;
4 | boundFnsHaveWritableLengths: boolean;
5 | functionsHaveConfigurableLengths: boolean;
6 | functionsHaveWritableLengths: boolean;
7 | };
8 |
9 | export = env;
--------------------------------------------------------------------------------
/Backend/node_modules/set-function-length/index.d.ts:
--------------------------------------------------------------------------------
1 | declare namespace setFunctionLength {
2 | type Func = (...args: unknown[]) => unknown;
3 | }
4 |
5 | declare function setFunctionLength(fn: T, length: number, loose?: boolean): T;
6 |
7 | export = setFunctionLength;
--------------------------------------------------------------------------------
/Backend/node_modules/set-function-length/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@ljharb/tsconfig",
3 | "compilerOptions": {
4 | "target": "es2021",
5 | },
6 | "exclude": [
7 | "coverage",
8 | ],
9 | }
10 |
--------------------------------------------------------------------------------
/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/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | end_of_line = lf
6 | insert_final_newline = true
7 | indent_style = tab
8 | indent_size = 2
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/side-channel/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-lines-per-function": 0,
8 | "multiline-comment-style": 1,
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/simple-update-notifier/build/index.d.ts:
--------------------------------------------------------------------------------
1 | interface IUpdate {
2 | pkg: {
3 | name: string;
4 | version: string;
5 | };
6 | updateCheckInterval?: number;
7 | shouldNotifyInNpmScript?: boolean;
8 | distTag?: string;
9 | alwaysRun?: boolean;
10 | debug?: boolean;
11 | }
12 | declare const simpleUpdateNotifier: (args: IUpdate) => Promise;
13 | export { simpleUpdateNotifier as default };
14 |
--------------------------------------------------------------------------------
/Backend/node_modules/simple-update-notifier/src/borderedText.ts:
--------------------------------------------------------------------------------
1 | const borderedText = (text: string) => {
2 | const lines = text.split('\n');
3 | const width = Math.max(...lines.map((l) => l.length));
4 | const res = [`┌${'─'.repeat(width + 2)}┐`];
5 | for (const line of lines) {
6 | res.push(`│ ${line.padEnd(width)} │`);
7 | }
8 | res.push(`└${'─'.repeat(width + 2)}┘`);
9 | return res.join('\n');
10 | };
11 |
12 | export default borderedText;
13 |
--------------------------------------------------------------------------------
/Backend/node_modules/simple-update-notifier/src/cache.spec.ts:
--------------------------------------------------------------------------------
1 | import { createConfigDir, getLastUpdate, saveLastUpdate } from './cache';
2 |
3 | createConfigDir();
4 |
5 | jest.useFakeTimers().setSystemTime(new Date('2022-01-01'));
6 |
7 | const fakeTime = new Date('2022-01-01').getTime();
8 |
9 | test('can save update then get the update details', () => {
10 | saveLastUpdate('test');
11 | expect(getLastUpdate('test')).toBe(fakeTime);
12 | });
13 |
14 | test('prefixed module can save update then get the update details', () => {
15 | saveLastUpdate('@alexbrazier/test');
16 | expect(getLastUpdate('@alexbrazier/test')).toBe(fakeTime);
17 | });
18 |
--------------------------------------------------------------------------------
/Backend/node_modules/simple-update-notifier/src/isNpmOrYarn.ts:
--------------------------------------------------------------------------------
1 | import process from 'process';
2 |
3 | const packageJson = process.env.npm_package_json;
4 | const userAgent = process.env.npm_config_user_agent;
5 | const isNpm6 = Boolean(userAgent && userAgent.startsWith('npm'));
6 | const isNpm7 = Boolean(packageJson && packageJson.endsWith('package.json'));
7 |
8 | const isNpm = isNpm6 || isNpm7;
9 | const isYarn = Boolean(userAgent && userAgent.startsWith('yarn'));
10 | const isNpmOrYarn = isNpm || isYarn;
11 |
12 | export default isNpmOrYarn;
13 |
--------------------------------------------------------------------------------
/Backend/node_modules/simple-update-notifier/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface IUpdate {
2 | pkg: { name: string; version: string };
3 | updateCheckInterval?: number;
4 | shouldNotifyInNpmScript?: boolean;
5 | distTag?: string;
6 | alwaysRun?: boolean;
7 | debug?: boolean;
8 | }
9 |
--------------------------------------------------------------------------------
/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/streamsearch/.eslintrc.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | extends: '@mscdex/eslint-config',
5 | };
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/streamsearch/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches: [ master ]
7 |
8 | jobs:
9 | tests-linux:
10 | runs-on: ubuntu-latest
11 | strategy:
12 | fail-fast: false
13 | matrix:
14 | node-version: [10.x, 12.x, 14.x, 16.x]
15 | steps:
16 | - uses: actions/checkout@v2
17 | - name: Use Node.js ${{ matrix.node-version }}
18 | uses: actions/setup-node@v1
19 | with:
20 | node-version: ${{ matrix.node-version }}
21 | - name: Install module
22 | run: npm install
23 | - name: Run tests
24 | run: npm test
25 |
--------------------------------------------------------------------------------
/Backend/node_modules/streamsearch/.github/workflows/lint.yml:
--------------------------------------------------------------------------------
1 | name: lint
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches: [ master ]
7 |
8 | env:
9 | NODE_VERSION: 16.x
10 |
11 | jobs:
12 | lint-js:
13 | runs-on: ubuntu-latest
14 | steps:
15 | - uses: actions/checkout@v2
16 | - name: Use Node.js ${{ env.NODE_VERSION }}
17 | uses: actions/setup-node@v1
18 | with:
19 | node-version: ${{ env.NODE_VERSION }}
20 | - name: Install ESLint + ESLint configs/plugins
21 | run: npm install --only=dev
22 | - name: Lint files
23 | run: npm run lint
24 |
--------------------------------------------------------------------------------
/Backend/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/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/typedarray/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.8"
4 | - "0.10"
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/typedarray/example/tarray.js:
--------------------------------------------------------------------------------
1 | var Uint8Array = require('../').Uint8Array;
2 | var ua = new Uint8Array(5);
3 | ua[1] = 256 + 55;
4 | console.log(ua[1]);
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/typedarray/test/server/undef_globals.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var vm = require('vm');
3 | var fs = require('fs');
4 | var src = fs.readFileSync(__dirname + '/../../index.js', 'utf8');
5 |
6 | test('u8a without globals', function (t) {
7 | var c = {
8 | module: { exports: {} },
9 | };
10 | c.exports = c.module.exports;
11 | vm.runInNewContext(src, c);
12 | var TA = c.module.exports;
13 | var ua = new(TA.Uint8Array)(5);
14 |
15 | t.equal(ua.length, 5);
16 | ua[1] = 256 + 55;
17 | t.equal(ua[1], 55);
18 | t.end();
19 | });
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/typedarray/test/tarray.js:
--------------------------------------------------------------------------------
1 | var TA = require('../');
2 | var test = require('tape');
3 |
4 | test('tiny u8a test', function (t) {
5 | var ua = new(TA.Uint8Array)(5);
6 | t.equal(ua.length, 5);
7 | ua[1] = 256 + 55;
8 | t.equal(ua[1], 55);
9 | t.end();
10 | });
11 |
--------------------------------------------------------------------------------
/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/undici-types/README.md:
--------------------------------------------------------------------------------
1 | # undici-types
2 |
3 | This package is a dual-publish of the [undici](https://www.npmjs.com/package/undici) library types. The `undici` package **still contains types**. This package is for users who _only_ need undici types (such as for `@types/node`). It is published alongside every release of `undici`, so you can always use the same version.
4 |
5 | - [GitHub nodejs/undici](https://github.com/nodejs/undici)
6 | - [Undici Documentation](https://undici.nodejs.org/#/)
7 |
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/content-type.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
3 | interface MIMEType {
4 | type: string
5 | subtype: string
6 | parameters: Map
7 | essence: string
8 | }
9 |
10 | /**
11 | * Parse a string to a {@link MIMEType} object. Returns `failure` if the string
12 | * couldn't be parsed.
13 | * @see https://mimesniff.spec.whatwg.org/#parse-a-mime-type
14 | */
15 | export function parseMIMEType (input: string): 'failure' | MIMEType
16 |
17 | /**
18 | * Convert a MIMEType object to a string.
19 | * @see https://mimesniff.spec.whatwg.org/#serialize-a-mime-type
20 | */
21 | export function serializeAMimeType (mimeType: MIMEType): string
22 |
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/global-dispatcher.d.ts:
--------------------------------------------------------------------------------
1 | import Dispatcher from "./dispatcher";
2 |
3 | export {
4 | getGlobalDispatcher,
5 | setGlobalDispatcher
6 | }
7 |
8 | declare function setGlobalDispatcher(dispatcher: DispatcherImplementation): void;
9 | declare function getGlobalDispatcher(): Dispatcher;
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/global-origin.d.ts:
--------------------------------------------------------------------------------
1 | export {
2 | setGlobalOrigin,
3 | getGlobalOrigin
4 | }
5 |
6 | declare function setGlobalOrigin(origin: string | URL | undefined): void;
7 | declare function getGlobalOrigin(): URL | undefined;
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/handlers.d.ts:
--------------------------------------------------------------------------------
1 | import Dispatcher from "./dispatcher";
2 |
3 | export declare class RedirectHandler implements Dispatcher.DispatchHandlers{
4 | constructor (dispatch: Dispatcher, maxRedirections: number, opts: Dispatcher.DispatchOptions, handler: Dispatcher.DispatchHandlers)
5 | }
6 |
7 | export declare class DecoratorHandler implements Dispatcher.DispatchHandlers{
8 | constructor (handler: Dispatcher.DispatchHandlers)
9 | }
10 |
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/header.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * The header type declaration of `undici`.
3 | */
4 | export type IncomingHttpHeaders = Record;
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/interceptors.d.ts:
--------------------------------------------------------------------------------
1 | import Dispatcher from "./dispatcher";
2 |
3 | type RedirectInterceptorOpts = { maxRedirections?: number }
4 |
5 | export declare function createRedirectInterceptor (opts: RedirectInterceptorOpts): Dispatcher.DispatchInterceptor
6 |
--------------------------------------------------------------------------------
/Backend/node_modules/undici-types/mock-errors.d.ts:
--------------------------------------------------------------------------------
1 | import Errors from './errors'
2 |
3 | export default MockErrors
4 |
5 | declare namespace MockErrors {
6 | /** The request does not match any registered mock dispatches. */
7 | export class MockNotMatchedError extends Errors.UndiciError {
8 | constructor(message?: string);
9 | name: 'MockNotMatchedError';
10 | code: 'UND_MOCK_ERR_MOCK_NOT_MATCHED';
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Backend/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/Backend/node_modules/util-deprecate/History.md:
--------------------------------------------------------------------------------
1 |
2 | 1.0.2 / 2015-10-07
3 | ==================
4 |
5 | * use try/catch when checking `localStorage` (#3, @kumavis)
6 |
7 | 1.0.1 / 2014-11-25
8 | ==================
9 |
10 | * browser: use `console.warn()` for deprecation calls
11 | * browser: more jsdocs
12 |
13 | 1.0.0 / 2014-04-30
14 | ==================
15 |
16 | * initial commit
17 |
--------------------------------------------------------------------------------
/Backend/node_modules/util-deprecate/node.js:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | * For Node.js, simply re-export the core `util.deprecate` function.
4 | */
5 |
6 | module.exports = require('util').deprecate;
7 |
--------------------------------------------------------------------------------
/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/xtend/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "maxdepth": 4,
3 | "maxstatements": 200,
4 | "maxcomplexity": 12,
5 | "maxlen": 80,
6 | "maxparams": 5,
7 |
8 | "curly": true,
9 | "eqeqeq": true,
10 | "immed": true,
11 | "latedef": false,
12 | "noarg": true,
13 | "noempty": true,
14 | "nonew": true,
15 | "undef": true,
16 | "unused": "vars",
17 | "trailing": true,
18 |
19 | "quotmark": true,
20 | "expr": true,
21 | "asi": true,
22 |
23 | "browser": false,
24 | "esnext": true,
25 | "devel": false,
26 | "node": false,
27 | "nonstandard": false,
28 |
29 | "predef": ["require", "module", "__dirname", "__filename"]
30 | }
31 |
--------------------------------------------------------------------------------
/Backend/node_modules/xtend/immutable.js:
--------------------------------------------------------------------------------
1 | module.exports = extend
2 |
3 | var hasOwnProperty = Object.prototype.hasOwnProperty;
4 |
5 | function extend() {
6 | var target = {}
7 |
8 | for (var i = 0; i < arguments.length; i++) {
9 | var source = arguments[i]
10 |
11 | for (var key in source) {
12 | if (hasOwnProperty.call(source, key)) {
13 | target[key] = source[key]
14 | }
15 | }
16 | }
17 |
18 | return target
19 | }
20 |
--------------------------------------------------------------------------------
/Backend/node_modules/xtend/mutable.js:
--------------------------------------------------------------------------------
1 | module.exports = extend
2 |
3 | var hasOwnProperty = Object.prototype.hasOwnProperty;
4 |
5 | function extend(target) {
6 | for (var i = 1; i < arguments.length; i++) {
7 | var source = arguments[i]
8 |
9 | for (var key in source) {
10 | if (hasOwnProperty.call(source, key)) {
11 | target[key] = source[key]
12 | }
13 | }
14 | }
15 |
16 | return target
17 | }
18 |
--------------------------------------------------------------------------------
/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 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "nodemon server.js"
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "cors": "^2.8.5",
14 | "express": "^4.21.1",
15 | "mongoose": "^8.0.1",
16 | "multer": "^1.4.5-lts.1",
17 | "nodemon": "^3.0.1"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Backend/uploads/1700630708206-1979210[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700630708206-1979210[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700631424222-18505809[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700631424222-18505809[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700632005607-136251[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700632005607-136251[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700632074778-136251.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700632074778-136251.jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700632515790-29502358[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700632515790-29502358[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700632736939-30186948[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700632736939-30186948[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700632928170-80830635[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700632928170-80830635[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700633112352-42983957[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700633112352-42983957[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700633869849-122765395[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700633869849-122765395[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700638048715-61111298[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700638048715-61111298[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700643491707-63331415[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700643491707-63331415[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1700721610720-29502358[1].jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1700721610720-29502358[1].jpg
--------------------------------------------------------------------------------
/Backend/uploads/1731650424237-book1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1731650424237-book1.jpg
--------------------------------------------------------------------------------
/Backend/uploads/1731650587954-book2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1731650587954-book2.jpg
--------------------------------------------------------------------------------
/Backend/uploads/1731654559323-book3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1731654559323-book3.jpg
--------------------------------------------------------------------------------
/Backend/uploads/1731659304232-book3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Backend/uploads/1731659304232-book3.jpg
--------------------------------------------------------------------------------
/Frontend/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | env: { browser: true, es2020: true },
4 | extends: [
5 | 'eslint:recommended',
6 | 'plugin:react/recommended',
7 | 'plugin:react/jsx-runtime',
8 | 'plugin:react-hooks/recommended',
9 | ],
10 | ignorePatterns: ['dist', '.eslintrc.cjs'],
11 | parserOptions: { ecmaVersion: 'latest', sourceType: 'module' },
12 | settings: { react: { version: '18.2' } },
13 | plugins: ['react-refresh'],
14 | rules: {
15 | 'react-refresh/only-export-components': [
16 | 'warn',
17 | { allowConstantExport: true },
18 | ],
19 | },
20 | }
21 |
--------------------------------------------------------------------------------
/Frontend/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/Frontend/README.md:
--------------------------------------------------------------------------------
1 | # React + Vite
2 |
3 | This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4 |
5 | Currently, two official plugins are available:
6 |
7 | - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
8 | - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
9 |
--------------------------------------------------------------------------------
/Frontend/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Book Store
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Frontend/src/Admin/users.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Frontend/src/Admin/users.css
--------------------------------------------------------------------------------
/Frontend/src/Assets/Bookbg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Frontend/src/Assets/Bookbg.jpg
--------------------------------------------------------------------------------
/Frontend/src/User/uhome.css:
--------------------------------------------------------------------------------
1 | #uhome{
2 | height: 700px;
3 | background-image: url("https://furniture-shop-site.netlify.app/static/media/defaultBcg.9a1103b5.jpeg");
4 | color: rgb(255, 255, 255);
5 |
6 | }
7 |
8 | #hh{
9 |
10 | margin-top: 200px;
11 | margin-left: 480px;
12 | margin-right: 480px;
13 | background-color: #45444492;
14 |
15 | }
16 | #bt{
17 |
18 | height: 60px;
19 | width: 170px;
20 | background-color: rgb(167,149,125);
21 | border: none;
22 | color: black;
23 | font-size: 20px;
24 | margin-bottom: 15px;
25 | }
26 | #bt:hover{
27 | cursor: pointer;
28 | opacity: 0.8;
29 | }
--------------------------------------------------------------------------------
/Frontend/src/main.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import ReactDOM from 'react-dom/client'
3 | import App from './App.jsx'
4 | // import './index.css'
5 |
6 | ReactDOM.createRoot(document.getElementById('root')).render(
7 |
8 |
9 | ,
10 | )
11 |
--------------------------------------------------------------------------------
/Frontend/vite.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import react from '@vitejs/plugin-react'
3 |
4 | // https://vitejs.dev/config/
5 | export default defineConfig({
6 | plugins: [react()],
7 |
8 | })
9 |
--------------------------------------------------------------------------------
/Report/NaanMudhalvan-BookStore Report.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Report/NaanMudhalvan-BookStore Report.pdf
--------------------------------------------------------------------------------
/Video/DriveLink:
--------------------------------------------------------------------------------
1 | https://drive.google.com/file/d/1owsKEhpBUeeRzlCPokni1fEflEybzCVe/view?usp=drivesdk
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 121710.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 121710.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 121725.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 121725.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145129.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145129.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145215.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145215.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145232.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145232.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145322.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145322.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145343.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145343.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145416.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145416.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145431.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145431.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145443.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145443.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145456.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145456.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 145517.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 145517.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150107.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150107.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150159.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150159.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150225.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150225.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150307.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150307.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150320.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150320.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150333.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150333.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150504.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150504.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150518.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150518.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150531.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150531.png
--------------------------------------------------------------------------------
/Video/Screenshots/Screenshot 2024-11-15 150551.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nishanthspk/BOOK-STORE/d1a98240fc7ff84aa789f593d5219551a5fd8865/Video/Screenshots/Screenshot 2024-11-15 150551.png
--------------------------------------------------------------------------------