瀏覽代碼

testing db and socket connection

serg155alternate 3 年之前
父節點
當前提交
85af0dbb8c
共有 100 個文件被更改,包括 22287 次插入3 次删除
  1. 12330 0
      client/package-lock.json
  2. 42 0
      client/package.json
  3. 17 0
      client/public/index.html
  4. 3 0
      client/src/App.css
  5. 10 1
      client/src/App.js
  6. 13 0
      client/src/index.css
  7. 22 2
      server/index.js
  8. 2602 0
      server/node_modules/@mapbox/node-pre-gyp/lib/util/abi_crosswalk.json
  9. 26 0
      server/node_modules/@mapbox/node-pre-gyp/lib/util/nw-pre-gyp/index.html
  10. 9 0
      server/node_modules/@mapbox/node-pre-gyp/lib/util/nw-pre-gyp/package.json
  11. 67 0
      server/node_modules/@mapbox/node-pre-gyp/node_modules/nopt/package.json
  12. 73 0
      server/node_modules/@mapbox/node-pre-gyp/node_modules/semver/package.json
  13. 100 0
      server/node_modules/@mapbox/node-pre-gyp/package.json
  14. 96 0
      server/node_modules/@sindresorhus/is/package.json
  15. 50 0
      server/node_modules/@socket.io/base64-arraybuffer/dist/base64-arraybuffer.es5.js
  16. 61 0
      server/node_modules/@socket.io/base64-arraybuffer/dist/base64-arraybuffer.umd.js
  17. 48 0
      server/node_modules/@socket.io/base64-arraybuffer/dist/lib/index.js
  18. 84 0
      server/node_modules/@socket.io/base64-arraybuffer/package.json
  19. 176 0
      server/node_modules/@socket.io/component-emitter/index.js
  20. 61 0
      server/node_modules/@socket.io/component-emitter/package.json
  21. 75 0
      server/node_modules/@szmarczak/http-timer/package.json
  22. 53 0
      server/node_modules/@types/component-emitter/package.json
  23. 57 0
      server/node_modules/@types/cookie/package.json
  24. 57 0
      server/node_modules/@types/cors/package.json
  25. 209 0
      server/node_modules/@types/node/package.json
  26. 53 0
      server/node_modules/@types/webidl-conversions/package.json
  27. 67 0
      server/node_modules/@types/whatwg-url/package.json
  28. 56 0
      server/node_modules/abbrev/package.json
  29. 86 0
      server/node_modules/accepts/package.json
  30. 101 0
      server/node_modules/agent-base/node_modules/debug/package.json
  31. 69 0
      server/node_modules/agent-base/node_modules/ms/package.json
  32. 94 0
      server/node_modules/agent-base/package.json
  33. 70 0
      server/node_modules/ansi-align/package.json
  34. 87 0
      server/node_modules/ansi-regex/package.json
  35. 89 0
      server/node_modules/ansi-styles/package.json
  36. 76 0
      server/node_modules/anymatch/package.json
  37. 63 0
      server/node_modules/aproba/package.json
  38. 80 0
      server/node_modules/are-we-there-yet/package.json
  39. 64 0
      server/node_modules/array-flatten/package.json
  40. 11 0
      server/node_modules/backo2/component.json
  41. 85 0
      server/node_modules/backo2/index.js
  42. 47 0
      server/node_modules/backo2/package.json
  43. 18 0
      server/node_modules/backo2/test/index.js
  44. 76 0
      server/node_modules/balanced-match/package.json
  45. 75 0
      server/node_modules/base64-js/package.json
  46. 103 0
      server/node_modules/base64id/lib/base64id.js
  47. 48 0
      server/node_modules/base64id/package.json
  48. 163 0
      server/node_modules/bcrypt/package.json
  49. 260 0
      server/node_modules/binary-extensions/binary-extensions.json
  50. 70 0
      server/node_modules/binary-extensions/package.json
  51. 91 0
      server/node_modules/body-parser/package.json
  52. 83 0
      server/node_modules/boxen/package.json
  53. 75 0
      server/node_modules/brace-expansion/package.json
  54. 123 0
      server/node_modules/braces/package.json
  55. 26 0
      server/node_modules/bson/bower.json
  56. 145 0
      server/node_modules/bson/package.json
  57. 41 0
      server/node_modules/buffer-equal-constant-time/index.js
  58. 55 0
      server/node_modules/buffer-equal-constant-time/package.json
  59. 42 0
      server/node_modules/buffer-equal-constant-time/test.js
  60. 127 0
      server/node_modules/buffer/package.json
  61. 85 0
      server/node_modules/bytes/package.json
  62. 82 0
      server/node_modules/cacheable-request/node_modules/get-stream/package.json
  63. 70 0
      server/node_modules/cacheable-request/node_modules/lowercase-keys/package.json
  64. 94 0
      server/node_modules/cacheable-request/package.json
  65. 76 0
      server/node_modules/camelcase/package.json
  66. 78 0
      server/node_modules/chalk/node_modules/has-flag/package.json
  67. 85 0
      server/node_modules/chalk/node_modules/supports-color/package.json
  68. 101 0
      server/node_modules/chalk/package.json
  69. 119 0
      server/node_modules/chokidar/package.json
  70. 65 0
      server/node_modules/chownr/package.json
  71. 65 0
      server/node_modules/ci-info/package.json
  72. 153 0
      server/node_modules/ci-info/vendors.json
  73. 58 0
      server/node_modules/cli-boxes/boxes.json
  74. 74 0
      server/node_modules/cli-boxes/package.json
  75. 73 0
      server/node_modules/clone-response/package.json
  76. 83 0
      server/node_modules/color-convert/package.json
  77. 56 0
      server/node_modules/color-name/package.json
  78. 71 0
      server/node_modules/color-support/package.json
  79. 175 0
      server/node_modules/component-emitter/index.js
  80. 56 0
      server/node_modules/component-emitter/package.json
  81. 88 0
      server/node_modules/concat-map/package.json
  82. 78 0
      server/node_modules/configstore/package.json
  83. 61 0
      server/node_modules/console-control-strings/package.json
  84. 79 0
      server/node_modules/content-disposition/package.json
  85. 76 0
      server/node_modules/content-type/package.json
  86. 57 0
      server/node_modules/cookie-signature/package.json
  87. 78 0
      server/node_modules/cookie/package.json
  88. 79 0
      server/node_modules/cors/package.json
  89. 72 0
      server/node_modules/crypto-random-string/package.json
  90. 19 0
      server/node_modules/debug/component.json
  91. 91 0
      server/node_modules/debug/package.json
  92. 85 0
      server/node_modules/decompress-response/package.json
  93. 92 0
      server/node_modules/deep-extend/package.json
  94. 101 0
      server/node_modules/defer-to-connect/package.json
  95. 48 0
      server/node_modules/delegates/package.json
  96. 84 0
      server/node_modules/denque/package.json
  97. 79 0
      server/node_modules/depd/package.json
  98. 71 0
      server/node_modules/destroy/package.json
  99. 70 0
      server/node_modules/detect-libc/package.json
  100. 0 0
      server/node_modules/dot-prop/package.json

文件差異過大導致無法顯示
+ 12330 - 0
client/package-lock.json


+ 42 - 0
client/package.json

@@ -0,0 +1,42 @@
+{
+  "name": "chat",
+  "version": "0.1.0",
+  "private": true,
+  "dependencies": {
+    "@testing-library/jest-dom": "^5.16.2",
+    "@testing-library/react": "^12.1.2",
+    "@testing-library/user-event": "^13.5.0",
+    "express": "^4.17.2",
+    "mongoose": "^6.2.1",
+    "nodemon": "^2.0.15",
+    "react": "^17.0.2",
+    "react-dom": "^17.0.2",
+    "react-scripts": "5.0.0",
+    "socket.io-client": "^4.4.1",
+    "web-vitals": "^2.1.4"
+  },
+  "scripts": {
+    "start": "react-scripts start",
+    "build": "react-scripts build",
+    "test": "react-scripts test",
+    "eject": "react-scripts eject"
+  },
+  "eslintConfig": {
+    "extends": [
+      "react-app",
+      "react-app/jest"
+    ]
+  },
+  "browserslist": {
+    "production": [
+      ">0.2%",
+      "not dead",
+      "not op_mini all"
+    ],
+    "development": [
+      "last 1 chrome version",
+      "last 1 firefox version",
+      "last 1 safari version"
+    ]
+  }
+}

+ 17 - 0
client/public/index.html

@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html lang="ru">
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <meta name="theme-color" content="#000000" />
+    <meta
+      name="description"
+      content="Web site created using create-react-app"
+    />
+    <title>CHAT</title>
+  </head>
+  <body>
+    <noscript>You need to enable JavaScript to run this app.</noscript>
+    <div id="root"></div>
+  </body>
+</html>

+ 3 - 0
client/src/App.css

@@ -0,0 +1,3 @@
+.App {
+  text-align: center;
+}

+ 10 - 1
client/src/App.js

@@ -1,4 +1,13 @@
 import './App.css';
+import { io } from "socket.io-client";
+
+const socket = io.connect('http://localhost:5000');
+
+
+socket.on("connect", () => {
+  console.log(socket.id); 
+});
+
 
 function App() {
   return (
@@ -8,4 +17,4 @@ function App() {
   );
 }
 
-export default App;
+export default App

+ 13 - 0
client/src/index.css

@@ -0,0 +1,13 @@
+body {
+  margin: 0;
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
+    'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
+    sans-serif;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+
+code {
+  font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
+    monospace;
+}

+ 22 - 2
server/index.js

@@ -5,15 +5,35 @@ const server = require('http').createServer(app);
 const mongoose = require('mongoose');
 const bcrypt = require('bcrypt');
 const User = require('./db/models/User');
-
+const jwt = require('jsonwebtoken');
 const PORT = process.env.PORT || 4000;
 const HASH_KEY = process.env.HASH_KEY;
-
+const {Server} = require('socket.io');
+const cors = require('cors');
 
 app.get('/', (req, res) => {
   res.send('Hello from express server!')
 })
 
+
+app.use(cors());
+app.use(express.json());
+
+const io = new Server(server, {
+  cors: {
+      origin: "http://localhost:3000" //client endpoint and port
+  }
+});
+
+io.on("connection", (socket) => {
+  console.log(socket.id); 
+});
+
+
+
+
+
+
 const db = async () => {
   try{
   const salt = await bcrypt.genSalt(2);

文件差異過大導致無法顯示
+ 2602 - 0
server/node_modules/@mapbox/node-pre-gyp/lib/util/abi_crosswalk.json


+ 26 - 0
server/node_modules/@mapbox/node-pre-gyp/lib/util/nw-pre-gyp/index.html

@@ -0,0 +1,26 @@
+<!doctype html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Node-webkit-based module test</title>
+<script>
+function nwModuleTest(){
+   var util = require('util');
+   var moduleFolder = require('nw.gui').App.argv[0];
+   try {
+      require(moduleFolder);
+   } catch(e) {
+      if( process.platform !== 'win32' ){
+         util.log('nw-pre-gyp error:');
+         util.log(e.stack);
+      }
+      process.exit(1);
+   }
+   process.exit(0);
+}
+</script>
+</head>
+<body onload="nwModuleTest()">
+<h1>Node-webkit-based module test</h1>
+</body>
+</html>

+ 9 - 0
server/node_modules/@mapbox/node-pre-gyp/lib/util/nw-pre-gyp/package.json

@@ -0,0 +1,9 @@
+{
+"main": "index.html",
+"name": "nw-pre-gyp-module-test",
+"description": "Node-webkit-based module test.",
+"version": "0.0.1",
+"window": {
+   "show": false
+}
+}

+ 67 - 0
server/node_modules/@mapbox/node-pre-gyp/node_modules/nopt/package.json

@@ -0,0 +1,67 @@
+{
+  "_from": "nopt@^5.0.0",
+  "_id": "nopt@5.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
+  "_location": "/@mapbox/node-pre-gyp/nopt",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "nopt@^5.0.0",
+    "name": "nopt",
+    "escapedName": "nopt",
+    "rawSpec": "^5.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^5.0.0"
+  },
+  "_requiredBy": [
+    "/@mapbox/node-pre-gyp"
+  ],
+  "_resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
+  "_shasum": "530942bb58a512fccafe53fe210f13a25355dc88",
+  "_spec": "nopt@^5.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\@mapbox\\node-pre-gyp",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me",
+    "url": "http://blog.izs.me/"
+  },
+  "bin": {
+    "nopt": "bin/nopt.js"
+  },
+  "bugs": {
+    "url": "https://github.com/npm/nopt/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "abbrev": "1"
+  },
+  "deprecated": false,
+  "description": "Option parsing for Node, supporting types, shorthands, etc. Used by npm.",
+  "devDependencies": {
+    "tap": "^14.10.6"
+  },
+  "engines": {
+    "node": ">=6"
+  },
+  "files": [
+    "bin",
+    "lib"
+  ],
+  "homepage": "https://github.com/npm/nopt#readme",
+  "license": "ISC",
+  "main": "lib/nopt.js",
+  "name": "nopt",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/npm/nopt.git"
+  },
+  "scripts": {
+    "postversion": "npm publish",
+    "prepublishOnly": "git push origin --follow-tags",
+    "preversion": "npm test",
+    "test": "tap test/*.js"
+  },
+  "version": "5.0.0"
+}

+ 73 - 0
server/node_modules/@mapbox/node-pre-gyp/node_modules/semver/package.json

@@ -0,0 +1,73 @@
+{
+  "_from": "semver@^7.3.5",
+  "_id": "semver@7.3.5",
+  "_inBundle": false,
+  "_integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
+  "_location": "/@mapbox/node-pre-gyp/semver",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "semver@^7.3.5",
+    "name": "semver",
+    "escapedName": "semver",
+    "rawSpec": "^7.3.5",
+    "saveSpec": null,
+    "fetchSpec": "^7.3.5"
+  },
+  "_requiredBy": [
+    "/@mapbox/node-pre-gyp"
+  ],
+  "_resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
+  "_shasum": "0b621c879348d8998e4b0e4be94b3f12e6018ef7",
+  "_spec": "semver@^7.3.5",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\@mapbox\\node-pre-gyp",
+  "bin": {
+    "semver": "bin/semver.js"
+  },
+  "bugs": {
+    "url": "https://github.com/npm/node-semver/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "lru-cache": "^6.0.0"
+  },
+  "deprecated": false,
+  "description": "The semantic version parser used by npm.",
+  "devDependencies": {
+    "tap": "^14.10.7"
+  },
+  "engines": {
+    "node": ">=10"
+  },
+  "files": [
+    "bin/**/*.js",
+    "range.bnf",
+    "classes/**/*.js",
+    "functions/**/*.js",
+    "internal/**/*.js",
+    "ranges/**/*.js",
+    "index.js",
+    "preload.js"
+  ],
+  "homepage": "https://github.com/npm/node-semver#readme",
+  "license": "ISC",
+  "main": "index.js",
+  "name": "semver",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/npm/node-semver.git"
+  },
+  "scripts": {
+    "postpublish": "git push origin --follow-tags",
+    "postversion": "npm publish",
+    "preversion": "npm test",
+    "snap": "tap",
+    "test": "tap"
+  },
+  "tap": {
+    "check-coverage": true,
+    "coverage-map": "map.js"
+  },
+  "version": "7.3.5"
+}

+ 100 - 0
server/node_modules/@mapbox/node-pre-gyp/package.json

@@ -0,0 +1,100 @@
+{
+  "_from": "@mapbox/node-pre-gyp@^1.0.0",
+  "_id": "@mapbox/node-pre-gyp@1.0.8",
+  "_inBundle": false,
+  "_integrity": "sha512-CMGKi28CF+qlbXh26hDe6NxCd7amqeAzEqnS6IHeO6LoaKyM/n+Xw3HT1COdq8cuioOdlKdqn/hCmqPUOMOywg==",
+  "_location": "/@mapbox/node-pre-gyp",
+  "_phantomChildren": {
+    "abbrev": "1.1.1",
+    "lru-cache": "6.0.0"
+  },
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@mapbox/node-pre-gyp@^1.0.0",
+    "name": "@mapbox/node-pre-gyp",
+    "escapedName": "@mapbox%2fnode-pre-gyp",
+    "scope": "@mapbox",
+    "rawSpec": "^1.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.0"
+  },
+  "_requiredBy": [
+    "/bcrypt"
+  ],
+  "_resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.8.tgz",
+  "_shasum": "32abc8a5c624bc4e46c43d84dfb8b26d33a96f58",
+  "_spec": "@mapbox/node-pre-gyp@^1.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\bcrypt",
+  "author": {
+    "name": "Dane Springmeyer",
+    "email": "dane@mapbox.com"
+  },
+  "bin": {
+    "node-pre-gyp": "bin/node-pre-gyp"
+  },
+  "bugs": {
+    "url": "https://github.com/mapbox/node-pre-gyp/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "detect-libc": "^1.0.3",
+    "https-proxy-agent": "^5.0.0",
+    "make-dir": "^3.1.0",
+    "node-fetch": "^2.6.5",
+    "nopt": "^5.0.0",
+    "npmlog": "^5.0.1",
+    "rimraf": "^3.0.2",
+    "semver": "^7.3.5",
+    "tar": "^6.1.11"
+  },
+  "deprecated": false,
+  "description": "Node.js native addon binary install tool",
+  "devDependencies": {
+    "@mapbox/cloudfriend": "^5.1.0",
+    "@mapbox/eslint-config-mapbox": "^3.0.0",
+    "aws-sdk": "^2.1012.0",
+    "codecov": "^3.8.3",
+    "eslint": "^7.32.0",
+    "eslint-plugin-node": "^11.1.0",
+    "mock-aws-s3": "^4.0.2",
+    "nock": "^12.0.3",
+    "node-addon-api": "^4.2.0",
+    "nyc": "^15.1.0",
+    "tape": "^5.3.1",
+    "tar-fs": "^2.1.1"
+  },
+  "homepage": "https://github.com/mapbox/node-pre-gyp#readme",
+  "keywords": [
+    "native",
+    "addon",
+    "module",
+    "c",
+    "c++",
+    "bindings",
+    "binary"
+  ],
+  "license": "BSD-3-Clause",
+  "main": "./lib/node-pre-gyp.js",
+  "name": "@mapbox/node-pre-gyp",
+  "nyc": {
+    "all": true,
+    "skip-full": false,
+    "exclude": [
+      "test/**"
+    ]
+  },
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/mapbox/node-pre-gyp.git"
+  },
+  "scripts": {
+    "coverage": "nyc --all --include index.js --include lib/ npm test",
+    "fix": "npm run lint -- --fix",
+    "lint": "eslint bin/node-pre-gyp lib/*js lib/util/*js test/*js scripts/*js",
+    "test": "tape test/*test.js",
+    "update-crosswalk": "node scripts/abi_crosswalk.js",
+    "upload-coverage": "nyc report --reporter json && codecov --clear --flags=unit --file=./coverage/coverage-final.json"
+  },
+  "version": "1.0.8"
+}

+ 96 - 0
server/node_modules/@sindresorhus/is/package.json

@@ -0,0 +1,96 @@
+{
+  "_from": "@sindresorhus/is@^0.14.0",
+  "_id": "@sindresorhus/is@0.14.0",
+  "_inBundle": false,
+  "_integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==",
+  "_location": "/@sindresorhus/is",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@sindresorhus/is@^0.14.0",
+    "name": "@sindresorhus/is",
+    "escapedName": "@sindresorhus%2fis",
+    "scope": "@sindresorhus",
+    "rawSpec": "^0.14.0",
+    "saveSpec": null,
+    "fetchSpec": "^0.14.0"
+  },
+  "_requiredBy": [
+    "/got"
+  ],
+  "_resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
+  "_shasum": "9fb3a3cf3132328151f353de4632e01e52102bea",
+  "_spec": "@sindresorhus/is@^0.14.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\got",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/is/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Type check values: `is.string('🦄') //=> true`",
+  "devDependencies": {
+    "@sindresorhus/tsconfig": "^0.1.0",
+    "@types/jsdom": "^11.12.0",
+    "@types/node": "^10.12.10",
+    "@types/tempy": "^0.2.0",
+    "@types/zen-observable": "^0.8.0",
+    "ava": "^0.25.0",
+    "del-cli": "^1.1.0",
+    "jsdom": "^11.6.2",
+    "rxjs": "^6.3.3",
+    "tempy": "^0.2.1",
+    "tslint": "^5.9.1",
+    "tslint-xo": "^0.10.0",
+    "typescript": "^3.2.1",
+    "zen-observable": "^0.8.8"
+  },
+  "engines": {
+    "node": ">=6"
+  },
+  "files": [
+    "dist"
+  ],
+  "homepage": "https://github.com/sindresorhus/is#readme",
+  "keywords": [
+    "type",
+    "types",
+    "is",
+    "check",
+    "checking",
+    "validate",
+    "validation",
+    "utility",
+    "util",
+    "typeof",
+    "instanceof",
+    "object",
+    "assert",
+    "assertion",
+    "test",
+    "kind",
+    "primitive",
+    "verify",
+    "compare"
+  ],
+  "license": "MIT",
+  "main": "dist/index.js",
+  "name": "@sindresorhus/is",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/is.git"
+  },
+  "scripts": {
+    "build": "del dist && tsc",
+    "lint": "tslint --format stylish --project .",
+    "prepublish": "npm run build && del dist/tests",
+    "test": "npm run lint && npm run build && ava dist/tests"
+  },
+  "types": "dist/index.d.ts",
+  "version": "0.14.0"
+}

+ 50 - 0
server/node_modules/@socket.io/base64-arraybuffer/dist/base64-arraybuffer.es5.js

@@ -0,0 +1,50 @@
+/*
+ * base64-arraybuffer 1.0.1 <https://github.com/niklasvh/base64-arraybuffer>
+ * Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
+ * Released under MIT License
+ */
+var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
+// Use a lookup table to find the index.
+var lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);
+for (var i = 0; i < chars.length; i++) {
+    lookup[chars.charCodeAt(i)] = i;
+}
+var encode = function (arraybuffer) {
+    var bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';
+    for (i = 0; i < len; i += 3) {
+        base64 += chars[bytes[i] >> 2];
+        base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];
+        base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];
+        base64 += chars[bytes[i + 2] & 63];
+    }
+    if (len % 3 === 2) {
+        base64 = base64.substring(0, base64.length - 1) + '=';
+    }
+    else if (len % 3 === 1) {
+        base64 = base64.substring(0, base64.length - 2) + '==';
+    }
+    return base64;
+};
+var decode = function (base64) {
+    var bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;
+    if (base64[base64.length - 1] === '=') {
+        bufferLength--;
+        if (base64[base64.length - 2] === '=') {
+            bufferLength--;
+        }
+    }
+    var arraybuffer = new ArrayBuffer(bufferLength), bytes = new Uint8Array(arraybuffer);
+    for (i = 0; i < len; i += 4) {
+        encoded1 = lookup[base64.charCodeAt(i)];
+        encoded2 = lookup[base64.charCodeAt(i + 1)];
+        encoded3 = lookup[base64.charCodeAt(i + 2)];
+        encoded4 = lookup[base64.charCodeAt(i + 3)];
+        bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);
+        bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);
+        bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);
+    }
+    return arraybuffer;
+};
+
+export { decode, encode };
+//# sourceMappingURL=base64-arraybuffer.es5.js.map

+ 61 - 0
server/node_modules/@socket.io/base64-arraybuffer/dist/base64-arraybuffer.umd.js

@@ -0,0 +1,61 @@
+/*
+ * base64-arraybuffer 1.0.1 <https://github.com/niklasvh/base64-arraybuffer>
+ * Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
+ * Released under MIT License
+ */
+(function (global, factory) {
+    typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
+    typeof define === 'function' && define.amd ? define(['exports'], factory) :
+    (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global['base64-arraybuffer'] = {}));
+}(this, (function (exports) { 'use strict';
+
+    var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
+    // Use a lookup table to find the index.
+    var lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);
+    for (var i = 0; i < chars.length; i++) {
+        lookup[chars.charCodeAt(i)] = i;
+    }
+    var encode = function (arraybuffer) {
+        var bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';
+        for (i = 0; i < len; i += 3) {
+            base64 += chars[bytes[i] >> 2];
+            base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];
+            base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];
+            base64 += chars[bytes[i + 2] & 63];
+        }
+        if (len % 3 === 2) {
+            base64 = base64.substring(0, base64.length - 1) + '=';
+        }
+        else if (len % 3 === 1) {
+            base64 = base64.substring(0, base64.length - 2) + '==';
+        }
+        return base64;
+    };
+    var decode = function (base64) {
+        var bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;
+        if (base64[base64.length - 1] === '=') {
+            bufferLength--;
+            if (base64[base64.length - 2] === '=') {
+                bufferLength--;
+            }
+        }
+        var arraybuffer = new ArrayBuffer(bufferLength), bytes = new Uint8Array(arraybuffer);
+        for (i = 0; i < len; i += 4) {
+            encoded1 = lookup[base64.charCodeAt(i)];
+            encoded2 = lookup[base64.charCodeAt(i + 1)];
+            encoded3 = lookup[base64.charCodeAt(i + 2)];
+            encoded4 = lookup[base64.charCodeAt(i + 3)];
+            bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);
+            bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);
+            bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);
+        }
+        return arraybuffer;
+    };
+
+    exports.decode = decode;
+    exports.encode = encode;
+
+    Object.defineProperty(exports, '__esModule', { value: true });
+
+})));
+//# sourceMappingURL=base64-arraybuffer.umd.js.map

+ 48 - 0
server/node_modules/@socket.io/base64-arraybuffer/dist/lib/index.js

@@ -0,0 +1,48 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.decode = exports.encode = void 0;
+var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
+// Use a lookup table to find the index.
+var lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);
+for (var i = 0; i < chars.length; i++) {
+    lookup[chars.charCodeAt(i)] = i;
+}
+var encode = function (arraybuffer) {
+    var bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';
+    for (i = 0; i < len; i += 3) {
+        base64 += chars[bytes[i] >> 2];
+        base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];
+        base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];
+        base64 += chars[bytes[i + 2] & 63];
+    }
+    if (len % 3 === 2) {
+        base64 = base64.substring(0, base64.length - 1) + '=';
+    }
+    else if (len % 3 === 1) {
+        base64 = base64.substring(0, base64.length - 2) + '==';
+    }
+    return base64;
+};
+exports.encode = encode;
+var decode = function (base64) {
+    var bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;
+    if (base64[base64.length - 1] === '=') {
+        bufferLength--;
+        if (base64[base64.length - 2] === '=') {
+            bufferLength--;
+        }
+    }
+    var arraybuffer = new ArrayBuffer(bufferLength), bytes = new Uint8Array(arraybuffer);
+    for (i = 0; i < len; i += 4) {
+        encoded1 = lookup[base64.charCodeAt(i)];
+        encoded2 = lookup[base64.charCodeAt(i + 1)];
+        encoded3 = lookup[base64.charCodeAt(i + 2)];
+        encoded4 = lookup[base64.charCodeAt(i + 3)];
+        bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);
+        bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);
+        bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);
+    }
+    return arraybuffer;
+};
+exports.decode = decode;
+//# sourceMappingURL=index.js.map

+ 84 - 0
server/node_modules/@socket.io/base64-arraybuffer/package.json

@@ -0,0 +1,84 @@
+{
+  "_from": "@socket.io/base64-arraybuffer@~1.0.2",
+  "_id": "@socket.io/base64-arraybuffer@1.0.2",
+  "_inBundle": false,
+  "_integrity": "sha512-dOlCBKnDw4iShaIsH/bxujKTM18+2TOAsYz+KSc11Am38H4q5Xw8Bbz97ZYdrVNM+um3p7w86Bvvmcn9q+5+eQ==",
+  "_location": "/@socket.io/base64-arraybuffer",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@socket.io/base64-arraybuffer@~1.0.2",
+    "name": "@socket.io/base64-arraybuffer",
+    "escapedName": "@socket.io%2fbase64-arraybuffer",
+    "scope": "@socket.io",
+    "rawSpec": "~1.0.2",
+    "saveSpec": null,
+    "fetchSpec": "~1.0.2"
+  },
+  "_requiredBy": [
+    "/engine.io-parser"
+  ],
+  "_resolved": "https://registry.npmjs.org/@socket.io/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
+  "_shasum": "568d9beae00b0d835f4f8c53fd55714986492e61",
+  "_spec": "@socket.io/base64-arraybuffer@~1.0.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\engine.io-parser",
+  "author": {
+    "name": "Niklas von Hertzen",
+    "email": "niklasvh@gmail.com",
+    "url": "https://hertzen.com"
+  },
+  "bugs": {
+    "url": "https://github.com/socketio/base64-arraybuffer/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Encode/decode base64 data into ArrayBuffers",
+  "devDependencies": {
+    "@rollup/plugin-commonjs": "^19.0.0",
+    "@rollup/plugin-node-resolve": "^13.0.0",
+    "@rollup/plugin-typescript": "^8.2.1",
+    "@types/mocha": "^8.2.2",
+    "@types/node": "^16.0.0",
+    "mocha": "9.0.2",
+    "prettier": "^2.3.2",
+    "rimraf": "3.0.2",
+    "rollup": "^2.52.7",
+    "rollup-plugin-json": "^4.0.0",
+    "rollup-plugin-sourcemaps": "^0.6.3",
+    "standard-version": "^9.3.0",
+    "ts-node": "^10.0.0",
+    "tslib": "^2.3.0",
+    "tslint": "^6.1.3",
+    "tslint-config-prettier": "^1.18.0",
+    "typescript": "^4.3.5"
+  },
+  "engines": {
+    "node": ">= 0.6.0"
+  },
+  "files": [
+    "src/",
+    "dist/"
+  ],
+  "homepage": "https://github.com/socketio/base64-arraybuffer",
+  "keywords": [],
+  "license": "MIT",
+  "main": "dist/base64-arraybuffer.umd.js",
+  "module": "dist/base64-arraybuffer.es5.js",
+  "name": "@socket.io/base64-arraybuffer",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/socketio/base64-arraybuffer.git"
+  },
+  "scripts": {
+    "build": "tsc --module commonjs && rollup -c rollup.config.ts",
+    "format": "prettier --write \"{src,test}/**/*.ts\"",
+    "lint": "tslint -c tslint.json --project tsconfig.json -t codeFrame src/**/*.ts test/**/*.ts",
+    "mocha": "mocha --require ts-node/register test/*.ts",
+    "prebuild": "rimraf dist/",
+    "release": "standard-version",
+    "test": "npm run lint && npm run mocha"
+  },
+  "typings": "dist/types/index.d.ts",
+  "version": "1.0.2"
+}

+ 176 - 0
server/node_modules/@socket.io/component-emitter/index.js

@@ -0,0 +1,176 @@
+
+/**
+ * Expose `Emitter`.
+ */
+
+exports.Emitter = Emitter;
+
+/**
+ * Initialize a new `Emitter`.
+ *
+ * @api public
+ */
+
+function Emitter(obj) {
+  if (obj) return mixin(obj);
+}
+
+/**
+ * Mixin the emitter properties.
+ *
+ * @param {Object} obj
+ * @return {Object}
+ * @api private
+ */
+
+function mixin(obj) {
+  for (var key in Emitter.prototype) {
+    obj[key] = Emitter.prototype[key];
+  }
+  return obj;
+}
+
+/**
+ * Listen on the given `event` with `fn`.
+ *
+ * @param {String} event
+ * @param {Function} fn
+ * @return {Emitter}
+ * @api public
+ */
+
+Emitter.prototype.on =
+Emitter.prototype.addEventListener = function(event, fn){
+  this._callbacks = this._callbacks || {};
+  (this._callbacks['$' + event] = this._callbacks['$' + event] || [])
+    .push(fn);
+  return this;
+};
+
+/**
+ * Adds an `event` listener that will be invoked a single
+ * time then automatically removed.
+ *
+ * @param {String} event
+ * @param {Function} fn
+ * @return {Emitter}
+ * @api public
+ */
+
+Emitter.prototype.once = function(event, fn){
+  function on() {
+    this.off(event, on);
+    fn.apply(this, arguments);
+  }
+
+  on.fn = fn;
+  this.on(event, on);
+  return this;
+};
+
+/**
+ * Remove the given callback for `event` or all
+ * registered callbacks.
+ *
+ * @param {String} event
+ * @param {Function} fn
+ * @return {Emitter}
+ * @api public
+ */
+
+Emitter.prototype.off =
+Emitter.prototype.removeListener =
+Emitter.prototype.removeAllListeners =
+Emitter.prototype.removeEventListener = function(event, fn){
+  this._callbacks = this._callbacks || {};
+
+  // all
+  if (0 == arguments.length) {
+    this._callbacks = {};
+    return this;
+  }
+
+  // specific event
+  var callbacks = this._callbacks['$' + event];
+  if (!callbacks) return this;
+
+  // remove all handlers
+  if (1 == arguments.length) {
+    delete this._callbacks['$' + event];
+    return this;
+  }
+
+  // remove specific handler
+  var cb;
+  for (var i = 0; i < callbacks.length; i++) {
+    cb = callbacks[i];
+    if (cb === fn || cb.fn === fn) {
+      callbacks.splice(i, 1);
+      break;
+    }
+  }
+
+  // Remove event specific arrays for event types that no
+  // one is subscribed for to avoid memory leak.
+  if (callbacks.length === 0) {
+    delete this._callbacks['$' + event];
+  }
+
+  return this;
+};
+
+/**
+ * Emit `event` with the given args.
+ *
+ * @param {String} event
+ * @param {Mixed} ...
+ * @return {Emitter}
+ */
+
+Emitter.prototype.emit = function(event){
+  this._callbacks = this._callbacks || {};
+
+  var args = new Array(arguments.length - 1)
+    , callbacks = this._callbacks['$' + event];
+
+  for (var i = 1; i < arguments.length; i++) {
+    args[i - 1] = arguments[i];
+  }
+
+  if (callbacks) {
+    callbacks = callbacks.slice(0);
+    for (var i = 0, len = callbacks.length; i < len; ++i) {
+      callbacks[i].apply(this, args);
+    }
+  }
+
+  return this;
+};
+
+// alias used for reserved events (protected method)
+Emitter.prototype.emitReserved = Emitter.prototype.emit;
+
+/**
+ * Return array of callbacks for `event`.
+ *
+ * @param {String} event
+ * @return {Array}
+ * @api public
+ */
+
+Emitter.prototype.listeners = function(event){
+  this._callbacks = this._callbacks || {};
+  return this._callbacks['$' + event] || [];
+};
+
+/**
+ * Check if this emitter has `event` handlers.
+ *
+ * @param {String} event
+ * @return {Boolean}
+ * @api public
+ */
+
+Emitter.prototype.hasListeners = function(event){
+  return !! this.listeners(event).length;
+};

+ 61 - 0
server/node_modules/@socket.io/component-emitter/package.json

@@ -0,0 +1,61 @@
+{
+  "_from": "@socket.io/component-emitter@~3.0.0",
+  "_id": "@socket.io/component-emitter@3.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-2pTGuibAXJswAPJjaKisthqS/NOK5ypG4LYT6tEAV0S/mxW0zOIvYvGK0V8w8+SHxAm6vRMSjqSalFXeBAqs+Q==",
+  "_location": "/@socket.io/component-emitter",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@socket.io/component-emitter@~3.0.0",
+    "name": "@socket.io/component-emitter",
+    "escapedName": "@socket.io%2fcomponent-emitter",
+    "scope": "@socket.io",
+    "rawSpec": "~3.0.0",
+    "saveSpec": null,
+    "fetchSpec": "~3.0.0"
+  },
+  "_requiredBy": [
+    "/engine.io-client",
+    "/socket.io-client",
+    "/socket.io-client/socket.io-parser"
+  ],
+  "_resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.0.0.tgz",
+  "_shasum": "8863915676f837d9dad7b76f50cb500c1e9422e9",
+  "_spec": "@socket.io/component-emitter@~3.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\socket.io-client",
+  "bugs": {
+    "url": "https://github.com/socketio/emitter/issues"
+  },
+  "bundleDependencies": false,
+  "component": {
+    "scripts": {
+      "emitter/index.js": "index.js"
+    }
+  },
+  "deprecated": false,
+  "description": "Event emitter",
+  "devDependencies": {
+    "mocha": "*",
+    "should": "*"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts",
+    "LICENSE"
+  ],
+  "homepage": "https://github.com/socketio/emitter#readme",
+  "license": "MIT",
+  "main": "index.js",
+  "name": "@socket.io/component-emitter",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/socketio/emitter.git"
+  },
+  "scripts": {
+    "test": "make test"
+  },
+  "types": "index.d.ts",
+  "version": "3.0.0"
+}

+ 75 - 0
server/node_modules/@szmarczak/http-timer/package.json

@@ -0,0 +1,75 @@
+{
+  "_from": "@szmarczak/http-timer@^1.1.2",
+  "_id": "@szmarczak/http-timer@1.1.2",
+  "_inBundle": false,
+  "_integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==",
+  "_location": "/@szmarczak/http-timer",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@szmarczak/http-timer@^1.1.2",
+    "name": "@szmarczak/http-timer",
+    "escapedName": "@szmarczak%2fhttp-timer",
+    "scope": "@szmarczak",
+    "rawSpec": "^1.1.2",
+    "saveSpec": null,
+    "fetchSpec": "^1.1.2"
+  },
+  "_requiredBy": [
+    "/got"
+  ],
+  "_resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz",
+  "_shasum": "b1665e2c461a2cd92f4c1bbf50d5454de0d4b421",
+  "_spec": "@szmarczak/http-timer@^1.1.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\got",
+  "author": {
+    "name": "Szymon Marczak"
+  },
+  "bugs": {
+    "url": "https://github.com/szmarczak/http-timer/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "defer-to-connect": "^1.0.1"
+  },
+  "deprecated": false,
+  "description": "Timings for HTTP requests",
+  "devDependencies": {
+    "ava": "^0.25.0",
+    "coveralls": "^3.0.2",
+    "nyc": "^12.0.2",
+    "p-event": "^2.1.0",
+    "xo": "^0.22.0"
+  },
+  "engines": {
+    "node": ">=6"
+  },
+  "files": [
+    "source"
+  ],
+  "homepage": "https://github.com/szmarczak/http-timer#readme",
+  "keywords": [
+    "http",
+    "https",
+    "timer",
+    "timings"
+  ],
+  "license": "MIT",
+  "main": "source",
+  "name": "@szmarczak/http-timer",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/szmarczak/http-timer.git"
+  },
+  "scripts": {
+    "coveralls": "nyc report --reporter=text-lcov | coveralls",
+    "test": "xo && nyc ava"
+  },
+  "version": "1.1.2",
+  "xo": {
+    "rules": {
+      "unicorn/filename-case": "camelCase"
+    }
+  }
+}

+ 53 - 0
server/node_modules/@types/component-emitter/package.json

@@ -0,0 +1,53 @@
+{
+  "_from": "@types/component-emitter@^1.2.10",
+  "_id": "@types/component-emitter@1.2.11",
+  "_inBundle": false,
+  "_integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==",
+  "_location": "/@types/component-emitter",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@types/component-emitter@^1.2.10",
+    "name": "@types/component-emitter",
+    "escapedName": "@types%2fcomponent-emitter",
+    "scope": "@types",
+    "rawSpec": "^1.2.10",
+    "saveSpec": null,
+    "fetchSpec": "^1.2.10"
+  },
+  "_requiredBy": [
+    "/socket.io-parser"
+  ],
+  "_resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz",
+  "_shasum": "50d47d42b347253817a39709fef03ce66a108506",
+  "_spec": "@types/component-emitter@^1.2.10",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\socket.io-parser",
+  "bugs": {
+    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Peter Snider",
+      "url": "https://github.com/psnider"
+    }
+  ],
+  "dependencies": {},
+  "deprecated": false,
+  "description": "TypeScript definitions for component-emitter",
+  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/component-emitter",
+  "license": "MIT",
+  "main": "",
+  "name": "@types/component-emitter",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
+    "directory": "types/component-emitter"
+  },
+  "scripts": {},
+  "typeScriptVersion": "3.7",
+  "types": "index.d.ts",
+  "typesPublisherContentHash": "d86d217b63101effae1228ebbfe02ac682ee4eb8abd6fc0dcc9948a4b6fdf572",
+  "version": "1.2.11"
+}

+ 57 - 0
server/node_modules/@types/cookie/package.json

@@ -0,0 +1,57 @@
+{
+  "_from": "@types/cookie@^0.4.1",
+  "_id": "@types/cookie@0.4.1",
+  "_inBundle": false,
+  "_integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==",
+  "_location": "/@types/cookie",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@types/cookie@^0.4.1",
+    "name": "@types/cookie",
+    "escapedName": "@types%2fcookie",
+    "scope": "@types",
+    "rawSpec": "^0.4.1",
+    "saveSpec": null,
+    "fetchSpec": "^0.4.1"
+  },
+  "_requiredBy": [
+    "/engine.io"
+  ],
+  "_resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+  "_shasum": "bfd02c1f2224567676c1545199f87c3a861d878d",
+  "_spec": "@types/cookie@^0.4.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\engine.io",
+  "bugs": {
+    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Pine Mizune",
+      "url": "https://github.com/pine"
+    },
+    {
+      "name": "Piotr Błażejewicz",
+      "url": "https://github.com/peterblazejewicz"
+    }
+  ],
+  "dependencies": {},
+  "deprecated": false,
+  "description": "TypeScript definitions for cookie",
+  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/cookie",
+  "license": "MIT",
+  "main": "",
+  "name": "@types/cookie",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
+    "directory": "types/cookie"
+  },
+  "scripts": {},
+  "typeScriptVersion": "3.6",
+  "types": "index.d.ts",
+  "typesPublisherContentHash": "7d4a6dd505c896319459ae131b5fa8fc0a2ed25552db53dac87946119bb21559",
+  "version": "0.4.1"
+}

+ 57 - 0
server/node_modules/@types/cors/package.json

@@ -0,0 +1,57 @@
+{
+  "_from": "@types/cors@^2.8.12",
+  "_id": "@types/cors@2.8.12",
+  "_inBundle": false,
+  "_integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==",
+  "_location": "/@types/cors",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@types/cors@^2.8.12",
+    "name": "@types/cors",
+    "escapedName": "@types%2fcors",
+    "scope": "@types",
+    "rawSpec": "^2.8.12",
+    "saveSpec": null,
+    "fetchSpec": "^2.8.12"
+  },
+  "_requiredBy": [
+    "/engine.io"
+  ],
+  "_resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz",
+  "_shasum": "6b2c510a7ad7039e98e7b8d3d6598f4359e5c080",
+  "_spec": "@types/cors@^2.8.12",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\engine.io",
+  "bugs": {
+    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Alan Plum",
+      "url": "https://github.com/pluma"
+    },
+    {
+      "name": "Gaurav Sharma",
+      "url": "https://github.com/gtpan77"
+    }
+  ],
+  "dependencies": {},
+  "deprecated": false,
+  "description": "TypeScript definitions for cors",
+  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/cors",
+  "license": "MIT",
+  "main": "",
+  "name": "@types/cors",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
+    "directory": "types/cors"
+  },
+  "scripts": {},
+  "typeScriptVersion": "3.6",
+  "types": "index.d.ts",
+  "typesPublisherContentHash": "53ea51a6543d58d3c1b9035a9c361d8f06d7be01973be2895820b2fb7ad9563a",
+  "version": "2.8.12"
+}

+ 209 - 0
server/node_modules/@types/node/package.json

@@ -0,0 +1,209 @@
+{
+  "_from": "@types/node@*",
+  "_id": "@types/node@17.0.17",
+  "_inBundle": false,
+  "_integrity": "sha512-e8PUNQy1HgJGV3iU/Bp2+D/DXh3PYeyli8LgIwsQcs1Ar1LoaWHSIT6Rw+H2rNJmiq6SNWiDytfx8+gYj7wDHw==",
+  "_location": "/@types/node",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@types/node@*",
+    "name": "@types/node",
+    "escapedName": "@types%2fnode",
+    "scope": "@types",
+    "rawSpec": "*",
+    "saveSpec": null,
+    "fetchSpec": "*"
+  },
+  "_requiredBy": [
+    "/@types/whatwg-url"
+  ],
+  "_resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.17.tgz",
+  "_shasum": "a8ddf6e0c2341718d74ee3dc413a13a042c45a0c",
+  "_spec": "@types/node@*",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\@types\\whatwg-url",
+  "bugs": {
+    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Microsoft TypeScript",
+      "url": "https://github.com/Microsoft"
+    },
+    {
+      "name": "DefinitelyTyped",
+      "url": "https://github.com/DefinitelyTyped"
+    },
+    {
+      "name": "Alberto Schiabel",
+      "url": "https://github.com/jkomyno"
+    },
+    {
+      "name": "Alvis HT Tang",
+      "url": "https://github.com/alvis"
+    },
+    {
+      "name": "Andrew Makarov",
+      "url": "https://github.com/r3nya"
+    },
+    {
+      "name": "Benjamin Toueg",
+      "url": "https://github.com/btoueg"
+    },
+    {
+      "name": "Chigozirim C.",
+      "url": "https://github.com/smac89"
+    },
+    {
+      "name": "David Junger",
+      "url": "https://github.com/touffy"
+    },
+    {
+      "name": "Deividas Bakanas",
+      "url": "https://github.com/DeividasBakanas"
+    },
+    {
+      "name": "Eugene Y. Q. Shen",
+      "url": "https://github.com/eyqs"
+    },
+    {
+      "name": "Hannes Magnusson",
+      "url": "https://github.com/Hannes-Magnusson-CK"
+    },
+    {
+      "name": "Huw",
+      "url": "https://github.com/hoo29"
+    },
+    {
+      "name": "Kelvin Jin",
+      "url": "https://github.com/kjin"
+    },
+    {
+      "name": "Klaus Meinhardt",
+      "url": "https://github.com/ajafff"
+    },
+    {
+      "name": "Lishude",
+      "url": "https://github.com/islishude"
+    },
+    {
+      "name": "Mariusz Wiktorczyk",
+      "url": "https://github.com/mwiktorczyk"
+    },
+    {
+      "name": "Mohsen Azimi",
+      "url": "https://github.com/mohsen1"
+    },
+    {
+      "name": "Nicolas Even",
+      "url": "https://github.com/n-e"
+    },
+    {
+      "name": "Nikita Galkin",
+      "url": "https://github.com/galkin"
+    },
+    {
+      "name": "Parambir Singh",
+      "url": "https://github.com/parambirs"
+    },
+    {
+      "name": "Sebastian Silbermann",
+      "url": "https://github.com/eps1lon"
+    },
+    {
+      "name": "Simon Schick",
+      "url": "https://github.com/SimonSchick"
+    },
+    {
+      "name": "Thomas den Hollander",
+      "url": "https://github.com/ThomasdenH"
+    },
+    {
+      "name": "Wilco Bakker",
+      "url": "https://github.com/WilcoBakker"
+    },
+    {
+      "name": "wwwy3y3",
+      "url": "https://github.com/wwwy3y3"
+    },
+    {
+      "name": "Samuel Ainsworth",
+      "url": "https://github.com/samuela"
+    },
+    {
+      "name": "Kyle Uehlein",
+      "url": "https://github.com/kuehlein"
+    },
+    {
+      "name": "Thanik Bhongbhibhat",
+      "url": "https://github.com/bhongy"
+    },
+    {
+      "name": "Marcin Kopacz",
+      "url": "https://github.com/chyzwar"
+    },
+    {
+      "name": "Trivikram Kamat",
+      "url": "https://github.com/trivikr"
+    },
+    {
+      "name": "Junxiao Shi",
+      "url": "https://github.com/yoursunny"
+    },
+    {
+      "name": "Ilia Baryshnikov",
+      "url": "https://github.com/qwelias"
+    },
+    {
+      "name": "ExE Boss",
+      "url": "https://github.com/ExE-Boss"
+    },
+    {
+      "name": "Piotr Błażejewicz",
+      "url": "https://github.com/peterblazejewicz"
+    },
+    {
+      "name": "Anna Henningsen",
+      "url": "https://github.com/addaleax"
+    },
+    {
+      "name": "Victor Perin",
+      "url": "https://github.com/victorperin"
+    },
+    {
+      "name": "Yongsheng Zhang",
+      "url": "https://github.com/ZYSzys"
+    },
+    {
+      "name": "NodeJS Contributors",
+      "url": "https://github.com/NodeJS"
+    },
+    {
+      "name": "Linus Unnebäck",
+      "url": "https://github.com/LinusU"
+    },
+    {
+      "name": "wafuwafu13",
+      "url": "https://github.com/wafuwafu13"
+    }
+  ],
+  "dependencies": {},
+  "deprecated": false,
+  "description": "TypeScript definitions for Node.js",
+  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
+  "license": "MIT",
+  "main": "",
+  "name": "@types/node",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
+    "directory": "types/node"
+  },
+  "scripts": {},
+  "typeScriptVersion": "3.8",
+  "types": "index.d.ts",
+  "typesPublisherContentHash": "81c14b1a78451f6c86a6d41a796951f39a75390e0d1f9e36e8f4ff1877f94f38",
+  "version": "17.0.17"
+}

+ 53 - 0
server/node_modules/@types/webidl-conversions/package.json

@@ -0,0 +1,53 @@
+{
+  "_from": "@types/webidl-conversions@*",
+  "_id": "@types/webidl-conversions@6.1.1",
+  "_inBundle": false,
+  "_integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q==",
+  "_location": "/@types/webidl-conversions",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@types/webidl-conversions@*",
+    "name": "@types/webidl-conversions",
+    "escapedName": "@types%2fwebidl-conversions",
+    "scope": "@types",
+    "rawSpec": "*",
+    "saveSpec": null,
+    "fetchSpec": "*"
+  },
+  "_requiredBy": [
+    "/@types/whatwg-url"
+  ],
+  "_resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz",
+  "_shasum": "e33bc8ea812a01f63f90481c666334844b12a09e",
+  "_spec": "@types/webidl-conversions@*",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\@types\\whatwg-url",
+  "bugs": {
+    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "ExE Boss",
+      "url": "https://github.com/ExE-Boss"
+    }
+  ],
+  "dependencies": {},
+  "deprecated": false,
+  "description": "TypeScript definitions for webidl-conversions",
+  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/webidl-conversions",
+  "license": "MIT",
+  "main": "",
+  "name": "@types/webidl-conversions",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
+    "directory": "types/webidl-conversions"
+  },
+  "scripts": {},
+  "typeScriptVersion": "3.6",
+  "types": "index.d.ts",
+  "typesPublisherContentHash": "bc47f919faf031afa91cea9b170f96f05eeac452057ba17794386552a99d0ad7",
+  "version": "6.1.1"
+}

+ 67 - 0
server/node_modules/@types/whatwg-url/package.json

@@ -0,0 +1,67 @@
+{
+  "_from": "@types/whatwg-url@^8.2.1",
+  "_id": "@types/whatwg-url@8.2.1",
+  "_inBundle": false,
+  "_integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==",
+  "_location": "/@types/whatwg-url",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "@types/whatwg-url@^8.2.1",
+    "name": "@types/whatwg-url",
+    "escapedName": "@types%2fwhatwg-url",
+    "scope": "@types",
+    "rawSpec": "^8.2.1",
+    "saveSpec": null,
+    "fetchSpec": "^8.2.1"
+  },
+  "_requiredBy": [
+    "/mongodb-connection-string-url"
+  ],
+  "_resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz",
+  "_shasum": "f1aac222dab7c59e011663a0cb0a3117b2ef05d4",
+  "_spec": "@types/whatwg-url@^8.2.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\mongodb-connection-string-url",
+  "bugs": {
+    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Alexander Marks",
+      "url": "https://github.com/aomarks"
+    },
+    {
+      "name": "ExE Boss",
+      "url": "https://github.com/ExE-Boss"
+    }
+  ],
+  "dependencies": {
+    "@types/node": "*",
+    "@types/webidl-conversions": "*"
+  },
+  "deprecated": false,
+  "description": "TypeScript definitions for whatwg-url",
+  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/whatwg-url",
+  "license": "MIT",
+  "main": "",
+  "name": "@types/whatwg-url",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
+    "directory": "types/whatwg-url"
+  },
+  "scripts": {},
+  "typeScriptVersion": "3.6",
+  "types": "index.d.ts",
+  "typesPublisherContentHash": "a1260472a5aaba17ca5053dad6f0e88d68682ac63f5ddf4bc333657bdd7e9e96",
+  "typesVersions": {
+    "<=3.9": {
+      "*": [
+        "ts3.9/*"
+      ]
+    }
+  },
+  "version": "8.2.1"
+}

+ 56 - 0
server/node_modules/abbrev/package.json

@@ -0,0 +1,56 @@
+{
+  "_from": "abbrev@1",
+  "_id": "abbrev@1.1.1",
+  "_inBundle": false,
+  "_integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
+  "_location": "/abbrev",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "abbrev@1",
+    "name": "abbrev",
+    "escapedName": "abbrev",
+    "rawSpec": "1",
+    "saveSpec": null,
+    "fetchSpec": "1"
+  },
+  "_requiredBy": [
+    "/nopt"
+  ],
+  "_resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
+  "_shasum": "f8f2c887ad10bf67f634f005b6987fed3179aac8",
+  "_spec": "abbrev@1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\nopt",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me"
+  },
+  "bugs": {
+    "url": "https://github.com/isaacs/abbrev-js/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Like ruby's abbrev module, but in js",
+  "devDependencies": {
+    "tap": "^10.1"
+  },
+  "files": [
+    "abbrev.js"
+  ],
+  "homepage": "https://github.com/isaacs/abbrev-js#readme",
+  "license": "ISC",
+  "main": "abbrev.js",
+  "name": "abbrev",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/isaacs/abbrev-js.git"
+  },
+  "scripts": {
+    "postpublish": "git push origin --all; git push origin --tags",
+    "postversion": "npm publish",
+    "preversion": "npm test",
+    "test": "tap test.js --100"
+  },
+  "version": "1.1.1"
+}

+ 86 - 0
server/node_modules/accepts/package.json

@@ -0,0 +1,86 @@
+{
+  "_from": "accepts@~1.3.7",
+  "_id": "accepts@1.3.8",
+  "_inBundle": false,
+  "_integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+  "_location": "/accepts",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "accepts@~1.3.7",
+    "name": "accepts",
+    "escapedName": "accepts",
+    "rawSpec": "~1.3.7",
+    "saveSpec": null,
+    "fetchSpec": "~1.3.7"
+  },
+  "_requiredBy": [
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+  "_shasum": "0bf0be125b67014adcb0b0921e62db7bffe16b2e",
+  "_spec": "accepts@~1.3.7",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "bugs": {
+    "url": "https://github.com/jshttp/accepts/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Douglas Christopher Wilson",
+      "email": "doug@somethingdoug.com"
+    },
+    {
+      "name": "Jonathan Ong",
+      "email": "me@jongleberry.com",
+      "url": "http://jongleberry.com"
+    }
+  ],
+  "dependencies": {
+    "mime-types": "~2.1.34",
+    "negotiator": "0.6.3"
+  },
+  "deprecated": false,
+  "description": "Higher-level content negotiation",
+  "devDependencies": {
+    "deep-equal": "1.0.1",
+    "eslint": "7.32.0",
+    "eslint-config-standard": "14.1.1",
+    "eslint-plugin-import": "2.25.4",
+    "eslint-plugin-markdown": "2.2.1",
+    "eslint-plugin-node": "11.1.0",
+    "eslint-plugin-promise": "4.3.1",
+    "eslint-plugin-standard": "4.1.0",
+    "mocha": "9.2.0",
+    "nyc": "15.1.0"
+  },
+  "engines": {
+    "node": ">= 0.6"
+  },
+  "files": [
+    "LICENSE",
+    "HISTORY.md",
+    "index.js"
+  ],
+  "homepage": "https://github.com/jshttp/accepts#readme",
+  "keywords": [
+    "content",
+    "negotiation",
+    "accept",
+    "accepts"
+  ],
+  "license": "MIT",
+  "name": "accepts",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jshttp/accepts.git"
+  },
+  "scripts": {
+    "lint": "eslint .",
+    "test": "mocha --reporter spec --check-leaks --bail test/",
+    "test-ci": "nyc --reporter=lcov --reporter=text npm test",
+    "test-cov": "nyc --reporter=html --reporter=text npm test"
+  },
+  "version": "1.3.8"
+}

+ 101 - 0
server/node_modules/agent-base/node_modules/debug/package.json

@@ -0,0 +1,101 @@
+{
+  "_from": "debug@4",
+  "_id": "debug@4.3.3",
+  "_inBundle": false,
+  "_integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+  "_location": "/agent-base/debug",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "debug@4",
+    "name": "debug",
+    "escapedName": "debug",
+    "rawSpec": "4",
+    "saveSpec": null,
+    "fetchSpec": "4"
+  },
+  "_requiredBy": [
+    "/agent-base"
+  ],
+  "_resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
+  "_shasum": "04266e0b70a98d4462e6e288e38259213332b664",
+  "_spec": "debug@4",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\agent-base",
+  "author": {
+    "name": "Josh Junon",
+    "email": "josh.junon@protonmail.com"
+  },
+  "browser": "./src/browser.js",
+  "bugs": {
+    "url": "https://github.com/debug-js/debug/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "TJ Holowaychuk",
+      "email": "tj@vision-media.ca"
+    },
+    {
+      "name": "Nathan Rajlich",
+      "email": "nathan@tootallnate.net",
+      "url": "http://n8.io"
+    },
+    {
+      "name": "Andrew Rhyne",
+      "email": "rhyneandrew@gmail.com"
+    }
+  ],
+  "dependencies": {
+    "ms": "2.1.2"
+  },
+  "deprecated": false,
+  "description": "Lightweight debugging utility for Node.js and the browser",
+  "devDependencies": {
+    "brfs": "^2.0.1",
+    "browserify": "^16.2.3",
+    "coveralls": "^3.0.2",
+    "istanbul": "^0.4.5",
+    "karma": "^3.1.4",
+    "karma-browserify": "^6.0.0",
+    "karma-chrome-launcher": "^2.2.0",
+    "karma-mocha": "^1.3.0",
+    "mocha": "^5.2.0",
+    "mocha-lcov-reporter": "^1.2.0",
+    "xo": "^0.23.0"
+  },
+  "engines": {
+    "node": ">=6.0"
+  },
+  "files": [
+    "src",
+    "LICENSE",
+    "README.md"
+  ],
+  "homepage": "https://github.com/debug-js/debug#readme",
+  "keywords": [
+    "debug",
+    "log",
+    "debugger"
+  ],
+  "license": "MIT",
+  "main": "./src/index.js",
+  "name": "debug",
+  "peerDependenciesMeta": {
+    "supports-color": {
+      "optional": true
+    }
+  },
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/debug-js/debug.git"
+  },
+  "scripts": {
+    "lint": "xo",
+    "test": "npm run test:node && npm run test:browser && npm run lint",
+    "test:browser": "karma start --single-run",
+    "test:coverage": "cat ./coverage/lcov.info | coveralls",
+    "test:node": "istanbul cover _mocha -- test.js"
+  },
+  "version": "4.3.3"
+}

+ 69 - 0
server/node_modules/agent-base/node_modules/ms/package.json

@@ -0,0 +1,69 @@
+{
+  "_from": "ms@2.1.2",
+  "_id": "ms@2.1.2",
+  "_inBundle": false,
+  "_integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+  "_location": "/agent-base/ms",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "ms@2.1.2",
+    "name": "ms",
+    "escapedName": "ms",
+    "rawSpec": "2.1.2",
+    "saveSpec": null,
+    "fetchSpec": "2.1.2"
+  },
+  "_requiredBy": [
+    "/agent-base/debug"
+  ],
+  "_resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+  "_shasum": "d09d1f357b443f493382a8eb3ccd183872ae6009",
+  "_spec": "ms@2.1.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\agent-base\\node_modules\\debug",
+  "bugs": {
+    "url": "https://github.com/zeit/ms/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Tiny millisecond conversion utility",
+  "devDependencies": {
+    "eslint": "4.12.1",
+    "expect.js": "0.3.1",
+    "husky": "0.14.3",
+    "lint-staged": "5.0.0",
+    "mocha": "4.0.1"
+  },
+  "eslintConfig": {
+    "extends": "eslint:recommended",
+    "env": {
+      "node": true,
+      "es6": true
+    }
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/zeit/ms#readme",
+  "license": "MIT",
+  "lint-staged": {
+    "*.js": [
+      "npm run lint",
+      "prettier --single-quote --write",
+      "git add"
+    ]
+  },
+  "main": "./index",
+  "name": "ms",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/zeit/ms.git"
+  },
+  "scripts": {
+    "lint": "eslint lib/* bin/*",
+    "precommit": "lint-staged",
+    "test": "mocha tests.js"
+  },
+  "version": "2.1.2"
+}

+ 94 - 0
server/node_modules/agent-base/package.json

@@ -0,0 +1,94 @@
+{
+  "_from": "agent-base@6",
+  "_id": "agent-base@6.0.2",
+  "_inBundle": false,
+  "_integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+  "_location": "/agent-base",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "agent-base@6",
+    "name": "agent-base",
+    "escapedName": "agent-base",
+    "rawSpec": "6",
+    "saveSpec": null,
+    "fetchSpec": "6"
+  },
+  "_requiredBy": [
+    "/https-proxy-agent"
+  ],
+  "_resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+  "_shasum": "49fff58577cfee3f37176feab4c22e00f86d7f77",
+  "_spec": "agent-base@6",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\https-proxy-agent",
+  "author": {
+    "name": "Nathan Rajlich",
+    "email": "nathan@tootallnate.net",
+    "url": "http://n8.io/"
+  },
+  "bugs": {
+    "url": "https://github.com/TooTallNate/node-agent-base/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "debug": "4"
+  },
+  "deprecated": false,
+  "description": "Turn a function into an `http.Agent` instance",
+  "devDependencies": {
+    "@types/debug": "4",
+    "@types/mocha": "^5.2.7",
+    "@types/node": "^14.0.20",
+    "@types/semver": "^7.1.0",
+    "@types/ws": "^6.0.3",
+    "@typescript-eslint/eslint-plugin": "1.6.0",
+    "@typescript-eslint/parser": "1.1.0",
+    "async-listen": "^1.2.0",
+    "cpy-cli": "^2.0.0",
+    "eslint": "5.16.0",
+    "eslint-config-airbnb": "17.1.0",
+    "eslint-config-prettier": "4.1.0",
+    "eslint-import-resolver-typescript": "1.1.1",
+    "eslint-plugin-import": "2.16.0",
+    "eslint-plugin-jsx-a11y": "6.2.1",
+    "eslint-plugin-react": "7.12.4",
+    "mocha": "^6.2.0",
+    "rimraf": "^3.0.0",
+    "semver": "^7.1.2",
+    "typescript": "^3.5.3",
+    "ws": "^3.0.0"
+  },
+  "engines": {
+    "node": ">= 6.0.0"
+  },
+  "files": [
+    "dist/src",
+    "src"
+  ],
+  "homepage": "https://github.com/TooTallNate/node-agent-base#readme",
+  "keywords": [
+    "http",
+    "agent",
+    "base",
+    "barebones",
+    "https"
+  ],
+  "license": "MIT",
+  "main": "dist/src/index",
+  "name": "agent-base",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/TooTallNate/node-agent-base.git"
+  },
+  "scripts": {
+    "build": "tsc",
+    "postbuild": "cpy --parents src test '!**/*.ts' dist",
+    "prebuild": "rimraf dist",
+    "prepublishOnly": "npm run build",
+    "test": "mocha --reporter spec dist/test/*.js",
+    "test-lint": "eslint src --ext .js,.ts"
+  },
+  "typings": "dist/src/index",
+  "version": "6.0.2"
+}

+ 70 - 0
server/node_modules/ansi-align/package.json

@@ -0,0 +1,70 @@
+{
+  "_from": "ansi-align@^3.0.0",
+  "_id": "ansi-align@3.0.1",
+  "_inBundle": false,
+  "_integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==",
+  "_location": "/ansi-align",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "ansi-align@^3.0.0",
+    "name": "ansi-align",
+    "escapedName": "ansi-align",
+    "rawSpec": "^3.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^3.0.0"
+  },
+  "_requiredBy": [
+    "/boxen"
+  ],
+  "_resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz",
+  "_shasum": "0cdf12e111ace773a86e9a1fad1225c43cb19a59",
+  "_spec": "ansi-align@^3.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\boxen",
+  "author": {
+    "name": "nexdrew"
+  },
+  "bugs": {
+    "url": "https://github.com/nexdrew/ansi-align/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "string-width": "^4.1.0"
+  },
+  "deprecated": false,
+  "description": "align-text with ANSI support for CLIs",
+  "devDependencies": {
+    "ava": "^2.0.0",
+    "chalk": "^2.4.2",
+    "coveralls": "^3.0.3",
+    "nyc": "^14.0.0",
+    "standard": "^14.0.0",
+    "standard-version": "^7.0.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/nexdrew/ansi-align#readme",
+  "keywords": [
+    "ansi",
+    "align",
+    "cli",
+    "center",
+    "pad"
+  ],
+  "license": "ISC",
+  "main": "index.js",
+  "name": "ansi-align",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/nexdrew/ansi-align.git"
+  },
+  "scripts": {
+    "coverage": "nyc report --reporter=text-lcov | coveralls",
+    "pretest": "standard",
+    "release": "standard-version",
+    "test": "nyc ava"
+  },
+  "version": "3.0.1"
+}

+ 87 - 0
server/node_modules/ansi-regex/package.json

@@ -0,0 +1,87 @@
+{
+  "_from": "ansi-regex@^5.0.1",
+  "_id": "ansi-regex@5.0.1",
+  "_inBundle": false,
+  "_integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+  "_location": "/ansi-regex",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "ansi-regex@^5.0.1",
+    "name": "ansi-regex",
+    "escapedName": "ansi-regex",
+    "rawSpec": "^5.0.1",
+    "saveSpec": null,
+    "fetchSpec": "^5.0.1"
+  },
+  "_requiredBy": [
+    "/strip-ansi"
+  ],
+  "_resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+  "_shasum": "082cb2c89c9fe8659a311a53bd6a4dc5301db304",
+  "_spec": "ansi-regex@^5.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\strip-ansi",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/chalk/ansi-regex/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Regular expression for matching ANSI escape codes",
+  "devDependencies": {
+    "ava": "^2.4.0",
+    "tsd": "^0.9.0",
+    "xo": "^0.25.3"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "homepage": "https://github.com/chalk/ansi-regex#readme",
+  "keywords": [
+    "ansi",
+    "styles",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "string",
+    "tty",
+    "escape",
+    "formatting",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "command-line",
+    "text",
+    "regex",
+    "regexp",
+    "re",
+    "match",
+    "test",
+    "find",
+    "pattern"
+  ],
+  "license": "MIT",
+  "name": "ansi-regex",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/chalk/ansi-regex.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd",
+    "view-supported": "node fixtures/view-codes.js"
+  },
+  "version": "5.0.1"
+}

+ 89 - 0
server/node_modules/ansi-styles/package.json

@@ -0,0 +1,89 @@
+{
+  "_from": "ansi-styles@^4.1.0",
+  "_id": "ansi-styles@4.3.0",
+  "_inBundle": false,
+  "_integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+  "_location": "/ansi-styles",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "ansi-styles@^4.1.0",
+    "name": "ansi-styles",
+    "escapedName": "ansi-styles",
+    "rawSpec": "^4.1.0",
+    "saveSpec": null,
+    "fetchSpec": "^4.1.0"
+  },
+  "_requiredBy": [
+    "/chalk",
+    "/wrap-ansi"
+  ],
+  "_resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+  "_shasum": "edd803628ae71c04c85ae7a0906edad34b648937",
+  "_spec": "ansi-styles@^4.1.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\chalk",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/chalk/ansi-styles/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "color-convert": "^2.0.1"
+  },
+  "deprecated": false,
+  "description": "ANSI escape codes for styling strings in the terminal",
+  "devDependencies": {
+    "@types/color-convert": "^1.9.0",
+    "ava": "^2.3.0",
+    "svg-term-cli": "^2.1.1",
+    "tsd": "^0.11.0",
+    "xo": "^0.25.3"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "funding": "https://github.com/chalk/ansi-styles?sponsor=1",
+  "homepage": "https://github.com/chalk/ansi-styles#readme",
+  "keywords": [
+    "ansi",
+    "styles",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "string",
+    "tty",
+    "escape",
+    "formatting",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "log",
+    "logging",
+    "command-line",
+    "text"
+  ],
+  "license": "MIT",
+  "name": "ansi-styles",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/chalk/ansi-styles.git"
+  },
+  "scripts": {
+    "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor",
+    "test": "xo && ava && tsd"
+  },
+  "version": "4.3.0"
+}

+ 76 - 0
server/node_modules/anymatch/package.json

@@ -0,0 +1,76 @@
+{
+  "_from": "anymatch@~3.1.2",
+  "_id": "anymatch@3.1.2",
+  "_inBundle": false,
+  "_integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
+  "_location": "/anymatch",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "anymatch@~3.1.2",
+    "name": "anymatch",
+    "escapedName": "anymatch",
+    "rawSpec": "~3.1.2",
+    "saveSpec": null,
+    "fetchSpec": "~3.1.2"
+  },
+  "_requiredBy": [
+    "/chokidar"
+  ],
+  "_resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
+  "_shasum": "c0557c096af32f106198f4f4e2a383537e378716",
+  "_spec": "anymatch@~3.1.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\chokidar",
+  "author": {
+    "name": "Elan Shanker",
+    "url": "https://github.com/es128"
+  },
+  "bugs": {
+    "url": "https://github.com/micromatch/anymatch/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "normalize-path": "^3.0.0",
+    "picomatch": "^2.0.4"
+  },
+  "deprecated": false,
+  "description": "Matches strings against configurable strings, globs, regular expressions, and/or functions",
+  "devDependencies": {
+    "mocha": "^6.1.3",
+    "nyc": "^14.0.0"
+  },
+  "engines": {
+    "node": ">= 8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "homepage": "https://github.com/micromatch/anymatch",
+  "keywords": [
+    "match",
+    "any",
+    "string",
+    "file",
+    "fs",
+    "list",
+    "glob",
+    "regex",
+    "regexp",
+    "regular",
+    "expression",
+    "function"
+  ],
+  "license": "ISC",
+  "name": "anymatch",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/micromatch/anymatch.git"
+  },
+  "scripts": {
+    "mocha": "mocha",
+    "test": "nyc mocha"
+  },
+  "version": "3.1.2"
+}

+ 63 - 0
server/node_modules/aproba/package.json

@@ -0,0 +1,63 @@
+{
+  "_from": "aproba@^1.0.3 || ^2.0.0",
+  "_id": "aproba@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==",
+  "_location": "/aproba",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "aproba@^1.0.3 || ^2.0.0",
+    "name": "aproba",
+    "escapedName": "aproba",
+    "rawSpec": "^1.0.3 || ^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.3 || ^2.0.0"
+  },
+  "_requiredBy": [
+    "/gauge"
+  ],
+  "_resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
+  "_shasum": "52520b8ae5b569215b354efc0caa3fe1e45a8adc",
+  "_spec": "aproba@^1.0.3 || ^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\gauge",
+  "author": {
+    "name": "Rebecca Turner",
+    "email": "me@re-becca.org"
+  },
+  "bugs": {
+    "url": "https://github.com/iarna/aproba/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {},
+  "deprecated": false,
+  "description": "A ridiculously light-weight argument validator (now browser friendly)",
+  "devDependencies": {
+    "standard": "^11.0.1",
+    "tap": "^12.0.1"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/iarna/aproba",
+  "keywords": [
+    "argument",
+    "validate"
+  ],
+  "license": "ISC",
+  "main": "index.js",
+  "name": "aproba",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/iarna/aproba.git"
+  },
+  "scripts": {
+    "pretest": "standard",
+    "test": "tap --100 -J test/*.js"
+  },
+  "version": "2.0.0"
+}

+ 80 - 0
server/node_modules/are-we-there-yet/package.json

@@ -0,0 +1,80 @@
+{
+  "_from": "are-we-there-yet@^2.0.0",
+  "_id": "are-we-there-yet@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==",
+  "_location": "/are-we-there-yet",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "are-we-there-yet@^2.0.0",
+    "name": "are-we-there-yet",
+    "escapedName": "are-we-there-yet",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/npmlog"
+  ],
+  "_resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz",
+  "_shasum": "372e0e7bd279d8e94c653aaa1f67200884bf3e1c",
+  "_spec": "are-we-there-yet@^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\npmlog",
+  "author": {
+    "name": "GitHub Inc."
+  },
+  "bugs": {
+    "url": "https://github.com/npm/are-we-there-yet/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "delegates": "^1.0.0",
+    "readable-stream": "^3.6.0"
+  },
+  "deprecated": false,
+  "description": "Keep track of the overall completion of many disparate processes",
+  "devDependencies": {
+    "@npmcli/eslint-config": "^1.0.0",
+    "@npmcli/template-oss": "^1.0.2",
+    "eslint": "^7.32.0",
+    "eslint-plugin-node": "^11.1.0",
+    "tap": "^15.0.9"
+  },
+  "engines": {
+    "node": ">=10"
+  },
+  "files": [
+    "bin",
+    "lib"
+  ],
+  "homepage": "https://github.com/npm/are-we-there-yet",
+  "license": "ISC",
+  "main": "lib/index.js",
+  "name": "are-we-there-yet",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/npm/are-we-there-yet.git"
+  },
+  "scripts": {
+    "lint": "eslint '**/*.js'",
+    "lintfix": "npm run lint -- --fix",
+    "npmclilint": "npmcli-lint",
+    "postsnap": "npm run lintfix --",
+    "posttest": "npm run lint",
+    "postversion": "npm publish",
+    "prepublishOnly": "git push origin --follow-tags",
+    "preversion": "npm test",
+    "snap": "tap",
+    "test": "tap"
+  },
+  "tap": {
+    "branches": 68,
+    "statements": 92,
+    "functions": 86,
+    "lines": 92
+  },
+  "templateVersion": "1.0.2",
+  "version": "2.0.0"
+}

+ 64 - 0
server/node_modules/array-flatten/package.json

@@ -0,0 +1,64 @@
+{
+  "_from": "array-flatten@1.1.1",
+  "_id": "array-flatten@1.1.1",
+  "_inBundle": false,
+  "_integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
+  "_location": "/array-flatten",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "array-flatten@1.1.1",
+    "name": "array-flatten",
+    "escapedName": "array-flatten",
+    "rawSpec": "1.1.1",
+    "saveSpec": null,
+    "fetchSpec": "1.1.1"
+  },
+  "_requiredBy": [
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+  "_shasum": "9a5f699051b1e7073328f2a008968b64ea2955d2",
+  "_spec": "array-flatten@1.1.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "Blake Embrey",
+    "email": "hello@blakeembrey.com",
+    "url": "http://blakeembrey.me"
+  },
+  "bugs": {
+    "url": "https://github.com/blakeembrey/array-flatten/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Flatten an array of nested arrays into a single flat array",
+  "devDependencies": {
+    "istanbul": "^0.3.13",
+    "mocha": "^2.2.4",
+    "pre-commit": "^1.0.7",
+    "standard": "^3.7.3"
+  },
+  "files": [
+    "array-flatten.js",
+    "LICENSE"
+  ],
+  "homepage": "https://github.com/blakeembrey/array-flatten",
+  "keywords": [
+    "array",
+    "flatten",
+    "arguments",
+    "depth"
+  ],
+  "license": "MIT",
+  "main": "array-flatten.js",
+  "name": "array-flatten",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/blakeembrey/array-flatten.git"
+  },
+  "scripts": {
+    "test": "istanbul cover _mocha -- -R spec"
+  },
+  "version": "1.1.1"
+}

+ 11 - 0
server/node_modules/backo2/component.json

@@ -0,0 +1,11 @@
+{
+  "name": "backo",
+  "repo": "segmentio/backo",
+  "dependencies": {},
+  "version": "1.0.1",
+  "description": "simple backoff without the weird abstractions",
+  "keywords": ["backoff"],
+  "license": "MIT",
+  "scripts": ["index.js"],
+  "main": "index.js"
+}

+ 85 - 0
server/node_modules/backo2/index.js

@@ -0,0 +1,85 @@
+
+/**
+ * Expose `Backoff`.
+ */
+
+module.exports = Backoff;
+
+/**
+ * Initialize backoff timer with `opts`.
+ *
+ * - `min` initial timeout in milliseconds [100]
+ * - `max` max timeout [10000]
+ * - `jitter` [0]
+ * - `factor` [2]
+ *
+ * @param {Object} opts
+ * @api public
+ */
+
+function Backoff(opts) {
+  opts = opts || {};
+  this.ms = opts.min || 100;
+  this.max = opts.max || 10000;
+  this.factor = opts.factor || 2;
+  this.jitter = opts.jitter > 0 && opts.jitter <= 1 ? opts.jitter : 0;
+  this.attempts = 0;
+}
+
+/**
+ * Return the backoff duration.
+ *
+ * @return {Number}
+ * @api public
+ */
+
+Backoff.prototype.duration = function(){
+  var ms = this.ms * Math.pow(this.factor, this.attempts++);
+  if (this.jitter) {
+    var rand =  Math.random();
+    var deviation = Math.floor(rand * this.jitter * ms);
+    ms = (Math.floor(rand * 10) & 1) == 0  ? ms - deviation : ms + deviation;
+  }
+  return Math.min(ms, this.max) | 0;
+};
+
+/**
+ * Reset the number of attempts.
+ *
+ * @api public
+ */
+
+Backoff.prototype.reset = function(){
+  this.attempts = 0;
+};
+
+/**
+ * Set the minimum duration
+ *
+ * @api public
+ */
+
+Backoff.prototype.setMin = function(min){
+  this.ms = min;
+};
+
+/**
+ * Set the maximum duration
+ *
+ * @api public
+ */
+
+Backoff.prototype.setMax = function(max){
+  this.max = max;
+};
+
+/**
+ * Set the jitter
+ *
+ * @api public
+ */
+
+Backoff.prototype.setJitter = function(jitter){
+  this.jitter = jitter;
+};
+

+ 47 - 0
server/node_modules/backo2/package.json

@@ -0,0 +1,47 @@
+{
+  "_from": "backo2@~1.0.2",
+  "_id": "backo2@1.0.2",
+  "_inBundle": false,
+  "_integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
+  "_location": "/backo2",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "backo2@~1.0.2",
+    "name": "backo2",
+    "escapedName": "backo2",
+    "rawSpec": "~1.0.2",
+    "saveSpec": null,
+    "fetchSpec": "~1.0.2"
+  },
+  "_requiredBy": [
+    "/socket.io-client"
+  ],
+  "_resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
+  "_shasum": "31ab1ac8b129363463e35b3ebb69f4dfcfba7947",
+  "_spec": "backo2@~1.0.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\socket.io-client",
+  "bugs": {
+    "url": "https://github.com/mokesmokes/backo/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {},
+  "deprecated": false,
+  "description": "simple backoff based on segmentio/backo",
+  "devDependencies": {
+    "mocha": "*",
+    "should": "*"
+  },
+  "homepage": "https://github.com/mokesmokes/backo#readme",
+  "keywords": [
+    "backoff"
+  ],
+  "license": "MIT",
+  "name": "backo2",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/mokesmokes/backo.git"
+  },
+  "version": "1.0.2"
+}

+ 18 - 0
server/node_modules/backo2/test/index.js

@@ -0,0 +1,18 @@
+
+var Backoff = require('..');
+var assert = require('assert');
+
+describe('.duration()', function(){
+  it('should increase the backoff', function(){
+    var b = new Backoff;
+
+    assert(100 == b.duration());
+    assert(200 == b.duration());
+    assert(400 == b.duration());
+    assert(800 == b.duration());
+
+    b.reset();
+    assert(100 == b.duration());
+    assert(200 == b.duration());
+  })
+})

+ 76 - 0
server/node_modules/balanced-match/package.json

@@ -0,0 +1,76 @@
+{
+  "_from": "balanced-match@^1.0.0",
+  "_id": "balanced-match@1.0.2",
+  "_inBundle": false,
+  "_integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+  "_location": "/balanced-match",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "balanced-match@^1.0.0",
+    "name": "balanced-match",
+    "escapedName": "balanced-match",
+    "rawSpec": "^1.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.0"
+  },
+  "_requiredBy": [
+    "/brace-expansion"
+  ],
+  "_resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+  "_shasum": "e83e3a7e3f300b34cb9d87f615fa0cbf357690ee",
+  "_spec": "balanced-match@^1.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\brace-expansion",
+  "author": {
+    "name": "Julian Gruber",
+    "email": "mail@juliangruber.com",
+    "url": "http://juliangruber.com"
+  },
+  "bugs": {
+    "url": "https://github.com/juliangruber/balanced-match/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Match balanced character pairs, like \"{\" and \"}\"",
+  "devDependencies": {
+    "matcha": "^0.7.0",
+    "tape": "^4.6.0"
+  },
+  "homepage": "https://github.com/juliangruber/balanced-match",
+  "keywords": [
+    "match",
+    "regexp",
+    "test",
+    "balanced",
+    "parse"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "balanced-match",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/juliangruber/balanced-match.git"
+  },
+  "scripts": {
+    "bench": "matcha test/bench.js",
+    "test": "tape test/test.js"
+  },
+  "testling": {
+    "files": "test/*.js",
+    "browsers": [
+      "ie/8..latest",
+      "firefox/20..latest",
+      "firefox/nightly",
+      "chrome/25..latest",
+      "chrome/canary",
+      "opera/12..latest",
+      "opera/next",
+      "safari/5.1..latest",
+      "ipad/6.0..latest",
+      "iphone/6.0..latest",
+      "android-browser/4.2..latest"
+    ]
+  },
+  "version": "1.0.2"
+}

+ 75 - 0
server/node_modules/base64-js/package.json

@@ -0,0 +1,75 @@
+{
+  "_from": "base64-js@^1.3.1",
+  "_id": "base64-js@1.5.1",
+  "_inBundle": false,
+  "_integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
+  "_location": "/base64-js",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "base64-js@^1.3.1",
+    "name": "base64-js",
+    "escapedName": "base64-js",
+    "rawSpec": "^1.3.1",
+    "saveSpec": null,
+    "fetchSpec": "^1.3.1"
+  },
+  "_requiredBy": [
+    "/buffer"
+  ],
+  "_resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
+  "_shasum": "1b1b440160a5bf7ad40b650f095963481903930a",
+  "_spec": "base64-js@^1.3.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\buffer",
+  "author": {
+    "name": "T. Jameson Little",
+    "email": "t.jameson.little@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/beatgammit/base64-js/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Base64 encoding/decoding in pure JS",
+  "devDependencies": {
+    "babel-minify": "^0.5.1",
+    "benchmark": "^2.1.4",
+    "browserify": "^16.3.0",
+    "standard": "*",
+    "tape": "4.x"
+  },
+  "funding": [
+    {
+      "type": "github",
+      "url": "https://github.com/sponsors/feross"
+    },
+    {
+      "type": "patreon",
+      "url": "https://www.patreon.com/feross"
+    },
+    {
+      "type": "consulting",
+      "url": "https://feross.org/support"
+    }
+  ],
+  "homepage": "https://github.com/beatgammit/base64-js",
+  "keywords": [
+    "base64"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "base64-js",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/beatgammit/base64-js.git"
+  },
+  "scripts": {
+    "build": "browserify -s base64js -r ./ | minify > base64js.min.js",
+    "lint": "standard",
+    "test": "npm run lint && npm run unit",
+    "unit": "tape test/*.js"
+  },
+  "typings": "index.d.ts",
+  "version": "1.5.1"
+}

+ 103 - 0
server/node_modules/base64id/lib/base64id.js

@@ -0,0 +1,103 @@
+/*!
+ * base64id v0.1.0
+ */
+
+/**
+ * Module dependencies
+ */
+
+var crypto = require('crypto');
+
+/**
+ * Constructor
+ */
+
+var Base64Id = function() { };
+
+/**
+ * Get random bytes
+ *
+ * Uses a buffer if available, falls back to crypto.randomBytes
+ */
+
+Base64Id.prototype.getRandomBytes = function(bytes) {
+
+  var BUFFER_SIZE = 4096
+  var self = this;  
+  
+  bytes = bytes || 12;
+
+  if (bytes > BUFFER_SIZE) {
+    return crypto.randomBytes(bytes);
+  }
+  
+  var bytesInBuffer = parseInt(BUFFER_SIZE/bytes);
+  var threshold = parseInt(bytesInBuffer*0.85);
+
+  if (!threshold) {
+    return crypto.randomBytes(bytes);
+  }
+
+  if (this.bytesBufferIndex == null) {
+     this.bytesBufferIndex = -1;
+  }
+
+  if (this.bytesBufferIndex == bytesInBuffer) {
+    this.bytesBuffer = null;
+    this.bytesBufferIndex = -1;
+  }
+
+  // No buffered bytes available or index above threshold
+  if (this.bytesBufferIndex == -1 || this.bytesBufferIndex > threshold) {
+     
+    if (!this.isGeneratingBytes) {
+      this.isGeneratingBytes = true;
+      crypto.randomBytes(BUFFER_SIZE, function(err, bytes) {
+        self.bytesBuffer = bytes;
+        self.bytesBufferIndex = 0;
+        self.isGeneratingBytes = false;
+      }); 
+    }
+    
+    // Fall back to sync call when no buffered bytes are available
+    if (this.bytesBufferIndex == -1) {
+      return crypto.randomBytes(bytes);
+    }
+  }
+  
+  var result = this.bytesBuffer.slice(bytes*this.bytesBufferIndex, bytes*(this.bytesBufferIndex+1)); 
+  this.bytesBufferIndex++; 
+  
+  return result;
+}
+
+/**
+ * Generates a base64 id
+ *
+ * (Original version from socket.io <http://socket.io>)
+ */
+
+Base64Id.prototype.generateId = function () {
+  var rand = Buffer.alloc(15); // multiple of 3 for base64
+  if (!rand.writeInt32BE) {
+    return Math.abs(Math.random() * Math.random() * Date.now() | 0).toString()
+      + Math.abs(Math.random() * Math.random() * Date.now() | 0).toString();
+  }
+  this.sequenceNumber = (this.sequenceNumber + 1) | 0;
+  rand.writeInt32BE(this.sequenceNumber, 11);
+  if (crypto.randomBytes) {
+    this.getRandomBytes(12).copy(rand);
+  } else {
+    // not secure for node 0.4
+    [0, 4, 8].forEach(function(i) {
+      rand.writeInt32BE(Math.random() * Math.pow(2, 32) | 0, i);
+    });
+  }
+  return rand.toString('base64').replace(/\//g, '_').replace(/\+/g, '-');
+};
+
+/**
+ * Export
+ */
+
+exports = module.exports = new Base64Id();

+ 48 - 0
server/node_modules/base64id/package.json

@@ -0,0 +1,48 @@
+{
+  "_from": "base64id@~2.0.0",
+  "_id": "base64id@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+  "_location": "/base64id",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "base64id@~2.0.0",
+    "name": "base64id",
+    "escapedName": "base64id",
+    "rawSpec": "~2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "~2.0.0"
+  },
+  "_requiredBy": [
+    "/engine.io",
+    "/socket.io"
+  ],
+  "_resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+  "_shasum": "2770ac6bc47d312af97a8bf9a634342e0cd25cb6",
+  "_spec": "base64id@~2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\socket.io",
+  "author": {
+    "name": "Kristian Faeldt",
+    "email": "faeldt_kristian@cyberagent.co.jp"
+  },
+  "bugs": {
+    "url": "https://github.com/faeldt/base64id/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Generates a base64 id",
+  "engines": {
+    "node": "^4.5.0 || >= 5.9"
+  },
+  "homepage": "https://github.com/faeldt/base64id#readme",
+  "license": "MIT",
+  "main": "./lib/base64id.js",
+  "name": "base64id",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/faeldt/base64id.git"
+  },
+  "version": "2.0.0"
+}

+ 163 - 0
server/node_modules/bcrypt/package.json

@@ -0,0 +1,163 @@
+{
+  "_from": "bcrypt",
+  "_id": "bcrypt@5.0.1",
+  "_inBundle": false,
+  "_integrity": "sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw==",
+  "_location": "/bcrypt",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "tag",
+    "registry": true,
+    "raw": "bcrypt",
+    "name": "bcrypt",
+    "escapedName": "bcrypt",
+    "rawSpec": "",
+    "saveSpec": null,
+    "fetchSpec": "latest"
+  },
+  "_requiredBy": [
+    "#USER",
+    "/"
+  ],
+  "_resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.0.1.tgz",
+  "_shasum": "f1a2c20f208e2ccdceea4433df0c8b2c54ecdf71",
+  "_spec": "bcrypt",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server",
+  "author": {
+    "name": "Nick Campbell",
+    "url": "https://github.com/ncb000gt"
+  },
+  "binary": {
+    "module_name": "bcrypt_lib",
+    "module_path": "./lib/binding/napi-v{napi_build_version}",
+    "package_name": "{module_name}-v{version}-napi-v{napi_build_version}-{platform}-{arch}-{libc}.tar.gz",
+    "host": "https://github.com",
+    "remote_path": "kelektiv/node.bcrypt.js/releases/download/v{version}",
+    "napi_versions": [
+      3
+    ]
+  },
+  "bugs": {
+    "url": "https://github.com/kelektiv/node.bcrypt.js/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Antonio Salazar Cardozo",
+      "email": "savedfastcool@gmail.com",
+      "url": "https://github.com/Shadowfiend"
+    },
+    {
+      "name": "Van Nguyen",
+      "email": "the.gol.effect@gmail.com",
+      "url": "https://github.com/thegoleffect"
+    },
+    {
+      "name": "David Trejo",
+      "email": "david@dtrejo.com",
+      "url": "https://github.com/dtrejo"
+    },
+    {
+      "name": "Ben Glow",
+      "email": "glen.low@pixelglow.com",
+      "url": "https://github.com/pixelglow"
+    },
+    {
+      "name": "NewITFarmer.com",
+      "url": "https://github.com/newitfarmer"
+    },
+    {
+      "name": "Alfred Westerveld",
+      "email": "alfredwesterveld@gmail.com",
+      "url": "https://github.com/alfredwesterveld"
+    },
+    {
+      "name": "Vincent Côté-Roy",
+      "email": "vincentcr@gmail.com",
+      "url": "https://github.com/vincentcr"
+    },
+    {
+      "name": "Lloyd Hilaiel",
+      "email": "lloyd@hilaiel.com",
+      "url": "https://github.com/lloyd"
+    },
+    {
+      "name": "Roman Shtylman",
+      "email": "shtylman@gmail.com",
+      "url": "https://github.com/shtylman"
+    },
+    {
+      "name": "Vadim Graboys",
+      "email": "dimva13@gmail.com",
+      "url": "https://github.com/vadimg"
+    },
+    {
+      "name": "Ben Noorduis",
+      "url": "https://github.com/bnoordhuis"
+    },
+    {
+      "name": "Nate Rajlich",
+      "email": "nathan@tootallnate.net",
+      "url": "https://github.com/tootallnate"
+    },
+    {
+      "name": "Sean McArthur",
+      "email": "sean.monstar@gmail.com",
+      "url": "https://github.com/seanmonstar"
+    },
+    {
+      "name": "Fanie Oosthuysen",
+      "email": "fanie.oosthuysen@gmail.com",
+      "url": "https://github.com/weareu"
+    },
+    {
+      "name": "Amitosh Swain Mahapatra",
+      "email": "amitosh.swain@gmail.com",
+      "url": "https://github.com/Agathver"
+    },
+    {
+      "name": "Corbin Crutchley",
+      "email": "crutchcorn@gmail.com",
+      "url": "https://github.com/crutchcorn"
+    },
+    {
+      "name": "Nicola Del Gobbo",
+      "email": "nicoladelgobbo@gmail.com",
+      "url": "https://github.com/NickNaso"
+    }
+  ],
+  "dependencies": {
+    "@mapbox/node-pre-gyp": "^1.0.0",
+    "node-addon-api": "^3.1.0"
+  },
+  "deprecated": false,
+  "description": "A bcrypt library for NodeJS.",
+  "devDependencies": {
+    "nodeunit": "^0.11.3"
+  },
+  "engines": {
+    "node": ">= 10.0.0"
+  },
+  "homepage": "https://github.com/kelektiv/node.bcrypt.js#readme",
+  "keywords": [
+    "bcrypt",
+    "password",
+    "auth",
+    "authentication",
+    "encryption",
+    "crypt",
+    "crypto"
+  ],
+  "license": "MIT",
+  "main": "./bcrypt",
+  "name": "bcrypt",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/kelektiv/node.bcrypt.js.git"
+  },
+  "scripts": {
+    "install": "node-pre-gyp install --fallback-to-build",
+    "test": "npm install --build-from-source && nodeunit test"
+  },
+  "version": "5.0.1"
+}

+ 260 - 0
server/node_modules/binary-extensions/binary-extensions.json

@@ -0,0 +1,260 @@
+[
+	"3dm",
+	"3ds",
+	"3g2",
+	"3gp",
+	"7z",
+	"a",
+	"aac",
+	"adp",
+	"ai",
+	"aif",
+	"aiff",
+	"alz",
+	"ape",
+	"apk",
+	"appimage",
+	"ar",
+	"arj",
+	"asf",
+	"au",
+	"avi",
+	"bak",
+	"baml",
+	"bh",
+	"bin",
+	"bk",
+	"bmp",
+	"btif",
+	"bz2",
+	"bzip2",
+	"cab",
+	"caf",
+	"cgm",
+	"class",
+	"cmx",
+	"cpio",
+	"cr2",
+	"cur",
+	"dat",
+	"dcm",
+	"deb",
+	"dex",
+	"djvu",
+	"dll",
+	"dmg",
+	"dng",
+	"doc",
+	"docm",
+	"docx",
+	"dot",
+	"dotm",
+	"dra",
+	"DS_Store",
+	"dsk",
+	"dts",
+	"dtshd",
+	"dvb",
+	"dwg",
+	"dxf",
+	"ecelp4800",
+	"ecelp7470",
+	"ecelp9600",
+	"egg",
+	"eol",
+	"eot",
+	"epub",
+	"exe",
+	"f4v",
+	"fbs",
+	"fh",
+	"fla",
+	"flac",
+	"flatpak",
+	"fli",
+	"flv",
+	"fpx",
+	"fst",
+	"fvt",
+	"g3",
+	"gh",
+	"gif",
+	"graffle",
+	"gz",
+	"gzip",
+	"h261",
+	"h263",
+	"h264",
+	"icns",
+	"ico",
+	"ief",
+	"img",
+	"ipa",
+	"iso",
+	"jar",
+	"jpeg",
+	"jpg",
+	"jpgv",
+	"jpm",
+	"jxr",
+	"key",
+	"ktx",
+	"lha",
+	"lib",
+	"lvp",
+	"lz",
+	"lzh",
+	"lzma",
+	"lzo",
+	"m3u",
+	"m4a",
+	"m4v",
+	"mar",
+	"mdi",
+	"mht",
+	"mid",
+	"midi",
+	"mj2",
+	"mka",
+	"mkv",
+	"mmr",
+	"mng",
+	"mobi",
+	"mov",
+	"movie",
+	"mp3",
+	"mp4",
+	"mp4a",
+	"mpeg",
+	"mpg",
+	"mpga",
+	"mxu",
+	"nef",
+	"npx",
+	"numbers",
+	"nupkg",
+	"o",
+	"odp",
+	"ods",
+	"odt",
+	"oga",
+	"ogg",
+	"ogv",
+	"otf",
+	"ott",
+	"pages",
+	"pbm",
+	"pcx",
+	"pdb",
+	"pdf",
+	"pea",
+	"pgm",
+	"pic",
+	"png",
+	"pnm",
+	"pot",
+	"potm",
+	"potx",
+	"ppa",
+	"ppam",
+	"ppm",
+	"pps",
+	"ppsm",
+	"ppsx",
+	"ppt",
+	"pptm",
+	"pptx",
+	"psd",
+	"pya",
+	"pyc",
+	"pyo",
+	"pyv",
+	"qt",
+	"rar",
+	"ras",
+	"raw",
+	"resources",
+	"rgb",
+	"rip",
+	"rlc",
+	"rmf",
+	"rmvb",
+	"rpm",
+	"rtf",
+	"rz",
+	"s3m",
+	"s7z",
+	"scpt",
+	"sgi",
+	"shar",
+	"snap",
+	"sil",
+	"sketch",
+	"slk",
+	"smv",
+	"snk",
+	"so",
+	"stl",
+	"suo",
+	"sub",
+	"swf",
+	"tar",
+	"tbz",
+	"tbz2",
+	"tga",
+	"tgz",
+	"thmx",
+	"tif",
+	"tiff",
+	"tlz",
+	"ttc",
+	"ttf",
+	"txz",
+	"udf",
+	"uvh",
+	"uvi",
+	"uvm",
+	"uvp",
+	"uvs",
+	"uvu",
+	"viv",
+	"vob",
+	"war",
+	"wav",
+	"wax",
+	"wbmp",
+	"wdp",
+	"weba",
+	"webm",
+	"webp",
+	"whl",
+	"wim",
+	"wm",
+	"wma",
+	"wmv",
+	"wmx",
+	"woff",
+	"woff2",
+	"wrm",
+	"wvx",
+	"xbm",
+	"xif",
+	"xla",
+	"xlam",
+	"xls",
+	"xlsb",
+	"xlsm",
+	"xlsx",
+	"xlt",
+	"xltm",
+	"xltx",
+	"xm",
+	"xmind",
+	"xpi",
+	"xpm",
+	"xwd",
+	"xz",
+	"z",
+	"zip",
+	"zipx"
+]

+ 70 - 0
server/node_modules/binary-extensions/package.json

@@ -0,0 +1,70 @@
+{
+  "_from": "binary-extensions@^2.0.0",
+  "_id": "binary-extensions@2.2.0",
+  "_inBundle": false,
+  "_integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
+  "_location": "/binary-extensions",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "binary-extensions@^2.0.0",
+    "name": "binary-extensions",
+    "escapedName": "binary-extensions",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/is-binary-path"
+  ],
+  "_resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
+  "_shasum": "75f502eeaf9ffde42fc98829645be4ea76bd9e2d",
+  "_spec": "binary-extensions@^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\is-binary-path",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/binary-extensions/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "List of binary file extensions",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "tsd": "^0.7.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts",
+    "binary-extensions.json",
+    "binary-extensions.json.d.ts"
+  ],
+  "homepage": "https://github.com/sindresorhus/binary-extensions#readme",
+  "keywords": [
+    "binary",
+    "extensions",
+    "extension",
+    "file",
+    "json",
+    "list",
+    "array"
+  ],
+  "license": "MIT",
+  "name": "binary-extensions",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/binary-extensions.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "2.2.0"
+}

+ 91 - 0
server/node_modules/body-parser/package.json

@@ -0,0 +1,91 @@
+{
+  "_from": "body-parser@1.19.1",
+  "_id": "body-parser@1.19.1",
+  "_inBundle": false,
+  "_integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==",
+  "_location": "/body-parser",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "body-parser@1.19.1",
+    "name": "body-parser",
+    "escapedName": "body-parser",
+    "rawSpec": "1.19.1",
+    "saveSpec": null,
+    "fetchSpec": "1.19.1"
+  },
+  "_requiredBy": [
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz",
+  "_shasum": "1499abbaa9274af3ecc9f6f10396c995943e31d4",
+  "_spec": "body-parser@1.19.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "bugs": {
+    "url": "https://github.com/expressjs/body-parser/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Douglas Christopher Wilson",
+      "email": "doug@somethingdoug.com"
+    },
+    {
+      "name": "Jonathan Ong",
+      "email": "me@jongleberry.com",
+      "url": "http://jongleberry.com"
+    }
+  ],
+  "dependencies": {
+    "bytes": "3.1.1",
+    "content-type": "~1.0.4",
+    "debug": "2.6.9",
+    "depd": "~1.1.2",
+    "http-errors": "1.8.1",
+    "iconv-lite": "0.4.24",
+    "on-finished": "~2.3.0",
+    "qs": "6.9.6",
+    "raw-body": "2.4.2",
+    "type-is": "~1.6.18"
+  },
+  "deprecated": false,
+  "description": "Node.js body parsing middleware",
+  "devDependencies": {
+    "eslint": "7.32.0",
+    "eslint-config-standard": "14.1.1",
+    "eslint-plugin-import": "2.25.3",
+    "eslint-plugin-markdown": "2.2.1",
+    "eslint-plugin-node": "11.1.0",
+    "eslint-plugin-promise": "5.2.0",
+    "eslint-plugin-standard": "4.1.0",
+    "methods": "1.1.2",
+    "mocha": "9.1.3",
+    "nyc": "15.1.0",
+    "safe-buffer": "5.2.1",
+    "supertest": "6.1.6"
+  },
+  "engines": {
+    "node": ">= 0.8"
+  },
+  "files": [
+    "lib/",
+    "LICENSE",
+    "HISTORY.md",
+    "index.js"
+  ],
+  "homepage": "https://github.com/expressjs/body-parser#readme",
+  "license": "MIT",
+  "name": "body-parser",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/expressjs/body-parser.git"
+  },
+  "scripts": {
+    "lint": "eslint .",
+    "test": "mocha --require test/support/env --reporter spec --check-leaks --bail test/",
+    "test-ci": "nyc --reporter=lcov --reporter=text npm test",
+    "test-cov": "nyc --reporter=html --reporter=text npm test"
+  },
+  "version": "1.19.1"
+}

+ 83 - 0
server/node_modules/boxen/package.json

@@ -0,0 +1,83 @@
+{
+  "_from": "boxen@^5.0.0",
+  "_id": "boxen@5.1.2",
+  "_inBundle": false,
+  "_integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==",
+  "_location": "/boxen",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "boxen@^5.0.0",
+    "name": "boxen",
+    "escapedName": "boxen",
+    "rawSpec": "^5.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^5.0.0"
+  },
+  "_requiredBy": [
+    "/update-notifier"
+  ],
+  "_resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz",
+  "_shasum": "788cb686fc83c1f486dfa8a40c68fc2b831d2b50",
+  "_spec": "boxen@^5.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\update-notifier",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "https://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/boxen/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "ansi-align": "^3.0.0",
+    "camelcase": "^6.2.0",
+    "chalk": "^4.1.0",
+    "cli-boxes": "^2.2.1",
+    "string-width": "^4.2.2",
+    "type-fest": "^0.20.2",
+    "widest-line": "^3.1.0",
+    "wrap-ansi": "^7.0.0"
+  },
+  "deprecated": false,
+  "description": "Create boxes in the terminal",
+  "devDependencies": {
+    "ava": "^2.4.0",
+    "nyc": "^15.1.0",
+    "tsd": "^0.14.0",
+    "xo": "^0.36.1"
+  },
+  "engines": {
+    "node": ">=10"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "funding": "https://github.com/sponsors/sindresorhus",
+  "homepage": "https://github.com/sindresorhus/boxen#readme",
+  "keywords": [
+    "cli",
+    "box",
+    "boxes",
+    "terminal",
+    "term",
+    "console",
+    "ascii",
+    "unicode",
+    "border",
+    "text"
+  ],
+  "license": "MIT",
+  "name": "boxen",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/boxen.git"
+  },
+  "scripts": {
+    "test": "xo && nyc ava && tsd"
+  },
+  "version": "5.1.2"
+}

+ 75 - 0
server/node_modules/brace-expansion/package.json

@@ -0,0 +1,75 @@
+{
+  "_from": "brace-expansion@^1.1.7",
+  "_id": "brace-expansion@1.1.11",
+  "_inBundle": false,
+  "_integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+  "_location": "/brace-expansion",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "brace-expansion@^1.1.7",
+    "name": "brace-expansion",
+    "escapedName": "brace-expansion",
+    "rawSpec": "^1.1.7",
+    "saveSpec": null,
+    "fetchSpec": "^1.1.7"
+  },
+  "_requiredBy": [
+    "/minimatch"
+  ],
+  "_resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+  "_shasum": "3c7fcbf529d87226f3d2f52b966ff5271eb441dd",
+  "_spec": "brace-expansion@^1.1.7",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\minimatch",
+  "author": {
+    "name": "Julian Gruber",
+    "email": "mail@juliangruber.com",
+    "url": "http://juliangruber.com"
+  },
+  "bugs": {
+    "url": "https://github.com/juliangruber/brace-expansion/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "balanced-match": "^1.0.0",
+    "concat-map": "0.0.1"
+  },
+  "deprecated": false,
+  "description": "Brace expansion as known from sh/bash",
+  "devDependencies": {
+    "matcha": "^0.7.0",
+    "tape": "^4.6.0"
+  },
+  "homepage": "https://github.com/juliangruber/brace-expansion",
+  "keywords": [],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "brace-expansion",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/juliangruber/brace-expansion.git"
+  },
+  "scripts": {
+    "bench": "matcha test/perf/bench.js",
+    "gentest": "bash test/generate.sh",
+    "test": "tape test/*.js"
+  },
+  "testling": {
+    "files": "test/*.js",
+    "browsers": [
+      "ie/8..latest",
+      "firefox/20..latest",
+      "firefox/nightly",
+      "chrome/25..latest",
+      "chrome/canary",
+      "opera/12..latest",
+      "opera/next",
+      "safari/5.1..latest",
+      "ipad/6.0..latest",
+      "iphone/6.0..latest",
+      "android-browser/4.2..latest"
+    ]
+  },
+  "version": "1.1.11"
+}

+ 123 - 0
server/node_modules/braces/package.json

@@ -0,0 +1,123 @@
+{
+  "_from": "braces@~3.0.2",
+  "_id": "braces@3.0.2",
+  "_inBundle": false,
+  "_integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+  "_location": "/braces",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "braces@~3.0.2",
+    "name": "braces",
+    "escapedName": "braces",
+    "rawSpec": "~3.0.2",
+    "saveSpec": null,
+    "fetchSpec": "~3.0.2"
+  },
+  "_requiredBy": [
+    "/chokidar"
+  ],
+  "_resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+  "_shasum": "3454e1a462ee8d599e236df336cd9ea4f8afe107",
+  "_spec": "braces@~3.0.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\chokidar",
+  "author": {
+    "name": "Jon Schlinkert",
+    "url": "https://github.com/jonschlinkert"
+  },
+  "bugs": {
+    "url": "https://github.com/micromatch/braces/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Brian Woodward",
+      "url": "https://twitter.com/doowb"
+    },
+    {
+      "name": "Elan Shanker",
+      "url": "https://github.com/es128"
+    },
+    {
+      "name": "Eugene Sharygin",
+      "url": "https://github.com/eush77"
+    },
+    {
+      "name": "hemanth.hm",
+      "url": "http://h3manth.com"
+    },
+    {
+      "name": "Jon Schlinkert",
+      "url": "http://twitter.com/jonschlinkert"
+    }
+  ],
+  "dependencies": {
+    "fill-range": "^7.0.1"
+  },
+  "deprecated": false,
+  "description": "Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed.",
+  "devDependencies": {
+    "ansi-colors": "^3.2.4",
+    "bash-path": "^2.0.1",
+    "gulp-format-md": "^2.0.0",
+    "mocha": "^6.1.1"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "lib"
+  ],
+  "homepage": "https://github.com/micromatch/braces",
+  "keywords": [
+    "alpha",
+    "alphabetical",
+    "bash",
+    "brace",
+    "braces",
+    "expand",
+    "expansion",
+    "filepath",
+    "fill",
+    "fs",
+    "glob",
+    "globbing",
+    "letter",
+    "match",
+    "matches",
+    "matching",
+    "number",
+    "numerical",
+    "path",
+    "range",
+    "ranges",
+    "sh"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "braces",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/micromatch/braces.git"
+  },
+  "scripts": {
+    "benchmark": "node benchmark",
+    "test": "mocha"
+  },
+  "verb": {
+    "toc": false,
+    "layout": "default",
+    "tasks": [
+      "readme"
+    ],
+    "lint": {
+      "reflinks": true
+    },
+    "plugins": [
+      "gulp-format-md"
+    ]
+  },
+  "version": "3.0.2"
+}

+ 26 - 0
server/node_modules/bson/bower.json

@@ -0,0 +1,26 @@
+{
+  "name": "bson",
+  "description": "A bson parser for node.js and the browser",
+  "keywords": [
+    "mongodb",
+    "bson",
+    "parser"
+  ],
+  "author": "Christian Amor Kvalheim <christkv@gmail.com>",
+  "main": "./dist/bson.js",
+  "license": "Apache-2.0",
+  "moduleType": [
+    "globals",
+    "node"
+  ],
+  "ignore": [
+    "**/.*",
+    "alternate_parsers",
+    "benchmarks",
+    "bower_components",
+    "node_modules",
+    "test",
+    "tools"
+  ],
+  "version": "4.6.1"
+}

+ 145 - 0
server/node_modules/bson/package.json

@@ -0,0 +1,145 @@
+{
+  "_from": "bson@^4.2.2",
+  "_id": "bson@4.6.1",
+  "_inBundle": false,
+  "_integrity": "sha512-I1LQ7Hz5zgwR4QquilLNZwbhPw0Apx7i7X9kGMBTsqPdml/03Q9NBtD9nt/19ahjlphktQImrnderxqpzeVDjw==",
+  "_location": "/bson",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "bson@^4.2.2",
+    "name": "bson",
+    "escapedName": "bson",
+    "rawSpec": "^4.2.2",
+    "saveSpec": null,
+    "fetchSpec": "^4.2.2"
+  },
+  "_requiredBy": [
+    "/mongodb",
+    "/mongoose"
+  ],
+  "_resolved": "https://registry.npmjs.org/bson/-/bson-4.6.1.tgz",
+  "_shasum": "2b5da517539bb0f7f3ffb54ac70a384ca899641c",
+  "_spec": "bson@^4.2.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\mongoose",
+  "author": {
+    "name": "The MongoDB NodeJS Team",
+    "email": "dbx-node@mongodb.com"
+  },
+  "browser": {
+    "./lib/bson.js": "./dist/bson.browser.umd.js",
+    "./dist/bson.esm.js": "./dist/bson.browser.esm.js"
+  },
+  "bugs": {
+    "url": "https://jira.mongodb.org/projects/NODE/issues/"
+  },
+  "bundleDependencies": false,
+  "config": {
+    "native": false
+  },
+  "contributors": [],
+  "dependencies": {
+    "buffer": "^5.6.0"
+  },
+  "deprecated": false,
+  "description": "A bson parser for node.js and the browser",
+  "devDependencies": {
+    "@babel/plugin-external-helpers": "^7.10.4",
+    "@babel/preset-env": "^7.11.0",
+    "@istanbuljs/nyc-config-typescript": "^1.0.1",
+    "@microsoft/api-extractor": "^7.11.2",
+    "@rollup/plugin-babel": "^5.2.0",
+    "@rollup/plugin-commonjs": "^15.0.0",
+    "@rollup/plugin-json": "^4.1.0",
+    "@rollup/plugin-node-resolve": "^9.0.0",
+    "@rollup/plugin-typescript": "^6.0.0",
+    "@typescript-eslint/eslint-plugin": "^3.10.1",
+    "@typescript-eslint/parser": "^3.10.1",
+    "array-includes": "^3.1.3",
+    "benchmark": "^2.1.4",
+    "chai": "^4.2.0",
+    "downlevel-dts": "^0.7.0",
+    "eslint": "^7.7.0",
+    "eslint-config-prettier": "^6.11.0",
+    "eslint-plugin-prettier": "^3.1.4",
+    "eslint-plugin-tsdoc": "^0.2.6",
+    "karma": "^6.3.4",
+    "karma-chai": "^0.1.0",
+    "karma-chrome-launcher": "^3.1.0",
+    "karma-mocha": "^2.0.1",
+    "karma-mocha-reporter": "^2.2.5",
+    "karma-rollup-preprocessor": "^7.0.5",
+    "mocha": "5.2.0",
+    "node-fetch": "^2.6.1",
+    "nyc": "^15.1.0",
+    "object.entries": "^1.1.4",
+    "prettier": "^2.1.1",
+    "rimraf": "^3.0.2",
+    "rollup": "^2.26.5",
+    "rollup-plugin-commonjs": "^10.1.0",
+    "rollup-plugin-node-globals": "^1.4.0",
+    "rollup-plugin-node-polyfills": "^0.2.1",
+    "rollup-plugin-polyfill-node": "^0.7.0",
+    "standard-version": "^9.3.0",
+    "ts-node": "^9.0.0",
+    "tsd": "^0.17.0",
+    "typedoc": "^0.21.2",
+    "typescript": "^4.0.2",
+    "typescript-cached-transpile": "0.0.6",
+    "uuid": "^8.3.2"
+  },
+  "engines": {
+    "node": ">=6.9.0"
+  },
+  "files": [
+    "lib",
+    "src",
+    "dist",
+    "bson.d.ts",
+    "etc/prepare.js",
+    "bower.json"
+  ],
+  "homepage": "https://github.com/mongodb/js-bson#readme",
+  "keywords": [
+    "mongodb",
+    "bson",
+    "parser"
+  ],
+  "license": "Apache-2.0",
+  "main": "lib/bson.js",
+  "module": "dist/bson.esm.js",
+  "name": "bson",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/mongodb/js-bson.git"
+  },
+  "scripts": {
+    "build": "npm run build:dts && npm run build:bundle",
+    "build:bundle": "rollup -c rollup.config.js",
+    "build:dts": "npm run build:ts && api-extractor run --typescript-compiler-folder node_modules/typescript --local && rimraf 'lib/**/*.d.ts*' && downlevel-dts bson.d.ts bson.d.ts",
+    "build:ts": "tsc",
+    "coverage": "nyc npm run test-node",
+    "coverage:html": "npm run coverage && open ./coverage/index.html",
+    "docs": "typedoc",
+    "format": "eslint --ext '.js,.ts' src test --fix",
+    "lint": "eslint -v && eslint --ext '.js,.ts' --max-warnings=0 src test && tsc -v && tsc --noEmit && npm run test-tsd",
+    "prepare": "node etc/prepare.js",
+    "release": "standard-version -i HISTORY.md",
+    "test": "npm run build && npm run test-node && npm run test-browser",
+    "test-browser": "node --max-old-space-size=4096 ./node_modules/.bin/karma start karma.conf.js",
+    "test-node": "mocha test/node test/*_tests.js",
+    "test-tsd": "npm run build:dts && tsd"
+  },
+  "tsd": {
+    "directory": "test/types",
+    "compilerOptions": {
+      "strict": true,
+      "target": "esnext",
+      "module": "commonjs",
+      "moduleResolution": "node"
+    }
+  },
+  "types": "bson.d.ts",
+  "version": "4.6.1"
+}

+ 41 - 0
server/node_modules/buffer-equal-constant-time/index.js

@@ -0,0 +1,41 @@
+/*jshint node:true */
+'use strict';
+var Buffer = require('buffer').Buffer; // browserify
+var SlowBuffer = require('buffer').SlowBuffer;
+
+module.exports = bufferEq;
+
+function bufferEq(a, b) {
+
+  // shortcutting on type is necessary for correctness
+  if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
+    return false;
+  }
+
+  // buffer sizes should be well-known information, so despite this
+  // shortcutting, it doesn't leak any information about the *contents* of the
+  // buffers.
+  if (a.length !== b.length) {
+    return false;
+  }
+
+  var c = 0;
+  for (var i = 0; i < a.length; i++) {
+    /*jshint bitwise:false */
+    c |= a[i] ^ b[i]; // XOR
+  }
+  return c === 0;
+}
+
+bufferEq.install = function() {
+  Buffer.prototype.equal = SlowBuffer.prototype.equal = function equal(that) {
+    return bufferEq(this, that);
+  };
+};
+
+var origBufEqual = Buffer.prototype.equal;
+var origSlowBufEqual = SlowBuffer.prototype.equal;
+bufferEq.restore = function() {
+  Buffer.prototype.equal = origBufEqual;
+  SlowBuffer.prototype.equal = origSlowBufEqual;
+};

+ 55 - 0
server/node_modules/buffer-equal-constant-time/package.json

@@ -0,0 +1,55 @@
+{
+  "_from": "buffer-equal-constant-time@1.0.1",
+  "_id": "buffer-equal-constant-time@1.0.1",
+  "_inBundle": false,
+  "_integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=",
+  "_location": "/buffer-equal-constant-time",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "buffer-equal-constant-time@1.0.1",
+    "name": "buffer-equal-constant-time",
+    "escapedName": "buffer-equal-constant-time",
+    "rawSpec": "1.0.1",
+    "saveSpec": null,
+    "fetchSpec": "1.0.1"
+  },
+  "_requiredBy": [
+    "/jwa"
+  ],
+  "_resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
+  "_shasum": "f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819",
+  "_spec": "buffer-equal-constant-time@1.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\jwa",
+  "author": {
+    "name": "GoInstant Inc., a salesforce.com company"
+  },
+  "bugs": {
+    "url": "https://github.com/goinstant/buffer-equal-constant-time/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Constant-time comparison of Buffers",
+  "devDependencies": {
+    "mocha": "~1.15.1"
+  },
+  "homepage": "https://github.com/goinstant/buffer-equal-constant-time#readme",
+  "keywords": [
+    "buffer",
+    "equal",
+    "constant-time",
+    "crypto"
+  ],
+  "license": "BSD-3-Clause",
+  "main": "index.js",
+  "name": "buffer-equal-constant-time",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/goinstant/buffer-equal-constant-time.git"
+  },
+  "scripts": {
+    "test": "mocha test.js"
+  },
+  "version": "1.0.1"
+}

+ 42 - 0
server/node_modules/buffer-equal-constant-time/test.js

@@ -0,0 +1,42 @@
+/*jshint node:true */
+'use strict';
+
+var bufferEq = require('./index');
+var assert = require('assert');
+
+describe('buffer-equal-constant-time', function() {
+  var a = new Buffer('asdfasdf123456');
+  var b = new Buffer('asdfasdf123456');
+  var c = new Buffer('asdfasdf');
+
+  describe('bufferEq', function() {
+    it('says a == b', function() {
+      assert.strictEqual(bufferEq(a, b), true);
+    });
+
+    it('says a != c', function() {
+      assert.strictEqual(bufferEq(a, c), false);
+    });
+  });
+
+  describe('install/restore', function() {
+    before(function() {
+      bufferEq.install();
+    });
+    after(function() {
+      bufferEq.restore();
+    });
+
+    it('installed an .equal method', function() {
+      var SlowBuffer = require('buffer').SlowBuffer;
+      assert.ok(Buffer.prototype.equal);
+      assert.ok(SlowBuffer.prototype.equal);
+    });
+
+    it('infected existing Buffers', function() {
+      assert.strictEqual(a.equal(b), true);
+      assert.strictEqual(a.equal(c), false);
+    });
+  });
+
+});

+ 127 - 0
server/node_modules/buffer/package.json

@@ -0,0 +1,127 @@
+{
+  "_from": "buffer@^5.6.0",
+  "_id": "buffer@5.7.1",
+  "_inBundle": false,
+  "_integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
+  "_location": "/buffer",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "buffer@^5.6.0",
+    "name": "buffer",
+    "escapedName": "buffer",
+    "rawSpec": "^5.6.0",
+    "saveSpec": null,
+    "fetchSpec": "^5.6.0"
+  },
+  "_requiredBy": [
+    "/bson"
+  ],
+  "_resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
+  "_shasum": "ba62e7c13133053582197160851a8f648e99eed0",
+  "_spec": "buffer@^5.6.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\bson",
+  "author": {
+    "name": "Feross Aboukhadijeh",
+    "email": "feross@feross.org",
+    "url": "https://feross.org"
+  },
+  "bugs": {
+    "url": "https://github.com/feross/buffer/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Romain Beauxis",
+      "email": "toots@rastageeks.org"
+    },
+    {
+      "name": "James Halliday",
+      "email": "mail@substack.net"
+    }
+  ],
+  "dependencies": {
+    "base64-js": "^1.3.1",
+    "ieee754": "^1.1.13"
+  },
+  "deprecated": false,
+  "description": "Node.js Buffer API, for the browser",
+  "devDependencies": {
+    "airtap": "^3.0.0",
+    "benchmark": "^2.1.4",
+    "browserify": "^17.0.0",
+    "concat-stream": "^2.0.0",
+    "hyperquest": "^2.1.3",
+    "is-buffer": "^2.0.4",
+    "is-nan": "^1.3.0",
+    "split": "^1.0.1",
+    "standard": "*",
+    "tape": "^5.0.1",
+    "through2": "^4.0.2",
+    "uglify-js": "^3.11.3"
+  },
+  "funding": [
+    {
+      "type": "github",
+      "url": "https://github.com/sponsors/feross"
+    },
+    {
+      "type": "patreon",
+      "url": "https://www.patreon.com/feross"
+    },
+    {
+      "type": "consulting",
+      "url": "https://feross.org/support"
+    }
+  ],
+  "homepage": "https://github.com/feross/buffer",
+  "jspm": {
+    "map": {
+      "./index.js": {
+        "node": "@node/buffer"
+      }
+    }
+  },
+  "keywords": [
+    "arraybuffer",
+    "browser",
+    "browserify",
+    "buffer",
+    "compatible",
+    "dataview",
+    "uint8array"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "buffer",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/feross/buffer.git"
+  },
+  "scripts": {
+    "perf": "browserify --debug perf/bracket-notation.js > perf/bundle.js && open perf/index.html",
+    "perf-node": "node perf/bracket-notation.js && node perf/concat.js && node perf/copy-big.js && node perf/copy.js && node perf/new-big.js && node perf/new.js && node perf/readDoubleBE.js && node perf/readFloatBE.js && node perf/readUInt32LE.js && node perf/slice.js && node perf/writeFloatBE.js",
+    "size": "browserify -r ./ | uglifyjs -c -m | gzip | wc -c",
+    "test": "standard && node ./bin/test.js",
+    "test-browser-es5": "airtap -- test/*.js",
+    "test-browser-es5-local": "airtap --local -- test/*.js",
+    "test-browser-es6": "airtap -- test/*.js test/node/*.js",
+    "test-browser-es6-local": "airtap --local -- test/*.js test/node/*.js",
+    "test-node": "tape test/*.js test/node/*.js",
+    "update-authors": "./bin/update-authors.sh"
+  },
+  "standard": {
+    "ignore": [
+      "test/node/**/*.js",
+      "test/common.js",
+      "test/_polyfill.js",
+      "perf/**/*.js"
+    ],
+    "globals": [
+      "SharedArrayBuffer"
+    ]
+  },
+  "types": "index.d.ts",
+  "version": "5.7.1"
+}

+ 85 - 0
server/node_modules/bytes/package.json

@@ -0,0 +1,85 @@
+{
+  "_from": "bytes@3.1.1",
+  "_id": "bytes@3.1.1",
+  "_inBundle": false,
+  "_integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==",
+  "_location": "/bytes",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "bytes@3.1.1",
+    "name": "bytes",
+    "escapedName": "bytes",
+    "rawSpec": "3.1.1",
+    "saveSpec": null,
+    "fetchSpec": "3.1.1"
+  },
+  "_requiredBy": [
+    "/body-parser",
+    "/raw-body"
+  ],
+  "_resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz",
+  "_shasum": "3f018291cb4cbad9accb6e6970bca9c8889e879a",
+  "_spec": "bytes@3.1.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\body-parser",
+  "author": {
+    "name": "TJ Holowaychuk",
+    "email": "tj@vision-media.ca",
+    "url": "http://tjholowaychuk.com"
+  },
+  "bugs": {
+    "url": "https://github.com/visionmedia/bytes.js/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Jed Watson",
+      "email": "jed.watson@me.com"
+    },
+    {
+      "name": "Théo FIDRY",
+      "email": "theo.fidry@gmail.com"
+    }
+  ],
+  "deprecated": false,
+  "description": "Utility to parse a string bytes to bytes and vice-versa",
+  "devDependencies": {
+    "eslint": "7.32.0",
+    "eslint-plugin-markdown": "2.2.1",
+    "mocha": "9.1.3",
+    "nyc": "15.1.0"
+  },
+  "engines": {
+    "node": ">= 0.8"
+  },
+  "files": [
+    "History.md",
+    "LICENSE",
+    "Readme.md",
+    "index.js"
+  ],
+  "homepage": "https://github.com/visionmedia/bytes.js#readme",
+  "keywords": [
+    "byte",
+    "bytes",
+    "utility",
+    "parse",
+    "parser",
+    "convert",
+    "converter"
+  ],
+  "license": "MIT",
+  "name": "bytes",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/visionmedia/bytes.js.git"
+  },
+  "scripts": {
+    "lint": "eslint .",
+    "test": "mocha --check-leaks --reporter spec",
+    "test-ci": "nyc --reporter=lcov --reporter=text npm test",
+    "test-cov": "nyc --reporter=html --reporter=text npm test"
+  },
+  "version": "3.1.1"
+}

+ 82 - 0
server/node_modules/cacheable-request/node_modules/get-stream/package.json

@@ -0,0 +1,82 @@
+{
+  "_from": "get-stream@^5.1.0",
+  "_id": "get-stream@5.2.0",
+  "_inBundle": false,
+  "_integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+  "_location": "/cacheable-request/get-stream",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "get-stream@^5.1.0",
+    "name": "get-stream",
+    "escapedName": "get-stream",
+    "rawSpec": "^5.1.0",
+    "saveSpec": null,
+    "fetchSpec": "^5.1.0"
+  },
+  "_requiredBy": [
+    "/cacheable-request"
+  ],
+  "_resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+  "_shasum": "4966a1795ee5ace65e706c4b7beb71257d6e22d3",
+  "_spec": "get-stream@^5.1.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\cacheable-request",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "https://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/get-stream/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "pump": "^3.0.0"
+  },
+  "deprecated": false,
+  "description": "Get a stream as a string, buffer, or array",
+  "devDependencies": {
+    "@types/node": "^12.0.7",
+    "ava": "^2.0.0",
+    "into-stream": "^5.0.0",
+    "tsd": "^0.7.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts",
+    "buffer-stream.js"
+  ],
+  "funding": "https://github.com/sponsors/sindresorhus",
+  "homepage": "https://github.com/sindresorhus/get-stream#readme",
+  "keywords": [
+    "get",
+    "stream",
+    "promise",
+    "concat",
+    "string",
+    "text",
+    "buffer",
+    "read",
+    "data",
+    "consume",
+    "readable",
+    "readablestream",
+    "array",
+    "object"
+  ],
+  "license": "MIT",
+  "name": "get-stream",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/get-stream.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "5.2.0"
+}

+ 70 - 0
server/node_modules/cacheable-request/node_modules/lowercase-keys/package.json

@@ -0,0 +1,70 @@
+{
+  "_from": "lowercase-keys@^2.0.0",
+  "_id": "lowercase-keys@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==",
+  "_location": "/cacheable-request/lowercase-keys",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "lowercase-keys@^2.0.0",
+    "name": "lowercase-keys",
+    "escapedName": "lowercase-keys",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/cacheable-request"
+  ],
+  "_resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
+  "_shasum": "2603e78b7b4b0006cbca2fbcc8a3202558ac9479",
+  "_spec": "lowercase-keys@^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\cacheable-request",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/lowercase-keys/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Lowercase the keys of an object",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "tsd": "^0.7.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "homepage": "https://github.com/sindresorhus/lowercase-keys#readme",
+  "keywords": [
+    "object",
+    "assign",
+    "extend",
+    "properties",
+    "lowercase",
+    "lower-case",
+    "case",
+    "keys",
+    "key"
+  ],
+  "license": "MIT",
+  "name": "lowercase-keys",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/lowercase-keys.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "2.0.0"
+}

+ 94 - 0
server/node_modules/cacheable-request/package.json

@@ -0,0 +1,94 @@
+{
+  "_from": "cacheable-request@^6.0.0",
+  "_id": "cacheable-request@6.1.0",
+  "_inBundle": false,
+  "_integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==",
+  "_location": "/cacheable-request",
+  "_phantomChildren": {
+    "pump": "3.0.0"
+  },
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "cacheable-request@^6.0.0",
+    "name": "cacheable-request",
+    "escapedName": "cacheable-request",
+    "rawSpec": "^6.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^6.0.0"
+  },
+  "_requiredBy": [
+    "/got"
+  ],
+  "_resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz",
+  "_shasum": "20ffb8bd162ba4be11e9567d823db651052ca912",
+  "_spec": "cacheable-request@^6.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\got",
+  "author": {
+    "name": "Luke Childs",
+    "email": "lukechilds123@gmail.com",
+    "url": "http://lukechilds.co.uk"
+  },
+  "bugs": {
+    "url": "https://github.com/lukechilds/cacheable-request/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "clone-response": "^1.0.2",
+    "get-stream": "^5.1.0",
+    "http-cache-semantics": "^4.0.0",
+    "keyv": "^3.0.0",
+    "lowercase-keys": "^2.0.0",
+    "normalize-url": "^4.1.0",
+    "responselike": "^1.0.2"
+  },
+  "deprecated": false,
+  "description": "Wrap native HTTP requests with RFC compliant cache support",
+  "devDependencies": {
+    "@keyv/sqlite": "^2.0.0",
+    "ava": "^1.1.0",
+    "coveralls": "^3.0.0",
+    "create-test-server": "3.0.0",
+    "delay": "^4.0.0",
+    "eslint-config-xo-lukechilds": "^1.0.0",
+    "nyc": "^14.1.1",
+    "pify": "^4.0.0",
+    "sqlite3": "^4.0.2",
+    "this": "^1.0.2",
+    "xo": "^0.23.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "src"
+  ],
+  "homepage": "https://github.com/lukechilds/cacheable-request#readme",
+  "keywords": [
+    "HTTP",
+    "HTTPS",
+    "cache",
+    "caching",
+    "layer",
+    "cacheable",
+    "RFC 7234",
+    "RFC",
+    "7234",
+    "compliant"
+  ],
+  "license": "MIT",
+  "main": "src/index.js",
+  "name": "cacheable-request",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/lukechilds/cacheable-request.git"
+  },
+  "scripts": {
+    "coverage": "nyc report --reporter=text-lcov | coveralls",
+    "test": "xo && nyc ava"
+  },
+  "version": "6.1.0",
+  "xo": {
+    "extends": "xo-lukechilds"
+  }
+}

+ 76 - 0
server/node_modules/camelcase/package.json

@@ -0,0 +1,76 @@
+{
+  "_from": "camelcase@^6.2.0",
+  "_id": "camelcase@6.3.0",
+  "_inBundle": false,
+  "_integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+  "_location": "/camelcase",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "camelcase@^6.2.0",
+    "name": "camelcase",
+    "escapedName": "camelcase",
+    "rawSpec": "^6.2.0",
+    "saveSpec": null,
+    "fetchSpec": "^6.2.0"
+  },
+  "_requiredBy": [
+    "/boxen"
+  ],
+  "_resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+  "_shasum": "5685b95eb209ac9c0c177467778c9c84df58ba9a",
+  "_spec": "camelcase@^6.2.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\boxen",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "https://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/camelcase/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Convert a dash/dot/underscore/space separated string to camelCase or PascalCase: `foo-bar` → `fooBar`",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "tsd": "^0.11.0",
+    "xo": "^0.28.3"
+  },
+  "engines": {
+    "node": ">=10"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "funding": "https://github.com/sponsors/sindresorhus",
+  "homepage": "https://github.com/sindresorhus/camelcase#readme",
+  "keywords": [
+    "camelcase",
+    "camel-case",
+    "camel",
+    "case",
+    "dash",
+    "hyphen",
+    "dot",
+    "underscore",
+    "separator",
+    "string",
+    "text",
+    "convert",
+    "pascalcase",
+    "pascal-case"
+  ],
+  "license": "MIT",
+  "name": "camelcase",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/camelcase.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "6.3.0"
+}

+ 78 - 0
server/node_modules/chalk/node_modules/has-flag/package.json

@@ -0,0 +1,78 @@
+{
+  "_from": "has-flag@^4.0.0",
+  "_id": "has-flag@4.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+  "_location": "/chalk/has-flag",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "has-flag@^4.0.0",
+    "name": "has-flag",
+    "escapedName": "has-flag",
+    "rawSpec": "^4.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^4.0.0"
+  },
+  "_requiredBy": [
+    "/chalk/supports-color"
+  ],
+  "_resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+  "_shasum": "944771fd9c81c81265c4d6941860da06bb59479b",
+  "_spec": "has-flag@^4.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\chalk\\node_modules\\supports-color",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/has-flag/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Check if argv has a specific flag",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "tsd": "^0.7.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "homepage": "https://github.com/sindresorhus/has-flag#readme",
+  "keywords": [
+    "has",
+    "check",
+    "detect",
+    "contains",
+    "find",
+    "flag",
+    "cli",
+    "command-line",
+    "argv",
+    "process",
+    "arg",
+    "args",
+    "argument",
+    "arguments",
+    "getopt",
+    "minimist",
+    "optimist"
+  ],
+  "license": "MIT",
+  "name": "has-flag",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/has-flag.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "4.0.0"
+}

+ 85 - 0
server/node_modules/chalk/node_modules/supports-color/package.json

@@ -0,0 +1,85 @@
+{
+  "_from": "supports-color@^7.1.0",
+  "_id": "supports-color@7.2.0",
+  "_inBundle": false,
+  "_integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+  "_location": "/chalk/supports-color",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "supports-color@^7.1.0",
+    "name": "supports-color",
+    "escapedName": "supports-color",
+    "rawSpec": "^7.1.0",
+    "saveSpec": null,
+    "fetchSpec": "^7.1.0"
+  },
+  "_requiredBy": [
+    "/chalk"
+  ],
+  "_resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+  "_shasum": "1b7dcdcb32b8138801b3e478ba6a51caa89648da",
+  "_spec": "supports-color@^7.1.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\chalk",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "browser": "browser.js",
+  "bugs": {
+    "url": "https://github.com/chalk/supports-color/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "has-flag": "^4.0.0"
+  },
+  "deprecated": false,
+  "description": "Detect whether a terminal supports color",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "import-fresh": "^3.0.0",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "browser.js"
+  ],
+  "homepage": "https://github.com/chalk/supports-color#readme",
+  "keywords": [
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "ansi",
+    "styles",
+    "tty",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "command-line",
+    "support",
+    "supports",
+    "capability",
+    "detect",
+    "truecolor",
+    "16m"
+  ],
+  "license": "MIT",
+  "name": "supports-color",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/chalk/supports-color.git"
+  },
+  "scripts": {
+    "test": "xo && ava"
+  },
+  "version": "7.2.0"
+}

+ 101 - 0
server/node_modules/chalk/package.json

@@ -0,0 +1,101 @@
+{
+  "_from": "chalk@^4.1.0",
+  "_id": "chalk@4.1.2",
+  "_inBundle": false,
+  "_integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+  "_location": "/chalk",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "chalk@^4.1.0",
+    "name": "chalk",
+    "escapedName": "chalk",
+    "rawSpec": "^4.1.0",
+    "saveSpec": null,
+    "fetchSpec": "^4.1.0"
+  },
+  "_requiredBy": [
+    "/boxen",
+    "/update-notifier"
+  ],
+  "_resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+  "_shasum": "aac4e2b7734a740867aeb16bf02aad556a1e7a01",
+  "_spec": "chalk@^4.1.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\update-notifier",
+  "bugs": {
+    "url": "https://github.com/chalk/chalk/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "ansi-styles": "^4.1.0",
+    "supports-color": "^7.1.0"
+  },
+  "deprecated": false,
+  "description": "Terminal string styling done right",
+  "devDependencies": {
+    "ava": "^2.4.0",
+    "coveralls": "^3.0.7",
+    "execa": "^4.0.0",
+    "import-fresh": "^3.1.0",
+    "matcha": "^0.7.0",
+    "nyc": "^15.0.0",
+    "resolve-from": "^5.0.0",
+    "tsd": "^0.7.4",
+    "xo": "^0.28.2"
+  },
+  "engines": {
+    "node": ">=10"
+  },
+  "files": [
+    "source",
+    "index.d.ts"
+  ],
+  "funding": "https://github.com/chalk/chalk?sponsor=1",
+  "homepage": "https://github.com/chalk/chalk#readme",
+  "keywords": [
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "string",
+    "str",
+    "ansi",
+    "style",
+    "styles",
+    "tty",
+    "formatting",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "log",
+    "logging",
+    "command-line",
+    "text"
+  ],
+  "license": "MIT",
+  "main": "source",
+  "name": "chalk",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/chalk/chalk.git"
+  },
+  "scripts": {
+    "bench": "matcha benchmark.js",
+    "test": "xo && nyc ava && tsd"
+  },
+  "version": "4.1.2",
+  "xo": {
+    "rules": {
+      "unicorn/prefer-string-slice": "off",
+      "unicorn/prefer-includes": "off",
+      "@typescript-eslint/member-ordering": "off",
+      "no-redeclare": "off",
+      "unicorn/string-content": "off",
+      "unicorn/better-regex": "off"
+    }
+  }
+}

+ 119 - 0
server/node_modules/chokidar/package.json

@@ -0,0 +1,119 @@
+{
+  "_from": "chokidar@^3.5.2",
+  "_id": "chokidar@3.5.3",
+  "_inBundle": false,
+  "_integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+  "_location": "/chokidar",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "chokidar@^3.5.2",
+    "name": "chokidar",
+    "escapedName": "chokidar",
+    "rawSpec": "^3.5.2",
+    "saveSpec": null,
+    "fetchSpec": "^3.5.2"
+  },
+  "_requiredBy": [
+    "/nodemon"
+  ],
+  "_resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
+  "_shasum": "1cf37c8707b932bd1af1ae22c0432e2acd1903bd",
+  "_spec": "chokidar@^3.5.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\nodemon",
+  "author": {
+    "name": "Paul Miller",
+    "url": "https://paulmillr.com"
+  },
+  "bugs": {
+    "url": "https://github.com/paulmillr/chokidar/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Paul Miller",
+      "url": "https://paulmillr.com"
+    },
+    {
+      "name": "Elan Shanker"
+    }
+  ],
+  "dependencies": {
+    "anymatch": "~3.1.2",
+    "braces": "~3.0.2",
+    "fsevents": "~2.3.2",
+    "glob-parent": "~5.1.2",
+    "is-binary-path": "~2.1.0",
+    "is-glob": "~4.0.1",
+    "normalize-path": "~3.0.0",
+    "readdirp": "~3.6.0"
+  },
+  "deprecated": false,
+  "description": "Minimal and efficient cross-platform file watching library",
+  "devDependencies": {
+    "@types/node": "^14",
+    "chai": "^4.3",
+    "dtslint": "^3.3.0",
+    "eslint": "^7.0.0",
+    "mocha": "^7.0.0",
+    "nyc": "^15.0.0",
+    "rimraf": "^3.0.0",
+    "sinon": "^9.0.1",
+    "sinon-chai": "^3.3.0",
+    "typescript": "~4.4.3",
+    "upath": "^1.2.0"
+  },
+  "engines": {
+    "node": ">= 8.10.0"
+  },
+  "files": [
+    "index.js",
+    "lib/*.js",
+    "types/index.d.ts"
+  ],
+  "funding": [
+    {
+      "type": "individual",
+      "url": "https://paulmillr.com/funding/"
+    }
+  ],
+  "homepage": "https://github.com/paulmillr/chokidar",
+  "keywords": [
+    "fs",
+    "watch",
+    "watchFile",
+    "watcher",
+    "watching",
+    "file",
+    "fsevents"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "chokidar",
+  "nyc": {
+    "include": [
+      "index.js",
+      "lib/*.js"
+    ],
+    "reporter": [
+      "html",
+      "text"
+    ]
+  },
+  "optionalDependencies": {
+    "fsevents": "~2.3.2"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/paulmillr/chokidar.git"
+  },
+  "scripts": {
+    "dtslint": "dtslint types",
+    "lint": "eslint --report-unused-disable-directives --ignore-path .gitignore .",
+    "mocha": "mocha --exit --timeout 90000",
+    "test": "npm run lint && npm run mocha"
+  },
+  "types": "./types/index.d.ts",
+  "version": "3.5.3"
+}

+ 65 - 0
server/node_modules/chownr/package.json

@@ -0,0 +1,65 @@
+{
+  "_from": "chownr@^2.0.0",
+  "_id": "chownr@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
+  "_location": "/chownr",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "chownr@^2.0.0",
+    "name": "chownr",
+    "escapedName": "chownr",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/tar"
+  ],
+  "_resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
+  "_shasum": "15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece",
+  "_spec": "chownr@^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\tar",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me",
+    "url": "http://blog.izs.me/"
+  },
+  "bugs": {
+    "url": "https://github.com/isaacs/chownr/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "like `chown -R`",
+  "devDependencies": {
+    "mkdirp": "0.3",
+    "rimraf": "^2.7.1",
+    "tap": "^14.10.6"
+  },
+  "engines": {
+    "node": ">=10"
+  },
+  "files": [
+    "chownr.js"
+  ],
+  "homepage": "https://github.com/isaacs/chownr#readme",
+  "license": "ISC",
+  "main": "chownr.js",
+  "name": "chownr",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/isaacs/chownr.git"
+  },
+  "scripts": {
+    "postversion": "npm publish",
+    "prepublishOnly": "git push origin --follow-tags",
+    "preversion": "npm test",
+    "test": "tap"
+  },
+  "tap": {
+    "check-coverage": true
+  },
+  "version": "2.0.0"
+}

+ 65 - 0
server/node_modules/ci-info/package.json

@@ -0,0 +1,65 @@
+{
+  "_from": "ci-info@^2.0.0",
+  "_id": "ci-info@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
+  "_location": "/ci-info",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "ci-info@^2.0.0",
+    "name": "ci-info",
+    "escapedName": "ci-info",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/is-ci"
+  ],
+  "_resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
+  "_shasum": "67a9e964be31a51e15e5010d58e6f12834002f46",
+  "_spec": "ci-info@^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\is-ci",
+  "author": {
+    "name": "Thomas Watson Steen",
+    "email": "w@tson.dk",
+    "url": "https://twitter.com/wa7son"
+  },
+  "bugs": {
+    "url": "https://github.com/watson/ci-info/issues"
+  },
+  "bundleDependencies": false,
+  "coordinates": [
+    55.778231,
+    12.593179
+  ],
+  "dependencies": {},
+  "deprecated": false,
+  "description": "Get details about the current Continuous Integration environment",
+  "devDependencies": {
+    "clear-require": "^1.0.1",
+    "standard": "^12.0.1",
+    "tape": "^4.9.1"
+  },
+  "homepage": "https://github.com/watson/ci-info",
+  "keywords": [
+    "ci",
+    "continuous",
+    "integration",
+    "test",
+    "detect"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "ci-info",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/watson/ci-info.git"
+  },
+  "scripts": {
+    "test": "standard && node test.js"
+  },
+  "version": "2.0.0"
+}

+ 153 - 0
server/node_modules/ci-info/vendors.json

@@ -0,0 +1,153 @@
+[
+  {
+    "name": "AppVeyor",
+    "constant": "APPVEYOR",
+    "env": "APPVEYOR",
+    "pr": "APPVEYOR_PULL_REQUEST_NUMBER"
+  },
+  {
+    "name": "Azure Pipelines",
+    "constant": "AZURE_PIPELINES",
+    "env": "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",
+    "pr": "SYSTEM_PULLREQUEST_PULLREQUESTID"
+  },
+  {
+    "name": "Bamboo",
+    "constant": "BAMBOO",
+    "env": "bamboo_planKey"
+  },
+  {
+    "name": "Bitbucket Pipelines",
+    "constant": "BITBUCKET",
+    "env": "BITBUCKET_COMMIT",
+    "pr": "BITBUCKET_PR_ID"
+  },
+  {
+    "name": "Bitrise",
+    "constant": "BITRISE",
+    "env": "BITRISE_IO",
+    "pr": "BITRISE_PULL_REQUEST"
+  },
+  {
+    "name": "Buddy",
+    "constant": "BUDDY",
+    "env": "BUDDY_WORKSPACE_ID",
+    "pr": "BUDDY_EXECUTION_PULL_REQUEST_ID"
+  },
+  {
+    "name": "Buildkite",
+    "constant": "BUILDKITE",
+    "env": "BUILDKITE",
+    "pr": { "env": "BUILDKITE_PULL_REQUEST", "ne": "false" }
+  },
+  {
+    "name": "CircleCI",
+    "constant": "CIRCLE",
+    "env": "CIRCLECI",
+    "pr": "CIRCLE_PULL_REQUEST"
+  },
+  {
+    "name": "Cirrus CI",
+    "constant": "CIRRUS",
+    "env": "CIRRUS_CI",
+    "pr": "CIRRUS_PR"
+  },
+  {
+    "name": "AWS CodeBuild",
+    "constant": "CODEBUILD",
+    "env": "CODEBUILD_BUILD_ARN"
+  },
+  {
+    "name": "Codeship",
+    "constant": "CODESHIP",
+    "env": { "CI_NAME": "codeship" }
+  },
+  {
+    "name": "Drone",
+    "constant": "DRONE",
+    "env": "DRONE",
+    "pr": { "DRONE_BUILD_EVENT": "pull_request" }
+  },
+  {
+    "name": "dsari",
+    "constant": "DSARI",
+    "env": "DSARI"
+  },
+  {
+    "name": "GitLab CI",
+    "constant": "GITLAB",
+    "env": "GITLAB_CI"
+  },
+  {
+    "name": "GoCD",
+    "constant": "GOCD",
+    "env": "GO_PIPELINE_LABEL"
+  },
+  {
+    "name": "Hudson",
+    "constant": "HUDSON",
+    "env": "HUDSON_URL"
+  },
+  {
+    "name": "Jenkins",
+    "constant": "JENKINS",
+    "env": ["JENKINS_URL", "BUILD_ID"],
+    "pr": { "any": ["ghprbPullId", "CHANGE_ID"] }
+  },
+  {
+    "name": "Magnum CI",
+    "constant": "MAGNUM",
+    "env": "MAGNUM"
+  },
+  {
+    "name": "Netlify CI",
+    "constant": "NETLIFY",
+    "env": "NETLIFY_BUILD_BASE",
+    "pr": { "env": "PULL_REQUEST", "ne": "false" }
+  },
+  {
+    "name": "Sail CI",
+    "constant": "SAIL",
+    "env": "SAILCI",
+    "pr": "SAIL_PULL_REQUEST_NUMBER"
+  },
+  {
+    "name": "Semaphore",
+    "constant": "SEMAPHORE",
+    "env": "SEMAPHORE",
+    "pr": "PULL_REQUEST_NUMBER"
+  },
+  {
+    "name": "Shippable",
+    "constant": "SHIPPABLE",
+    "env": "SHIPPABLE",
+    "pr": { "IS_PULL_REQUEST": "true" }
+  },
+  {
+    "name": "Solano CI",
+    "constant": "SOLANO",
+    "env": "TDDIUM",
+    "pr": "TDDIUM_PR_ID"
+  },
+  {
+    "name": "Strider CD",
+    "constant": "STRIDER",
+    "env": "STRIDER"
+  },
+  {
+    "name": "TaskCluster",
+    "constant": "TASKCLUSTER",
+    "env": ["TASK_ID", "RUN_ID"]
+  },
+  {
+    "name": "TeamCity",
+    "constant": "TEAMCITY",
+    "env": "TEAMCITY_VERSION"
+  },
+  {
+    "name": "Travis CI",
+    "constant": "TRAVIS",
+    "env": "TRAVIS",
+    "pr": { "env": "TRAVIS_PULL_REQUEST", "ne": "false" }
+  }
+]

+ 58 - 0
server/node_modules/cli-boxes/boxes.json

@@ -0,0 +1,58 @@
+{
+	"single": {
+		"topLeft": "┌",
+		"topRight": "┐",
+		"bottomRight": "┘",
+		"bottomLeft": "└",
+		"vertical": "│",
+		"horizontal": "─"
+	},
+	"double": {
+		"topLeft": "╔",
+		"topRight": "╗",
+		"bottomRight": "╝",
+		"bottomLeft": "╚",
+		"vertical": "║",
+		"horizontal": "═"
+	},
+	"round": {
+		"topLeft": "╭",
+		"topRight": "╮",
+		"bottomRight": "╯",
+		"bottomLeft": "╰",
+		"vertical": "│",
+		"horizontal": "─"
+	},
+	"bold": {
+		"topLeft": "┏",
+		"topRight": "┓",
+		"bottomRight": "┛",
+		"bottomLeft": "┗",
+		"vertical": "┃",
+		"horizontal": "━"
+	},
+	"singleDouble": {
+		"topLeft": "╓",
+		"topRight": "╖",
+		"bottomRight": "╜",
+		"bottomLeft": "╙",
+		"vertical": "║",
+		"horizontal": "─"
+	},
+	"doubleSingle": {
+		"topLeft": "╒",
+		"topRight": "╕",
+		"bottomRight": "╛",
+		"bottomLeft": "╘",
+		"vertical": "│",
+		"horizontal": "═"
+	},
+	"classic": {
+		"topLeft": "+",
+		"topRight": "+",
+		"bottomRight": "+",
+		"bottomLeft": "+",
+		"vertical": "|",
+		"horizontal": "-"
+	}
+}

+ 74 - 0
server/node_modules/cli-boxes/package.json

@@ -0,0 +1,74 @@
+{
+  "_from": "cli-boxes@^2.2.1",
+  "_id": "cli-boxes@2.2.1",
+  "_inBundle": false,
+  "_integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==",
+  "_location": "/cli-boxes",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "cli-boxes@^2.2.1",
+    "name": "cli-boxes",
+    "escapedName": "cli-boxes",
+    "rawSpec": "^2.2.1",
+    "saveSpec": null,
+    "fetchSpec": "^2.2.1"
+  },
+  "_requiredBy": [
+    "/boxen"
+  ],
+  "_resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz",
+  "_shasum": "ddd5035d25094fce220e9cab40a45840a440318f",
+  "_spec": "cli-boxes@^2.2.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\boxen",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "https://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/cli-boxes/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Boxes for use in the terminal",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "tsd": "^0.7.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=6"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts",
+    "boxes.json"
+  ],
+  "funding": "https://github.com/sponsors/sindresorhus",
+  "homepage": "https://github.com/sindresorhus/cli-boxes#readme",
+  "keywords": [
+    "cli",
+    "box",
+    "boxes",
+    "terminal",
+    "term",
+    "console",
+    "ascii",
+    "unicode",
+    "border",
+    "text",
+    "json"
+  ],
+  "license": "MIT",
+  "name": "cli-boxes",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/cli-boxes.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "2.2.1"
+}

+ 73 - 0
server/node_modules/clone-response/package.json

@@ -0,0 +1,73 @@
+{
+  "_from": "clone-response@^1.0.2",
+  "_id": "clone-response@1.0.2",
+  "_inBundle": false,
+  "_integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
+  "_location": "/clone-response",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "clone-response@^1.0.2",
+    "name": "clone-response",
+    "escapedName": "clone-response",
+    "rawSpec": "^1.0.2",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.2"
+  },
+  "_requiredBy": [
+    "/cacheable-request"
+  ],
+  "_resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
+  "_shasum": "d1dc973920314df67fbeb94223b4ee350239e96b",
+  "_spec": "clone-response@^1.0.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\cacheable-request",
+  "author": {
+    "name": "Luke Childs",
+    "email": "lukechilds123@gmail.com",
+    "url": "http://lukechilds.co.uk"
+  },
+  "bugs": {
+    "url": "https://github.com/lukechilds/clone-response/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "mimic-response": "^1.0.0"
+  },
+  "deprecated": false,
+  "description": "Clone a Node.js HTTP response stream",
+  "devDependencies": {
+    "ava": "^0.22.0",
+    "coveralls": "^2.13.1",
+    "create-test-server": "^2.0.1",
+    "eslint-config-xo-lukechilds": "^1.0.0",
+    "get-stream": "^3.0.0",
+    "nyc": "^11.0.2",
+    "pify": "^3.0.0",
+    "xo": "^0.19.0"
+  },
+  "homepage": "https://github.com/lukechilds/clone-response",
+  "keywords": [
+    "clone",
+    "duplicate",
+    "copy",
+    "response",
+    "HTTP",
+    "stream"
+  ],
+  "license": "MIT",
+  "main": "src/index.js",
+  "name": "clone-response",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/lukechilds/clone-response.git"
+  },
+  "scripts": {
+    "coverage": "nyc report --reporter=text-lcov | coveralls",
+    "test": "xo && nyc ava"
+  },
+  "version": "1.0.2",
+  "xo": {
+    "extends": "xo-lukechilds"
+  }
+}

+ 83 - 0
server/node_modules/color-convert/package.json

@@ -0,0 +1,83 @@
+{
+  "_from": "color-convert@^2.0.1",
+  "_id": "color-convert@2.0.1",
+  "_inBundle": false,
+  "_integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+  "_location": "/color-convert",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "color-convert@^2.0.1",
+    "name": "color-convert",
+    "escapedName": "color-convert",
+    "rawSpec": "^2.0.1",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.1"
+  },
+  "_requiredBy": [
+    "/ansi-styles"
+  ],
+  "_resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+  "_shasum": "72d3a68d598c9bdb3af2ad1e84f21d896abd4de3",
+  "_spec": "color-convert@^2.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\ansi-styles",
+  "author": {
+    "name": "Heather Arthur",
+    "email": "fayearthur@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/Qix-/color-convert/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "color-name": "~1.1.4"
+  },
+  "deprecated": false,
+  "description": "Plain color conversion functions",
+  "devDependencies": {
+    "chalk": "^2.4.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=7.0.0"
+  },
+  "files": [
+    "index.js",
+    "conversions.js",
+    "route.js"
+  ],
+  "homepage": "https://github.com/Qix-/color-convert#readme",
+  "keywords": [
+    "color",
+    "colour",
+    "convert",
+    "converter",
+    "conversion",
+    "rgb",
+    "hsl",
+    "hsv",
+    "hwb",
+    "cmyk",
+    "ansi",
+    "ansi16"
+  ],
+  "license": "MIT",
+  "name": "color-convert",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/Qix-/color-convert.git"
+  },
+  "scripts": {
+    "pretest": "xo",
+    "test": "node test/basic.js"
+  },
+  "version": "2.0.1",
+  "xo": {
+    "rules": {
+      "default-case": 0,
+      "no-inline-comments": 0,
+      "operator-linebreak": 0
+    }
+  }
+}

+ 56 - 0
server/node_modules/color-name/package.json

@@ -0,0 +1,56 @@
+{
+  "_from": "color-name@~1.1.4",
+  "_id": "color-name@1.1.4",
+  "_inBundle": false,
+  "_integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+  "_location": "/color-name",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "color-name@~1.1.4",
+    "name": "color-name",
+    "escapedName": "color-name",
+    "rawSpec": "~1.1.4",
+    "saveSpec": null,
+    "fetchSpec": "~1.1.4"
+  },
+  "_requiredBy": [
+    "/color-convert"
+  ],
+  "_resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+  "_shasum": "c2a09a87acbde69543de6f63fa3995c826c536a2",
+  "_spec": "color-name@~1.1.4",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\color-convert",
+  "author": {
+    "name": "DY",
+    "email": "dfcreative@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/colorjs/color-name/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "A list of color names and its values",
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/colorjs/color-name",
+  "keywords": [
+    "color-name",
+    "color",
+    "color-keyword",
+    "keyword"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "color-name",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/colorjs/color-name.git"
+  },
+  "scripts": {
+    "test": "node test.js"
+  },
+  "version": "1.1.4"
+}

+ 71 - 0
server/node_modules/color-support/package.json

@@ -0,0 +1,71 @@
+{
+  "_from": "color-support@^1.1.2",
+  "_id": "color-support@1.1.3",
+  "_inBundle": false,
+  "_integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
+  "_location": "/color-support",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "color-support@^1.1.2",
+    "name": "color-support",
+    "escapedName": "color-support",
+    "rawSpec": "^1.1.2",
+    "saveSpec": null,
+    "fetchSpec": "^1.1.2"
+  },
+  "_requiredBy": [
+    "/gauge"
+  ],
+  "_resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
+  "_shasum": "93834379a1cc9a0c61f82f52f0d04322251bd5a2",
+  "_spec": "color-support@^1.1.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\gauge",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me",
+    "url": "http://blog.izs.me/"
+  },
+  "bin": {
+    "color-support": "bin.js"
+  },
+  "browser": "browser.js",
+  "bugs": {
+    "url": "https://github.com/isaacs/color-support/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "A module which will endeavor to guess your terminal's level of color support.",
+  "devDependencies": {
+    "tap": "^10.3.3"
+  },
+  "files": [
+    "browser.js",
+    "index.js",
+    "bin.js"
+  ],
+  "homepage": "https://github.com/isaacs/color-support#readme",
+  "keywords": [
+    "terminal",
+    "color",
+    "support",
+    "xterm",
+    "truecolor",
+    "256"
+  ],
+  "license": "ISC",
+  "main": "index.js",
+  "name": "color-support",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/isaacs/color-support.git"
+  },
+  "scripts": {
+    "postpublish": "git push origin --all; git push origin --tags",
+    "postversion": "npm publish",
+    "preversion": "npm test",
+    "test": "tap test/*.js --100 -J"
+  },
+  "version": "1.1.3"
+}

+ 175 - 0
server/node_modules/component-emitter/index.js

@@ -0,0 +1,175 @@
+
+/**
+ * Expose `Emitter`.
+ */
+
+if (typeof module !== 'undefined') {
+  module.exports = Emitter;
+}
+
+/**
+ * Initialize a new `Emitter`.
+ *
+ * @api public
+ */
+
+function Emitter(obj) {
+  if (obj) return mixin(obj);
+};
+
+/**
+ * Mixin the emitter properties.
+ *
+ * @param {Object} obj
+ * @return {Object}
+ * @api private
+ */
+
+function mixin(obj) {
+  for (var key in Emitter.prototype) {
+    obj[key] = Emitter.prototype[key];
+  }
+  return obj;
+}
+
+/**
+ * Listen on the given `event` with `fn`.
+ *
+ * @param {String} event
+ * @param {Function} fn
+ * @return {Emitter}
+ * @api public
+ */
+
+Emitter.prototype.on =
+Emitter.prototype.addEventListener = function(event, fn){
+  this._callbacks = this._callbacks || {};
+  (this._callbacks['$' + event] = this._callbacks['$' + event] || [])
+    .push(fn);
+  return this;
+};
+
+/**
+ * Adds an `event` listener that will be invoked a single
+ * time then automatically removed.
+ *
+ * @param {String} event
+ * @param {Function} fn
+ * @return {Emitter}
+ * @api public
+ */
+
+Emitter.prototype.once = function(event, fn){
+  function on() {
+    this.off(event, on);
+    fn.apply(this, arguments);
+  }
+
+  on.fn = fn;
+  this.on(event, on);
+  return this;
+};
+
+/**
+ * Remove the given callback for `event` or all
+ * registered callbacks.
+ *
+ * @param {String} event
+ * @param {Function} fn
+ * @return {Emitter}
+ * @api public
+ */
+
+Emitter.prototype.off =
+Emitter.prototype.removeListener =
+Emitter.prototype.removeAllListeners =
+Emitter.prototype.removeEventListener = function(event, fn){
+  this._callbacks = this._callbacks || {};
+
+  // all
+  if (0 == arguments.length) {
+    this._callbacks = {};
+    return this;
+  }
+
+  // specific event
+  var callbacks = this._callbacks['$' + event];
+  if (!callbacks) return this;
+
+  // remove all handlers
+  if (1 == arguments.length) {
+    delete this._callbacks['$' + event];
+    return this;
+  }
+
+  // remove specific handler
+  var cb;
+  for (var i = 0; i < callbacks.length; i++) {
+    cb = callbacks[i];
+    if (cb === fn || cb.fn === fn) {
+      callbacks.splice(i, 1);
+      break;
+    }
+  }
+
+  // Remove event specific arrays for event types that no
+  // one is subscribed for to avoid memory leak.
+  if (callbacks.length === 0) {
+    delete this._callbacks['$' + event];
+  }
+
+  return this;
+};
+
+/**
+ * Emit `event` with the given args.
+ *
+ * @param {String} event
+ * @param {Mixed} ...
+ * @return {Emitter}
+ */
+
+Emitter.prototype.emit = function(event){
+  this._callbacks = this._callbacks || {};
+
+  var args = new Array(arguments.length - 1)
+    , callbacks = this._callbacks['$' + event];
+
+  for (var i = 1; i < arguments.length; i++) {
+    args[i - 1] = arguments[i];
+  }
+
+  if (callbacks) {
+    callbacks = callbacks.slice(0);
+    for (var i = 0, len = callbacks.length; i < len; ++i) {
+      callbacks[i].apply(this, args);
+    }
+  }
+
+  return this;
+};
+
+/**
+ * Return array of callbacks for `event`.
+ *
+ * @param {String} event
+ * @return {Array}
+ * @api public
+ */
+
+Emitter.prototype.listeners = function(event){
+  this._callbacks = this._callbacks || {};
+  return this._callbacks['$' + event] || [];
+};
+
+/**
+ * Check if this emitter has `event` handlers.
+ *
+ * @param {String} event
+ * @return {Boolean}
+ * @api public
+ */
+
+Emitter.prototype.hasListeners = function(event){
+  return !! this.listeners(event).length;
+};

+ 56 - 0
server/node_modules/component-emitter/package.json

@@ -0,0 +1,56 @@
+{
+  "_from": "component-emitter@~1.3.0",
+  "_id": "component-emitter@1.3.0",
+  "_inBundle": false,
+  "_integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
+  "_location": "/component-emitter",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "component-emitter@~1.3.0",
+    "name": "component-emitter",
+    "escapedName": "component-emitter",
+    "rawSpec": "~1.3.0",
+    "saveSpec": null,
+    "fetchSpec": "~1.3.0"
+  },
+  "_requiredBy": [
+    "/socket.io-parser"
+  ],
+  "_resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
+  "_shasum": "16e4070fba8ae29b679f2215853ee181ab2eabc0",
+  "_spec": "component-emitter@~1.3.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\socket.io-parser",
+  "bugs": {
+    "url": "https://github.com/component/emitter/issues"
+  },
+  "bundleDependencies": false,
+  "component": {
+    "scripts": {
+      "emitter/index.js": "index.js"
+    }
+  },
+  "deprecated": false,
+  "description": "Event emitter",
+  "devDependencies": {
+    "mocha": "*",
+    "should": "*"
+  },
+  "files": [
+    "index.js",
+    "LICENSE"
+  ],
+  "homepage": "https://github.com/component/emitter#readme",
+  "license": "MIT",
+  "main": "index.js",
+  "name": "component-emitter",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/component/emitter.git"
+  },
+  "scripts": {
+    "test": "make test"
+  },
+  "version": "1.3.0"
+}

+ 88 - 0
server/node_modules/concat-map/package.json

@@ -0,0 +1,88 @@
+{
+  "_from": "concat-map@0.0.1",
+  "_id": "concat-map@0.0.1",
+  "_inBundle": false,
+  "_integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+  "_location": "/concat-map",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "concat-map@0.0.1",
+    "name": "concat-map",
+    "escapedName": "concat-map",
+    "rawSpec": "0.0.1",
+    "saveSpec": null,
+    "fetchSpec": "0.0.1"
+  },
+  "_requiredBy": [
+    "/brace-expansion"
+  ],
+  "_resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+  "_shasum": "d8a96bd77fd68df7793a73036a3ba0d5405d477b",
+  "_spec": "concat-map@0.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\brace-expansion",
+  "author": {
+    "name": "James Halliday",
+    "email": "mail@substack.net",
+    "url": "http://substack.net"
+  },
+  "bugs": {
+    "url": "https://github.com/substack/node-concat-map/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "concatenative mapdashery",
+  "devDependencies": {
+    "tape": "~2.4.0"
+  },
+  "directories": {
+    "example": "example",
+    "test": "test"
+  },
+  "homepage": "https://github.com/substack/node-concat-map#readme",
+  "keywords": [
+    "concat",
+    "concatMap",
+    "map",
+    "functional",
+    "higher-order"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "concat-map",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/substack/node-concat-map.git"
+  },
+  "scripts": {
+    "test": "tape test/*.js"
+  },
+  "testling": {
+    "files": "test/*.js",
+    "browsers": {
+      "ie": [
+        6,
+        7,
+        8,
+        9
+      ],
+      "ff": [
+        3.5,
+        10,
+        15
+      ],
+      "chrome": [
+        10,
+        22
+      ],
+      "safari": [
+        5.1
+      ],
+      "opera": [
+        12
+      ]
+    }
+  },
+  "version": "0.0.1"
+}

+ 78 - 0
server/node_modules/configstore/package.json

@@ -0,0 +1,78 @@
+{
+  "_from": "configstore@^5.0.1",
+  "_id": "configstore@5.0.1",
+  "_inBundle": false,
+  "_integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==",
+  "_location": "/configstore",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "configstore@^5.0.1",
+    "name": "configstore",
+    "escapedName": "configstore",
+    "rawSpec": "^5.0.1",
+    "saveSpec": null,
+    "fetchSpec": "^5.0.1"
+  },
+  "_requiredBy": [
+    "/update-notifier"
+  ],
+  "_resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz",
+  "_shasum": "d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96",
+  "_spec": "configstore@^5.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\update-notifier",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/yeoman/configstore/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "dot-prop": "^5.2.0",
+    "graceful-fs": "^4.1.2",
+    "make-dir": "^3.0.0",
+    "unique-string": "^2.0.0",
+    "write-file-atomic": "^3.0.0",
+    "xdg-basedir": "^4.0.0"
+  },
+  "deprecated": false,
+  "description": "Easily load and save config without having to think about where and how",
+  "devDependencies": {
+    "ava": "^2.1.0",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/yeoman/configstore#readme",
+  "keywords": [
+    "config",
+    "store",
+    "storage",
+    "configuration",
+    "settings",
+    "preferences",
+    "json",
+    "data",
+    "persist",
+    "persistent",
+    "save"
+  ],
+  "license": "BSD-2-Clause",
+  "name": "configstore",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/yeoman/configstore.git"
+  },
+  "scripts": {
+    "test": "xo && ava"
+  },
+  "version": "5.0.1"
+}

+ 61 - 0
server/node_modules/console-control-strings/package.json

@@ -0,0 +1,61 @@
+{
+  "_from": "console-control-strings@^1.1.0",
+  "_id": "console-control-strings@1.1.0",
+  "_inBundle": false,
+  "_integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
+  "_location": "/console-control-strings",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "console-control-strings@^1.1.0",
+    "name": "console-control-strings",
+    "escapedName": "console-control-strings",
+    "rawSpec": "^1.1.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.1.0"
+  },
+  "_requiredBy": [
+    "/gauge",
+    "/npmlog"
+  ],
+  "_resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
+  "_shasum": "3d7cf4464db6446ea644bf4b39507f9851008e8e",
+  "_spec": "console-control-strings@^1.1.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\npmlog",
+  "author": {
+    "name": "Rebecca Turner",
+    "email": "me@re-becca.org",
+    "url": "http://re-becca.org/"
+  },
+  "bugs": {
+    "url": "https://github.com/iarna/console-control-strings/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "A library of cross-platform tested terminal/console command strings for doing things like color and cursor positioning.  This is a subset of both ansi and vt100.  All control codes included work on both Windows & Unix-like OSes, except where noted.",
+  "devDependencies": {
+    "standard": "^7.1.2",
+    "tap": "^5.7.2"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "files": [
+    "LICENSE",
+    "index.js"
+  ],
+  "homepage": "https://github.com/iarna/console-control-strings#readme",
+  "keywords": [],
+  "license": "ISC",
+  "main": "index.js",
+  "name": "console-control-strings",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/iarna/console-control-strings.git"
+  },
+  "scripts": {
+    "test": "standard && tap test/*.js"
+  },
+  "version": "1.1.0"
+}

+ 79 - 0
server/node_modules/content-disposition/package.json

@@ -0,0 +1,79 @@
+{
+  "_from": "content-disposition@0.5.4",
+  "_id": "content-disposition@0.5.4",
+  "_inBundle": false,
+  "_integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
+  "_location": "/content-disposition",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "content-disposition@0.5.4",
+    "name": "content-disposition",
+    "escapedName": "content-disposition",
+    "rawSpec": "0.5.4",
+    "saveSpec": null,
+    "fetchSpec": "0.5.4"
+  },
+  "_requiredBy": [
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+  "_shasum": "8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe",
+  "_spec": "content-disposition@0.5.4",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "Douglas Christopher Wilson",
+    "email": "doug@somethingdoug.com"
+  },
+  "bugs": {
+    "url": "https://github.com/jshttp/content-disposition/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "safe-buffer": "5.2.1"
+  },
+  "deprecated": false,
+  "description": "Create and parse Content-Disposition header",
+  "devDependencies": {
+    "deep-equal": "1.0.1",
+    "eslint": "7.32.0",
+    "eslint-config-standard": "13.0.1",
+    "eslint-plugin-import": "2.25.3",
+    "eslint-plugin-markdown": "2.2.1",
+    "eslint-plugin-node": "11.1.0",
+    "eslint-plugin-promise": "5.2.0",
+    "eslint-plugin-standard": "4.1.0",
+    "istanbul": "0.4.5",
+    "mocha": "9.1.3"
+  },
+  "engines": {
+    "node": ">= 0.6"
+  },
+  "files": [
+    "LICENSE",
+    "HISTORY.md",
+    "README.md",
+    "index.js"
+  ],
+  "homepage": "https://github.com/jshttp/content-disposition#readme",
+  "keywords": [
+    "content-disposition",
+    "http",
+    "rfc6266",
+    "res"
+  ],
+  "license": "MIT",
+  "name": "content-disposition",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jshttp/content-disposition.git"
+  },
+  "scripts": {
+    "lint": "eslint .",
+    "test": "mocha --reporter spec --bail --check-leaks test/",
+    "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/",
+    "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/"
+  },
+  "version": "0.5.4"
+}

+ 76 - 0
server/node_modules/content-type/package.json

@@ -0,0 +1,76 @@
+{
+  "_from": "content-type@~1.0.4",
+  "_id": "content-type@1.0.4",
+  "_inBundle": false,
+  "_integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
+  "_location": "/content-type",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "content-type@~1.0.4",
+    "name": "content-type",
+    "escapedName": "content-type",
+    "rawSpec": "~1.0.4",
+    "saveSpec": null,
+    "fetchSpec": "~1.0.4"
+  },
+  "_requiredBy": [
+    "/body-parser",
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
+  "_shasum": "e138cc75e040c727b1966fe5e5f8c9aee256fe3b",
+  "_spec": "content-type@~1.0.4",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "Douglas Christopher Wilson",
+    "email": "doug@somethingdoug.com"
+  },
+  "bugs": {
+    "url": "https://github.com/jshttp/content-type/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Create and parse HTTP Content-Type header",
+  "devDependencies": {
+    "eslint": "3.19.0",
+    "eslint-config-standard": "10.2.1",
+    "eslint-plugin-import": "2.7.0",
+    "eslint-plugin-node": "5.1.1",
+    "eslint-plugin-promise": "3.5.0",
+    "eslint-plugin-standard": "3.0.1",
+    "istanbul": "0.4.5",
+    "mocha": "~1.21.5"
+  },
+  "engines": {
+    "node": ">= 0.6"
+  },
+  "files": [
+    "LICENSE",
+    "HISTORY.md",
+    "README.md",
+    "index.js"
+  ],
+  "homepage": "https://github.com/jshttp/content-type#readme",
+  "keywords": [
+    "content-type",
+    "http",
+    "req",
+    "res",
+    "rfc7231"
+  ],
+  "license": "MIT",
+  "name": "content-type",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jshttp/content-type.git"
+  },
+  "scripts": {
+    "lint": "eslint .",
+    "test": "mocha --reporter spec --check-leaks --bail test/",
+    "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/",
+    "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/"
+  },
+  "version": "1.0.4"
+}

+ 57 - 0
server/node_modules/cookie-signature/package.json

@@ -0,0 +1,57 @@
+{
+  "_from": "cookie-signature@1.0.6",
+  "_id": "cookie-signature@1.0.6",
+  "_inBundle": false,
+  "_integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
+  "_location": "/cookie-signature",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "cookie-signature@1.0.6",
+    "name": "cookie-signature",
+    "escapedName": "cookie-signature",
+    "rawSpec": "1.0.6",
+    "saveSpec": null,
+    "fetchSpec": "1.0.6"
+  },
+  "_requiredBy": [
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
+  "_shasum": "e303a882b342cc3ee8ca513a79999734dab3ae2c",
+  "_spec": "cookie-signature@1.0.6",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "TJ Holowaychuk",
+    "email": "tj@learnboost.com"
+  },
+  "bugs": {
+    "url": "https://github.com/visionmedia/node-cookie-signature/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {},
+  "deprecated": false,
+  "description": "Sign and unsign cookies",
+  "devDependencies": {
+    "mocha": "*",
+    "should": "*"
+  },
+  "homepage": "https://github.com/visionmedia/node-cookie-signature#readme",
+  "keywords": [
+    "cookie",
+    "sign",
+    "unsign"
+  ],
+  "license": "MIT",
+  "main": "index",
+  "name": "cookie-signature",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/visionmedia/node-cookie-signature.git"
+  },
+  "scripts": {
+    "test": "mocha --require should --reporter spec"
+  },
+  "version": "1.0.6"
+}

+ 78 - 0
server/node_modules/cookie/package.json

@@ -0,0 +1,78 @@
+{
+  "_from": "cookie@0.4.1",
+  "_id": "cookie@0.4.1",
+  "_inBundle": false,
+  "_integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
+  "_location": "/cookie",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "cookie@0.4.1",
+    "name": "cookie",
+    "escapedName": "cookie",
+    "rawSpec": "0.4.1",
+    "saveSpec": null,
+    "fetchSpec": "0.4.1"
+  },
+  "_requiredBy": [
+    "/express"
+  ],
+  "_resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
+  "_shasum": "afd713fe26ebd21ba95ceb61f9a8116e50a537d1",
+  "_spec": "cookie@0.4.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "Roman Shtylman",
+    "email": "shtylman@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/jshttp/cookie/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Douglas Christopher Wilson",
+      "email": "doug@somethingdoug.com"
+    }
+  ],
+  "deprecated": false,
+  "description": "HTTP server cookie parsing and serialization",
+  "devDependencies": {
+    "beautify-benchmark": "0.2.4",
+    "benchmark": "2.1.4",
+    "eslint": "6.8.0",
+    "eslint-plugin-markdown": "1.0.2",
+    "mocha": "7.1.1",
+    "nyc": "15.0.1"
+  },
+  "engines": {
+    "node": ">= 0.6"
+  },
+  "files": [
+    "HISTORY.md",
+    "LICENSE",
+    "README.md",
+    "index.js"
+  ],
+  "homepage": "https://github.com/jshttp/cookie#readme",
+  "keywords": [
+    "cookie",
+    "cookies"
+  ],
+  "license": "MIT",
+  "name": "cookie",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jshttp/cookie.git"
+  },
+  "scripts": {
+    "bench": "node benchmark/index.js",
+    "lint": "eslint --plugin markdown --ext js,md .",
+    "test": "mocha --reporter spec --bail --check-leaks --ui qunit test/",
+    "test-ci": "nyc --reporter=text npm test",
+    "test-cov": "nyc --reporter=html --reporter=text npm test",
+    "version": "node scripts/version-history.js && git add HISTORY.md"
+  },
+  "version": "0.4.1"
+}

+ 79 - 0
server/node_modules/cors/package.json

@@ -0,0 +1,79 @@
+{
+  "_from": "cors@^2.8.5",
+  "_id": "cors@2.8.5",
+  "_inBundle": false,
+  "_integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
+  "_location": "/cors",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "cors@^2.8.5",
+    "name": "cors",
+    "escapedName": "cors",
+    "rawSpec": "^2.8.5",
+    "saveSpec": null,
+    "fetchSpec": "^2.8.5"
+  },
+  "_requiredBy": [
+    "#USER",
+    "/",
+    "/engine.io"
+  ],
+  "_resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+  "_shasum": "eac11da51592dd86b9f06f6e7ac293b3df875d29",
+  "_spec": "cors@^2.8.5",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server",
+  "author": {
+    "name": "Troy Goode",
+    "email": "troygoode@gmail.com",
+    "url": "https://github.com/troygoode/"
+  },
+  "bugs": {
+    "url": "https://github.com/expressjs/cors/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "object-assign": "^4",
+    "vary": "^1"
+  },
+  "deprecated": false,
+  "description": "Node.js CORS middleware",
+  "devDependencies": {
+    "after": "0.8.2",
+    "eslint": "2.13.1",
+    "express": "4.16.3",
+    "mocha": "5.2.0",
+    "nyc": "13.1.0",
+    "supertest": "3.3.0"
+  },
+  "engines": {
+    "node": ">= 0.10"
+  },
+  "files": [
+    "lib/index.js",
+    "CONTRIBUTING.md",
+    "HISTORY.md",
+    "LICENSE",
+    "README.md"
+  ],
+  "homepage": "https://github.com/expressjs/cors#readme",
+  "keywords": [
+    "cors",
+    "express",
+    "connect",
+    "middleware"
+  ],
+  "license": "MIT",
+  "main": "./lib/index.js",
+  "name": "cors",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/expressjs/cors.git"
+  },
+  "scripts": {
+    "lint": "eslint lib test",
+    "test": "npm run lint && nyc --reporter=html --reporter=text mocha --require test/support/env"
+  },
+  "version": "2.8.5"
+}

+ 72 - 0
server/node_modules/crypto-random-string/package.json

@@ -0,0 +1,72 @@
+{
+  "_from": "crypto-random-string@^2.0.0",
+  "_id": "crypto-random-string@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==",
+  "_location": "/crypto-random-string",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "crypto-random-string@^2.0.0",
+    "name": "crypto-random-string",
+    "escapedName": "crypto-random-string",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/unique-string"
+  ],
+  "_resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
+  "_shasum": "ef2a7a966ec11083388369baa02ebead229b30d5",
+  "_spec": "crypto-random-string@^2.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\unique-string",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/crypto-random-string/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Generate a cryptographically strong random string",
+  "devDependencies": {
+    "ava": "^1.4.1",
+    "tsd": "^0.7.2",
+    "xo": "^0.24.0"
+  },
+  "engines": {
+    "node": ">=8"
+  },
+  "files": [
+    "index.js",
+    "index.d.ts"
+  ],
+  "homepage": "https://github.com/sindresorhus/crypto-random-string#readme",
+  "keywords": [
+    "random",
+    "string",
+    "text",
+    "id",
+    "identifier",
+    "slug",
+    "salt",
+    "crypto",
+    "strong",
+    "secure",
+    "hex"
+  ],
+  "license": "MIT",
+  "name": "crypto-random-string",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/crypto-random-string.git"
+  },
+  "scripts": {
+    "test": "xo && ava && tsd"
+  },
+  "version": "2.0.0"
+}

+ 19 - 0
server/node_modules/debug/component.json

@@ -0,0 +1,19 @@
+{
+  "name": "debug",
+  "repo": "visionmedia/debug",
+  "description": "small debugging utility",
+  "version": "2.6.9",
+  "keywords": [
+    "debug",
+    "log",
+    "debugger"
+  ],
+  "main": "src/browser.js",
+  "scripts": [
+    "src/browser.js",
+    "src/debug.js"
+  ],
+  "dependencies": {
+    "rauchg/ms.js": "0.7.1"
+  }
+}

+ 91 - 0
server/node_modules/debug/package.json

@@ -0,0 +1,91 @@
+{
+  "_from": "debug@2.6.9",
+  "_id": "debug@2.6.9",
+  "_inBundle": false,
+  "_integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+  "_location": "/debug",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "version",
+    "registry": true,
+    "raw": "debug@2.6.9",
+    "name": "debug",
+    "escapedName": "debug",
+    "rawSpec": "2.6.9",
+    "saveSpec": null,
+    "fetchSpec": "2.6.9"
+  },
+  "_requiredBy": [
+    "/body-parser",
+    "/express",
+    "/finalhandler",
+    "/send"
+  ],
+  "_resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+  "_shasum": "5d128515df134ff327e90a4c93f4e077a536341f",
+  "_spec": "debug@2.6.9",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "TJ Holowaychuk",
+    "email": "tj@vision-media.ca"
+  },
+  "browser": "./src/browser.js",
+  "bugs": {
+    "url": "https://github.com/visionmedia/debug/issues"
+  },
+  "bundleDependencies": false,
+  "component": {
+    "scripts": {
+      "debug/index.js": "browser.js",
+      "debug/debug.js": "debug.js"
+    }
+  },
+  "contributors": [
+    {
+      "name": "Nathan Rajlich",
+      "email": "nathan@tootallnate.net",
+      "url": "http://n8.io"
+    },
+    {
+      "name": "Andrew Rhyne",
+      "email": "rhyneandrew@gmail.com"
+    }
+  ],
+  "dependencies": {
+    "ms": "2.0.0"
+  },
+  "deprecated": false,
+  "description": "small debugging utility",
+  "devDependencies": {
+    "browserify": "9.0.3",
+    "chai": "^3.5.0",
+    "concurrently": "^3.1.0",
+    "coveralls": "^2.11.15",
+    "eslint": "^3.12.1",
+    "istanbul": "^0.4.5",
+    "karma": "^1.3.0",
+    "karma-chai": "^0.1.0",
+    "karma-mocha": "^1.3.0",
+    "karma-phantomjs-launcher": "^1.0.2",
+    "karma-sinon": "^1.0.5",
+    "mocha": "^3.2.0",
+    "mocha-lcov-reporter": "^1.2.0",
+    "rimraf": "^2.5.4",
+    "sinon": "^1.17.6",
+    "sinon-chai": "^2.8.0"
+  },
+  "homepage": "https://github.com/visionmedia/debug#readme",
+  "keywords": [
+    "debug",
+    "log",
+    "debugger"
+  ],
+  "license": "MIT",
+  "main": "./src/index.js",
+  "name": "debug",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/visionmedia/debug.git"
+  },
+  "version": "2.6.9"
+}

+ 85 - 0
server/node_modules/decompress-response/package.json

@@ -0,0 +1,85 @@
+{
+  "_from": "decompress-response@^3.3.0",
+  "_id": "decompress-response@3.3.0",
+  "_inBundle": false,
+  "_integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
+  "_location": "/decompress-response",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "decompress-response@^3.3.0",
+    "name": "decompress-response",
+    "escapedName": "decompress-response",
+    "rawSpec": "^3.3.0",
+    "saveSpec": null,
+    "fetchSpec": "^3.3.0"
+  },
+  "_requiredBy": [
+    "/got"
+  ],
+  "_resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
+  "_shasum": "80a4dd323748384bfa248083622aedec982adff3",
+  "_spec": "decompress-response@^3.3.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\got",
+  "bugs": {
+    "url": "https://github.com/sindresorhus/decompress-response/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "mimic-response": "^1.0.0"
+  },
+  "deprecated": false,
+  "description": "Decompress a HTTP response if needed",
+  "devDependencies": {
+    "ava": "*",
+    "get-stream": "^3.0.0",
+    "pify": "^3.0.0",
+    "xo": "*"
+  },
+  "engines": {
+    "node": ">=4"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/sindresorhus/decompress-response#readme",
+  "keywords": [
+    "decompress",
+    "response",
+    "http",
+    "https",
+    "zlib",
+    "gzip",
+    "zip",
+    "deflate",
+    "unzip",
+    "ungzip",
+    "incoming",
+    "message",
+    "stream",
+    "compressed"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "Sindre Sorhus",
+      "email": "sindresorhus@gmail.com",
+      "url": "sindresorhus.com"
+    },
+    {
+      "name": "Vsevolod Strukchinsky",
+      "email": "floatdrop@gmail.com",
+      "url": "github.com/floatdrop"
+    }
+  ],
+  "name": "decompress-response",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/decompress-response.git"
+  },
+  "scripts": {
+    "test": "xo && ava"
+  },
+  "version": "3.3.0"
+}

+ 92 - 0
server/node_modules/deep-extend/package.json

@@ -0,0 +1,92 @@
+{
+  "_from": "deep-extend@^0.6.0",
+  "_id": "deep-extend@0.6.0",
+  "_inBundle": false,
+  "_integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
+  "_location": "/deep-extend",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "deep-extend@^0.6.0",
+    "name": "deep-extend",
+    "escapedName": "deep-extend",
+    "rawSpec": "^0.6.0",
+    "saveSpec": null,
+    "fetchSpec": "^0.6.0"
+  },
+  "_requiredBy": [
+    "/rc"
+  ],
+  "_resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
+  "_shasum": "c4fa7c95404a17a9c3e8ca7e1537312b736330ac",
+  "_spec": "deep-extend@^0.6.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\rc",
+  "author": {
+    "name": "Viacheslav Lotsmanov",
+    "email": "lotsmanov89@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/unclechu/node-deep-extend/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Romain Prieto",
+      "url": "https://github.com/rprieto"
+    },
+    {
+      "name": "Max Maximov",
+      "url": "https://github.com/maxmaximov"
+    },
+    {
+      "name": "Marshall Bowers",
+      "url": "https://github.com/maxdeviant"
+    },
+    {
+      "name": "Misha Wakerman",
+      "url": "https://github.com/mwakerman"
+    }
+  ],
+  "deprecated": false,
+  "description": "Recursive object extending",
+  "devDependencies": {
+    "mocha": "5.2.0",
+    "should": "13.2.1"
+  },
+  "engines": {
+    "node": ">=4.0.0"
+  },
+  "files": [
+    "index.js",
+    "lib/"
+  ],
+  "homepage": "https://github.com/unclechu/node-deep-extend",
+  "keywords": [
+    "deep-extend",
+    "extend",
+    "deep",
+    "recursive",
+    "xtend",
+    "clone",
+    "merge",
+    "json"
+  ],
+  "license": "MIT",
+  "licenses": [
+    {
+      "type": "MIT",
+      "url": "https://raw.githubusercontent.com/unclechu/node-deep-extend/master/LICENSE"
+    }
+  ],
+  "main": "lib/deep-extend.js",
+  "name": "deep-extend",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/unclechu/node-deep-extend.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "0.6.0"
+}

+ 101 - 0
server/node_modules/defer-to-connect/package.json

@@ -0,0 +1,101 @@
+{
+  "_from": "defer-to-connect@^1.0.1",
+  "_id": "defer-to-connect@1.1.3",
+  "_inBundle": false,
+  "_integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==",
+  "_location": "/defer-to-connect",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "defer-to-connect@^1.0.1",
+    "name": "defer-to-connect",
+    "escapedName": "defer-to-connect",
+    "rawSpec": "^1.0.1",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.1"
+  },
+  "_requiredBy": [
+    "/@szmarczak/http-timer"
+  ],
+  "_resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz",
+  "_shasum": "331ae050c08dcf789f8c83a7b81f0ed94f4ac591",
+  "_spec": "defer-to-connect@^1.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\@szmarczak\\http-timer",
+  "author": {
+    "name": "Szymon Marczak"
+  },
+  "ava": {
+    "babel": false,
+    "compileEnhancements": false,
+    "extensions": [
+      "ts"
+    ],
+    "require": [
+      "ts-node/register"
+    ],
+    "files": [
+      "!dist/tests/test.d.ts"
+    ]
+  },
+  "bugs": {
+    "url": "https://github.com/szmarczak/defer-to-connect/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "The safe way to handle the `connect` socket event",
+  "devDependencies": {
+    "@sindresorhus/tsconfig": "^0.5.0",
+    "@types/node": "^12.12.4",
+    "@typescript-eslint/eslint-plugin": "^1.11.0",
+    "@typescript-eslint/parser": "^1.11.0",
+    "ava": "^2.1.0",
+    "coveralls": "^3.0.7",
+    "create-cert": "^1.0.6",
+    "del-cli": "^3.0.0",
+    "eslint-config-xo-typescript": "^0.15.0",
+    "nyc": "^14.0.0",
+    "p-event": "^4.1.0",
+    "ts-node": "^8.1.0",
+    "typescript": "^3.6.4",
+    "xo": "^0.25.3"
+  },
+  "files": [
+    "dist"
+  ],
+  "homepage": "https://github.com/szmarczak/defer-to-connect#readme",
+  "keywords": [
+    "socket",
+    "connect",
+    "event"
+  ],
+  "license": "MIT",
+  "main": "dist",
+  "name": "defer-to-connect",
+  "nyc": {
+    "extension": [
+      ".ts"
+    ]
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/szmarczak/defer-to-connect.git"
+  },
+  "scripts": {
+    "build": "del-cli dist && tsc",
+    "coveralls": "nyc report --reporter=text-lcov | coveralls",
+    "prepublishOnly": "npm run build",
+    "test": "xo && nyc ava"
+  },
+  "types": "dist",
+  "version": "1.1.3",
+  "xo": {
+    "extends": "xo-typescript",
+    "extensions": [
+      "ts"
+    ],
+    "rules": {
+      "ava/no-ignored-test-files": "off"
+    }
+  }
+}

+ 48 - 0
server/node_modules/delegates/package.json

@@ -0,0 +1,48 @@
+{
+  "_from": "delegates@^1.0.0",
+  "_id": "delegates@1.0.0",
+  "_inBundle": false,
+  "_integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
+  "_location": "/delegates",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "delegates@^1.0.0",
+    "name": "delegates",
+    "escapedName": "delegates",
+    "rawSpec": "^1.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.0"
+  },
+  "_requiredBy": [
+    "/are-we-there-yet"
+  ],
+  "_resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
+  "_shasum": "84c6e159b81904fdca59a0ef44cd870d31250f9a",
+  "_spec": "delegates@^1.0.0",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\are-we-there-yet",
+  "bugs": {
+    "url": "https://github.com/visionmedia/node-delegates/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {},
+  "deprecated": false,
+  "description": "delegate methods and accessors to another property",
+  "devDependencies": {
+    "mocha": "*",
+    "should": "*"
+  },
+  "homepage": "https://github.com/visionmedia/node-delegates#readme",
+  "keywords": [
+    "delegate",
+    "delegation"
+  ],
+  "license": "MIT",
+  "name": "delegates",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/visionmedia/node-delegates.git"
+  },
+  "version": "1.0.0"
+}

+ 84 - 0
server/node_modules/denque/package.json

@@ -0,0 +1,84 @@
+{
+  "_from": "denque@^2.0.1",
+  "_id": "denque@2.0.1",
+  "_inBundle": false,
+  "_integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==",
+  "_location": "/denque",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "denque@^2.0.1",
+    "name": "denque",
+    "escapedName": "denque",
+    "rawSpec": "^2.0.1",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.1"
+  },
+  "_requiredBy": [
+    "/mongodb"
+  ],
+  "_resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz",
+  "_shasum": "bcef4c1b80dc32efe97515744f21a4229ab8934a",
+  "_spec": "denque@^2.0.1",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\mongodb",
+  "author": {
+    "name": "Invertase",
+    "email": "oss@invertase.io",
+    "url": "http://github.com/invertase/"
+  },
+  "bugs": {
+    "url": "https://github.com/invertase/denque/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Mike Diarmid",
+      "email": "mike@invertase.io",
+      "url": "Salakar"
+    }
+  ],
+  "deprecated": false,
+  "description": "The fastest javascript implementation of a double-ended queue. Used by the official Redis, MongoDB, MariaDB & MySQL libraries for Node.js and many other libraries. Maintains compatability with deque.",
+  "devDependencies": {
+    "benchmark": "^2.1.4",
+    "codecov": "^3.8.3",
+    "double-ended-queue": "^2.1.0-0",
+    "istanbul": "^0.4.5",
+    "mocha": "^3.5.3",
+    "typescript": "^3.4.1"
+  },
+  "engines": {
+    "node": ">=0.10"
+  },
+  "homepage": "https://docs.page/invertase/denque",
+  "keywords": [
+    "data-structure",
+    "data-structures",
+    "queue",
+    "double",
+    "end",
+    "ended",
+    "deque",
+    "denque",
+    "double-ended-queue"
+  ],
+  "license": "Apache-2.0",
+  "main": "index.js",
+  "name": "denque",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/invertase/denque.git"
+  },
+  "scripts": {
+    "benchmark_2mil": "node benchmark/two_million",
+    "benchmark_remove": "node benchmark/remove",
+    "benchmark_removeOne": "node benchmark/removeOne",
+    "benchmark_splice": "node benchmark/splice",
+    "benchmark_thousand": "node benchmark/thousand",
+    "coveralls": "cat ./coverage/lcov.info | coveralls",
+    "test": "istanbul cover --report lcov _mocha && npm run typescript",
+    "typescript": "tsc --project ./test/type/tsconfig.json"
+  },
+  "version": "2.0.1"
+}

+ 79 - 0
server/node_modules/depd/package.json

@@ -0,0 +1,79 @@
+{
+  "_from": "depd@~1.1.2",
+  "_id": "depd@1.1.2",
+  "_inBundle": false,
+  "_integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
+  "_location": "/depd",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "depd@~1.1.2",
+    "name": "depd",
+    "escapedName": "depd",
+    "rawSpec": "~1.1.2",
+    "saveSpec": null,
+    "fetchSpec": "~1.1.2"
+  },
+  "_requiredBy": [
+    "/body-parser",
+    "/express",
+    "/http-errors",
+    "/send"
+  ],
+  "_resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+  "_shasum": "9bcd52e14c097763e749b274c4346ed2e560b5a9",
+  "_spec": "depd@~1.1.2",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\express",
+  "author": {
+    "name": "Douglas Christopher Wilson",
+    "email": "doug@somethingdoug.com"
+  },
+  "browser": "lib/browser/index.js",
+  "bugs": {
+    "url": "https://github.com/dougwilson/nodejs-depd/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Deprecate all the things",
+  "devDependencies": {
+    "beautify-benchmark": "0.2.4",
+    "benchmark": "2.1.4",
+    "eslint": "3.19.0",
+    "eslint-config-standard": "7.1.0",
+    "eslint-plugin-markdown": "1.0.0-beta.7",
+    "eslint-plugin-promise": "3.6.0",
+    "eslint-plugin-standard": "3.0.1",
+    "istanbul": "0.4.5",
+    "mocha": "~1.21.5"
+  },
+  "engines": {
+    "node": ">= 0.6"
+  },
+  "files": [
+    "lib/",
+    "History.md",
+    "LICENSE",
+    "index.js",
+    "Readme.md"
+  ],
+  "homepage": "https://github.com/dougwilson/nodejs-depd#readme",
+  "keywords": [
+    "deprecate",
+    "deprecated"
+  ],
+  "license": "MIT",
+  "name": "depd",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/dougwilson/nodejs-depd.git"
+  },
+  "scripts": {
+    "bench": "node benchmark/index.js",
+    "lint": "eslint --plugin markdown --ext js,md .",
+    "test": "mocha --reporter spec --bail test/",
+    "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --no-exit test/",
+    "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot test/"
+  },
+  "version": "1.1.2"
+}

+ 71 - 0
server/node_modules/destroy/package.json

@@ -0,0 +1,71 @@
+{
+  "_from": "destroy@~1.0.4",
+  "_id": "destroy@1.0.4",
+  "_inBundle": false,
+  "_integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
+  "_location": "/destroy",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "destroy@~1.0.4",
+    "name": "destroy",
+    "escapedName": "destroy",
+    "rawSpec": "~1.0.4",
+    "saveSpec": null,
+    "fetchSpec": "~1.0.4"
+  },
+  "_requiredBy": [
+    "/send"
+  ],
+  "_resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
+  "_shasum": "978857442c44749e4206613e37946205826abd80",
+  "_spec": "destroy@~1.0.4",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\send",
+  "author": {
+    "name": "Jonathan Ong",
+    "email": "me@jongleberry.com",
+    "url": "http://jongleberry.com"
+  },
+  "bugs": {
+    "url": "https://github.com/stream-utils/destroy/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Douglas Christopher Wilson",
+      "email": "doug@somethingdoug.com"
+    }
+  ],
+  "deprecated": false,
+  "description": "destroy a stream if possible",
+  "devDependencies": {
+    "istanbul": "0.4.2",
+    "mocha": "2.3.4"
+  },
+  "files": [
+    "index.js",
+    "LICENSE"
+  ],
+  "homepage": "https://github.com/stream-utils/destroy#readme",
+  "keywords": [
+    "stream",
+    "streams",
+    "destroy",
+    "cleanup",
+    "leak",
+    "fd"
+  ],
+  "license": "MIT",
+  "name": "destroy",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/stream-utils/destroy.git"
+  },
+  "scripts": {
+    "test": "mocha --reporter spec",
+    "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot",
+    "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter dot"
+  },
+  "version": "1.0.4"
+}

+ 70 - 0
server/node_modules/detect-libc/package.json

@@ -0,0 +1,70 @@
+{
+  "_from": "detect-libc@^1.0.3",
+  "_id": "detect-libc@1.0.3",
+  "_inBundle": false,
+  "_integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
+  "_location": "/detect-libc",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "detect-libc@^1.0.3",
+    "name": "detect-libc",
+    "escapedName": "detect-libc",
+    "rawSpec": "^1.0.3",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.3"
+  },
+  "_requiredBy": [
+    "/@mapbox/node-pre-gyp"
+  ],
+  "_resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
+  "_shasum": "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b",
+  "_spec": "detect-libc@^1.0.3",
+  "_where": "C:\\Users\\Admin\\Desktop\\WORK IT\\a-level proj\\chat\\server\\node_modules\\@mapbox\\node-pre-gyp",
+  "author": {
+    "name": "Lovell Fuller",
+    "email": "npm@lovell.info"
+  },
+  "bin": {
+    "detect-libc": "bin/detect-libc.js"
+  },
+  "bugs": {
+    "url": "https://github.com/lovell/detect-libc/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Niklas Salmoukas",
+      "email": "niklas@salmoukas.com"
+    }
+  ],
+  "deprecated": false,
+  "description": "Node.js module to detect the C standard library (libc) implementation family and version",
+  "devDependencies": {
+    "ava": "^0.23.0",
+    "nyc": "^11.3.0",
+    "proxyquire": "^1.8.0",
+    "semistandard": "^11.0.0"
+  },
+  "engines": {
+    "node": ">=0.10"
+  },
+  "homepage": "https://github.com/lovell/detect-libc#readme",
+  "keywords": [
+    "libc",
+    "glibc",
+    "musl"
+  ],
+  "license": "Apache-2.0",
+  "main": "lib/detect-libc.js",
+  "name": "detect-libc",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/lovell/detect-libc.git"
+  },
+  "scripts": {
+    "test": "semistandard && nyc --reporter=lcov ava"
+  },
+  "version": "1.0.3"
+}

+ 0 - 0
server/node_modules/dot-prop/package.json


部分文件因文件數量過多而無法顯示