From 37ee4de48a7ca117a0b9fe2848ec613d722d7aa3 Mon Sep 17 00:00:00 2001
From: Agastya Kumar Yadav <124435030+agastya3636@users.noreply.github.com>
Date: Tue, 9 Apr 2024 16:23:54 +0530
Subject: [PATCH] first commit
---
.env | 0
.gitignore | 3 +
adout.html | 152 ++
app.js | 133 ++
connection.js | 58 +
contact.html | 149 ++
index.html | 171 ++
package-lock.json | 1502 +++++++++++++++++
package.json | 20 +
.../images/1698778828696-removebg-preview.png | Bin 0 -> 226276 bytes
public/images/Designer-removebg-preview.png | Bin 0 -> 275231 bytes
public/images/Designer.png | Bin 0 -> 1458883 bytes
public/images/WIN_20230930_11_49_50_Pro.jpg | Bin 0 -> 195889 bytes
public/images/logo.jpeg | Bin 0 -> 126266 bytes
st.css | 150 ++
style.css | 63 +
veiws/train_between.ejs | 148 ++
veiws/trainno.ejs | 149 ++
18 files changed, 2698 insertions(+)
create mode 100644 .env
create mode 100644 .gitignore
create mode 100644 adout.html
create mode 100644 app.js
create mode 100644 connection.js
create mode 100644 contact.html
create mode 100644 index.html
create mode 100644 package-lock.json
create mode 100644 package.json
create mode 100644 public/images/1698778828696-removebg-preview.png
create mode 100644 public/images/Designer-removebg-preview.png
create mode 100644 public/images/Designer.png
create mode 100644 public/images/WIN_20230930_11_49_50_Pro.jpg
create mode 100644 public/images/logo.jpeg
create mode 100644 st.css
create mode 100644 style.css
create mode 100644 veiws/train_between.ejs
create mode 100644 veiws/trainno.ejs
diff --git a/.env b/.env
new file mode 100644
index 0000000..e69de29
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..1f8ebd9
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+node_modules
+other
+.env
\ No newline at end of file
diff --git a/adout.html b/adout.html
new file mode 100644
index 0000000..eb355c7
--- /dev/null
+++ b/adout.html
@@ -0,0 +1,152 @@
+
+
+
+
+
+
+ Find Rail
+
+
+
+
+
+
+
+
+
+
+
+
About Us
+
Find Rail is a web application that helps you find trains between two stations and also helps you find the status of your train ticket.
+
+
Developed by
+
Find Rail is developed by a team of developers who are passionate about trains and technology.
+
+
Name: Agastya Kumar Yadav
+
Email: agastya3232@gmail.com
+
+
+
+
+
+
+
+
+
diff --git a/app.js b/app.js
new file mode 100644
index 0000000..ee91864
--- /dev/null
+++ b/app.js
@@ -0,0 +1,133 @@
+import express from "express";
+import bodyParser from "body-parser";
+import request from 'request-promise';
+import path from "path";
+import { fileURLToPath } from 'url';
+import { dirname } from 'path';
+import connectToDatabase from "./connection.js";
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = dirname(__filename);
+const app = express();
+app.set('view engine', 'ejs');
+app.set("views", path.join(__dirname, "veiws"));
+app.use(bodyParser.urlencoded({ extended: false }));
+app.use(express.static('public'));
+
+const logrequest= (req,res,next)=>{
+ console.log(`${new Date().toLocaleString()} Request made to ${req.originalUrl}`);
+ next();
+}
+app.listen(5000, function () {
+ console.log(__dirname);
+});
+app.use(logrequest);
+app.get("/", function (req, res) {
+ res.sendFile(__dirname + "/index.html");
+});
+
+app.get("/about.html",function(req,res){
+ res.sendFile(__dirname + "/adout.html");
+});
+
+app.get("/contact.html",function(req,res){
+ res.sendFile(__dirname + "/contact.html");
+});
+
+app.post("/contactres", async function (req, res) {
+ var name = req.body.name;
+ var email = req.body.email;
+ var message = req.body.message;
+ const db = await connectToDatabase();
+ const collection = db.collection("contact");
+ collection.insertOne({ "Name": name, "Email": email, "Message": message });
+ //redirect to home page after successful submission?
+ res.redirect('/');
+})
+
+app.post("/find-train-between", async function (req, res) {
+ try {
+ let num1 = req.body.from;
+ let num2 = req.body.to;
+ let options = {
+ method: 'GET',
+ uri: `https://api.railwayapi.site/api/v1/trainsBtwStations?fromStation=${num1}&toStation=${num2}&allTrains=true`,
+ json: true,
+ };
+ const response = await request(options);
+ const trainDetails = response.data;
+ console.log(trainDetails)
+ res.render("train_between", { trainDetails });
+ } catch (error) {
+ console.error(error);
+ res.status(500).send("Internal Server Error");
+ }
+});
+
+app.post("/trainno_search", async function (req, res) {
+ try {
+ let trainNumbers = req.body.pnr;
+ let options = {
+ method: 'GET',
+ uri: `https://api.railwayapi.site/api/v1/schedules/${trainNumbers}?fullSchedule=true`,
+ json: true,
+ };
+
+ const response1 = await request(options);
+
+ const trainData = {};
+ trainData['response1'] = response1.data[0];
+
+ options = {
+ method: 'GET',
+ uri: `https://api.railwayapi.site/api/v1/trains/${trainNumbers}`,
+ json: true,
+ };
+
+ const response2 = await request(options);
+ trainData['response2'] = response2.data[0];
+ console.log(trainData)
+ res.render("trainno", { trainData });
+ } catch (error) {
+ console.error(error);
+ res.status(500).send("Internal Server Error");
+ }
+
+});
+
+app.get("/trainno_search", async function (req, res) {
+ try {
+ let trainNumbers = req.query.trainno;
+ let options = {
+ method: 'GET',
+ uri: `https://api.railwayapi.site/api/v1/schedules/${trainNumbers}?fullSchedule=true`,
+ json: true,
+ };
+
+ const response1 = await request(options);
+
+ const trainData = {};
+ trainData['response1'] = response1.data[0];
+
+ options = {
+ method: 'GET',
+ uri: `https://api.railwayapi.site/api/v1/trains/${trainNumbers}`,
+ json: true,
+ };
+
+ const response2 = await request(options);
+ trainData['response2'] = response2.data[0];
+ console.log(trainData)
+ res.render("trainno", { trainData });
+ } catch (error) {
+ console.error(error);
+ res.status(500).send("Internal Server Error");
+ }
+});
+
+
+
+
+
+
+
+
diff --git a/connection.js b/connection.js
new file mode 100644
index 0000000..c93be43
--- /dev/null
+++ b/connection.js
@@ -0,0 +1,58 @@
+const uri = "mongodb+srv://22cs3003:rFhm1QhvCuy47eoR@chukchuk.mfx9om4.mongodb.net/";
+// dotenv.config({path:'C:\Users\agast\OneDrive\Desktop\infernocoders\config.env'});
+
+
+
+// import { MongoClient, ServerApiVersion } from "mongodb";
+// import dotenv from 'dotenv';
+
+// const client = new MongoClient(uri, {
+// useUnifiedTopology: true,
+// useNewUrlParser: true,
+// });
+
+// (async () => {
+// try {
+// await client.connect();
+// console.log('Connected to the database');
+// const db = client.db("Inferno_Coders");
+// console.log('Connected to the Inferno_Coders database');
+// } catch (err) {
+// console.error('Error connecting to the database:', err);
+// } finally {
+// await client.close();
+// }
+// })();
+
+
+// let db = await client.db("Inferno_Coders");
+
+
+// export default db;
+
+import { MongoClient } from "mongodb";
+// import dotenv from 'dotenv';
+
+// const uri = process.env.MONGODB_URI; // Make sure to define MONGODB_URI in your config.env file
+
+// dotenv.config({ path: 'C:\\Users\\agast\\OneDrive\\Desktop\\infernocoders\\config.env' });
+
+const client = new MongoClient(uri, {
+ useUnifiedTopology: true,
+ useNewUrlParser: true,
+});
+
+const connectToDatabase = async () => {
+ try {
+ await client.connect();
+ console.log('Connected to the database');
+ const db = client.db("Chuk_Chuk");
+ console.log('Connected to the Inferno_Coders database');
+ return db;
+ } catch (err) {
+ console.error('Error connecting to the database:', err);
+ throw err; // Rethrow the error to handle it elsewhere if needed
+ }
+};
+
+export default connectToDatabase;
diff --git a/contact.html b/contact.html
new file mode 100644
index 0000000..a26cf4a
--- /dev/null
+++ b/contact.html
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+ Find Rail
+
+
+
+
+
+
+
+
+
+
+
Contact Us
+
+
+
+
+
+
+
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..789f93f
--- /dev/null
+++ b/index.html
@@ -0,0 +1,171 @@
+
+
+
+
+
+
+ Find Rail
+
+
+
+
+
+
+
+
+
+
+
+ Welcome to Chuk-Chuk
+
+
+
+
Find Rail
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..bef4f72
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,1502 @@
+{
+ "name": "track-your-tain",
+ "version": "1.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "track-your-tain",
+ "version": "1.0.0",
+ "license": "ISC",
+ "dependencies": {
+ "axios": "^1.6.5",
+ "body-parser": "^1.20.2",
+ "ejs": "^3.1.9",
+ "express": "^4.18.2",
+ "mongodb": "^6.5.0",
+ "request-promise": "^4.2.6"
+ }
+ },
+ "node_modules/@mongodb-js/saslprep": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.5.tgz",
+ "integrity": "sha512-XLNOMH66KhJzUJNwT/qlMnS4WsNDWD5ASdyaSH3EtK+F4r/CFGa3jT4GNi4mfOitGvWXtdLgQJkQjxSVrio+jA==",
+ "dependencies": {
+ "sparse-bitfield": "^3.0.3"
+ }
+ },
+ "node_modules/@types/webidl-conversions": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz",
+ "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA=="
+ },
+ "node_modules/@types/whatwg-url": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.4.tgz",
+ "integrity": "sha512-lXCmTWSHJvf0TRSO58nm978b8HJ/EdsSsEKLd3ODHFjo+3VGAyyTp4v50nWvwtzBxSMQrVOK7tcuN0zGPLICMw==",
+ "dependencies": {
+ "@types/webidl-conversions": "*"
+ }
+ },
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "peer": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg=="
+ },
+ "node_modules/asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "peer": true,
+ "dependencies": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "node_modules/assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
+ "peer": true,
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/async": {
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz",
+ "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg=="
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+ },
+ "node_modules/aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==",
+ "peer": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/aws4": {
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz",
+ "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==",
+ "peer": true
+ },
+ "node_modules/axios": {
+ "version": "1.6.5",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.5.tgz",
+ "integrity": "sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==",
+ "dependencies": {
+ "follow-redirects": "^1.15.4",
+ "form-data": "^4.0.0",
+ "proxy-from-env": "^1.1.0"
+ }
+ },
+ "node_modules/axios/node_modules/form-data": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "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-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==",
+ "peer": true,
+ "dependencies": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
+ "node_modules/bluebird": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
+ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="
+ },
+ "node_modules/body-parser": {
+ "version": "1.20.2",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz",
+ "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "content-type": "~1.0.5",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.11.0",
+ "raw-body": "2.5.2",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "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/bson": {
+ "version": "6.6.0",
+ "resolved": "https://registry.npmjs.org/bson/-/bson-6.6.0.tgz",
+ "integrity": "sha512-BVINv2SgcMjL4oYbBuCQTpE3/VKOSxrOA8Cj/wQP7izSzlBGVomdm+TcUd0Pzy0ytLSSDweCKQ6X3f5veM5LQA==",
+ "engines": {
+ "node": ">=16.20.1"
+ }
+ },
+ "node_modules/bytes": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/call-bind": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz",
+ "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==",
+ "dependencies": {
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.1",
+ "set-function-length": "^1.1.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==",
+ "peer": true
+ },
+ "node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
+ },
+ "node_modules/content-disposition": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
+ "dependencies": {
+ "safe-buffer": "5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/content-type": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/cookie": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
+ "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
+ "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": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ=="
+ },
+ "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": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==",
+ "peer": true
+ },
+ "node_modules/dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==",
+ "peer": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "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/define-data-property": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz",
+ "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==",
+ "dependencies": {
+ "get-intrinsic": "^1.2.1",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "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/destroy": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==",
+ "peer": true,
+ "dependencies": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
+ },
+ "node_modules/ee-first": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
+ },
+ "node_modules/ejs": {
+ "version": "3.1.9",
+ "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.9.tgz",
+ "integrity": "sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==",
+ "dependencies": {
+ "jake": "^10.8.5"
+ },
+ "bin": {
+ "ejs": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "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": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
+ },
+ "node_modules/etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/express": {
+ "version": "4.18.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
+ "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
+ "dependencies": {
+ "accepts": "~1.3.8",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.20.1",
+ "content-disposition": "0.5.4",
+ "content-type": "~1.0.4",
+ "cookie": "0.5.0",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "1.2.0",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "merge-descriptors": "1.0.1",
+ "methods": "~1.1.2",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "0.1.7",
+ "proxy-addr": "~2.0.7",
+ "qs": "6.11.0",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.2.1",
+ "send": "0.18.0",
+ "serve-static": "1.15.0",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.10.0"
+ }
+ },
+ "node_modules/express/node_modules/body-parser": {
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
+ "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "content-type": "~1.0.4",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.11.0",
+ "raw-body": "2.5.1",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/express/node_modules/raw-body": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
+ "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
+ "peer": true
+ },
+ "node_modules/extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==",
+ "engines": [
+ "node >=0.6.0"
+ ],
+ "peer": true
+ },
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+ "peer": true
+ },
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "peer": true
+ },
+ "node_modules/filelist": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
+ "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
+ "dependencies": {
+ "minimatch": "^5.0.1"
+ }
+ },
+ "node_modules/filelist/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/filelist/node_modules/minimatch": {
+ "version": "5.1.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/finalhandler": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
+ "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
+ "dependencies": {
+ "debug": "2.6.9",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "2.0.1",
+ "unpipe": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.15.5",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz",
+ "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==",
+ "peer": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "peer": true,
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 0.12"
+ }
+ },
+ "node_modules/forwarded": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz",
+ "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==",
+ "dependencies": {
+ "function-bind": "^1.1.2",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==",
+ "peer": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dependencies": {
+ "get-intrinsic": "^1.1.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/har-schema": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
+ "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==",
+ "peer": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/har-validator": {
+ "version": "5.1.5",
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
+ "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
+ "deprecated": "this library is no longer supported",
+ "peer": true,
+ "dependencies": {
+ "ajv": "^6.12.3",
+ "har-schema": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz",
+ "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==",
+ "dependencies": {
+ "get-intrinsic": "^1.2.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
+ "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/hasown": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
+ "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/http-errors": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
+ "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
+ "dependencies": {
+ "depd": "2.0.0",
+ "inherits": "2.0.4",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "toidentifier": "1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/http-signature": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+ "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==",
+ "peer": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
+ },
+ "engines": {
+ "node": ">=0.8",
+ "npm": ">=1.3.7"
+ }
+ },
+ "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/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "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-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==",
+ "peer": true
+ },
+ "node_modules/isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==",
+ "peer": true
+ },
+ "node_modules/jake": {
+ "version": "10.8.7",
+ "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.7.tgz",
+ "integrity": "sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==",
+ "dependencies": {
+ "async": "^3.2.3",
+ "chalk": "^4.0.2",
+ "filelist": "^1.0.4",
+ "minimatch": "^3.1.2"
+ },
+ "bin": {
+ "jake": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==",
+ "peer": true
+ },
+ "node_modules/json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==",
+ "peer": true
+ },
+ "node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "peer": true
+ },
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
+ "peer": true
+ },
+ "node_modules/jsprim": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
+ "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==",
+ "peer": true,
+ "dependencies": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.4.0",
+ "verror": "1.10.0"
+ },
+ "engines": {
+ "node": ">=0.6.0"
+ }
+ },
+ "node_modules/lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
+ },
+ "node_modules/media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/memory-pager": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
+ "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg=="
+ },
+ "node_modules/merge-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
+ "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w=="
+ },
+ "node_modules/methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
+ "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.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/mongodb": {
+ "version": "6.5.0",
+ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.5.0.tgz",
+ "integrity": "sha512-Fozq68InT+JKABGLqctgtb8P56pRrJFkbhW0ux+x1mdHeyinor8oNzJqwLjV/t5X5nJGfTlluxfyMnOXNggIUA==",
+ "dependencies": {
+ "@mongodb-js/saslprep": "^1.1.5",
+ "bson": "^6.4.0",
+ "mongodb-connection-string-url": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=16.20.1"
+ },
+ "peerDependencies": {
+ "@aws-sdk/credential-providers": "^3.188.0",
+ "@mongodb-js/zstd": "^1.1.0",
+ "gcp-metadata": "^5.2.0",
+ "kerberos": "^2.0.1",
+ "mongodb-client-encryption": ">=6.0.0 <7",
+ "snappy": "^7.2.2",
+ "socks": "^2.7.1"
+ },
+ "peerDependenciesMeta": {
+ "@aws-sdk/credential-providers": {
+ "optional": true
+ },
+ "@mongodb-js/zstd": {
+ "optional": true
+ },
+ "gcp-metadata": {
+ "optional": true
+ },
+ "kerberos": {
+ "optional": true
+ },
+ "mongodb-client-encryption": {
+ "optional": true
+ },
+ "snappy": {
+ "optional": true
+ },
+ "socks": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/mongodb-connection-string-url": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-3.0.0.tgz",
+ "integrity": "sha512-t1Vf+m1I5hC2M5RJx/7AtxgABy1cZmIPQRMXw+gEIPn/cZNF3Oiy+l0UIypUwVB5trcWHq3crg2g3uAR9aAwsQ==",
+ "dependencies": {
+ "@types/whatwg-url": "^11.0.2",
+ "whatwg-url": "^13.0.0"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
+ },
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/oauth-sign": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
+ "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
+ "peer": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/object-inspect": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz",
+ "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "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-to-regexp": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
+ "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ=="
+ },
+ "node_modules/performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
+ "peer": true
+ },
+ "node_modules/proxy-addr": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
+ "dependencies": {
+ "forwarded": "0.2.0",
+ "ipaddr.js": "1.9.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/proxy-from-env": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
+ },
+ "node_modules/psl": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
+ "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
+ },
+ "node_modules/punycode": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+ "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/qs": {
+ "version": "6.11.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
+ "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
+ "dependencies": {
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">=0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "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.5.2",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
+ "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/request": {
+ "version": "2.88.2",
+ "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
+ "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
+ "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142",
+ "peer": true,
+ "dependencies": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "har-validator": "~5.1.3",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "oauth-sign": "~0.9.0",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.2",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "~2.5.0",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.3.2"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/request-promise": {
+ "version": "4.2.6",
+ "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.6.tgz",
+ "integrity": "sha512-HCHI3DJJUakkOr8fNoCc73E5nU5bqITjOYFMDrKHYOXWXrgD/SBaC7LjwuPymUprRyuF06UK7hd/lMHkmUXglQ==",
+ "deprecated": "request-promise has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142",
+ "dependencies": {
+ "bluebird": "^3.5.0",
+ "request-promise-core": "1.1.4",
+ "stealthy-require": "^1.1.1",
+ "tough-cookie": "^2.3.3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "peerDependencies": {
+ "request": "^2.34"
+ }
+ },
+ "node_modules/request-promise-core": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz",
+ "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==",
+ "dependencies": {
+ "lodash": "^4.17.19"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "peerDependencies": {
+ "request": "^2.34"
+ }
+ },
+ "node_modules/request/node_modules/qs": {
+ "version": "6.5.3",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
+ "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
+ "peer": true,
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "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/send": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
+ "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/send/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
+ },
+ "node_modules/serve-static": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
+ "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
+ "dependencies": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.18.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/set-function-length": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz",
+ "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==",
+ "dependencies": {
+ "define-data-property": "^1.1.1",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.2",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/setprototypeof": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
+ },
+ "node_modules/side-channel": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
+ "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
+ "dependencies": {
+ "call-bind": "^1.0.0",
+ "get-intrinsic": "^1.0.2",
+ "object-inspect": "^1.9.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/sparse-bitfield": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
+ "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==",
+ "dependencies": {
+ "memory-pager": "^1.0.2"
+ }
+ },
+ "node_modules/sshpk": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz",
+ "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==",
+ "peer": true,
+ "dependencies": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ },
+ "bin": {
+ "sshpk-conv": "bin/sshpk-conv",
+ "sshpk-sign": "bin/sshpk-sign",
+ "sshpk-verify": "bin/sshpk-verify"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/stealthy-require": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
+ "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/toidentifier": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
+ "dependencies": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/tr46": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz",
+ "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==",
+ "dependencies": {
+ "punycode": "^2.3.0"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
+ "peer": true,
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==",
+ "peer": true
+ },
+ "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/unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "peer": true,
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
+ "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
+ "peer": true,
+ "bin": {
+ "uuid": "bin/uuid"
+ }
+ },
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==",
+ "engines": [
+ "node >=0.6.0"
+ ],
+ "peer": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
+ },
+ "node_modules/webidl-conversions": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
+ "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/whatwg-url": {
+ "version": "13.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-13.0.0.tgz",
+ "integrity": "sha512-9WWbymnqj57+XEuqADHrCJ2eSXzn8WXIW/YSGaZtb2WKAInQ6CHfaUUcTyyver0p8BDg5StLQq8h1vtZuwmOig==",
+ "dependencies": {
+ "tr46": "^4.1.1",
+ "webidl-conversions": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..e499e2a
--- /dev/null
+++ b/package.json
@@ -0,0 +1,20 @@
+{
+ "name": "track-your-tain",
+ "version": "1.0.0",
+ "main": "app.js",
+ "type": "module",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "author": "",
+ "license": "ISC",
+ "dependencies": {
+ "axios": "^1.6.5",
+ "body-parser": "^1.20.2",
+ "ejs": "^3.1.9",
+ "express": "^4.18.2",
+ "mongodb": "^6.5.0",
+ "request-promise": "^4.2.6"
+ },
+ "description": ""
+}
diff --git a/public/images/1698778828696-removebg-preview.png b/public/images/1698778828696-removebg-preview.png
new file mode 100644
index 0000000000000000000000000000000000000000..b04aabfc2a408f95a5386593d6cd8f87aee79c8a
GIT binary patch
literal 226276
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