diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/app.js b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/app.js index 581f0398..f0088980 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/app.js +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/app.js @@ -31,8 +31,8 @@ mongoose useCreateIndex: true, }) .then((result) => - app.listen(9000, () => { - console.log("running on port 9000"); + app.listen(3030, () => { + console.log("running on port 3030"); }) ) .catch((err) => console.log("yash", err)); diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package-lock.json b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package-lock.json index 9f5f0739..3c54b816 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package-lock.json +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package-lock.json @@ -16,7 +16,7 @@ "ejs": "^3.1.3", "express": "^4.18.2", "jsonwebtoken": "^8.5.1", - "mongoose": "^5.9.23", + "mongoose": "^5.13.15", "nodemailer": "^6.8.0", "nodemon": "^2.0.20", "validator": "^13.7.0" @@ -58,6 +58,28 @@ "node": ">=10" } }, + "node_modules/@types/bson": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.0.5.tgz", + "integrity": "sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/mongodb": { + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz", + "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==", + "dependencies": { + "@types/bson": "*", + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==" + }, "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -205,9 +227,9 @@ } }, "node_modules/bl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.0.tgz", - "integrity": "sha512-wbgvOpqopSr7uq6fJrLH8EsvYMJf9gzfo2jCsL2eTy75qXPukA4pCgHamOQkZtY5vmfVtjB+P3LNlMHW5CEZXA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", + "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", "dependencies": { "readable-stream": "^2.3.5", "safe-buffer": "^5.1.1" @@ -262,9 +284,9 @@ } }, "node_modules/bson": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.4.tgz", - "integrity": "sha512-S/yKGU1syOMzO86+dGpg2qGoDL0zvzcb262G+gqEy6TgP6rt6z6qxSFX/8X6vLC91P7G7C3nLs0+bvDzmvBA3Q==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz", + "integrity": "sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==", "engines": { "node": ">=0.6.19" } @@ -444,9 +466,9 @@ "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=" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "node_modules/debug": { "version": "2.6.9", @@ -462,9 +484,9 @@ "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "node_modules/denque": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/denque/-/denque-1.4.1.tgz", - "integrity": "sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz", + "integrity": "sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw==", "engines": { "node": ">=0.10" } @@ -948,7 +970,7 @@ "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, "node_modules/jake": { "version": "10.8.2", @@ -1013,9 +1035,9 @@ } }, "node_modules/kareem": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.1.tgz", - "integrity": "sha512-l3hLhffs9zqoDe8zjmb/mAN4B8VT3L56EUvKNqLFVs9YlFA+zx7ke1DO8STAdDyYNkeSo1nKmjuvQeI12So8Xw==" + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz", + "integrity": "sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ==" }, "node_modules/kill-port": { "version": "2.0.1", @@ -1201,14 +1223,14 @@ } }, "node_modules/mongodb": { - "version": "3.5.9", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.5.9.tgz", - "integrity": "sha512-vXHBY1CsGYcEPoVWhwgxIBeWqP3dSu9RuRDsoLRPTITrcrgm1f0Ubu1xqF9ozMwv53agmEiZm0YGo+7WL3Nbug==", + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.7.3.tgz", + "integrity": "sha512-Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==", "dependencies": { - "bl": "^2.2.0", + "bl": "^2.2.1", "bson": "^1.1.4", "denque": "^1.4.1", - "require_optional": "^1.0.1", + "optional-require": "^1.1.8", "safe-buffer": "^5.1.2" }, "engines": { @@ -1216,23 +1238,57 @@ }, "optionalDependencies": { "saslprep": "^1.0.0" + }, + "peerDependenciesMeta": { + "aws4": { + "optional": true + }, + "bson-ext": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "mongodb-extjson": { + "optional": true + }, + "snappy": { + "optional": true + } + } + }, + "node_modules/mongodb/node_modules/optional-require": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz", + "integrity": "sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==", + "dependencies": { + "require-at": "^1.0.6" + }, + "engines": { + "node": ">=4" } }, "node_modules/mongoose": { - "version": "5.9.23", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.9.23.tgz", - "integrity": "sha512-fMYlMRJz0T6Ax2K2P0jt+kxXd4qaRxyfZCha1YBMczmA2EBlT5SnBlcDyJ4YQa4/z+GoDh06uH090w7BfBcdWg==", + "version": "5.13.15", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.13.15.tgz", + "integrity": "sha512-cxp1Gbb8yUWkaEbajdhspSaKzAvsIvOtRlYD87GN/P2QEUhpd6bIvebi36T6M0tIVAMauNaK9SPA055N3PwF8Q==", "dependencies": { + "@types/bson": "1.x || 4.0.x", + "@types/mongodb": "^3.5.27", "bson": "^1.1.4", - "kareem": "2.3.1", - "mongodb": "3.5.9", + "kareem": "2.3.2", + "mongodb": "3.7.3", "mongoose-legacy-pluralize": "1.0.2", - "mpath": "0.7.0", - "mquery": "3.2.2", + "mpath": "0.8.4", + "mquery": "3.2.5", "ms": "2.1.2", + "optional-require": "1.0.x", "regexp-clone": "1.0.0", "safe-buffer": "5.2.1", - "sift": "7.0.1", + "sift": "13.5.2", "sliced": "1.0.1" }, "engines": { @@ -1276,17 +1332,17 @@ ] }, "node_modules/mpath": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.7.0.tgz", - "integrity": "sha512-Aiq04hILxhz1L+f7sjGyn7IxYzWm1zLNNXcfhDtx04kZ2Gk7uvFdgZ8ts1cWa/6d0TQmag2yR8zSGZUmp0tFNg==", + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.4.tgz", + "integrity": "sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g==", "engines": { "node": ">=4.0.0" } }, "node_modules/mquery": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.2.2.tgz", - "integrity": "sha512-XB52992COp0KP230I3qloVUbkLUxJIu328HBP2t2EsxSFtf4W1HPSOBWOXf1bqxK4Xbb66lfMJ+Bpfd9/yZE1Q==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.2.5.tgz", + "integrity": "sha512-VjOKHHgU84wij7IUoZzFRU07IAxd5kWJaDmyUzQlbjHjyoeK5TNeeo8ZsFDtTYnSgpW6n/nMNIHvE3u8Lbrf4A==", "dependencies": { "bluebird": "3.5.1", "debug": "3.1.0", @@ -1459,6 +1515,14 @@ "wrappy": "1" } }, + "node_modules/optional-require": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.0.3.tgz", + "integrity": "sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA==", + "engines": { + "node": ">=4" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -1579,21 +1643,12 @@ "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz", "integrity": "sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw==" }, - "node_modules/require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "dependencies": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" - } - }, - "node_modules/resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", + "node_modules/require-at": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz", + "integrity": "sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/rimraf": { @@ -1712,9 +1767,9 @@ } }, "node_modules/sift": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/sift/-/sift-7.0.1.tgz", - "integrity": "sha512-oqD7PMJ+uO6jV9EQCl0LrRw1OwsiPsiFQR5AR30heR+4Dl7jBBbDLnNvWiak20tzZlSE1H7RB30SX/1j/YYT7g==" + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/sift/-/sift-13.5.2.tgz", + "integrity": "sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA==" }, "node_modules/signal-exit": { "version": "3.0.7", @@ -1743,12 +1798,12 @@ "node_modules/sliced": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" + "integrity": "sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA==" }, "node_modules/sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", - "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", "optional": true, "dependencies": { "memory-pager": "^1.0.2" @@ -1984,6 +2039,28 @@ } } }, + "@types/bson": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.0.5.tgz", + "integrity": "sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg==", + "requires": { + "@types/node": "*" + } + }, + "@types/mongodb": { + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz", + "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==", + "requires": { + "@types/bson": "*", + "@types/node": "*" + } + }, + "@types/node": { + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==" + }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -2099,9 +2176,9 @@ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" }, "bl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.0.tgz", - "integrity": "sha512-wbgvOpqopSr7uq6fJrLH8EsvYMJf9gzfo2jCsL2eTy75qXPukA4pCgHamOQkZtY5vmfVtjB+P3LNlMHW5CEZXA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", + "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", "requires": { "readable-stream": "^2.3.5", "safe-buffer": "^5.1.1" @@ -2149,9 +2226,9 @@ } }, "bson": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.4.tgz", - "integrity": "sha512-S/yKGU1syOMzO86+dGpg2qGoDL0zvzcb262G+gqEy6TgP6rt6z6qxSFX/8X6vLC91P7G7C3nLs0+bvDzmvBA3Q==" + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz", + "integrity": "sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==" }, "buffer-equal-constant-time": { "version": "1.0.1", @@ -2277,9 +2354,9 @@ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "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=" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "debug": { "version": "2.6.9", @@ -2295,9 +2372,9 @@ "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "denque": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/denque/-/denque-1.4.1.tgz", - "integrity": "sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ==" + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz", + "integrity": "sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw==" }, "depd": { "version": "2.0.0", @@ -2652,7 +2729,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, "jake": { "version": "10.8.2", @@ -2709,9 +2786,9 @@ } }, "kareem": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.1.tgz", - "integrity": "sha512-l3hLhffs9zqoDe8zjmb/mAN4B8VT3L56EUvKNqLFVs9YlFA+zx7ke1DO8STAdDyYNkeSo1nKmjuvQeI12So8Xw==" + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz", + "integrity": "sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ==" }, "kill-port": { "version": "2.0.1", @@ -2851,33 +2928,46 @@ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, "mongodb": { - "version": "3.5.9", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.5.9.tgz", - "integrity": "sha512-vXHBY1CsGYcEPoVWhwgxIBeWqP3dSu9RuRDsoLRPTITrcrgm1f0Ubu1xqF9ozMwv53agmEiZm0YGo+7WL3Nbug==", + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.7.3.tgz", + "integrity": "sha512-Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==", "requires": { - "bl": "^2.2.0", + "bl": "^2.2.1", "bson": "^1.1.4", "denque": "^1.4.1", - "require_optional": "^1.0.1", + "optional-require": "^1.1.8", "safe-buffer": "^5.1.2", "saslprep": "^1.0.0" + }, + "dependencies": { + "optional-require": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz", + "integrity": "sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==", + "requires": { + "require-at": "^1.0.6" + } + } } }, "mongoose": { - "version": "5.9.23", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.9.23.tgz", - "integrity": "sha512-fMYlMRJz0T6Ax2K2P0jt+kxXd4qaRxyfZCha1YBMczmA2EBlT5SnBlcDyJ4YQa4/z+GoDh06uH090w7BfBcdWg==", + "version": "5.13.15", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.13.15.tgz", + "integrity": "sha512-cxp1Gbb8yUWkaEbajdhspSaKzAvsIvOtRlYD87GN/P2QEUhpd6bIvebi36T6M0tIVAMauNaK9SPA055N3PwF8Q==", "requires": { + "@types/bson": "1.x || 4.0.x", + "@types/mongodb": "^3.5.27", "bson": "^1.1.4", - "kareem": "2.3.1", - "mongodb": "3.5.9", + "kareem": "2.3.2", + "mongodb": "3.7.3", "mongoose-legacy-pluralize": "1.0.2", - "mpath": "0.7.0", - "mquery": "3.2.2", + "mpath": "0.8.4", + "mquery": "3.2.5", "ms": "2.1.2", + "optional-require": "1.0.x", "regexp-clone": "1.0.0", "safe-buffer": "5.2.1", - "sift": "7.0.1", + "sift": "13.5.2", "sliced": "1.0.1" }, "dependencies": { @@ -2896,17 +2986,18 @@ "mongoose-legacy-pluralize": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz", - "integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==" + "integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==", + "requires": {} }, "mpath": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.7.0.tgz", - "integrity": "sha512-Aiq04hILxhz1L+f7sjGyn7IxYzWm1zLNNXcfhDtx04kZ2Gk7uvFdgZ8ts1cWa/6d0TQmag2yR8zSGZUmp0tFNg==" + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.4.tgz", + "integrity": "sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g==" }, "mquery": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.2.2.tgz", - "integrity": "sha512-XB52992COp0KP230I3qloVUbkLUxJIu328HBP2t2EsxSFtf4W1HPSOBWOXf1bqxK4Xbb66lfMJ+Bpfd9/yZE1Q==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.2.5.tgz", + "integrity": "sha512-VjOKHHgU84wij7IUoZzFRU07IAxd5kWJaDmyUzQlbjHjyoeK5TNeeo8ZsFDtTYnSgpW6n/nMNIHvE3u8Lbrf4A==", "requires": { "bluebird": "3.5.1", "debug": "3.1.0", @@ -3035,6 +3126,11 @@ "wrappy": "1" } }, + "optional-require": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.0.3.tgz", + "integrity": "sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA==" + }, "parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -3125,19 +3221,10 @@ "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz", "integrity": "sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw==" }, - "require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "requires": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" - } - }, - "resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" + "require-at": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz", + "integrity": "sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==" }, "rimraf": { "version": "3.0.2", @@ -3236,9 +3323,9 @@ } }, "sift": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/sift/-/sift-7.0.1.tgz", - "integrity": "sha512-oqD7PMJ+uO6jV9EQCl0LrRw1OwsiPsiFQR5AR30heR+4Dl7jBBbDLnNvWiak20tzZlSE1H7RB30SX/1j/YYT7g==" + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/sift/-/sift-13.5.2.tgz", + "integrity": "sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA==" }, "signal-exit": { "version": "3.0.7", @@ -3263,12 +3350,12 @@ "sliced": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" + "integrity": "sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA==" }, "sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", - "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", "optional": true, "requires": { "memory-pager": "^1.0.2" diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package.json b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package.json index 67bf5427..2a75a5e5 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package.json +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/package.json @@ -10,7 +10,7 @@ "ejs": "^3.1.3", "express": "^4.18.2", "jsonwebtoken": "^8.5.1", - "mongoose": "^5.9.23", + "mongoose": "^5.13.15", "nodemailer": "^6.8.0", "nodemon": "^2.0.20", "validator": "^13.7.0" @@ -29,8 +29,8 @@ "url": "https://github.com/iamshaunjp/node-express-jwt-auth/issues" }, "homepage": "https://github.com/iamshaunjp/node-express-jwt-auth#readme", - "description": "", "devDependencies": { "kill-port": "^2.0.1" - } + }, + "description": "" } diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/Images/bed.jpeg b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/Images/bed.jpeg new file mode 100644 index 00000000..1d9c8812 Binary files /dev/null and b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/Images/bed.jpeg differ diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/bed.css b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/bed.css index 9c080e7b..ca918bb2 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/bed.css +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/bed.css @@ -29,27 +29,40 @@ html { body { - font-size: 20px; + font-size: 25px; background: #fff; } input[type="text"], input[type="email"], input[type="tel"], input[type="password"] { width: 80%; - padding: 5px; + padding: 10px; margin: 20px 0; - border: 2px solid #000 ; + border: 3px solid #99ddd0 ; + border-radius: 5px; + font: 0.75em sans-serif; +} + +select[id='hospitals']{ + width: fit-content; + padding: 10px; + margin: 20px 0; + border: 3px solid #99ddd0 ; border-radius: 5px; + font: 0.75em sans-serif; } input[type='radio'], input[name="Blood Group"] { - padding: 5px; + padding: 10px; margin: 20px 0; - border: 2px solid #000 ; + border: 3px solid #99ddd0; border-radius: 5px; + font: 0.75em sans-serif; } + + input[type=submit] { width: 70%; border-radius: 12px; @@ -64,9 +77,6 @@ input[type=submit]:hover { background-color: #35d7b9; } - - - .column { float: left; width: 50%; @@ -145,14 +155,10 @@ input[type=submit]:hover { display: none; } -#results{ - border: 3px solid #444; - border-radius: 5px ; - display: none; -margin-left: 5px; -} -#results h3{ - color: #16a085; - +#hospitals{ + padding: 5px; + margin: 20px 0; + border: 2px solid #000 ; + border-radius: 5px; } \ No newline at end of file diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/doctor.css b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/doctor.css index 4acc4212..ffbdc9ee 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/doctor.css +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/css/doctor.css @@ -95,7 +95,7 @@ form label[for=address] { align-self: flex-start; - margin-left: 20%; + margin-left: 37%; } #dob{ @@ -211,8 +211,14 @@ align-items: center; flex-wrap: wrap; gap: 2rem; + + } + .column { + float: left; + width: 50%; } + .book .row form { @@ -254,4 +260,22 @@ #appointment-type{ width: 90%; } + + .image{ + width: 50%; + + + + } + + .container{ + width: 50%; + margin-top: -30px; + } + .row { + margin: 50px; + padding-top: 40px; + padding-left: 50px; + + } \ No newline at end of file diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/bed2.js b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/bed2.js index 08cde2f1..3c3772cb 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/bed2.js +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/bed2.js @@ -3,8 +3,10 @@ const result = document.getElementById("results"); const button= document.getElementById("submitButton"); const sendEmail = require('../js/sendEmail'); const Sendmail=require('../js/sendEmail') - - +const hospitals= document.getElementById("hospitals"); +var Hospital = $("input[type='radio'][name='hospital']:checked").val(); +let selectedHospital; +var hospital = {}; function fetchBedData() { @@ -19,22 +21,31 @@ function fetchBedData() { fetch(url).then((response) => response.json()).then((json) => { console.log(json); let bedcount; + let noOfHospitals =0; - + let Hospitals=[]; bedcount=0; for (let x of json.data.medicalColleges) { if (x.city === city) { - + noOfHospitals+=1; + bedcount=bedcount+ x.hospitalBeds; console.log(bedcount); + console.log(noOfHospitals); + console.log(x.name); + Hospitals+=x.name; + + } + } + if(bedcount===0){ swal("Sorry, No bed found"); } else { if (confirm("Confirm booking") == true) { - swal("You will recieve a confirmation mail"); + swal(selectedHospital); // sendEmail() } else { swal("You canceled!"); @@ -42,4 +53,42 @@ function fetchBedData() { } }); - } \ No newline at end of file + } + + function setHospitals() { + const form = document.getElementById("register").elements; + const url = "https://api.rootnet.in/covid19-in/hospitals/medical-colleges"; + const prefCity = form.city.value; + const recvEmail = form.email.value.replace(/(^\w{1})|(\s+\w{1})/g, letter => letter.toLowerCase()); + const city = prefCity.replace(/(^\w{1})|(\s+\w{1})/g, letter => letter.toUpperCase()); + const hospitals= document.getElementById("hospitals"); + + + fetch(url).then((response) => response.json()).then((json) => { + console.log(json); + for (let x of json.data.medicalColleges) { + if (x.city === city) { + + console.log(x.name); + var opt = document.createElement('option'); + opt.text = x.name+" :- "+x.hospitalBeds; + hospitals.appendChild(opt) + + } + + + }; +}); + req.send(); +} + +function selectedhospital() { + const form = document.getElementById("register").elements; + const hospitals= document.getElementById("hospitals"); + let selectedHospital; + + selectedHospital=hospitals.value; + console.log(selectedHospital); +} + + diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/vaccine.js b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/vaccine.js index 83cf7870..37da94d1 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/vaccine.js +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/public/js/vaccine.js @@ -5,7 +5,7 @@ var date = document.getElementById('date'); var results = document.getElementById('results'); var state = document.getElementById('state'); var selected_district = document.getElementById('district'); -var pincode= $("pincode"); +var pincode= $("pincode"); var DISTRICT = $("input[type='radio'][name='district']:checked").val(); diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/bed.ejs b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/bed.ejs index 1c080ca0..ed1d924b 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/bed.ejs +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/bed.ejs @@ -1,12 +1,13 @@ - + +
-
+
@@ -73,11 +75,24 @@

- +

- + +
+ + +
+ + + + +
+ +
Male -
- +
+
-
+

Doctor's Appointment Form





Patient Information


@@ -119,7 +120,7 @@
-
+
diff --git a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/home.ejs b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/home.ejs index 63ba4566..93635d45 100644 --- a/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/home.ejs +++ b/node-express-jwt-auth-lesson-1/node-express-jwt-auth-lesson-1/views/home.ejs @@ -146,6 +146,17 @@
+
+ +

Disease Predictor

+

+ Symptoms gives probability of possible disease based on data by users. +

+ + Visit site + +
+

bed facility