diff options
| author | Matthew Strapp <msattr@gmail.com> | 2021-04-30 09:40:43 -0500 | 
|---|---|---|
| committer | Matthew Strapp <msattr@gmail.com> | 2021-04-30 09:40:43 -0500 | 
| commit | 7888529c17326770caa03300a7721baac1b6b743 (patch) | |
| tree | 34f577ef91980a5c0e29aafe681ad937b30397d7 /csci4131 | |
| parent | Merge branch 'master' of github.com:RosstheRoss/TestingFun (diff) | |
| download | homework-7888529c17326770caa03300a7721baac1b6b743.tar homework-7888529c17326770caa03300a7721baac1b6b743.tar.gz homework-7888529c17326770caa03300a7721baac1b6b743.tar.bz2 homework-7888529c17326770caa03300a7721baac1b6b743.tar.lz homework-7888529c17326770caa03300a7721baac1b6b743.tar.xz homework-7888529c17326770caa03300a7721baac1b6b743.tar.zst homework-7888529c17326770caa03300a7721baac1b6b743.zip  | |
Act on gag order with html
Diffstat (limited to '')
| -rw-r--r-- | csci4131/hw7/dbconfig.xml | 6 | ||||
| -rw-r--r-- | csci4131/hw7/dbio.js | 38 | ||||
| -rw-r--r-- | csci4131/hw7/package-lock.json | 1416 | ||||
| -rw-r--r-- | csci4131/hw7/package.json | 1 | ||||
| -rw-r--r-- | csci4131/hw7/public/addContact.html | 106 | ||||
| -rw-r--r-- | csci4131/hw7/public/contacts.html | 78 | ||||
| -rw-r--r-- | csci4131/hw7/public/stock.html | 1 | 
7 files changed, 190 insertions, 1456 deletions
diff --git a/csci4131/hw7/dbconfig.xml b/csci4131/hw7/dbconfig.xml index 8877480..a7e83ba 100644 --- a/csci4131/hw7/dbconfig.xml +++ b/csci4131/hw7/dbconfig.xml @@ -1,8 +1,8 @@  <?xml version="1.0" encoding="UTF-8"?>  <dbconfig>    <host>cse-mysql-classes-01.cse.umn.edu</host> -  <user>C4131S21UXXX</user> -  <password>XXXXX</password> -  <database>C4131S21UXXX</database> +  <user>C4131S21U83</user> +  <password>6919</password> +  <database>C4131S21U83</database>    <port>3306</port>  </dbconfig> diff --git a/csci4131/hw7/dbio.js b/csci4131/hw7/dbio.js index 302334b..dcc7386 100644 --- a/csci4131/hw7/dbio.js +++ b/csci4131/hw7/dbio.js @@ -1,21 +1,35 @@  var mysql = require("mysql");  var bcrypt = require("bcrypt"); +var fs = require("fs"); +var xml2js = require("xml2js"); +var parser = new xml2js.Parser(); +var conInfo; +var connection; -var connection = mysql.createConnection({ -  host: "cse-mysql-classes-01.cse.umn.edu", -    user: "C4131S21U83",               -    password: "6919",                   -    database: "C4131S21U83",            -    port: 3306 -}); +fs.readFile(__dirname + '/dbconfig.xml', function (err, data) { +	if (err) throw err;  +	parser.parseString(data, function (err, result) {  +		if (err) throw err;  +		conInfo = result;  +	}); +	connection = mysql.createConnection({ +		host: conInfo.dbconfig.host[0], +		user: conInfo.dbconfig.user[0], +		password: conInfo.dbconfig.password[0], +		database: conInfo.dbconfig.database[0], +		port: conInfo.dbconfig.port[0] +	}); -connection.connect(function(err) { -  if (err) { -    throw err; -  }; -  console.log("Connected to MYSQL database!"); +	connection.connect(function (err) { +		if (err) { +			throw err; +		}; +		console.log("Connected to MYSQL database!"); +	});  }); + +  function passcheck(user,pass) {  	return new Promise(function(resolve, reject) {  		connection.query('SELECT * FROM tbl_accounts', function(err, rows, fields) { diff --git a/csci4131/hw7/package-lock.json b/csci4131/hw7/package-lock.json index 93e81f1..446a4b1 100644 --- a/csci4131/hw7/package-lock.json +++ b/csci4131/hw7/package-lock.json @@ -1,1177 +1,13 @@  {    "name": "strap012_hw7",    "version": "1.0.0", -  "lockfileVersion": 2, +  "lockfileVersion": 1,    "requires": true, -  "packages": { -    "": { -      "name": "strap012_hw7", -      "version": "1.0.0", -      "license": "MIT", -      "dependencies": { -        "bcrypt": "^5.0.1", -        "body-parser": "^1.19.0", -        "express": "^4.17.1", -        "express-session": "^1.17.1", -        "mysql": "^2.18.1", -        "xml2js": "^0.4.23" -      } -    }, -    "node_modules/@mapbox/node-pre-gyp": { -      "version": "1.0.3", -      "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.3.tgz", -      "integrity": "sha512-9dTIfQW8HVCxLku5QrJ/ysS/b2MdYngs9+/oPrOTLvp3TrggdANYVW2h8FGJGDf0J7MYfp44W+c90cVJx+ASuA==", -      "dependencies": { -        "detect-libc": "^1.0.3", -        "https-proxy-agent": "^5.0.0", -        "make-dir": "^3.1.0", -        "node-fetch": "^2.6.1", -        "nopt": "^5.0.0", -        "npmlog": "^4.1.2", -        "rimraf": "^3.0.2", -        "semver": "^7.3.4", -        "tar": "^6.1.0" -      }, -      "bin": { -        "node-pre-gyp": "bin/node-pre-gyp" -      } -    }, -    "node_modules/abbrev": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", -      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" -    }, -    "node_modules/accepts": { -      "version": "1.3.7", -      "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", -      "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", -      "dependencies": { -        "mime-types": "~2.1.24", -        "negotiator": "0.6.2" -      }, -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/agent-base": { -      "version": "6.0.2", -      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", -      "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", -      "dependencies": { -        "debug": "4" -      }, -      "engines": { -        "node": ">= 6.0.0" -      } -    }, -    "node_modules/agent-base/node_modules/debug": { -      "version": "4.3.1", -      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", -      "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", -      "dependencies": { -        "ms": "2.1.2" -      }, -      "engines": { -        "node": ">=6.0" -      }, -      "peerDependenciesMeta": { -        "supports-color": { -          "optional": true -        } -      } -    }, -    "node_modules/agent-base/node_modules/ms": { -      "version": "2.1.2", -      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", -      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" -    }, -    "node_modules/ansi-regex": { -      "version": "2.1.1", -      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", -      "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/aproba": { -      "version": "1.2.0", -      "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", -      "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" -    }, -    "node_modules/are-we-there-yet": { -      "version": "1.1.5", -      "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", -      "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", -      "dependencies": { -        "delegates": "^1.0.0", -        "readable-stream": "^2.0.6" -      } -    }, -    "node_modules/array-flatten": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", -      "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" -    }, -    "node_modules/balanced-match": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", -      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" -    }, -    "node_modules/bcrypt": { -      "version": "5.0.1", -      "resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.0.1.tgz", -      "integrity": "sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw==", -      "hasInstallScript": true, -      "dependencies": { -        "@mapbox/node-pre-gyp": "^1.0.0", -        "node-addon-api": "^3.1.0" -      }, -      "engines": { -        "node": ">= 10.0.0" -      } -    }, -    "node_modules/bignumber.js": { -      "version": "9.0.0", -      "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", -      "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==", -      "engines": { -        "node": "*" -      } -    }, -    "node_modules/body-parser": { -      "version": "1.19.0", -      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", -      "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", -      "dependencies": { -        "bytes": "3.1.0", -        "content-type": "~1.0.4", -        "debug": "2.6.9", -        "depd": "~1.1.2", -        "http-errors": "1.7.2", -        "iconv-lite": "0.4.24", -        "on-finished": "~2.3.0", -        "qs": "6.7.0", -        "raw-body": "2.4.0", -        "type-is": "~1.6.17" -      }, -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/brace-expansion": { -      "version": "1.1.11", -      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", -      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", -      "dependencies": { -        "balanced-match": "^1.0.0", -        "concat-map": "0.0.1" -      } -    }, -    "node_modules/bytes": { -      "version": "3.1.0", -      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", -      "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/chownr": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", -      "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", -      "engines": { -        "node": ">=10" -      } -    }, -    "node_modules/code-point-at": { -      "version": "1.1.0", -      "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", -      "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/concat-map": { -      "version": "0.0.1", -      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", -      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" -    }, -    "node_modules/console-control-strings": { -      "version": "1.1.0", -      "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", -      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" -    }, -    "node_modules/content-disposition": { -      "version": "0.5.3", -      "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", -      "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", -      "dependencies": { -        "safe-buffer": "5.1.2" -      }, -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/content-disposition/node_modules/safe-buffer": { -      "version": "5.1.2", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -    }, -    "node_modules/content-type": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", -      "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/cookie": { -      "version": "0.4.0", -      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", -      "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/cookie-signature": { -      "version": "1.0.6", -      "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", -      "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" -    }, -    "node_modules/core-util-is": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", -      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" -    }, -    "node_modules/debug": { -      "version": "2.6.9", -      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", -      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", -      "dependencies": { -        "ms": "2.0.0" -      } -    }, -    "node_modules/delegates": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", -      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" -    }, -    "node_modules/depd": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", -      "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/destroy": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", -      "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" -    }, -    "node_modules/detect-libc": { -      "version": "1.0.3", -      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", -      "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", -      "bin": { -        "detect-libc": "bin/detect-libc.js" -      }, -      "engines": { -        "node": ">=0.10" -      } -    }, -    "node_modules/ee-first": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", -      "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" -    }, -    "node_modules/encodeurl": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", -      "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/escape-html": { -      "version": "1.0.3", -      "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", -      "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" -    }, -    "node_modules/etag": { -      "version": "1.8.1", -      "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", -      "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/express": { -      "version": "4.17.1", -      "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", -      "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", -      "dependencies": { -        "accepts": "~1.3.7", -        "array-flatten": "1.1.1", -        "body-parser": "1.19.0", -        "content-disposition": "0.5.3", -        "content-type": "~1.0.4", -        "cookie": "0.4.0", -        "cookie-signature": "1.0.6", -        "debug": "2.6.9", -        "depd": "~1.1.2", -        "encodeurl": "~1.0.2", -        "escape-html": "~1.0.3", -        "etag": "~1.8.1", -        "finalhandler": "~1.1.2", -        "fresh": "0.5.2", -        "merge-descriptors": "1.0.1", -        "methods": "~1.1.2", -        "on-finished": "~2.3.0", -        "parseurl": "~1.3.3", -        "path-to-regexp": "0.1.7", -        "proxy-addr": "~2.0.5", -        "qs": "6.7.0", -        "range-parser": "~1.2.1", -        "safe-buffer": "5.1.2", -        "send": "0.17.1", -        "serve-static": "1.14.1", -        "setprototypeof": "1.1.1", -        "statuses": "~1.5.0", -        "type-is": "~1.6.18", -        "utils-merge": "1.0.1", -        "vary": "~1.1.2" -      }, -      "engines": { -        "node": ">= 0.10.0" -      } -    }, -    "node_modules/express-session": { -      "version": "1.17.1", -      "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.1.tgz", -      "integrity": "sha512-UbHwgqjxQZJiWRTMyhvWGvjBQduGCSBDhhZXYenziMFjxst5rMV+aJZ6hKPHZnPyHGsrqRICxtX8jtEbm/z36Q==", -      "dependencies": { -        "cookie": "0.4.0", -        "cookie-signature": "1.0.6", -        "debug": "2.6.9", -        "depd": "~2.0.0", -        "on-headers": "~1.0.2", -        "parseurl": "~1.3.3", -        "safe-buffer": "5.2.0", -        "uid-safe": "~2.1.5" -      }, -      "engines": { -        "node": ">= 0.8.0" -      } -    }, -    "node_modules/express-session/node_modules/depd": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", -      "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/express/node_modules/safe-buffer": { -      "version": "5.1.2", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -    }, -    "node_modules/finalhandler": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", -      "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", -      "dependencies": { -        "debug": "2.6.9", -        "encodeurl": "~1.0.2", -        "escape-html": "~1.0.3", -        "on-finished": "~2.3.0", -        "parseurl": "~1.3.3", -        "statuses": "~1.5.0", -        "unpipe": "~1.0.0" -      }, -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/forwarded": { -      "version": "0.1.2", -      "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", -      "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/fresh": { -      "version": "0.5.2", -      "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", -      "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/fs-minipass": { -      "version": "2.1.0", -      "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", -      "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", -      "dependencies": { -        "minipass": "^3.0.0" -      }, -      "engines": { -        "node": ">= 8" -      } -    }, -    "node_modules/fs.realpath": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", -      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" -    }, -    "node_modules/gauge": { -      "version": "2.7.4", -      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", -      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", -      "dependencies": { -        "aproba": "^1.0.3", -        "console-control-strings": "^1.0.0", -        "has-unicode": "^2.0.0", -        "object-assign": "^4.1.0", -        "signal-exit": "^3.0.0", -        "string-width": "^1.0.1", -        "strip-ansi": "^3.0.1", -        "wide-align": "^1.1.0" -      } -    }, -    "node_modules/glob": { -      "version": "7.1.6", -      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", -      "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", -      "dependencies": { -        "fs.realpath": "^1.0.0", -        "inflight": "^1.0.4", -        "inherits": "2", -        "minimatch": "^3.0.4", -        "once": "^1.3.0", -        "path-is-absolute": "^1.0.0" -      }, -      "engines": { -        "node": "*" -      }, -      "funding": { -        "url": "https://github.com/sponsors/isaacs" -      } -    }, -    "node_modules/has-unicode": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", -      "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" -    }, -    "node_modules/http-errors": { -      "version": "1.7.2", -      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", -      "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", -      "dependencies": { -        "depd": "~1.1.2", -        "inherits": "2.0.3", -        "setprototypeof": "1.1.1", -        "statuses": ">= 1.5.0 < 2", -        "toidentifier": "1.0.0" -      }, -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/https-proxy-agent": { -      "version": "5.0.0", -      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", -      "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", -      "dependencies": { -        "agent-base": "6", -        "debug": "4" -      }, -      "engines": { -        "node": ">= 6" -      } -    }, -    "node_modules/https-proxy-agent/node_modules/debug": { -      "version": "4.3.1", -      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", -      "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", -      "dependencies": { -        "ms": "2.1.2" -      }, -      "engines": { -        "node": ">=6.0" -      }, -      "peerDependenciesMeta": { -        "supports-color": { -          "optional": true -        } -      } -    }, -    "node_modules/https-proxy-agent/node_modules/ms": { -      "version": "2.1.2", -      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", -      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" -    }, -    "node_modules/iconv-lite": { -      "version": "0.4.24", -      "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", -      "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", -      "dependencies": { -        "safer-buffer": ">= 2.1.2 < 3" -      }, -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/inflight": { -      "version": "1.0.6", -      "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", -      "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", -      "dependencies": { -        "once": "^1.3.0", -        "wrappy": "1" -      } -    }, -    "node_modules/inherits": { -      "version": "2.0.3", -      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", -      "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" -    }, -    "node_modules/ipaddr.js": { -      "version": "1.9.1", -      "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", -      "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", -      "engines": { -        "node": ">= 0.10" -      } -    }, -    "node_modules/is-fullwidth-code-point": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", -      "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", -      "dependencies": { -        "number-is-nan": "^1.0.0" -      }, -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/isarray": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", -      "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" -    }, -    "node_modules/lru-cache": { -      "version": "6.0.0", -      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -      "dependencies": { -        "yallist": "^4.0.0" -      }, -      "engines": { -        "node": ">=10" -      } -    }, -    "node_modules/make-dir": { -      "version": "3.1.0", -      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", -      "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", -      "dependencies": { -        "semver": "^6.0.0" -      }, -      "engines": { -        "node": ">=8" -      }, -      "funding": { -        "url": "https://github.com/sponsors/sindresorhus" -      } -    }, -    "node_modules/make-dir/node_modules/semver": { -      "version": "6.3.0", -      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", -      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", -      "bin": { -        "semver": "bin/semver.js" -      } -    }, -    "node_modules/media-typer": { -      "version": "0.3.0", -      "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", -      "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/merge-descriptors": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", -      "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" -    }, -    "node_modules/methods": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", -      "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/mime": { -      "version": "1.6.0", -      "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", -      "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", -      "bin": { -        "mime": "cli.js" -      }, -      "engines": { -        "node": ">=4" -      } -    }, -    "node_modules/mime-db": { -      "version": "1.47.0", -      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", -      "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/mime-types": { -      "version": "2.1.30", -      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz", -      "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==", -      "dependencies": { -        "mime-db": "1.47.0" -      }, -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/minimatch": { -      "version": "3.0.4", -      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", -      "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", -      "dependencies": { -        "brace-expansion": "^1.1.7" -      }, -      "engines": { -        "node": "*" -      } -    }, -    "node_modules/minipass": { -      "version": "3.1.3", -      "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", -      "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", -      "dependencies": { -        "yallist": "^4.0.0" -      }, -      "engines": { -        "node": ">=8" -      } -    }, -    "node_modules/minizlib": { -      "version": "2.1.2", -      "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", -      "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", -      "dependencies": { -        "minipass": "^3.0.0", -        "yallist": "^4.0.0" -      }, -      "engines": { -        "node": ">= 8" -      } -    }, -    "node_modules/mkdirp": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", -      "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", -      "bin": { -        "mkdirp": "bin/cmd.js" -      }, -      "engines": { -        "node": ">=10" -      } -    }, -    "node_modules/ms": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", -      "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" -    }, -    "node_modules/mysql": { -      "version": "2.18.1", -      "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.18.1.tgz", -      "integrity": "sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==", -      "dependencies": { -        "bignumber.js": "9.0.0", -        "readable-stream": "2.3.7", -        "safe-buffer": "5.1.2", -        "sqlstring": "2.3.1" -      }, -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/mysql/node_modules/safe-buffer": { -      "version": "5.1.2", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -    }, -    "node_modules/negotiator": { -      "version": "0.6.2", -      "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", -      "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/node-addon-api": { -      "version": "3.1.0", -      "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.1.0.tgz", -      "integrity": "sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==" -    }, -    "node_modules/node-fetch": { -      "version": "2.6.1", -      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", -      "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", -      "engines": { -        "node": "4.x || >=6.0.0" -      } -    }, -    "node_modules/nopt": { -      "version": "5.0.0", -      "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", -      "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", -      "dependencies": { -        "abbrev": "1" -      }, -      "bin": { -        "nopt": "bin/nopt.js" -      }, -      "engines": { -        "node": ">=6" -      } -    }, -    "node_modules/npmlog": { -      "version": "4.1.2", -      "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", -      "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", -      "dependencies": { -        "are-we-there-yet": "~1.1.2", -        "console-control-strings": "~1.1.0", -        "gauge": "~2.7.3", -        "set-blocking": "~2.0.0" -      } -    }, -    "node_modules/number-is-nan": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", -      "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/object-assign": { -      "version": "4.1.1", -      "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", -      "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/on-finished": { -      "version": "2.3.0", -      "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", -      "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", -      "dependencies": { -        "ee-first": "1.1.1" -      }, -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/on-headers": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", -      "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/once": { -      "version": "1.4.0", -      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", -      "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", -      "dependencies": { -        "wrappy": "1" -      } -    }, -    "node_modules/parseurl": { -      "version": "1.3.3", -      "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", -      "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/path-is-absolute": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", -      "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/path-to-regexp": { -      "version": "0.1.7", -      "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", -      "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" -    }, -    "node_modules/process-nextick-args": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", -      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" -    }, -    "node_modules/proxy-addr": { -      "version": "2.0.6", -      "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", -      "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", -      "dependencies": { -        "forwarded": "~0.1.2", -        "ipaddr.js": "1.9.1" -      }, -      "engines": { -        "node": ">= 0.10" -      } -    }, -    "node_modules/qs": { -      "version": "6.7.0", -      "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", -      "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", -      "engines": { -        "node": ">=0.6" -      } -    }, -    "node_modules/random-bytes": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", -      "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/range-parser": { -      "version": "1.2.1", -      "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", -      "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/raw-body": { -      "version": "2.4.0", -      "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", -      "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", -      "dependencies": { -        "bytes": "3.1.0", -        "http-errors": "1.7.2", -        "iconv-lite": "0.4.24", -        "unpipe": "1.0.0" -      }, -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/readable-stream": { -      "version": "2.3.7", -      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", -      "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", -      "dependencies": { -        "core-util-is": "~1.0.0", -        "inherits": "~2.0.3", -        "isarray": "~1.0.0", -        "process-nextick-args": "~2.0.0", -        "safe-buffer": "~5.1.1", -        "string_decoder": "~1.1.1", -        "util-deprecate": "~1.0.1" -      } -    }, -    "node_modules/readable-stream/node_modules/safe-buffer": { -      "version": "5.1.2", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -    }, -    "node_modules/rimraf": { -      "version": "3.0.2", -      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", -      "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", -      "dependencies": { -        "glob": "^7.1.3" -      }, -      "bin": { -        "rimraf": "bin.js" -      }, -      "funding": { -        "url": "https://github.com/sponsors/isaacs" -      } -    }, -    "node_modules/safe-buffer": { -      "version": "5.2.0", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", -      "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" -    }, -    "node_modules/safer-buffer": { -      "version": "2.1.2", -      "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", -      "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" -    }, -    "node_modules/sax": { -      "version": "1.2.4", -      "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", -      "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" -    }, -    "node_modules/semver": { -      "version": "7.3.5", -      "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", -      "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", -      "dependencies": { -        "lru-cache": "^6.0.0" -      }, -      "bin": { -        "semver": "bin/semver.js" -      }, -      "engines": { -        "node": ">=10" -      } -    }, -    "node_modules/send": { -      "version": "0.17.1", -      "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", -      "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", -      "dependencies": { -        "debug": "2.6.9", -        "depd": "~1.1.2", -        "destroy": "~1.0.4", -        "encodeurl": "~1.0.2", -        "escape-html": "~1.0.3", -        "etag": "~1.8.1", -        "fresh": "0.5.2", -        "http-errors": "~1.7.2", -        "mime": "1.6.0", -        "ms": "2.1.1", -        "on-finished": "~2.3.0", -        "range-parser": "~1.2.1", -        "statuses": "~1.5.0" -      }, -      "engines": { -        "node": ">= 0.8.0" -      } -    }, -    "node_modules/send/node_modules/ms": { -      "version": "2.1.1", -      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", -      "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" -    }, -    "node_modules/serve-static": { -      "version": "1.14.1", -      "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", -      "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", -      "dependencies": { -        "encodeurl": "~1.0.2", -        "escape-html": "~1.0.3", -        "parseurl": "~1.3.3", -        "send": "0.17.1" -      }, -      "engines": { -        "node": ">= 0.8.0" -      } -    }, -    "node_modules/set-blocking": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", -      "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" -    }, -    "node_modules/setprototypeof": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", -      "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" -    }, -    "node_modules/signal-exit": { -      "version": "3.0.3", -      "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", -      "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" -    }, -    "node_modules/sqlstring": { -      "version": "2.3.1", -      "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz", -      "integrity": "sha1-R1OT/56RR5rqYtyvDKPRSYOn+0A=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/statuses": { -      "version": "1.5.0", -      "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", -      "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/string_decoder": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", -      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", -      "dependencies": { -        "safe-buffer": "~5.1.0" -      } -    }, -    "node_modules/string_decoder/node_modules/safe-buffer": { -      "version": "5.1.2", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -    }, -    "node_modules/string-width": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", -      "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", -      "dependencies": { -        "code-point-at": "^1.0.0", -        "is-fullwidth-code-point": "^1.0.0", -        "strip-ansi": "^3.0.0" -      }, -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/strip-ansi": { -      "version": "3.0.1", -      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", -      "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", -      "dependencies": { -        "ansi-regex": "^2.0.0" -      }, -      "engines": { -        "node": ">=0.10.0" -      } -    }, -    "node_modules/tar": { -      "version": "6.1.0", -      "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", -      "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", -      "dependencies": { -        "chownr": "^2.0.0", -        "fs-minipass": "^2.0.0", -        "minipass": "^3.0.0", -        "minizlib": "^2.1.1", -        "mkdirp": "^1.0.3", -        "yallist": "^4.0.0" -      }, -      "engines": { -        "node": ">= 10" -      } -    }, -    "node_modules/toidentifier": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", -      "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", -      "engines": { -        "node": ">=0.6" -      } -    }, -    "node_modules/type-is": { -      "version": "1.6.18", -      "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", -      "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", -      "dependencies": { -        "media-typer": "0.3.0", -        "mime-types": "~2.1.24" -      }, -      "engines": { -        "node": ">= 0.6" -      } -    }, -    "node_modules/uid-safe": { -      "version": "2.1.5", -      "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", -      "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", -      "dependencies": { -        "random-bytes": "~1.0.0" -      }, -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/unpipe": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", -      "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/util-deprecate": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", -      "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" -    }, -    "node_modules/utils-merge": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", -      "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", -      "engines": { -        "node": ">= 0.4.0" -      } -    }, -    "node_modules/vary": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", -      "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", -      "engines": { -        "node": ">= 0.8" -      } -    }, -    "node_modules/wide-align": { -      "version": "1.1.3", -      "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", -      "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", -      "dependencies": { -        "string-width": "^1.0.2 || 2" -      } -    }, -    "node_modules/wrappy": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", -      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" -    }, -    "node_modules/xml2js": { -      "version": "0.4.23", -      "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", -      "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", -      "dependencies": { -        "sax": ">=0.6.0", -        "xmlbuilder": "~11.0.0" -      }, -      "engines": { -        "node": ">=4.0.0" -      } -    }, -    "node_modules/xmlbuilder": { -      "version": "11.0.1", -      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", -      "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", -      "engines": { -        "node": ">=4.0" -      } -    }, -    "node_modules/yallist": { -      "version": "4.0.0", -      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" -    } -  },    "dependencies": {      "@mapbox/node-pre-gyp": { -      "version": "1.0.3", -      "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.3.tgz", -      "integrity": "sha512-9dTIfQW8HVCxLku5QrJ/ysS/b2MdYngs9+/oPrOTLvp3TrggdANYVW2h8FGJGDf0J7MYfp44W+c90cVJx+ASuA==", +      "version": "1.0.4", +      "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.4.tgz", +      "integrity": "sha512-M669Qo4nRT7iDmQEjQYC7RU8Z6dpz9UmSbkJ1OFEja3uevCdLKh7IZZki7L1TZj02kRyl82snXFY8QqkyfowrQ==",        "requires": {          "detect-libc": "^1.0.3",          "https-proxy-agent": "^5.0.0", @@ -1204,21 +40,6 @@        "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",        "requires": {          "debug": "4" -      }, -      "dependencies": { -        "debug": { -          "version": "4.3.1", -          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", -          "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", -          "requires": { -            "ms": "2.1.2" -          } -        }, -        "ms": { -          "version": "2.1.2", -          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", -          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" -        }        }      },      "ansi-regex": { @@ -1279,6 +100,38 @@          "qs": "6.7.0",          "raw-body": "2.4.0",          "type-is": "~1.6.17" +      }, +      "dependencies": { +        "debug": { +          "version": "2.6.9", +          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", +          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", +          "requires": { +            "ms": "2.0.0" +          } +        }, +        "http-errors": { +          "version": "1.7.2", +          "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", +          "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", +          "requires": { +            "depd": "~1.1.2", +            "inherits": "2.0.3", +            "setprototypeof": "1.1.1", +            "statuses": ">= 1.5.0 < 2", +            "toidentifier": "1.0.0" +          } +        }, +        "inherits": { +          "version": "2.0.3", +          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", +          "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" +        }, +        "ms": { +          "version": "2.0.0", +          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", +          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" +        }        }      },      "brace-expansion": { @@ -1321,13 +174,6 @@        "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",        "requires": {          "safe-buffer": "5.1.2" -      }, -      "dependencies": { -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -        }        }      },      "content-type": { @@ -1351,11 +197,11 @@        "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="      },      "debug": { -      "version": "2.6.9", -      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", -      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", +      "version": "4.3.1", +      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", +      "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",        "requires": { -        "ms": "2.0.0" +        "ms": "2.1.2"        }      },      "delegates": { @@ -1435,10 +281,18 @@          "vary": "~1.1.2"        },        "dependencies": { -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" +        "debug": { +          "version": "2.6.9", +          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", +          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", +          "requires": { +            "ms": "2.0.0" +          } +        }, +        "ms": { +          "version": "2.0.0", +          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", +          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="          }        }      }, @@ -1457,10 +311,28 @@          "uid-safe": "~2.1.5"        },        "dependencies": { +        "debug": { +          "version": "2.6.9", +          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", +          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", +          "requires": { +            "ms": "2.0.0" +          } +        },          "depd": {            "version": "2.0.0",            "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",            "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" +        }, +        "ms": { +          "version": "2.0.0", +          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", +          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" +        }, +        "safe-buffer": { +          "version": "5.2.0", +          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", +          "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="          }        }      }, @@ -1476,6 +348,21 @@          "parseurl": "~1.3.3",          "statuses": "~1.5.0",          "unpipe": "~1.0.0" +      }, +      "dependencies": { +        "debug": { +          "version": "2.6.9", +          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", +          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", +          "requires": { +            "ms": "2.0.0" +          } +        }, +        "ms": { +          "version": "2.0.0", +          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", +          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" +        }        }      },      "forwarded": { @@ -1535,15 +422,22 @@        "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="      },      "http-errors": { -      "version": "1.7.2", -      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", -      "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", +      "version": "1.8.0", +      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz", +      "integrity": "sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==",        "requires": {          "depd": "~1.1.2", -        "inherits": "2.0.3", -        "setprototypeof": "1.1.1", +        "inherits": "2.0.4", +        "setprototypeof": "1.2.0",          "statuses": ">= 1.5.0 < 2",          "toidentifier": "1.0.0" +      }, +      "dependencies": { +        "setprototypeof": { +          "version": "1.2.0", +          "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", +          "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" +        }        }      },      "https-proxy-agent": { @@ -1553,21 +447,6 @@        "requires": {          "agent-base": "6",          "debug": "4" -      }, -      "dependencies": { -        "debug": { -          "version": "4.3.1", -          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", -          "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", -          "requires": { -            "ms": "2.1.2" -          } -        }, -        "ms": { -          "version": "2.1.2", -          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", -          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" -        }        }      },      "iconv-lite": { @@ -1588,9 +467,9 @@        }      },      "inherits": { -      "version": "2.0.3", -      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", -      "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", +      "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="      },      "ipaddr.js": {        "version": "1.9.1", @@ -1697,9 +576,9 @@        "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="      },      "ms": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", -      "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" +      "version": "2.1.2", +      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", +      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="      },      "mysql": {        "version": "2.18.1", @@ -1710,13 +589,6 @@          "readable-stream": "2.3.7",          "safe-buffer": "5.1.2",          "sqlstring": "2.3.1" -      }, -      "dependencies": { -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -        }        }      },      "negotiator": { @@ -1837,6 +709,25 @@          "http-errors": "1.7.2",          "iconv-lite": "0.4.24",          "unpipe": "1.0.0" +      }, +      "dependencies": { +        "http-errors": { +          "version": "1.7.2", +          "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", +          "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", +          "requires": { +            "depd": "~1.1.2", +            "inherits": "2.0.3", +            "setprototypeof": "1.1.1", +            "statuses": ">= 1.5.0 < 2", +            "toidentifier": "1.0.0" +          } +        }, +        "inherits": { +          "version": "2.0.3", +          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", +          "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" +        }        }      },      "readable-stream": { @@ -1851,13 +742,6 @@          "safe-buffer": "~5.1.1",          "string_decoder": "~1.1.1",          "util-deprecate": "~1.0.1" -      }, -      "dependencies": { -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -        }        }      },      "rimraf": { @@ -1869,9 +753,9 @@        }      },      "safe-buffer": { -      "version": "5.2.0", -      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", -      "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" +      "version": "5.1.2", +      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", +      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="      },      "safer-buffer": {        "version": "2.1.2", @@ -1911,6 +795,33 @@          "statuses": "~1.5.0"        },        "dependencies": { +        "debug": { +          "version": "2.6.9", +          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", +          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", +          "requires": { +            "ms": "2.0.0" +          }, +          "dependencies": { +            "ms": { +              "version": "2.0.0", +              "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", +              "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" +            } +          } +        }, +        "http-errors": { +          "version": "1.7.3", +          "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", +          "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", +          "requires": { +            "depd": "~1.1.2", +            "inherits": "2.0.4", +            "setprototypeof": "1.1.1", +            "statuses": ">= 1.5.0 < 2", +            "toidentifier": "1.0.0" +          } +        },          "ms": {            "version": "2.1.1",            "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", @@ -1954,21 +865,6 @@        "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",        "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="      }, -    "string_decoder": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", -      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", -      "requires": { -        "safe-buffer": "~5.1.0" -      }, -      "dependencies": { -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" -        } -      } -    },      "string-width": {        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -1979,6 +875,14 @@          "strip-ansi": "^3.0.0"        }      }, +    "string_decoder": { +      "version": "1.1.1", +      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", +      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", +      "requires": { +        "safe-buffer": "~5.1.0" +      } +    },      "strip-ansi": {        "version": "3.0.1",        "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", diff --git a/csci4131/hw7/package.json b/csci4131/hw7/package.json index 9ac62c8..543fc7f 100644 --- a/csci4131/hw7/package.json +++ b/csci4131/hw7/package.json @@ -13,6 +13,7 @@      "body-parser": "^1.19.0",      "express": "^4.17.1",      "express-session": "^1.17.1", +    "http-errors": "^1.8.0",      "mysql": "^2.18.1",      "xml2js": "^0.4.23"    } diff --git a/csci4131/hw7/public/addContact.html b/csci4131/hw7/public/addContact.html deleted file mode 100644 index 629f9b2..0000000 --- a/csci4131/hw7/public/addContact.html +++ /dev/null @@ -1,106 +0,0 @@ -<!doctype html>
 -<html lang="en">
 -
 -  <head>
 -    <meta charset="utf-8">
 -    <meta name="viewport" content="width=device-width, initial-scale=1">
 -    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
 -    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
 -    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
 -  </head>
 -
 -  <body>
 -    <nav class="navbar navbar-default">
 -     	<div class="container-fluid">
 -        <ul class="nav navbar-nav">
 -          <li><a href="/"><b>Home</b></a></li>
 -          <li><a href="contacts"><b>Contacts</b></a></li>
 -          <li><a href="addContact"><b>Add Contact</b></a></li>
 -          <li><a href="stock"><b>Stock Page</b></a></li>
 -          <li><a href="logout"><b>Logout</b></a></li>
 -        </ul>
 -    	</div>
 -  	</nav>
 -    <br><br>
 -
 -    <div class="container">
 -      <div class="row">
 -        <p><br /></p>
 -      </div>
 -
 -      <div class="row">
 -        <div class="col-md-4"></div>
 -        <div class="col-md-4">
 -          <div class="panel panel-default">
 -            <form name="addContact" method="post" action="/api/addContact">
 -              <p></p>
 -              <table class="table table-bordered table-hover">
 -                <tbody>
 -                  <tr>
 -                    <td class="col-md-6">Name</td>
 -                    <td class="col-md-6">
 -                      <div class="form-group">
 -                        <input type="text" class="form-control" name="name" required>
 -                      </div>
 -                    </td>
 -                  </tr>
 -                  <tr>
 -                    <td class="col-md-6">Category</td>
 -                    <td class="col-md-6">
 -                      <div class="form-group">
 -                          <select class="form-control" name="category">
 -                              <option>Personal</option>
 -                              <option>Academic</option>
 -                              <option>Industry</option>
 -                          </select>
 -                      </div>
 -                    </td>
 -                  </tr>
 -                  <tr>
 -                    <td class="col-md-6">Location</td>
 -                    <td class="col-md-6">
 -                      <div class="form-group">
 -                        <input type="text" class="form-control" name="location" required>
 -                      </div>
 -                    </td>
 -                  </tr>
 -                  <tr>
 -                    <td class="col-md-6">Contact Information</td>
 -                    <td class="col-md-6">
 -                      <div class="form-group">
 -                        <input type="text" class="form-control" name="contact" required>
 -                      </div>
 -                    </td>
 -                  </tr>
 -                  <tr>
 -                    <td class="col-md-6">Email</td>
 -                    <td class="col-md-6">
 -                      <div class="form-group">
 -                        <input type="email" class="form-control" name="email" required>
 -                      </div>
 -                    </td>
 -                  </tr>
 -                  <tr>
 -                    <td class="col-md-6">Website Name</td>
 -                    <td class="col-md-6">
 -                      <div class="form-group">
 -                        <input type="url" class="form-control" name="website_name" required maxlength="100">
 -                      </div>
 -                    </td>
 -                  </tr>
 -                  <tr>
 -                      <td class="col-md-6"></td>
 -                      <td class="col-md-6">
 -                          <input type="submit" value="Submit">
 -                      </td>
 -                  </tr>
 -                </tbody>
 -              </table>
 -            </form>
 -          </div>
 -        </div>
 -        <div class="col-md-4"></div>
 -      </div>
 -    </div>
 -  </body>
 -</html>
 diff --git a/csci4131/hw7/public/contacts.html b/csci4131/hw7/public/contacts.html deleted file mode 100644 index 5cd2907..0000000 --- a/csci4131/hw7/public/contacts.html +++ /dev/null @@ -1,78 +0,0 @@ -<html>
 -  <head>
 -    <meta charset="utf-8">
 -    <meta name="viewport" content="width=device-width, initial-scale=1">
 -    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
 -    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
 -    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
 -        <script type="text/javascript" defer>
 -        //Get JSON
 -          var xmlhttp = new XMLHttpRequest();
 -          var url = "api/contacts";
 -          xmlhttp.onreadystatechange = function () {
 -            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
 -              var parse = JSON.parse(xmlhttp.responseText);
 -              process(parse);
 -            }
 -          }
 -          xmlhttp.open("GET", url, true);
 -          xmlhttp.send();
 -
 -          function process(a) {
 -            var table = document.getElementsByTagName("tbody")[0];
 -            var contacts = a;
 -            for (let i = 0; i < contacts.length; i++) {
 -              var contact = contacts[i];
 -              var row = table.insertRow();
 -              for (var j in contact) {
 -                if (j === "contact_id") continue;
 -                if (j === "website_url") {
 -                  var url = row.insertCell();
 -                  url.innerHTML = "<a href =" + contact[j] + ">" + contact[j] + "</a>";
 -                } else if (j === "email") {
 -                  var email = row.insertCell();
 -                  email.innerHTML = "<a href =mailto://" + contact[j] + ">" + contact[j] + "</a>";
 -                } else {
 -                  var value = row.insertCell();
 -                  value.innerHTML = contact[j];
 -                }
 -              }
 -            }
 -          }
 -
 -        </script>
 -  </head>
 -  <body>
 -    <nav class="navbar navbar-default">
 -      <div class="container-fluid">
 -        <ul class="nav navbar-nav">
 -          <li><a href="/"><b>Home</b></a></li>
 -          <li><a href="contacts"><b>Contacts</b></a></li>
 -          <li><a href="addContact"><b>Add Contact</b></a></li>
 -          <li><a href="stock"><b>Stock Page</b></a></li>
 -          <li><a href="logout"><b>Logout</b></a></li>
 -        </ul>
 -      </div>
 -    </nav>
 -    <br><br>
 -
 -    <div class="container">
 -      <table class="table" id="contactsTable">
 -        <thead>
 -          <tr>
 -            <th scope="col">Name</th>
 -            <th scope="col">Category</th>
 -            <th scope="col">Location</th>
 -            <th scope="col">Contact Information</th>
 -            <th scope="col">Email</th>
 -            <th scope="col">Website <br> (URL) </th>
 -          </tr>
 -        </thead>
 -        <tbody></tbody>
 -      </table>
 -    </div>
 -    <script type="text/javascript">
 -    
 -    </script>
 -  </body>
 -</html>
 diff --git a/csci4131/hw7/public/stock.html b/csci4131/hw7/public/stock.html index d63b233..ae9d077 100644 --- a/csci4131/hw7/public/stock.html +++ b/csci4131/hw7/public/stock.html @@ -28,7 +28,6 @@        <ul class="nav navbar-nav">
            <li><a href="/"><b>Home</b></a></li>
            <li><a href="contacts"><b>Contacts</b></a></li>
 -          <li><a href="addContact"><b>Add Contact</b></a></li>
            <li><a href="stock"><b>Stock Page</b></a></li>
            <li><a href="logout"><b>Logout</b></a></li>
        </ul>
  | 
