SeungJun Baek

프로젝트 완성

1 { 1 {
2 - "exec":"npx babel-node src/backend/server.js" 2 + "exec":"npx babel-node src/backend/init.js"
3 } 3 }
4 4
......
...@@ -10,8 +10,12 @@ ...@@ -10,8 +10,12 @@
10 "license": "ISC", 10 "license": "ISC",
11 "dependencies": { 11 "dependencies": {
12 "babel-loader": "^8.2.5", 12 "babel-loader": "^8.2.5",
13 + "bcrypt": "^5.0.1",
14 + "connect-mongo": "^4.6.0",
13 "dotenv": "^16.0.1", 15 "dotenv": "^16.0.1",
14 "express": "^4.18.1", 16 "express": "^4.18.1",
17 + "express-session": "^1.17.3",
18 + "mongoose": "^6.3.5",
15 "node-fetch": "^2.6.1", 19 "node-fetch": "^2.6.1",
16 "pug": "^3.0.2" 20 "pug": "^3.0.2"
17 }, 21 },
...@@ -1706,6 +1710,75 @@ ...@@ -1706,6 +1710,75 @@
1706 "@jridgewell/sourcemap-codec": "^1.4.10" 1710 "@jridgewell/sourcemap-codec": "^1.4.10"
1707 } 1711 }
1708 }, 1712 },
1713 + "node_modules/@mapbox/node-pre-gyp": {
1714 + "version": "1.0.9",
1715 + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz",
1716 + "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==",
1717 + "dependencies": {
1718 + "detect-libc": "^2.0.0",
1719 + "https-proxy-agent": "^5.0.0",
1720 + "make-dir": "^3.1.0",
1721 + "node-fetch": "^2.6.7",
1722 + "nopt": "^5.0.0",
1723 + "npmlog": "^5.0.1",
1724 + "rimraf": "^3.0.2",
1725 + "semver": "^7.3.5",
1726 + "tar": "^6.1.11"
1727 + },
1728 + "bin": {
1729 + "node-pre-gyp": "bin/node-pre-gyp"
1730 + }
1731 + },
1732 + "node_modules/@mapbox/node-pre-gyp/node_modules/make-dir": {
1733 + "version": "3.1.0",
1734 + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
1735 + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
1736 + "dependencies": {
1737 + "semver": "^6.0.0"
1738 + },
1739 + "engines": {
1740 + "node": ">=8"
1741 + },
1742 + "funding": {
1743 + "url": "https://github.com/sponsors/sindresorhus"
1744 + }
1745 + },
1746 + "node_modules/@mapbox/node-pre-gyp/node_modules/make-dir/node_modules/semver": {
1747 + "version": "6.3.0",
1748 + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1749 + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1750 + "bin": {
1751 + "semver": "bin/semver.js"
1752 + }
1753 + },
1754 + "node_modules/@mapbox/node-pre-gyp/node_modules/nopt": {
1755 + "version": "5.0.0",
1756 + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
1757 + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
1758 + "dependencies": {
1759 + "abbrev": "1"
1760 + },
1761 + "bin": {
1762 + "nopt": "bin/nopt.js"
1763 + },
1764 + "engines": {
1765 + "node": ">=6"
1766 + }
1767 + },
1768 + "node_modules/@mapbox/node-pre-gyp/node_modules/semver": {
1769 + "version": "7.3.7",
1770 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
1771 + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
1772 + "dependencies": {
1773 + "lru-cache": "^6.0.0"
1774 + },
1775 + "bin": {
1776 + "semver": "bin/semver.js"
1777 + },
1778 + "engines": {
1779 + "node": ">=10"
1780 + }
1781 + },
1709 "node_modules/@sindresorhus/is": { 1782 "node_modules/@sindresorhus/is": {
1710 "version": "0.14.0", 1783 "version": "0.14.0",
1711 "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", 1784 "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
...@@ -1761,8 +1834,21 @@ ...@@ -1761,8 +1834,21 @@
1761 "node_modules/@types/node": { 1834 "node_modules/@types/node": {
1762 "version": "17.0.33", 1835 "version": "17.0.33",
1763 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.33.tgz", 1836 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.33.tgz",
1764 - "integrity": "sha512-miWq2m2FiQZmaHfdZNcbpp9PuXg34W5JZ5CrJ/BaS70VuhoJENBEQybeiYSaPBRNq6KQGnjfEnc/F3PN++D+XQ==", 1837 + "integrity": "sha512-miWq2m2FiQZmaHfdZNcbpp9PuXg34W5JZ5CrJ/BaS70VuhoJENBEQybeiYSaPBRNq6KQGnjfEnc/F3PN++D+XQ=="
1765 - "peer": true 1838 + },
1839 + "node_modules/@types/webidl-conversions": {
1840 + "version": "6.1.1",
1841 + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz",
1842 + "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q=="
1843 + },
1844 + "node_modules/@types/whatwg-url": {
1845 + "version": "8.2.1",
1846 + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz",
1847 + "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==",
1848 + "dependencies": {
1849 + "@types/node": "*",
1850 + "@types/webidl-conversions": "*"
1851 + }
1766 }, 1852 },
1767 "node_modules/@webassemblyjs/ast": { 1853 "node_modules/@webassemblyjs/ast": {
1768 "version": "1.11.1", 1854 "version": "1.11.1",
...@@ -1925,8 +2011,7 @@ ...@@ -1925,8 +2011,7 @@
1925 "node_modules/abbrev": { 2011 "node_modules/abbrev": {
1926 "version": "1.1.1", 2012 "version": "1.1.1",
1927 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 2013 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
1928 - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", 2014 + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
1929 - "dev": true
1930 }, 2015 },
1931 "node_modules/accepts": { 2016 "node_modules/accepts": {
1932 "version": "1.3.8", 2017 "version": "1.3.8",
...@@ -1961,6 +2046,38 @@ ...@@ -1961,6 +2046,38 @@
1961 "acorn": "^8" 2046 "acorn": "^8"
1962 } 2047 }
1963 }, 2048 },
2049 + "node_modules/agent-base": {
2050 + "version": "6.0.2",
2051 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
2052 + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
2053 + "dependencies": {
2054 + "debug": "4"
2055 + },
2056 + "engines": {
2057 + "node": ">= 6.0.0"
2058 + }
2059 + },
2060 + "node_modules/agent-base/node_modules/debug": {
2061 + "version": "4.3.4",
2062 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
2063 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
2064 + "dependencies": {
2065 + "ms": "2.1.2"
2066 + },
2067 + "engines": {
2068 + "node": ">=6.0"
2069 + },
2070 + "peerDependenciesMeta": {
2071 + "supports-color": {
2072 + "optional": true
2073 + }
2074 + }
2075 + },
2076 + "node_modules/agent-base/node_modules/ms": {
2077 + "version": "2.1.2",
2078 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2079 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
2080 + },
1964 "node_modules/ajv": { 2081 "node_modules/ajv": {
1965 "version": "6.12.6", 2082 "version": "6.12.6",
1966 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 2083 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
...@@ -1997,7 +2114,6 @@ ...@@ -1997,7 +2114,6 @@
1997 "version": "5.0.1", 2114 "version": "5.0.1",
1998 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 2115 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
1999 "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 2116 "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2000 - "dev": true,
2001 "engines": { 2117 "engines": {
2002 "node": ">=8" 2118 "node": ">=8"
2003 } 2119 }
...@@ -2026,6 +2142,23 @@ ...@@ -2026,6 +2142,23 @@
2026 "node": ">= 8" 2142 "node": ">= 8"
2027 } 2143 }
2028 }, 2144 },
2145 + "node_modules/aproba": {
2146 + "version": "2.0.0",
2147 + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
2148 + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ=="
2149 + },
2150 + "node_modules/are-we-there-yet": {
2151 + "version": "2.0.0",
2152 + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz",
2153 + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==",
2154 + "dependencies": {
2155 + "delegates": "^1.0.0",
2156 + "readable-stream": "^3.6.0"
2157 + },
2158 + "engines": {
2159 + "node": ">=10"
2160 + }
2161 + },
2029 "node_modules/array-flatten": { 2162 "node_modules/array-flatten": {
2030 "version": "1.1.1", 2163 "version": "1.1.1",
2031 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 2164 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
...@@ -2036,6 +2169,17 @@ ...@@ -2036,6 +2169,17 @@
2036 "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", 2169 "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
2037 "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" 2170 "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
2038 }, 2171 },
2172 + "node_modules/asn1.js": {
2173 + "version": "5.4.1",
2174 + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
2175 + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
2176 + "dependencies": {
2177 + "bn.js": "^4.0.0",
2178 + "inherits": "^2.0.1",
2179 + "minimalistic-assert": "^1.0.0",
2180 + "safer-buffer": "^2.1.0"
2181 + }
2182 + },
2039 "node_modules/assert-never": { 2183 "node_modules/assert-never": {
2040 "version": "1.2.1", 2184 "version": "1.2.1",
2041 "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", 2185 "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz",
...@@ -2204,8 +2348,39 @@ ...@@ -2204,8 +2348,39 @@
2204 "node_modules/balanced-match": { 2348 "node_modules/balanced-match": {
2205 "version": "1.0.2", 2349 "version": "1.0.2",
2206 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 2350 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
2207 - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 2351 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
2208 - "dev": true 2352 + },
2353 + "node_modules/base64-js": {
2354 + "version": "1.5.1",
2355 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
2356 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
2357 + "funding": [
2358 + {
2359 + "type": "github",
2360 + "url": "https://github.com/sponsors/feross"
2361 + },
2362 + {
2363 + "type": "patreon",
2364 + "url": "https://www.patreon.com/feross"
2365 + },
2366 + {
2367 + "type": "consulting",
2368 + "url": "https://feross.org/support"
2369 + }
2370 + ]
2371 + },
2372 + "node_modules/bcrypt": {
2373 + "version": "5.0.1",
2374 + "resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.0.1.tgz",
2375 + "integrity": "sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw==",
2376 + "hasInstallScript": true,
2377 + "dependencies": {
2378 + "@mapbox/node-pre-gyp": "^1.0.0",
2379 + "node-addon-api": "^3.1.0"
2380 + },
2381 + "engines": {
2382 + "node": ">= 10.0.0"
2383 + }
2209 }, 2384 },
2210 "node_modules/big.js": { 2385 "node_modules/big.js": {
2211 "version": "5.2.2", 2386 "version": "5.2.2",
...@@ -2224,6 +2399,11 @@ ...@@ -2224,6 +2399,11 @@
2224 "node": ">=8" 2399 "node": ">=8"
2225 } 2400 }
2226 }, 2401 },
2402 + "node_modules/bn.js": {
2403 + "version": "4.12.0",
2404 + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
2405 + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
2406 + },
2227 "node_modules/body-parser": { 2407 "node_modules/body-parser": {
2228 "version": "1.20.0", 2408 "version": "1.20.0",
2229 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", 2409 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz",
...@@ -2343,7 +2523,6 @@ ...@@ -2343,7 +2523,6 @@
2343 "version": "1.1.11", 2523 "version": "1.1.11",
2344 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 2524 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
2345 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 2525 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
2346 - "dev": true,
2347 "dependencies": { 2526 "dependencies": {
2348 "balanced-match": "^1.0.0", 2527 "balanced-match": "^1.0.0",
2349 "concat-map": "0.0.1" 2528 "concat-map": "0.0.1"
...@@ -2389,6 +2568,40 @@ ...@@ -2389,6 +2568,40 @@
2389 "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" 2568 "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
2390 } 2569 }
2391 }, 2570 },
2571 + "node_modules/bson": {
2572 + "version": "4.6.4",
2573 + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.4.tgz",
2574 + "integrity": "sha512-TdQ3FzguAu5HKPPlr0kYQCyrYUYh8tFM+CMTpxjNzVzxeiJY00Rtuj3LXLHSgiGvmaWlZ8PE+4KyM2thqE38pQ==",
2575 + "dependencies": {
2576 + "buffer": "^5.6.0"
2577 + },
2578 + "engines": {
2579 + "node": ">=6.9.0"
2580 + }
2581 + },
2582 + "node_modules/buffer": {
2583 + "version": "5.7.1",
2584 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
2585 + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
2586 + "funding": [
2587 + {
2588 + "type": "github",
2589 + "url": "https://github.com/sponsors/feross"
2590 + },
2591 + {
2592 + "type": "patreon",
2593 + "url": "https://www.patreon.com/feross"
2594 + },
2595 + {
2596 + "type": "consulting",
2597 + "url": "https://feross.org/support"
2598 + }
2599 + ],
2600 + "dependencies": {
2601 + "base64-js": "^1.3.1",
2602 + "ieee754": "^1.1.13"
2603 + }
2604 + },
2392 "node_modules/buffer-from": { 2605 "node_modules/buffer-from": {
2393 "version": "1.1.2", 2606 "version": "1.1.2",
2394 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", 2607 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
...@@ -2531,6 +2744,14 @@ ...@@ -2531,6 +2744,14 @@
2531 "fsevents": "~2.3.2" 2744 "fsevents": "~2.3.2"
2532 } 2745 }
2533 }, 2746 },
2747 + "node_modules/chownr": {
2748 + "version": "2.0.0",
2749 + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
2750 + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
2751 + "engines": {
2752 + "node": ">=10"
2753 + }
2754 + },
2534 "node_modules/chrome-trace-event": { 2755 "node_modules/chrome-trace-event": {
2535 "version": "1.0.3", 2756 "version": "1.0.3",
2536 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", 2757 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
...@@ -2594,6 +2815,14 @@ ...@@ -2594,6 +2815,14 @@
2594 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 2815 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
2595 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" 2816 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
2596 }, 2817 },
2818 + "node_modules/color-support": {
2819 + "version": "1.1.3",
2820 + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
2821 + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
2822 + "bin": {
2823 + "color-support": "bin.js"
2824 + }
2825 + },
2597 "node_modules/commander": { 2826 "node_modules/commander": {
2598 "version": "4.1.1", 2827 "version": "4.1.1",
2599 "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", 2828 "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
...@@ -2611,8 +2840,7 @@ ...@@ -2611,8 +2840,7 @@
2611 "node_modules/concat-map": { 2840 "node_modules/concat-map": {
2612 "version": "0.0.1", 2841 "version": "0.0.1",
2613 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 2842 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
2614 - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 2843 + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
2615 - "dev": true
2616 }, 2844 },
2617 "node_modules/configstore": { 2845 "node_modules/configstore": {
2618 "version": "5.0.1", 2846 "version": "5.0.1",
...@@ -2646,6 +2874,47 @@ ...@@ -2646,6 +2874,47 @@
2646 "url": "https://github.com/sponsors/sindresorhus" 2874 "url": "https://github.com/sponsors/sindresorhus"
2647 } 2875 }
2648 }, 2876 },
2877 + "node_modules/connect-mongo": {
2878 + "version": "4.6.0",
2879 + "resolved": "https://registry.npmjs.org/connect-mongo/-/connect-mongo-4.6.0.tgz",
2880 + "integrity": "sha512-8new4Z7NLP3CGP65Aw6ls3xDBeKVvHRSh39CXuDZTQsvpeeU9oNMzfFgvqmHqZ6gWpxIl663RyoVEmCAGf1yOg==",
2881 + "dependencies": {
2882 + "debug": "^4.3.1",
2883 + "kruptein": "^3.0.0"
2884 + },
2885 + "engines": {
2886 + "node": ">=10"
2887 + },
2888 + "peerDependencies": {
2889 + "mongodb": "^4.1.0"
2890 + }
2891 + },
2892 + "node_modules/connect-mongo/node_modules/debug": {
2893 + "version": "4.3.4",
2894 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
2895 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
2896 + "dependencies": {
2897 + "ms": "2.1.2"
2898 + },
2899 + "engines": {
2900 + "node": ">=6.0"
2901 + },
2902 + "peerDependenciesMeta": {
2903 + "supports-color": {
2904 + "optional": true
2905 + }
2906 + }
2907 + },
2908 + "node_modules/connect-mongo/node_modules/ms": {
2909 + "version": "2.1.2",
2910 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2911 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
2912 + },
2913 + "node_modules/console-control-strings": {
2914 + "version": "1.1.0",
2915 + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
2916 + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ=="
2917 + },
2649 "node_modules/constantinople": { 2918 "node_modules/constantinople": {
2650 "version": "4.0.1", 2919 "version": "4.0.1",
2651 "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", 2920 "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz",
...@@ -2794,6 +3063,19 @@ ...@@ -2794,6 +3063,19 @@
2794 "url": "https://github.com/sponsors/ljharb" 3063 "url": "https://github.com/sponsors/ljharb"
2795 } 3064 }
2796 }, 3065 },
3066 + "node_modules/delegates": {
3067 + "version": "1.0.0",
3068 + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
3069 + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ=="
3070 + },
3071 + "node_modules/denque": {
3072 + "version": "2.0.1",
3073 + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz",
3074 + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==",
3075 + "engines": {
3076 + "node": ">=0.10"
3077 + }
3078 + },
2797 "node_modules/depd": { 3079 "node_modules/depd": {
2798 "version": "2.0.0", 3080 "version": "2.0.0",
2799 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 3081 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
...@@ -2811,6 +3093,14 @@ ...@@ -2811,6 +3093,14 @@
2811 "npm": "1.2.8000 || >= 1.4.16" 3093 "npm": "1.2.8000 || >= 1.4.16"
2812 } 3094 }
2813 }, 3095 },
3096 + "node_modules/detect-libc": {
3097 + "version": "2.0.1",
3098 + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz",
3099 + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==",
3100 + "engines": {
3101 + "node": ">=8"
3102 + }
3103 + },
2814 "node_modules/doctypes": { 3104 "node_modules/doctypes": {
2815 "version": "1.1.0", 3105 "version": "1.1.0",
2816 "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", 3106 "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz",
...@@ -2855,8 +3145,7 @@ ...@@ -2855,8 +3145,7 @@
2855 "node_modules/emoji-regex": { 3145 "node_modules/emoji-regex": {
2856 "version": "8.0.0", 3146 "version": "8.0.0",
2857 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 3147 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
2858 - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 3148 + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
2859 - "dev": true
2860 }, 3149 },
2861 "node_modules/emojis-list": { 3150 "node_modules/emojis-list": {
2862 "version": "3.0.0", 3151 "version": "3.0.0",
...@@ -3096,6 +3385,32 @@ ...@@ -3096,6 +3385,32 @@
3096 "node": ">= 0.10.0" 3385 "node": ">= 0.10.0"
3097 } 3386 }
3098 }, 3387 },
3388 + "node_modules/express-session": {
3389 + "version": "1.17.3",
3390 + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz",
3391 + "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==",
3392 + "dependencies": {
3393 + "cookie": "0.4.2",
3394 + "cookie-signature": "1.0.6",
3395 + "debug": "2.6.9",
3396 + "depd": "~2.0.0",
3397 + "on-headers": "~1.0.2",
3398 + "parseurl": "~1.3.3",
3399 + "safe-buffer": "5.2.1",
3400 + "uid-safe": "~2.1.5"
3401 + },
3402 + "engines": {
3403 + "node": ">= 0.8.0"
3404 + }
3405 + },
3406 + "node_modules/express-session/node_modules/cookie": {
3407 + "version": "0.4.2",
3408 + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
3409 + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
3410 + "engines": {
3411 + "node": ">= 0.6"
3412 + }
3413 + },
3099 "node_modules/fast-deep-equal": { 3414 "node_modules/fast-deep-equal": {
3100 "version": "3.1.3", 3415 "version": "3.1.3",
3101 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 3416 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
...@@ -3177,6 +3492,22 @@ ...@@ -3177,6 +3492,22 @@
3177 "node": ">= 0.6" 3492 "node": ">= 0.6"
3178 } 3493 }
3179 }, 3494 },
3495 + "node_modules/fs-minipass": {
3496 + "version": "2.1.0",
3497 + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
3498 + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
3499 + "dependencies": {
3500 + "minipass": "^3.0.0"
3501 + },
3502 + "engines": {
3503 + "node": ">= 8"
3504 + }
3505 + },
3506 + "node_modules/fs.realpath": {
3507 + "version": "1.0.0",
3508 + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
3509 + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
3510 + },
3180 "node_modules/fsevents": { 3511 "node_modules/fsevents": {
3181 "version": "2.3.2", 3512 "version": "2.3.2",
3182 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 3513 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
...@@ -3223,6 +3554,25 @@ ...@@ -3223,6 +3554,25 @@
3223 "url": "https://github.com/sponsors/ljharb" 3554 "url": "https://github.com/sponsors/ljharb"
3224 } 3555 }
3225 }, 3556 },
3557 + "node_modules/gauge": {
3558 + "version": "3.0.2",
3559 + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz",
3560 + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==",
3561 + "dependencies": {
3562 + "aproba": "^1.0.3 || ^2.0.0",
3563 + "color-support": "^1.1.2",
3564 + "console-control-strings": "^1.0.0",
3565 + "has-unicode": "^2.0.1",
3566 + "object-assign": "^4.1.1",
3567 + "signal-exit": "^3.0.0",
3568 + "string-width": "^4.2.3",
3569 + "strip-ansi": "^6.0.1",
3570 + "wide-align": "^1.1.2"
3571 + },
3572 + "engines": {
3573 + "node": ">=10"
3574 + }
3575 + },
3226 "node_modules/gensync": { 3576 "node_modules/gensync": {
3227 "version": "1.0.0-beta.2", 3577 "version": "1.0.0-beta.2",
3228 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", 3578 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
...@@ -3272,6 +3622,25 @@ ...@@ -3272,6 +3622,25 @@
3272 "url": "https://github.com/sponsors/ljharb" 3622 "url": "https://github.com/sponsors/ljharb"
3273 } 3623 }
3274 }, 3624 },
3625 + "node_modules/glob": {
3626 + "version": "7.2.3",
3627 + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
3628 + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
3629 + "dependencies": {
3630 + "fs.realpath": "^1.0.0",
3631 + "inflight": "^1.0.4",
3632 + "inherits": "2",
3633 + "minimatch": "^3.1.1",
3634 + "once": "^1.3.0",
3635 + "path-is-absolute": "^1.0.0"
3636 + },
3637 + "engines": {
3638 + "node": "*"
3639 + },
3640 + "funding": {
3641 + "url": "https://github.com/sponsors/isaacs"
3642 + }
3643 + },
3275 "node_modules/glob-parent": { 3644 "node_modules/glob-parent": {
3276 "version": "5.1.2", 3645 "version": "5.1.2",
3277 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 3646 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
...@@ -3405,6 +3774,11 @@ ...@@ -3405,6 +3774,11 @@
3405 "url": "https://github.com/sponsors/ljharb" 3774 "url": "https://github.com/sponsors/ljharb"
3406 } 3775 }
3407 }, 3776 },
3777 + "node_modules/has-unicode": {
3778 + "version": "2.0.1",
3779 + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
3780 + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
3781 + },
3408 "node_modules/has-yarn": { 3782 "node_modules/has-yarn": {
3409 "version": "2.1.0", 3783 "version": "2.1.0",
3410 "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", 3784 "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz",
...@@ -3447,6 +3821,39 @@ ...@@ -3447,6 +3821,39 @@
3447 "node": ">= 0.8" 3821 "node": ">= 0.8"
3448 } 3822 }
3449 }, 3823 },
3824 + "node_modules/https-proxy-agent": {
3825 + "version": "5.0.1",
3826 + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
3827 + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
3828 + "dependencies": {
3829 + "agent-base": "6",
3830 + "debug": "4"
3831 + },
3832 + "engines": {
3833 + "node": ">= 6"
3834 + }
3835 + },
3836 + "node_modules/https-proxy-agent/node_modules/debug": {
3837 + "version": "4.3.4",
3838 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
3839 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
3840 + "dependencies": {
3841 + "ms": "2.1.2"
3842 + },
3843 + "engines": {
3844 + "node": ">=6.0"
3845 + },
3846 + "peerDependenciesMeta": {
3847 + "supports-color": {
3848 + "optional": true
3849 + }
3850 + }
3851 + },
3852 + "node_modules/https-proxy-agent/node_modules/ms": {
3853 + "version": "2.1.2",
3854 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3855 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
3856 + },
3450 "node_modules/iconv-lite": { 3857 "node_modules/iconv-lite": {
3451 "version": "0.4.24", 3858 "version": "0.4.24",
3452 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 3859 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
...@@ -3458,6 +3865,25 @@ ...@@ -3458,6 +3865,25 @@
3458 "node": ">=0.10.0" 3865 "node": ">=0.10.0"
3459 } 3866 }
3460 }, 3867 },
3868 + "node_modules/ieee754": {
3869 + "version": "1.2.1",
3870 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
3871 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
3872 + "funding": [
3873 + {
3874 + "type": "github",
3875 + "url": "https://github.com/sponsors/feross"
3876 + },
3877 + {
3878 + "type": "patreon",
3879 + "url": "https://www.patreon.com/feross"
3880 + },
3881 + {
3882 + "type": "consulting",
3883 + "url": "https://feross.org/support"
3884 + }
3885 + ]
3886 + },
3461 "node_modules/ignore-by-default": { 3887 "node_modules/ignore-by-default": {
3462 "version": "1.0.1", 3888 "version": "1.0.1",
3463 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", 3889 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
...@@ -3482,6 +3908,15 @@ ...@@ -3482,6 +3908,15 @@
3482 "node": ">=0.8.19" 3908 "node": ">=0.8.19"
3483 } 3909 }
3484 }, 3910 },
3911 + "node_modules/inflight": {
3912 + "version": "1.0.6",
3913 + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
3914 + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
3915 + "dependencies": {
3916 + "once": "^1.3.0",
3917 + "wrappy": "1"
3918 + }
3919 + },
3485 "node_modules/inherits": { 3920 "node_modules/inherits": {
3486 "version": "2.0.4", 3921 "version": "2.0.4",
3487 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 3922 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
...@@ -3510,6 +3945,11 @@ ...@@ -3510,6 +3945,11 @@
3510 "node": ">= 0.4" 3945 "node": ">= 0.4"
3511 } 3946 }
3512 }, 3947 },
3948 + "node_modules/ip": {
3949 + "version": "1.1.8",
3950 + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz",
3951 + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg=="
3952 + },
3513 "node_modules/ipaddr.js": { 3953 "node_modules/ipaddr.js": {
3514 "version": "1.9.1", 3954 "version": "1.9.1",
3515 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 3955 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
...@@ -3641,7 +4081,6 @@ ...@@ -3641,7 +4081,6 @@
3641 "version": "3.0.0", 4081 "version": "3.0.0",
3642 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 4082 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
3643 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 4083 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
3644 - "dev": true,
3645 "engines": { 4084 "engines": {
3646 "node": ">=8" 4085 "node": ">=8"
3647 } 4086 }
...@@ -3943,6 +4382,11 @@ ...@@ -3943,6 +4382,11 @@
3943 "promise": "^7.0.1" 4382 "promise": "^7.0.1"
3944 } 4383 }
3945 }, 4384 },
4385 + "node_modules/kareem": {
4386 + "version": "2.3.5",
4387 + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.5.tgz",
4388 + "integrity": "sha512-qxCyQtp3ioawkiRNQr/v8xw9KIviMSSNmy+63Wubj7KmMn3g7noRXIZB4vPCAP+ETi2SR8eH6CvmlKZuGpoHOg=="
4389 + },
3946 "node_modules/keyv": { 4390 "node_modules/keyv": {
3947 "version": "3.1.0", 4391 "version": "3.1.0",
3948 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", 4392 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz",
...@@ -3961,6 +4405,17 @@ ...@@ -3961,6 +4405,17 @@
3961 "node": ">=0.10.0" 4405 "node": ">=0.10.0"
3962 } 4406 }
3963 }, 4407 },
4408 + "node_modules/kruptein": {
4409 + "version": "3.0.4",
4410 + "resolved": "https://registry.npmjs.org/kruptein/-/kruptein-3.0.4.tgz",
4411 + "integrity": "sha512-614v+4fgOkcw98lI7rMO9HZ+Y2cK6MGYcR/NSVhRXcClUb72LTAf2NibAh8CKSjalY81rfrrjLQgb8TW9RP03Q==",
4412 + "dependencies": {
4413 + "asn1.js": "^5.4.1"
4414 + },
4415 + "engines": {
4416 + "node": ">8"
4417 + }
4418 + },
3964 "node_modules/latest-version": { 4419 "node_modules/latest-version": {
3965 "version": "5.1.0", 4420 "version": "5.1.0",
3966 "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", 4421 "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz",
...@@ -4033,7 +4488,6 @@ ...@@ -4033,7 +4488,6 @@
4033 "version": "6.0.0", 4488 "version": "6.0.0",
4034 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 4489 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
4035 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 4490 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
4036 - "dev": true,
4037 "dependencies": { 4491 "dependencies": {
4038 "yallist": "^4.0.0" 4492 "yallist": "^4.0.0"
4039 }, 4493 },
...@@ -4068,84 +4522,251 @@ ...@@ -4068,84 +4522,251 @@
4068 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 4522 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
4069 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", 4523 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
4070 "engines": { 4524 "engines": {
4071 - "node": ">= 0.6" 4525 + "node": ">= 0.6"
4526 + }
4527 + },
4528 + "node_modules/memory-pager": {
4529 + "version": "1.5.0",
4530 + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
4531 + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
4532 + "optional": true
4533 + },
4534 + "node_modules/merge-descriptors": {
4535 + "version": "1.0.1",
4536 + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
4537 + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
4538 + },
4539 + "node_modules/merge-stream": {
4540 + "version": "2.0.0",
4541 + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
4542 + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
4543 + "peer": true
4544 + },
4545 + "node_modules/methods": {
4546 + "version": "1.1.2",
4547 + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
4548 + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
4549 + "engines": {
4550 + "node": ">= 0.6"
4551 + }
4552 + },
4553 + "node_modules/mime": {
4554 + "version": "1.6.0",
4555 + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
4556 + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
4557 + "bin": {
4558 + "mime": "cli.js"
4559 + },
4560 + "engines": {
4561 + "node": ">=4"
4562 + }
4563 + },
4564 + "node_modules/mime-db": {
4565 + "version": "1.52.0",
4566 + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
4567 + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
4568 + "engines": {
4569 + "node": ">= 0.6"
4570 + }
4571 + },
4572 + "node_modules/mime-types": {
4573 + "version": "2.1.35",
4574 + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
4575 + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
4576 + "dependencies": {
4577 + "mime-db": "1.52.0"
4578 + },
4579 + "engines": {
4580 + "node": ">= 0.6"
4581 + }
4582 + },
4583 + "node_modules/mimic-response": {
4584 + "version": "1.0.1",
4585 + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
4586 + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
4587 + "dev": true,
4588 + "engines": {
4589 + "node": ">=4"
4590 + }
4591 + },
4592 + "node_modules/minimalistic-assert": {
4593 + "version": "1.0.1",
4594 + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
4595 + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
4596 + },
4597 + "node_modules/minimatch": {
4598 + "version": "3.1.2",
4599 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
4600 + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
4601 + "dependencies": {
4602 + "brace-expansion": "^1.1.7"
4603 + },
4604 + "engines": {
4605 + "node": "*"
4606 + }
4607 + },
4608 + "node_modules/minimist": {
4609 + "version": "1.2.6",
4610 + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
4611 + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
4612 + "dev": true
4613 + },
4614 + "node_modules/minipass": {
4615 + "version": "3.1.6",
4616 + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz",
4617 + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==",
4618 + "dependencies": {
4619 + "yallist": "^4.0.0"
4620 + },
4621 + "engines": {
4622 + "node": ">=8"
4623 + }
4624 + },
4625 + "node_modules/minizlib": {
4626 + "version": "2.1.2",
4627 + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
4628 + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
4629 + "dependencies": {
4630 + "minipass": "^3.0.0",
4631 + "yallist": "^4.0.0"
4632 + },
4633 + "engines": {
4634 + "node": ">= 8"
4635 + }
4636 + },
4637 + "node_modules/mkdirp": {
4638 + "version": "1.0.4",
4639 + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
4640 + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
4641 + "bin": {
4642 + "mkdirp": "bin/cmd.js"
4643 + },
4644 + "engines": {
4645 + "node": ">=10"
4646 + }
4647 + },
4648 + "node_modules/mongodb": {
4649 + "version": "4.5.0",
4650 + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.5.0.tgz",
4651 + "integrity": "sha512-A2l8MjEpKojnhbCM0MK3+UOGUSGvTNNSv7AkP1fsT7tkambrkkqN/5F2y+PhzsV0Nbv58u04TETpkaSEdI2zKA==",
4652 + "dependencies": {
4653 + "bson": "^4.6.2",
4654 + "denque": "^2.0.1",
4655 + "mongodb-connection-string-url": "^2.5.2",
4656 + "socks": "^2.6.2"
4657 + },
4658 + "engines": {
4659 + "node": ">=12.9.0"
4660 + },
4661 + "optionalDependencies": {
4662 + "saslprep": "^1.0.3"
4663 + }
4664 + },
4665 + "node_modules/mongodb-connection-string-url": {
4666 + "version": "2.5.2",
4667 + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz",
4668 + "integrity": "sha512-tWDyIG8cQlI5k3skB6ywaEA5F9f5OntrKKsT/Lteub2zgwSUlhqEN2inGgBTm8bpYJf8QYBdA/5naz65XDpczA==",
4669 + "dependencies": {
4670 + "@types/whatwg-url": "^8.2.1",
4671 + "whatwg-url": "^11.0.0"
4672 + }
4673 + },
4674 + "node_modules/mongodb-connection-string-url/node_modules/tr46": {
4675 + "version": "3.0.0",
4676 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
4677 + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
4678 + "dependencies": {
4679 + "punycode": "^2.1.1"
4680 + },
4681 + "engines": {
4682 + "node": ">=12"
4072 } 4683 }
4073 }, 4684 },
4074 - "node_modules/merge-descriptors": { 4685 + "node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": {
4075 - "version": "1.0.1", 4686 + "version": "7.0.0",
4076 - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 4687 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
4077 - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" 4688 + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
4078 - },
4079 - "node_modules/merge-stream": {
4080 - "version": "2.0.0",
4081 - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
4082 - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
4083 - "peer": true
4084 - },
4085 - "node_modules/methods": {
4086 - "version": "1.1.2",
4087 - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
4088 - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
4089 "engines": { 4689 "engines": {
4090 - "node": ">= 0.6" 4690 + "node": ">=12"
4091 } 4691 }
4092 }, 4692 },
4093 - "node_modules/mime": { 4693 + "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": {
4094 - "version": "1.6.0", 4694 + "version": "11.0.0",
4095 - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 4695 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
4096 - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", 4696 + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
4097 - "bin": { 4697 + "dependencies": {
4098 - "mime": "cli.js" 4698 + "tr46": "^3.0.0",
4699 + "webidl-conversions": "^7.0.0"
4099 }, 4700 },
4100 "engines": { 4701 "engines": {
4101 - "node": ">=4" 4702 + "node": ">=12"
4102 } 4703 }
4103 }, 4704 },
4104 - "node_modules/mime-db": { 4705 + "node_modules/mongoose": {
4105 - "version": "1.52.0", 4706 + "version": "6.3.5",
4106 - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 4707 + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.3.5.tgz",
4107 - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 4708 + "integrity": "sha512-Ho3b/MK3lFyb87NjzyVwrjCqQ5DuLsIPSMFYDuZjaIJNhZfHNPQIcUDR1RLZ0/l+uznwo0VBu3WSwdu8EfAZTA==",
4709 + "dependencies": {
4710 + "bson": "^4.6.2",
4711 + "kareem": "2.3.5",
4712 + "mongodb": "4.5.0",
4713 + "mpath": "0.9.0",
4714 + "mquery": "4.0.3",
4715 + "ms": "2.1.3",
4716 + "sift": "16.0.0"
4717 + },
4108 "engines": { 4718 "engines": {
4109 - "node": ">= 0.6" 4719 + "node": ">=12.0.0"
4720 + },
4721 + "funding": {
4722 + "type": "opencollective",
4723 + "url": "https://opencollective.com/mongoose"
4110 } 4724 }
4111 }, 4725 },
4112 - "node_modules/mime-types": { 4726 + "node_modules/mongoose/node_modules/ms": {
4113 - "version": "2.1.35", 4727 + "version": "2.1.3",
4114 - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 4728 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
4115 - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 4729 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
4116 - "dependencies": {
4117 - "mime-db": "1.52.0"
4118 }, 4730 },
4731 + "node_modules/mpath": {
4732 + "version": "0.9.0",
4733 + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
4734 + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==",
4119 "engines": { 4735 "engines": {
4120 - "node": ">= 0.6" 4736 + "node": ">=4.0.0"
4121 } 4737 }
4122 }, 4738 },
4123 - "node_modules/mimic-response": { 4739 + "node_modules/mquery": {
4124 - "version": "1.0.1", 4740 + "version": "4.0.3",
4125 - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", 4741 + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz",
4126 - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", 4742 + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==",
4127 - "dev": true, 4743 + "dependencies": {
4744 + "debug": "4.x"
4745 + },
4128 "engines": { 4746 "engines": {
4129 - "node": ">=4" 4747 + "node": ">=12.0.0"
4130 } 4748 }
4131 }, 4749 },
4132 - "node_modules/minimatch": { 4750 + "node_modules/mquery/node_modules/debug": {
4133 - "version": "3.1.2", 4751 + "version": "4.3.4",
4134 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 4752 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4135 - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 4753 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4136 - "dev": true,
4137 "dependencies": { 4754 "dependencies": {
4138 - "brace-expansion": "^1.1.7" 4755 + "ms": "2.1.2"
4139 }, 4756 },
4140 "engines": { 4757 "engines": {
4141 - "node": "*" 4758 + "node": ">=6.0"
4759 + },
4760 + "peerDependenciesMeta": {
4761 + "supports-color": {
4762 + "optional": true
4763 + }
4142 } 4764 }
4143 }, 4765 },
4144 - "node_modules/minimist": { 4766 + "node_modules/mquery/node_modules/ms": {
4145 - "version": "1.2.6", 4767 + "version": "2.1.2",
4146 - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", 4768 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
4147 - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", 4769 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
4148 - "dev": true
4149 }, 4770 },
4150 "node_modules/ms": { 4771 "node_modules/ms": {
4151 "version": "2.0.0", 4772 "version": "2.0.0",
...@@ -4166,6 +4787,11 @@ ...@@ -4166,6 +4787,11 @@
4166 "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", 4787 "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
4167 "peer": true 4788 "peer": true
4168 }, 4789 },
4790 + "node_modules/node-addon-api": {
4791 + "version": "3.2.1",
4792 + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz",
4793 + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A=="
4794 + },
4169 "node_modules/node-environment-flags": { 4795 "node_modules/node-environment-flags": {
4170 "version": "1.0.6", 4796 "version": "1.0.6",
4171 "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", 4797 "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz",
...@@ -4186,11 +4812,41 @@ ...@@ -4186,11 +4812,41 @@
4186 } 4812 }
4187 }, 4813 },
4188 "node_modules/node-fetch": { 4814 "node_modules/node-fetch": {
4189 - "version": "2.6.1", 4815 + "version": "2.6.7",
4190 - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", 4816 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
4191 - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", 4817 + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
4818 + "dependencies": {
4819 + "whatwg-url": "^5.0.0"
4820 + },
4192 "engines": { 4821 "engines": {
4193 "node": "4.x || >=6.0.0" 4822 "node": "4.x || >=6.0.0"
4823 + },
4824 + "peerDependencies": {
4825 + "encoding": "^0.1.0"
4826 + },
4827 + "peerDependenciesMeta": {
4828 + "encoding": {
4829 + "optional": true
4830 + }
4831 + }
4832 + },
4833 + "node_modules/node-fetch/node_modules/tr46": {
4834 + "version": "0.0.3",
4835 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
4836 + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o="
4837 + },
4838 + "node_modules/node-fetch/node_modules/webidl-conversions": {
4839 + "version": "3.0.1",
4840 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
4841 + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE="
4842 + },
4843 + "node_modules/node-fetch/node_modules/whatwg-url": {
4844 + "version": "5.0.0",
4845 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
4846 + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
4847 + "dependencies": {
4848 + "tr46": "~0.0.3",
4849 + "webidl-conversions": "^3.0.0"
4194 } 4850 }
4195 }, 4851 },
4196 "node_modules/node-releases": { 4852 "node_modules/node-releases": {
...@@ -4284,6 +4940,17 @@ ...@@ -4284,6 +4940,17 @@
4284 "node": ">=8" 4940 "node": ">=8"
4285 } 4941 }
4286 }, 4942 },
4943 + "node_modules/npmlog": {
4944 + "version": "5.0.1",
4945 + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
4946 + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==",
4947 + "dependencies": {
4948 + "are-we-there-yet": "^2.0.0",
4949 + "console-control-strings": "^1.1.0",
4950 + "gauge": "^3.0.0",
4951 + "set-blocking": "^2.0.0"
4952 + }
4953 + },
4287 "node_modules/object-assign": { 4954 "node_modules/object-assign": {
4288 "version": "4.1.1", 4955 "version": "4.1.1",
4289 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 4956 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
...@@ -4355,11 +5022,18 @@ ...@@ -4355,11 +5022,18 @@
4355 "node": ">= 0.8" 5022 "node": ">= 0.8"
4356 } 5023 }
4357 }, 5024 },
5025 + "node_modules/on-headers": {
5026 + "version": "1.0.2",
5027 + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
5028 + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==",
5029 + "engines": {
5030 + "node": ">= 0.8"
5031 + }
5032 + },
4358 "node_modules/once": { 5033 "node_modules/once": {
4359 "version": "1.4.0", 5034 "version": "1.4.0",
4360 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 5035 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
4361 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 5036 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
4362 - "dev": true,
4363 "dependencies": { 5037 "dependencies": {
4364 "wrappy": "1" 5038 "wrappy": "1"
4365 } 5039 }
...@@ -4448,6 +5122,14 @@ ...@@ -4448,6 +5122,14 @@
4448 "node": ">=4" 5122 "node": ">=4"
4449 } 5123 }
4450 }, 5124 },
5125 + "node_modules/path-is-absolute": {
5126 + "version": "1.0.1",
5127 + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
5128 + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
5129 + "engines": {
5130 + "node": ">=0.10.0"
5131 + }
5132 + },
4451 "node_modules/path-parse": { 5133 "node_modules/path-parse": {
4452 "version": "1.0.7", 5134 "version": "1.0.7",
4453 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 5135 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
...@@ -4696,6 +5378,14 @@ ...@@ -4696,6 +5378,14 @@
4696 "url": "https://github.com/sponsors/ljharb" 5378 "url": "https://github.com/sponsors/ljharb"
4697 } 5379 }
4698 }, 5380 },
5381 + "node_modules/random-bytes": {
5382 + "version": "1.0.0",
5383 + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz",
5384 + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==",
5385 + "engines": {
5386 + "node": ">= 0.8"
5387 + }
5388 + },
4699 "node_modules/randombytes": { 5389 "node_modules/randombytes": {
4700 "version": "2.1.0", 5390 "version": "2.1.0",
4701 "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 5391 "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
...@@ -4748,6 +5438,19 @@ ...@@ -4748,6 +5438,19 @@
4748 "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", 5438 "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
4749 "dev": true 5439 "dev": true
4750 }, 5440 },
5441 + "node_modules/readable-stream": {
5442 + "version": "3.6.0",
5443 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
5444 + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
5445 + "dependencies": {
5446 + "inherits": "^2.0.3",
5447 + "string_decoder": "^1.1.1",
5448 + "util-deprecate": "^1.0.1"
5449 + },
5450 + "engines": {
5451 + "node": ">= 6"
5452 + }
5453 + },
4751 "node_modules/readdirp": { 5454 "node_modules/readdirp": {
4752 "version": "3.6.0", 5455 "version": "3.6.0",
4753 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 5456 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
...@@ -4903,6 +5606,20 @@ ...@@ -4903,6 +5606,20 @@
4903 "lowercase-keys": "^1.0.0" 5606 "lowercase-keys": "^1.0.0"
4904 } 5607 }
4905 }, 5608 },
5609 + "node_modules/rimraf": {
5610 + "version": "3.0.2",
5611 + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
5612 + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
5613 + "dependencies": {
5614 + "glob": "^7.1.3"
5615 + },
5616 + "bin": {
5617 + "rimraf": "bin.js"
5618 + },
5619 + "funding": {
5620 + "url": "https://github.com/sponsors/isaacs"
5621 + }
5622 + },
4906 "node_modules/safe-buffer": { 5623 "node_modules/safe-buffer": {
4907 "version": "5.2.1", 5624 "version": "5.2.1",
4908 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 5625 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
...@@ -4927,6 +5644,18 @@ ...@@ -4927,6 +5644,18 @@
4927 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 5644 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
4928 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 5645 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
4929 }, 5646 },
5647 + "node_modules/saslprep": {
5648 + "version": "1.0.3",
5649 + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
5650 + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
5651 + "optional": true,
5652 + "dependencies": {
5653 + "sparse-bitfield": "^3.0.3"
5654 + },
5655 + "engines": {
5656 + "node": ">=6"
5657 + }
5658 + },
4930 "node_modules/schema-utils": { 5659 "node_modules/schema-utils": {
4931 "version": "2.7.1", 5660 "version": "2.7.1",
4932 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", 5661 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
...@@ -5015,6 +5744,11 @@ ...@@ -5015,6 +5744,11 @@
5015 "node": ">= 0.8.0" 5744 "node": ">= 0.8.0"
5016 } 5745 }
5017 }, 5746 },
5747 + "node_modules/set-blocking": {
5748 + "version": "2.0.0",
5749 + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
5750 + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
5751 + },
5018 "node_modules/setprototypeof": { 5752 "node_modules/setprototypeof": {
5019 "version": "1.2.0", 5753 "version": "1.2.0",
5020 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", 5754 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
...@@ -5045,11 +5779,37 @@ ...@@ -5045,11 +5779,37 @@
5045 "url": "https://github.com/sponsors/ljharb" 5779 "url": "https://github.com/sponsors/ljharb"
5046 } 5780 }
5047 }, 5781 },
5782 + "node_modules/sift": {
5783 + "version": "16.0.0",
5784 + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.0.tgz",
5785 + "integrity": "sha512-ILTjdP2Mv9V1kIxWMXeMTIRbOBrqKc4JAXmFMnFq3fKeyQ2Qwa3Dw1ubcye3vR+Y6ofA0b9gNDr/y2t6eUeIzQ=="
5786 + },
5048 "node_modules/signal-exit": { 5787 "node_modules/signal-exit": {
5049 "version": "3.0.7", 5788 "version": "3.0.7",
5050 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 5789 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
5051 - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", 5790 + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
5052 - "dev": true 5791 + },
5792 + "node_modules/smart-buffer": {
5793 + "version": "4.2.0",
5794 + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
5795 + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
5796 + "engines": {
5797 + "node": ">= 6.0.0",
5798 + "npm": ">= 3.0.0"
5799 + }
5800 + },
5801 + "node_modules/socks": {
5802 + "version": "2.6.2",
5803 + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz",
5804 + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==",
5805 + "dependencies": {
5806 + "ip": "^1.1.5",
5807 + "smart-buffer": "^4.2.0"
5808 + },
5809 + "engines": {
5810 + "node": ">= 10.13.0",
5811 + "npm": ">= 3.0.0"
5812 + }
5053 }, 5813 },
5054 "node_modules/source-map": { 5814 "node_modules/source-map": {
5055 "version": "0.6.1", 5815 "version": "0.6.1",
...@@ -5068,6 +5828,15 @@ ...@@ -5068,6 +5828,15 @@
5068 "source-map": "^0.6.0" 5828 "source-map": "^0.6.0"
5069 } 5829 }
5070 }, 5830 },
5831 + "node_modules/sparse-bitfield": {
5832 + "version": "3.0.3",
5833 + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
5834 + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
5835 + "optional": true,
5836 + "dependencies": {
5837 + "memory-pager": "^1.0.2"
5838 + }
5839 + },
5071 "node_modules/statuses": { 5840 "node_modules/statuses": {
5072 "version": "2.0.1", 5841 "version": "2.0.1",
5073 "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", 5842 "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
...@@ -5076,11 +5845,18 @@ ...@@ -5076,11 +5845,18 @@
5076 "node": ">= 0.8" 5845 "node": ">= 0.8"
5077 } 5846 }
5078 }, 5847 },
5848 + "node_modules/string_decoder": {
5849 + "version": "1.3.0",
5850 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
5851 + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
5852 + "dependencies": {
5853 + "safe-buffer": "~5.2.0"
5854 + }
5855 + },
5079 "node_modules/string-width": { 5856 "node_modules/string-width": {
5080 "version": "4.2.3", 5857 "version": "4.2.3",
5081 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 5858 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
5082 "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 5859 "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
5083 - "dev": true,
5084 "dependencies": { 5860 "dependencies": {
5085 "emoji-regex": "^8.0.0", 5861 "emoji-regex": "^8.0.0",
5086 "is-fullwidth-code-point": "^3.0.0", 5862 "is-fullwidth-code-point": "^3.0.0",
...@@ -5122,7 +5898,6 @@ ...@@ -5122,7 +5898,6 @@
5122 "version": "6.0.1", 5898 "version": "6.0.1",
5123 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 5899 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
5124 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 5900 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
5125 - "dev": true,
5126 "dependencies": { 5901 "dependencies": {
5127 "ansi-regex": "^5.0.1" 5902 "ansi-regex": "^5.0.1"
5128 }, 5903 },
...@@ -5170,6 +5945,22 @@ ...@@ -5170,6 +5945,22 @@
5170 "node": ">=6" 5945 "node": ">=6"
5171 } 5946 }
5172 }, 5947 },
5948 + "node_modules/tar": {
5949 + "version": "6.1.11",
5950 + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
5951 + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
5952 + "dependencies": {
5953 + "chownr": "^2.0.0",
5954 + "fs-minipass": "^2.0.0",
5955 + "minipass": "^3.0.0",
5956 + "minizlib": "^2.1.1",
5957 + "mkdirp": "^1.0.3",
5958 + "yallist": "^4.0.0"
5959 + },
5960 + "engines": {
5961 + "node": ">= 10"
5962 + }
5963 + },
5173 "node_modules/terser": { 5964 "node_modules/terser": {
5174 "version": "5.13.1", 5965 "version": "5.13.1",
5175 "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz", 5966 "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz",
...@@ -5354,6 +6145,17 @@ ...@@ -5354,6 +6145,17 @@
5354 "is-typedarray": "^1.0.0" 6145 "is-typedarray": "^1.0.0"
5355 } 6146 }
5356 }, 6147 },
6148 + "node_modules/uid-safe": {
6149 + "version": "2.1.5",
6150 + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz",
6151 + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==",
6152 + "dependencies": {
6153 + "random-bytes": "~1.0.0"
6154 + },
6155 + "engines": {
6156 + "node": ">= 0.8"
6157 + }
6158 + },
5357 "node_modules/unbox-primitive": { 6159 "node_modules/unbox-primitive": {
5358 "version": "1.0.2", 6160 "version": "1.0.2",
5359 "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", 6161 "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
...@@ -5568,6 +6370,11 @@ ...@@ -5568,6 +6370,11 @@
5568 "node": ">=4" 6370 "node": ">=4"
5569 } 6371 }
5570 }, 6372 },
6373 + "node_modules/util-deprecate": {
6374 + "version": "1.0.2",
6375 + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
6376 + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
6377 + },
5571 "node_modules/utils-merge": { 6378 "node_modules/utils-merge": {
5572 "version": "1.0.1", 6379 "version": "1.0.1",
5573 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 6380 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
...@@ -5724,6 +6531,14 @@ ...@@ -5724,6 +6531,14 @@
5724 "url": "https://github.com/sponsors/ljharb" 6531 "url": "https://github.com/sponsors/ljharb"
5725 } 6532 }
5726 }, 6533 },
6534 + "node_modules/wide-align": {
6535 + "version": "1.1.5",
6536 + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
6537 + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
6538 + "dependencies": {
6539 + "string-width": "^1.0.2 || 2 || 3 || 4"
6540 + }
6541 + },
5727 "node_modules/widest-line": { 6542 "node_modules/widest-line": {
5728 "version": "3.1.0", 6543 "version": "3.1.0",
5729 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 6544 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz",
...@@ -5803,8 +6618,7 @@ ...@@ -5803,8 +6618,7 @@
5803 "node_modules/wrappy": { 6618 "node_modules/wrappy": {
5804 "version": "1.0.2", 6619 "version": "1.0.2",
5805 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 6620 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
5806 - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 6621 + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
5807 - "dev": true
5808 }, 6622 },
5809 "node_modules/write-file-atomic": { 6623 "node_modules/write-file-atomic": {
5810 "version": "3.0.3", 6624 "version": "3.0.3",
...@@ -5830,8 +6644,7 @@ ...@@ -5830,8 +6644,7 @@
5830 "node_modules/yallist": { 6644 "node_modules/yallist": {
5831 "version": "4.0.0", 6645 "version": "4.0.0",
5832 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 6646 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
5833 - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 6647 + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
5834 - "dev": true
5835 } 6648 }
5836 }, 6649 },
5837 "dependencies": { 6650 "dependencies": {
...@@ -7002,6 +7815,55 @@ ...@@ -7002,6 +7815,55 @@
7002 "@jridgewell/sourcemap-codec": "^1.4.10" 7815 "@jridgewell/sourcemap-codec": "^1.4.10"
7003 } 7816 }
7004 }, 7817 },
7818 + "@mapbox/node-pre-gyp": {
7819 + "version": "1.0.9",
7820 + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz",
7821 + "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==",
7822 + "requires": {
7823 + "detect-libc": "^2.0.0",
7824 + "https-proxy-agent": "^5.0.0",
7825 + "make-dir": "^3.1.0",
7826 + "node-fetch": "^2.6.7",
7827 + "nopt": "^5.0.0",
7828 + "npmlog": "^5.0.1",
7829 + "rimraf": "^3.0.2",
7830 + "semver": "^7.3.5",
7831 + "tar": "^6.1.11"
7832 + },
7833 + "dependencies": {
7834 + "make-dir": {
7835 + "version": "3.1.0",
7836 + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
7837 + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
7838 + "requires": {
7839 + "semver": "^6.0.0"
7840 + },
7841 + "dependencies": {
7842 + "semver": {
7843 + "version": "6.3.0",
7844 + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
7845 + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
7846 + }
7847 + }
7848 + },
7849 + "nopt": {
7850 + "version": "5.0.0",
7851 + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
7852 + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
7853 + "requires": {
7854 + "abbrev": "1"
7855 + }
7856 + },
7857 + "semver": {
7858 + "version": "7.3.7",
7859 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
7860 + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
7861 + "requires": {
7862 + "lru-cache": "^6.0.0"
7863 + }
7864 + }
7865 + }
7866 + },
7005 "@sindresorhus/is": { 7867 "@sindresorhus/is": {
7006 "version": "0.14.0", 7868 "version": "0.14.0",
7007 "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", 7869 "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
...@@ -7051,8 +7913,21 @@ ...@@ -7051,8 +7913,21 @@
7051 "@types/node": { 7913 "@types/node": {
7052 "version": "17.0.33", 7914 "version": "17.0.33",
7053 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.33.tgz", 7915 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.33.tgz",
7054 - "integrity": "sha512-miWq2m2FiQZmaHfdZNcbpp9PuXg34W5JZ5CrJ/BaS70VuhoJENBEQybeiYSaPBRNq6KQGnjfEnc/F3PN++D+XQ==", 7916 + "integrity": "sha512-miWq2m2FiQZmaHfdZNcbpp9PuXg34W5JZ5CrJ/BaS70VuhoJENBEQybeiYSaPBRNq6KQGnjfEnc/F3PN++D+XQ=="
7055 - "peer": true 7917 + },
7918 + "@types/webidl-conversions": {
7919 + "version": "6.1.1",
7920 + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz",
7921 + "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q=="
7922 + },
7923 + "@types/whatwg-url": {
7924 + "version": "8.2.1",
7925 + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz",
7926 + "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==",
7927 + "requires": {
7928 + "@types/node": "*",
7929 + "@types/webidl-conversions": "*"
7930 + }
7056 }, 7931 },
7057 "@webassemblyjs/ast": { 7932 "@webassemblyjs/ast": {
7058 "version": "1.11.1", 7933 "version": "1.11.1",
...@@ -7215,8 +8090,7 @@ ...@@ -7215,8 +8090,7 @@
7215 "abbrev": { 8090 "abbrev": {
7216 "version": "1.1.1", 8091 "version": "1.1.1",
7217 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 8092 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
7218 - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", 8093 + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
7219 - "dev": true
7220 }, 8094 },
7221 "accepts": { 8095 "accepts": {
7222 "version": "1.3.8", 8096 "version": "1.3.8",
...@@ -7240,6 +8114,29 @@ ...@@ -7240,6 +8114,29 @@
7240 "peer": true, 8114 "peer": true,
7241 "requires": {} 8115 "requires": {}
7242 }, 8116 },
8117 + "agent-base": {
8118 + "version": "6.0.2",
8119 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
8120 + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
8121 + "requires": {
8122 + "debug": "4"
8123 + },
8124 + "dependencies": {
8125 + "debug": {
8126 + "version": "4.3.4",
8127 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
8128 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
8129 + "requires": {
8130 + "ms": "2.1.2"
8131 + }
8132 + },
8133 + "ms": {
8134 + "version": "2.1.2",
8135 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
8136 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
8137 + }
8138 + }
8139 + },
7243 "ajv": { 8140 "ajv": {
7244 "version": "6.12.6", 8141 "version": "6.12.6",
7245 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 8142 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
...@@ -7269,8 +8166,7 @@ ...@@ -7269,8 +8166,7 @@
7269 "ansi-regex": { 8166 "ansi-regex": {
7270 "version": "5.0.1", 8167 "version": "5.0.1",
7271 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 8168 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
7272 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 8169 + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
7273 - "dev": true
7274 }, 8170 },
7275 "ansi-styles": { 8171 "ansi-styles": {
7276 "version": "3.2.1", 8172 "version": "3.2.1",
...@@ -7290,6 +8186,20 @@ ...@@ -7290,6 +8186,20 @@
7290 "picomatch": "^2.0.4" 8186 "picomatch": "^2.0.4"
7291 } 8187 }
7292 }, 8188 },
8189 + "aproba": {
8190 + "version": "2.0.0",
8191 + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
8192 + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ=="
8193 + },
8194 + "are-we-there-yet": {
8195 + "version": "2.0.0",
8196 + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz",
8197 + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==",
8198 + "requires": {
8199 + "delegates": "^1.0.0",
8200 + "readable-stream": "^3.6.0"
8201 + }
8202 + },
7293 "array-flatten": { 8203 "array-flatten": {
7294 "version": "1.1.1", 8204 "version": "1.1.1",
7295 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 8205 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
...@@ -7300,6 +8210,17 @@ ...@@ -7300,6 +8210,17 @@
7300 "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", 8210 "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
7301 "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" 8211 "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
7302 }, 8212 },
8213 + "asn1.js": {
8214 + "version": "5.4.1",
8215 + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
8216 + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
8217 + "requires": {
8218 + "bn.js": "^4.0.0",
8219 + "inherits": "^2.0.1",
8220 + "minimalistic-assert": "^1.0.0",
8221 + "safer-buffer": "^2.1.0"
8222 + }
8223 + },
7303 "assert-never": { 8224 "assert-never": {
7304 "version": "1.2.1", 8225 "version": "1.2.1",
7305 "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", 8226 "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz",
...@@ -7424,8 +8345,21 @@ ...@@ -7424,8 +8345,21 @@
7424 "balanced-match": { 8345 "balanced-match": {
7425 "version": "1.0.2", 8346 "version": "1.0.2",
7426 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 8347 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
7427 - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 8348 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
7428 - "dev": true 8349 + },
8350 + "base64-js": {
8351 + "version": "1.5.1",
8352 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
8353 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
8354 + },
8355 + "bcrypt": {
8356 + "version": "5.0.1",
8357 + "resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.0.1.tgz",
8358 + "integrity": "sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw==",
8359 + "requires": {
8360 + "@mapbox/node-pre-gyp": "^1.0.0",
8361 + "node-addon-api": "^3.1.0"
8362 + }
7429 }, 8363 },
7430 "big.js": { 8364 "big.js": {
7431 "version": "5.2.2", 8365 "version": "5.2.2",
...@@ -7438,6 +8372,11 @@ ...@@ -7438,6 +8372,11 @@
7438 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 8372 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
7439 "dev": true 8373 "dev": true
7440 }, 8374 },
8375 + "bn.js": {
8376 + "version": "4.12.0",
8377 + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
8378 + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
8379 + },
7441 "body-parser": { 8380 "body-parser": {
7442 "version": "1.20.0", 8381 "version": "1.20.0",
7443 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", 8382 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz",
...@@ -7528,7 +8467,6 @@ ...@@ -7528,7 +8467,6 @@
7528 "version": "1.1.11", 8467 "version": "1.1.11",
7529 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 8468 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
7530 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 8469 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
7531 - "dev": true,
7532 "requires": { 8470 "requires": {
7533 "balanced-match": "^1.0.0", 8471 "balanced-match": "^1.0.0",
7534 "concat-map": "0.0.1" 8472 "concat-map": "0.0.1"
...@@ -7555,6 +8493,23 @@ ...@@ -7555,6 +8493,23 @@
7555 "picocolors": "^1.0.0" 8493 "picocolors": "^1.0.0"
7556 } 8494 }
7557 }, 8495 },
8496 + "bson": {
8497 + "version": "4.6.4",
8498 + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.4.tgz",
8499 + "integrity": "sha512-TdQ3FzguAu5HKPPlr0kYQCyrYUYh8tFM+CMTpxjNzVzxeiJY00Rtuj3LXLHSgiGvmaWlZ8PE+4KyM2thqE38pQ==",
8500 + "requires": {
8501 + "buffer": "^5.6.0"
8502 + }
8503 + },
8504 + "buffer": {
8505 + "version": "5.7.1",
8506 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
8507 + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
8508 + "requires": {
8509 + "base64-js": "^1.3.1",
8510 + "ieee754": "^1.1.13"
8511 + }
8512 + },
7558 "buffer-from": { 8513 "buffer-from": {
7559 "version": "1.1.2", 8514 "version": "1.1.2",
7560 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", 8515 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
...@@ -7651,6 +8606,11 @@ ...@@ -7651,6 +8606,11 @@
7651 "readdirp": "~3.6.0" 8606 "readdirp": "~3.6.0"
7652 } 8607 }
7653 }, 8608 },
8609 + "chownr": {
8610 + "version": "2.0.0",
8611 + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
8612 + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
8613 + },
7654 "chrome-trace-event": { 8614 "chrome-trace-event": {
7655 "version": "1.0.3", 8615 "version": "1.0.3",
7656 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", 8616 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
...@@ -7702,6 +8662,11 @@ ...@@ -7702,6 +8662,11 @@
7702 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 8662 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
7703 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" 8663 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
7704 }, 8664 },
8665 + "color-support": {
8666 + "version": "1.1.3",
8667 + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
8668 + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg=="
8669 + },
7705 "commander": { 8670 "commander": {
7706 "version": "4.1.1", 8671 "version": "4.1.1",
7707 "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", 8672 "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
...@@ -7716,8 +8681,7 @@ ...@@ -7716,8 +8681,7 @@
7716 "concat-map": { 8681 "concat-map": {
7717 "version": "0.0.1", 8682 "version": "0.0.1",
7718 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 8683 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
7719 - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 8684 + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
7720 - "dev": true
7721 }, 8685 },
7722 "configstore": { 8686 "configstore": {
7723 "version": "5.0.1", 8687 "version": "5.0.1",
...@@ -7744,6 +8708,35 @@ ...@@ -7744,6 +8708,35 @@
7744 } 8708 }
7745 } 8709 }
7746 }, 8710 },
8711 + "connect-mongo": {
8712 + "version": "4.6.0",
8713 + "resolved": "https://registry.npmjs.org/connect-mongo/-/connect-mongo-4.6.0.tgz",
8714 + "integrity": "sha512-8new4Z7NLP3CGP65Aw6ls3xDBeKVvHRSh39CXuDZTQsvpeeU9oNMzfFgvqmHqZ6gWpxIl663RyoVEmCAGf1yOg==",
8715 + "requires": {
8716 + "debug": "^4.3.1",
8717 + "kruptein": "^3.0.0"
8718 + },
8719 + "dependencies": {
8720 + "debug": {
8721 + "version": "4.3.4",
8722 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
8723 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
8724 + "requires": {
8725 + "ms": "2.1.2"
8726 + }
8727 + },
8728 + "ms": {
8729 + "version": "2.1.2",
8730 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
8731 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
8732 + }
8733 + }
8734 + },
8735 + "console-control-strings": {
8736 + "version": "1.1.0",
8737 + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
8738 + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ=="
8739 + },
7747 "constantinople": { 8740 "constantinople": {
7748 "version": "4.0.1", 8741 "version": "4.0.1",
7749 "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", 8742 "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz",
...@@ -7860,6 +8853,16 @@ ...@@ -7860,6 +8853,16 @@
7860 "object-keys": "^1.1.1" 8853 "object-keys": "^1.1.1"
7861 } 8854 }
7862 }, 8855 },
8856 + "delegates": {
8857 + "version": "1.0.0",
8858 + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
8859 + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ=="
8860 + },
8861 + "denque": {
8862 + "version": "2.0.1",
8863 + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz",
8864 + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ=="
8865 + },
7863 "depd": { 8866 "depd": {
7864 "version": "2.0.0", 8867 "version": "2.0.0",
7865 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 8868 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
...@@ -7870,6 +8873,11 @@ ...@@ -7870,6 +8873,11 @@
7870 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", 8873 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
7871 "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" 8874 "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg=="
7872 }, 8875 },
8876 + "detect-libc": {
8877 + "version": "2.0.1",
8878 + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz",
8879 + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w=="
8880 + },
7873 "doctypes": { 8881 "doctypes": {
7874 "version": "1.1.0", 8882 "version": "1.1.0",
7875 "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", 8883 "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz",
...@@ -7908,8 +8916,7 @@ ...@@ -7908,8 +8916,7 @@
7908 "emoji-regex": { 8916 "emoji-regex": {
7909 "version": "8.0.0", 8917 "version": "8.0.0",
7910 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 8918 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
7911 - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 8919 + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
7912 - "dev": true
7913 }, 8920 },
7914 "emojis-list": { 8921 "emojis-list": {
7915 "version": "3.0.0", 8922 "version": "3.0.0",
...@@ -8097,6 +9104,28 @@ ...@@ -8097,6 +9104,28 @@
8097 "vary": "~1.1.2" 9104 "vary": "~1.1.2"
8098 } 9105 }
8099 }, 9106 },
9107 + "express-session": {
9108 + "version": "1.17.3",
9109 + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz",
9110 + "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==",
9111 + "requires": {
9112 + "cookie": "0.4.2",
9113 + "cookie-signature": "1.0.6",
9114 + "debug": "2.6.9",
9115 + "depd": "~2.0.0",
9116 + "on-headers": "~1.0.2",
9117 + "parseurl": "~1.3.3",
9118 + "safe-buffer": "5.2.1",
9119 + "uid-safe": "~2.1.5"
9120 + },
9121 + "dependencies": {
9122 + "cookie": {
9123 + "version": "0.4.2",
9124 + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
9125 + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA=="
9126 + }
9127 + }
9128 + },
8100 "fast-deep-equal": { 9129 "fast-deep-equal": {
8101 "version": "3.1.3", 9130 "version": "3.1.3",
8102 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 9131 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
...@@ -8160,6 +9189,19 @@ ...@@ -8160,6 +9189,19 @@
8160 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 9189 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
8161 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" 9190 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
8162 }, 9191 },
9192 + "fs-minipass": {
9193 + "version": "2.1.0",
9194 + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
9195 + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
9196 + "requires": {
9197 + "minipass": "^3.0.0"
9198 + }
9199 + },
9200 + "fs.realpath": {
9201 + "version": "1.0.0",
9202 + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
9203 + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
9204 + },
8163 "fsevents": { 9205 "fsevents": {
8164 "version": "2.3.2", 9206 "version": "2.3.2",
8165 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 9207 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
...@@ -8190,6 +9232,22 @@ ...@@ -8190,6 +9232,22 @@
8190 "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", 9232 "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
8191 "dev": true 9233 "dev": true
8192 }, 9234 },
9235 + "gauge": {
9236 + "version": "3.0.2",
9237 + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz",
9238 + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==",
9239 + "requires": {
9240 + "aproba": "^1.0.3 || ^2.0.0",
9241 + "color-support": "^1.1.2",
9242 + "console-control-strings": "^1.0.0",
9243 + "has-unicode": "^2.0.1",
9244 + "object-assign": "^4.1.1",
9245 + "signal-exit": "^3.0.0",
9246 + "string-width": "^4.2.3",
9247 + "strip-ansi": "^6.0.1",
9248 + "wide-align": "^1.1.2"
9249 + }
9250 + },
8193 "gensync": { 9251 "gensync": {
8194 "version": "1.0.0-beta.2", 9252 "version": "1.0.0-beta.2",
8195 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", 9253 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
...@@ -8224,6 +9282,19 @@ ...@@ -8224,6 +9282,19 @@
8224 "get-intrinsic": "^1.1.1" 9282 "get-intrinsic": "^1.1.1"
8225 } 9283 }
8226 }, 9284 },
9285 + "glob": {
9286 + "version": "7.2.3",
9287 + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
9288 + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
9289 + "requires": {
9290 + "fs.realpath": "^1.0.0",
9291 + "inflight": "^1.0.4",
9292 + "inherits": "2",
9293 + "minimatch": "^3.1.1",
9294 + "once": "^1.3.0",
9295 + "path-is-absolute": "^1.0.0"
9296 + }
9297 + },
8227 "glob-parent": { 9298 "glob-parent": {
8228 "version": "5.1.2", 9299 "version": "5.1.2",
8229 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 9300 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
...@@ -8318,6 +9389,11 @@ ...@@ -8318,6 +9389,11 @@
8318 "has-symbols": "^1.0.2" 9389 "has-symbols": "^1.0.2"
8319 } 9390 }
8320 }, 9391 },
9392 + "has-unicode": {
9393 + "version": "2.0.1",
9394 + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
9395 + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
9396 + },
8321 "has-yarn": { 9397 "has-yarn": {
8322 "version": "2.1.0", 9398 "version": "2.1.0",
8323 "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", 9399 "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz",
...@@ -8351,6 +9427,30 @@ ...@@ -8351,6 +9427,30 @@
8351 "toidentifier": "1.0.1" 9427 "toidentifier": "1.0.1"
8352 } 9428 }
8353 }, 9429 },
9430 + "https-proxy-agent": {
9431 + "version": "5.0.1",
9432 + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
9433 + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
9434 + "requires": {
9435 + "agent-base": "6",
9436 + "debug": "4"
9437 + },
9438 + "dependencies": {
9439 + "debug": {
9440 + "version": "4.3.4",
9441 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
9442 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
9443 + "requires": {
9444 + "ms": "2.1.2"
9445 + }
9446 + },
9447 + "ms": {
9448 + "version": "2.1.2",
9449 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
9450 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
9451 + }
9452 + }
9453 + },
8354 "iconv-lite": { 9454 "iconv-lite": {
8355 "version": "0.4.24", 9455 "version": "0.4.24",
8356 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 9456 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
...@@ -8359,6 +9459,11 @@ ...@@ -8359,6 +9459,11 @@
8359 "safer-buffer": ">= 2.1.2 < 3" 9459 "safer-buffer": ">= 2.1.2 < 3"
8360 } 9460 }
8361 }, 9461 },
9462 + "ieee754": {
9463 + "version": "1.2.1",
9464 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
9465 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
9466 + },
8362 "ignore-by-default": { 9467 "ignore-by-default": {
8363 "version": "1.0.1", 9468 "version": "1.0.1",
8364 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", 9469 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
...@@ -8377,6 +9482,15 @@ ...@@ -8377,6 +9482,15 @@
8377 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 9482 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
8378 "dev": true 9483 "dev": true
8379 }, 9484 },
9485 + "inflight": {
9486 + "version": "1.0.6",
9487 + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
9488 + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
9489 + "requires": {
9490 + "once": "^1.3.0",
9491 + "wrappy": "1"
9492 + }
9493 + },
8380 "inherits": { 9494 "inherits": {
8381 "version": "2.0.4", 9495 "version": "2.0.4",
8382 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 9496 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
...@@ -8399,6 +9513,11 @@ ...@@ -8399,6 +9513,11 @@
8399 "side-channel": "^1.0.4" 9513 "side-channel": "^1.0.4"
8400 } 9514 }
8401 }, 9515 },
9516 + "ip": {
9517 + "version": "1.1.8",
9518 + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz",
9519 + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg=="
9520 + },
8402 "ipaddr.js": { 9521 "ipaddr.js": {
8403 "version": "1.9.1", 9522 "version": "1.9.1",
8404 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 9523 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
...@@ -8489,8 +9608,7 @@ ...@@ -8489,8 +9608,7 @@
8489 "is-fullwidth-code-point": { 9608 "is-fullwidth-code-point": {
8490 "version": "3.0.0", 9609 "version": "3.0.0",
8491 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 9610 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
8492 - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 9611 + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
8493 - "dev": true
8494 }, 9612 },
8495 "is-glob": { 9613 "is-glob": {
8496 "version": "4.0.3", 9614 "version": "4.0.3",
...@@ -8701,6 +9819,11 @@ ...@@ -8701,6 +9819,11 @@
8701 "promise": "^7.0.1" 9819 "promise": "^7.0.1"
8702 } 9820 }
8703 }, 9821 },
9822 + "kareem": {
9823 + "version": "2.3.5",
9824 + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.5.tgz",
9825 + "integrity": "sha512-qxCyQtp3ioawkiRNQr/v8xw9KIviMSSNmy+63Wubj7KmMn3g7noRXIZB4vPCAP+ETi2SR8eH6CvmlKZuGpoHOg=="
9826 + },
8704 "keyv": { 9827 "keyv": {
8705 "version": "3.1.0", 9828 "version": "3.1.0",
8706 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", 9829 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz",
...@@ -8716,6 +9839,14 @@ ...@@ -8716,6 +9839,14 @@
8716 "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 9839 "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
8717 "dev": true 9840 "dev": true
8718 }, 9841 },
9842 + "kruptein": {
9843 + "version": "3.0.4",
9844 + "resolved": "https://registry.npmjs.org/kruptein/-/kruptein-3.0.4.tgz",
9845 + "integrity": "sha512-614v+4fgOkcw98lI7rMO9HZ+Y2cK6MGYcR/NSVhRXcClUb72LTAf2NibAh8CKSjalY81rfrrjLQgb8TW9RP03Q==",
9846 + "requires": {
9847 + "asn1.js": "^5.4.1"
9848 + }
9849 + },
8719 "latest-version": { 9850 "latest-version": {
8720 "version": "5.1.0", 9851 "version": "5.1.0",
8721 "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", 9852 "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz",
...@@ -8773,7 +9904,6 @@ ...@@ -8773,7 +9904,6 @@
8773 "version": "6.0.0", 9904 "version": "6.0.0",
8774 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 9905 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
8775 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 9906 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
8776 - "dev": true,
8777 "requires": { 9907 "requires": {
8778 "yallist": "^4.0.0" 9908 "yallist": "^4.0.0"
8779 } 9909 }
...@@ -8801,6 +9931,12 @@ ...@@ -8801,6 +9931,12 @@
8801 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 9931 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
8802 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" 9932 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
8803 }, 9933 },
9934 + "memory-pager": {
9935 + "version": "1.5.0",
9936 + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
9937 + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
9938 + "optional": true
9939 + },
8804 "merge-descriptors": { 9940 "merge-descriptors": {
8805 "version": "1.0.1", 9941 "version": "1.0.1",
8806 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 9942 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
...@@ -8841,11 +9977,15 @@ ...@@ -8841,11 +9977,15 @@
8841 "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", 9977 "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
8842 "dev": true 9978 "dev": true
8843 }, 9979 },
9980 + "minimalistic-assert": {
9981 + "version": "1.0.1",
9982 + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
9983 + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
9984 + },
8844 "minimatch": { 9985 "minimatch": {
8845 "version": "3.1.2", 9986 "version": "3.1.2",
8846 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 9987 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
8847 "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 9988 "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
8848 - "dev": true,
8849 "requires": { 9989 "requires": {
8850 "brace-expansion": "^1.1.7" 9990 "brace-expansion": "^1.1.7"
8851 } 9991 }
...@@ -8856,6 +9996,122 @@ ...@@ -8856,6 +9996,122 @@
8856 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", 9996 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
8857 "dev": true 9997 "dev": true
8858 }, 9998 },
9999 + "minipass": {
10000 + "version": "3.1.6",
10001 + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz",
10002 + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==",
10003 + "requires": {
10004 + "yallist": "^4.0.0"
10005 + }
10006 + },
10007 + "minizlib": {
10008 + "version": "2.1.2",
10009 + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
10010 + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
10011 + "requires": {
10012 + "minipass": "^3.0.0",
10013 + "yallist": "^4.0.0"
10014 + }
10015 + },
10016 + "mkdirp": {
10017 + "version": "1.0.4",
10018 + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
10019 + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
10020 + },
10021 + "mongodb": {
10022 + "version": "4.5.0",
10023 + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.5.0.tgz",
10024 + "integrity": "sha512-A2l8MjEpKojnhbCM0MK3+UOGUSGvTNNSv7AkP1fsT7tkambrkkqN/5F2y+PhzsV0Nbv58u04TETpkaSEdI2zKA==",
10025 + "requires": {
10026 + "bson": "^4.6.2",
10027 + "denque": "^2.0.1",
10028 + "mongodb-connection-string-url": "^2.5.2",
10029 + "saslprep": "^1.0.3",
10030 + "socks": "^2.6.2"
10031 + }
10032 + },
10033 + "mongodb-connection-string-url": {
10034 + "version": "2.5.2",
10035 + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz",
10036 + "integrity": "sha512-tWDyIG8cQlI5k3skB6ywaEA5F9f5OntrKKsT/Lteub2zgwSUlhqEN2inGgBTm8bpYJf8QYBdA/5naz65XDpczA==",
10037 + "requires": {
10038 + "@types/whatwg-url": "^8.2.1",
10039 + "whatwg-url": "^11.0.0"
10040 + },
10041 + "dependencies": {
10042 + "tr46": {
10043 + "version": "3.0.0",
10044 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
10045 + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
10046 + "requires": {
10047 + "punycode": "^2.1.1"
10048 + }
10049 + },
10050 + "webidl-conversions": {
10051 + "version": "7.0.0",
10052 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
10053 + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g=="
10054 + },
10055 + "whatwg-url": {
10056 + "version": "11.0.0",
10057 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
10058 + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
10059 + "requires": {
10060 + "tr46": "^3.0.0",
10061 + "webidl-conversions": "^7.0.0"
10062 + }
10063 + }
10064 + }
10065 + },
10066 + "mongoose": {
10067 + "version": "6.3.5",
10068 + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.3.5.tgz",
10069 + "integrity": "sha512-Ho3b/MK3lFyb87NjzyVwrjCqQ5DuLsIPSMFYDuZjaIJNhZfHNPQIcUDR1RLZ0/l+uznwo0VBu3WSwdu8EfAZTA==",
10070 + "requires": {
10071 + "bson": "^4.6.2",
10072 + "kareem": "2.3.5",
10073 + "mongodb": "4.5.0",
10074 + "mpath": "0.9.0",
10075 + "mquery": "4.0.3",
10076 + "ms": "2.1.3",
10077 + "sift": "16.0.0"
10078 + },
10079 + "dependencies": {
10080 + "ms": {
10081 + "version": "2.1.3",
10082 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
10083 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
10084 + }
10085 + }
10086 + },
10087 + "mpath": {
10088 + "version": "0.9.0",
10089 + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
10090 + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew=="
10091 + },
10092 + "mquery": {
10093 + "version": "4.0.3",
10094 + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz",
10095 + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==",
10096 + "requires": {
10097 + "debug": "4.x"
10098 + },
10099 + "dependencies": {
10100 + "debug": {
10101 + "version": "4.3.4",
10102 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
10103 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
10104 + "requires": {
10105 + "ms": "2.1.2"
10106 + }
10107 + },
10108 + "ms": {
10109 + "version": "2.1.2",
10110 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
10111 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
10112 + }
10113 + }
10114 + },
8859 "ms": { 10115 "ms": {
8860 "version": "2.0.0", 10116 "version": "2.0.0",
8861 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 10117 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
...@@ -8872,6 +10128,11 @@ ...@@ -8872,6 +10128,11 @@
8872 "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", 10128 "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
8873 "peer": true 10129 "peer": true
8874 }, 10130 },
10131 + "node-addon-api": {
10132 + "version": "3.2.1",
10133 + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz",
10134 + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A=="
10135 + },
8875 "node-environment-flags": { 10136 "node-environment-flags": {
8876 "version": "1.0.6", 10137 "version": "1.0.6",
8877 "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", 10138 "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz",
...@@ -8891,9 +10152,33 @@ ...@@ -8891,9 +10152,33 @@
8891 } 10152 }
8892 }, 10153 },
8893 "node-fetch": { 10154 "node-fetch": {
8894 - "version": "2.6.1", 10155 + "version": "2.6.7",
8895 - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", 10156 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
8896 - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" 10157 + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
10158 + "requires": {
10159 + "whatwg-url": "^5.0.0"
10160 + },
10161 + "dependencies": {
10162 + "tr46": {
10163 + "version": "0.0.3",
10164 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
10165 + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o="
10166 + },
10167 + "webidl-conversions": {
10168 + "version": "3.0.1",
10169 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
10170 + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE="
10171 + },
10172 + "whatwg-url": {
10173 + "version": "5.0.0",
10174 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
10175 + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
10176 + "requires": {
10177 + "tr46": "~0.0.3",
10178 + "webidl-conversions": "^3.0.0"
10179 + }
10180 + }
10181 + }
8897 }, 10182 },
8898 "node-releases": { 10183 "node-releases": {
8899 "version": "2.0.4", 10184 "version": "2.0.4",
...@@ -8962,6 +10247,17 @@ ...@@ -8962,6 +10247,17 @@
8962 "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", 10247 "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==",
8963 "dev": true 10248 "dev": true
8964 }, 10249 },
10250 + "npmlog": {
10251 + "version": "5.0.1",
10252 + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
10253 + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==",
10254 + "requires": {
10255 + "are-we-there-yet": "^2.0.0",
10256 + "console-control-strings": "^1.1.0",
10257 + "gauge": "^3.0.0",
10258 + "set-blocking": "^2.0.0"
10259 + }
10260 + },
8965 "object-assign": { 10261 "object-assign": {
8966 "version": "4.1.1", 10262 "version": "4.1.1",
8967 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 10263 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
...@@ -9009,11 +10305,15 @@ ...@@ -9009,11 +10305,15 @@
9009 "ee-first": "1.1.1" 10305 "ee-first": "1.1.1"
9010 } 10306 }
9011 }, 10307 },
10308 + "on-headers": {
10309 + "version": "1.0.2",
10310 + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
10311 + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA=="
10312 + },
9012 "once": { 10313 "once": {
9013 "version": "1.4.0", 10314 "version": "1.4.0",
9014 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 10315 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
9015 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 10316 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
9016 - "dev": true,
9017 "requires": { 10317 "requires": {
9018 "wrappy": "1" 10318 "wrappy": "1"
9019 } 10319 }
...@@ -9075,6 +10375,11 @@ ...@@ -9075,6 +10375,11 @@
9075 "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 10375 "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
9076 "dev": true 10376 "dev": true
9077 }, 10377 },
10378 + "path-is-absolute": {
10379 + "version": "1.0.1",
10380 + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
10381 + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
10382 + },
9078 "path-parse": { 10383 "path-parse": {
9079 "version": "1.0.7", 10384 "version": "1.0.7",
9080 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 10385 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
...@@ -9290,6 +10595,11 @@ ...@@ -9290,6 +10595,11 @@
9290 "side-channel": "^1.0.4" 10595 "side-channel": "^1.0.4"
9291 } 10596 }
9292 }, 10597 },
10598 + "random-bytes": {
10599 + "version": "1.0.0",
10600 + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz",
10601 + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ=="
10602 + },
9293 "randombytes": { 10603 "randombytes": {
9294 "version": "2.1.0", 10604 "version": "2.1.0",
9295 "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 10605 "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
...@@ -9335,6 +10645,16 @@ ...@@ -9335,6 +10645,16 @@
9335 } 10645 }
9336 } 10646 }
9337 }, 10647 },
10648 + "readable-stream": {
10649 + "version": "3.6.0",
10650 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
10651 + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
10652 + "requires": {
10653 + "inherits": "^2.0.3",
10654 + "string_decoder": "^1.1.1",
10655 + "util-deprecate": "^1.0.1"
10656 + }
10657 + },
9338 "readdirp": { 10658 "readdirp": {
9339 "version": "3.6.0", 10659 "version": "3.6.0",
9340 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 10660 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
...@@ -9459,6 +10779,14 @@ ...@@ -9459,6 +10779,14 @@
9459 "lowercase-keys": "^1.0.0" 10779 "lowercase-keys": "^1.0.0"
9460 } 10780 }
9461 }, 10781 },
10782 + "rimraf": {
10783 + "version": "3.0.2",
10784 + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
10785 + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
10786 + "requires": {
10787 + "glob": "^7.1.3"
10788 + }
10789 + },
9462 "safe-buffer": { 10790 "safe-buffer": {
9463 "version": "5.2.1", 10791 "version": "5.2.1",
9464 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 10792 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
...@@ -9469,6 +10797,15 @@ ...@@ -9469,6 +10797,15 @@
9469 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 10797 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
9470 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 10798 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
9471 }, 10799 },
10800 + "saslprep": {
10801 + "version": "1.0.3",
10802 + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
10803 + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
10804 + "optional": true,
10805 + "requires": {
10806 + "sparse-bitfield": "^3.0.3"
10807 + }
10808 + },
9472 "schema-utils": { 10809 "schema-utils": {
9473 "version": "2.7.1", 10810 "version": "2.7.1",
9474 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", 10811 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
...@@ -9540,6 +10877,11 @@ ...@@ -9540,6 +10877,11 @@
9540 "send": "0.18.0" 10877 "send": "0.18.0"
9541 } 10878 }
9542 }, 10879 },
10880 + "set-blocking": {
10881 + "version": "2.0.0",
10882 + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
10883 + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
10884 + },
9543 "setprototypeof": { 10885 "setprototypeof": {
9544 "version": "1.2.0", 10886 "version": "1.2.0",
9545 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", 10887 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
...@@ -9564,11 +10906,29 @@ ...@@ -9564,11 +10906,29 @@
9564 "object-inspect": "^1.9.0" 10906 "object-inspect": "^1.9.0"
9565 } 10907 }
9566 }, 10908 },
10909 + "sift": {
10910 + "version": "16.0.0",
10911 + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.0.tgz",
10912 + "integrity": "sha512-ILTjdP2Mv9V1kIxWMXeMTIRbOBrqKc4JAXmFMnFq3fKeyQ2Qwa3Dw1ubcye3vR+Y6ofA0b9gNDr/y2t6eUeIzQ=="
10913 + },
9567 "signal-exit": { 10914 "signal-exit": {
9568 "version": "3.0.7", 10915 "version": "3.0.7",
9569 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 10916 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
9570 - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", 10917 + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
9571 - "dev": true 10918 + },
10919 + "smart-buffer": {
10920 + "version": "4.2.0",
10921 + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
10922 + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg=="
10923 + },
10924 + "socks": {
10925 + "version": "2.6.2",
10926 + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz",
10927 + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==",
10928 + "requires": {
10929 + "ip": "^1.1.5",
10930 + "smart-buffer": "^4.2.0"
10931 + }
9572 }, 10932 },
9573 "source-map": { 10933 "source-map": {
9574 "version": "0.6.1", 10934 "version": "0.6.1",
...@@ -9584,16 +10944,32 @@ ...@@ -9584,16 +10944,32 @@
9584 "source-map": "^0.6.0" 10944 "source-map": "^0.6.0"
9585 } 10945 }
9586 }, 10946 },
10947 + "sparse-bitfield": {
10948 + "version": "3.0.3",
10949 + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
10950 + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
10951 + "optional": true,
10952 + "requires": {
10953 + "memory-pager": "^1.0.2"
10954 + }
10955 + },
9587 "statuses": { 10956 "statuses": {
9588 "version": "2.0.1", 10957 "version": "2.0.1",
9589 "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", 10958 "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
9590 "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" 10959 "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ=="
9591 }, 10960 },
10961 + "string_decoder": {
10962 + "version": "1.3.0",
10963 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
10964 + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
10965 + "requires": {
10966 + "safe-buffer": "~5.2.0"
10967 + }
10968 + },
9592 "string-width": { 10969 "string-width": {
9593 "version": "4.2.3", 10970 "version": "4.2.3",
9594 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 10971 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
9595 "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 10972 "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
9596 - "dev": true,
9597 "requires": { 10973 "requires": {
9598 "emoji-regex": "^8.0.0", 10974 "emoji-regex": "^8.0.0",
9599 "is-fullwidth-code-point": "^3.0.0", 10975 "is-fullwidth-code-point": "^3.0.0",
...@@ -9626,7 +11002,6 @@ ...@@ -9626,7 +11002,6 @@
9626 "version": "6.0.1", 11002 "version": "6.0.1",
9627 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 11003 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
9628 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 11004 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
9629 - "dev": true,
9630 "requires": { 11005 "requires": {
9631 "ansi-regex": "^5.0.1" 11006 "ansi-regex": "^5.0.1"
9632 } 11007 }
...@@ -9656,6 +11031,19 @@ ...@@ -9656,6 +11031,19 @@
9656 "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", 11031 "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
9657 "peer": true 11032 "peer": true
9658 }, 11033 },
11034 + "tar": {
11035 + "version": "6.1.11",
11036 + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
11037 + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
11038 + "requires": {
11039 + "chownr": "^2.0.0",
11040 + "fs-minipass": "^2.0.0",
11041 + "minipass": "^3.0.0",
11042 + "minizlib": "^2.1.1",
11043 + "mkdirp": "^1.0.3",
11044 + "yallist": "^4.0.0"
11045 + }
11046 + },
9659 "terser": { 11047 "terser": {
9660 "version": "5.13.1", 11048 "version": "5.13.1",
9661 "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz", 11049 "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz",
...@@ -9783,6 +11171,14 @@ ...@@ -9783,6 +11171,14 @@
9783 "is-typedarray": "^1.0.0" 11171 "is-typedarray": "^1.0.0"
9784 } 11172 }
9785 }, 11173 },
11174 + "uid-safe": {
11175 + "version": "2.1.5",
11176 + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz",
11177 + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==",
11178 + "requires": {
11179 + "random-bytes": "~1.0.0"
11180 + }
11181 + },
9786 "unbox-primitive": { 11182 "unbox-primitive": {
9787 "version": "1.0.2", 11183 "version": "1.0.2",
9788 "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", 11184 "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
...@@ -9942,6 +11338,11 @@ ...@@ -9942,6 +11338,11 @@
9942 "prepend-http": "^2.0.0" 11338 "prepend-http": "^2.0.0"
9943 } 11339 }
9944 }, 11340 },
11341 + "util-deprecate": {
11342 + "version": "1.0.2",
11343 + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
11344 + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
11345 + },
9945 "utils-merge": { 11346 "utils-merge": {
9946 "version": "1.0.1", 11347 "version": "1.0.1",
9947 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 11348 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
...@@ -10057,6 +11458,14 @@ ...@@ -10057,6 +11458,14 @@
10057 "is-symbol": "^1.0.3" 11458 "is-symbol": "^1.0.3"
10058 } 11459 }
10059 }, 11460 },
11461 + "wide-align": {
11462 + "version": "1.1.5",
11463 + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
11464 + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
11465 + "requires": {
11466 + "string-width": "^1.0.2 || 2 || 3 || 4"
11467 + }
11468 + },
10060 "widest-line": { 11469 "widest-line": {
10061 "version": "3.1.0", 11470 "version": "3.1.0",
10062 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 11471 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz",
...@@ -10117,8 +11526,7 @@ ...@@ -10117,8 +11526,7 @@
10117 "wrappy": { 11526 "wrappy": {
10118 "version": "1.0.2", 11527 "version": "1.0.2",
10119 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 11528 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
10120 - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 11529 + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
10121 - "dev": true
10122 }, 11530 },
10123 "write-file-atomic": { 11531 "write-file-atomic": {
10124 "version": "3.0.3", 11532 "version": "3.0.3",
...@@ -10141,8 +11549,7 @@ ...@@ -10141,8 +11549,7 @@
10141 "yallist": { 11549 "yallist": {
10142 "version": "4.0.0", 11550 "version": "4.0.0",
10143 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 11551 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
10144 - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 11552 + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
10145 - "dev": true
10146 } 11553 }
10147 } 11554 }
10148 } 11555 }
......
...@@ -16,8 +16,12 @@ ...@@ -16,8 +16,12 @@
16 }, 16 },
17 "dependencies": { 17 "dependencies": {
18 "babel-loader": "^8.2.5", 18 "babel-loader": "^8.2.5",
19 + "bcrypt": "^5.0.1",
20 + "connect-mongo": "^4.6.0",
19 "dotenv": "^16.0.1", 21 "dotenv": "^16.0.1",
20 "express": "^4.18.1", 22 "express": "^4.18.1",
23 + "express-session": "^1.17.3",
24 + "mongoose": "^6.3.5",
21 "node-fetch": "^2.6.1", 25 "node-fetch": "^2.6.1",
22 "pug": "^3.0.2" 26 "pug": "^3.0.2"
23 } 27 }
......
1 -export const home = (req,res)=>{ 1 +import fetch from"node-fetch";
2 - return res.render("home",{siteTitle: "movie!",pageTitle:"home Page!"}); 2 +import User from "../../models/User"
3 +import bcrypt from "bcrypt"
4 +
5 +export const home = async(req,res)=>{
6 + const KEY= process.env.API_KEY
7 + const data = await fetch(`https://api.themoviedb.org/3/trending/movie/week?api_key=${KEY}`,{
8 + method:"GET",
9 + })
10 + const movies = await data.json();
11 + return res.render("home",{siteTitle: "movie!",pageTitle:"home Page!",movies: movies.results});
12 +}
13 +
14 +export const getJoin = (req,res) =>{
15 + res.render('join.pug',{pageTitle:"Join!",siteTitle:"movie!"})
16 +}
17 +
18 +export const postJoin = async (req,res) =>{
19 + const { email,
20 + username,
21 + password,
22 + passwordcheck, } = req.body;
23 + const pageTitle = "Join";
24 + if (password !== passwordcheck) {
25 + return res.status(400).render("join.pug", {
26 + pageTitle,
27 + errorMessage: "Password confirmation does not match.",
28 + });
29 + }
30 + const exists = await User.exists({ $or: [{ username }, { email }] });
31 + if (exists) {
32 + return res.status(400).render("join", {
33 + pageTitle,
34 + errorMessage: "This username/email is already taken.",
35 + });
36 + }
37 + try {
38 + await User.create({
39 + username,
40 + email,
41 + password,
42 + });
43 + return res.redirect("/login");
44 + } catch(error){
45 + return res.status(400).res.render("join", {
46 + pageTitle: "Upload Video" ,
47 + errorMessage: error._message,
48 + });
49 +}
3 } 50 }
4 51
5 -export const join= (req,res) =>{ 52 +export const getLogin = (req,res)=>{
6 - return res.send("hello this is joinpage!"); 53 + return res.render("login",{siteTitle:"movie!",pageTitle:"Login!"})
7 } 54 }
8 55
9 -export const login = (req,res)=>{ 56 +export const postLogin = async (req,res) =>
10 - return res.send("hello this is login!"); 57 +{
58 + const PAGETITLE = "Login"
59 + const {username,password} = req.body;
60 + console.log(username,password)
61 + const user = await User.findOne({username});
62 + console.log(user)
63 + if(!user){
64 + return res.status(400).render("login",{pageTitle:PAGETITLE,error:"An account with that username is not found"})
65 + }
66 + if (user.isO_Auth)
67 + return res.status(400).render("login",{pageTitle:PAGETITLE,error:"Please login with Github"})
68 + const ok = await bcrypt.compare(password,user.password);
69 + if(!ok){
70 + return res.status(400).render("login",{pageTitle:PAGETITLE,error:"something wrong..."})
71 + }
72 + req.session.loggedIn = true;
73 + req.session.user = user;
74 + return res.redirect('/');
75 +}
76 +
77 +export const startGithubLogin = (req,res) =>
78 +{
79 + const baseURL = `https://github.com/login/oauth/authorize`
80 + const config = {
81 + client_id: process.env.O_Auth_client_id,
82 + allow_signup:false,
83 + scope:"read:user user:email"
84 + }
85 + const params = new URLSearchParams(config).toString();
86 + const finalURL = `${baseURL}?${params}`
87 + console.log(finalURL);
88 + return res.redirect(finalURL);
89 +}
90 +
91 +export const finishGithubLogin = async (req,res) =>
92 +{
93 +
94 + const config = {
95 + client_id: process.env.O_AUTH_CLIENT_ID,
96 + client_secret : process.env.O_Auth_scret,
97 + code: req.query.code
98 + }
99 + const params = new URLSearchParams(config).toString();
100 + const baseURL = `https://github.com/login/oauth/access_token`;
101 + const finalURL = `${baseURL}?${params}`;
102 + console.log(req.query);
103 + const data = await fetch(finalURL,{
104 + method:"POST",
105 + headers:{
106 + Accept: "application/json",
107 + }
108 + });
109 + const token = await data.json();
110 + if("access_token" in token)
111 + {
112 + const {access_token} = token;
113 + const apiUrl = "https://api.github.com"
114 + const getUserData = await fetch(`${apiUrl}/user`,{
115 + method:"GET",
116 + headers:{
117 + Authorization: `token ${access_token}`
118 + }
119 + });
120 + const emailData = await (
121 + await fetch(`${apiUrl}/user/emails`,{
122 + method:"GET",
123 + headers:{
124 + Authorization: `token ${access_token}`
125 + }
126 + })
127 + ).json();
128 + const emailObj = emailData.find((email) => email.primary === true && email.verified === true);
129 + if(!emailObj){
130 + return res.status(400).redirect('/login');
131 + }
132 + let user = await User.findOne({email: emailObj.email});
133 + if(!user){
134 + user = await User.create({
135 + email:emailObj.email,
136 + username:userData.login,
137 + password:"",
138 + isO_Auth: true,
139 + });
140 + }
141 + req.session.loggedIn = true,
142 + req.session.user = user;
143 + return res.redirect("/");
144 + }else{
145 + res.status(400).redirect("/login")
146 + }
11 } 147 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -13,6 +13,34 @@ export const showMovies = (req,res) =>{ ...@@ -13,6 +13,34 @@ export const showMovies = (req,res) =>{
13 res.send("movie home"); 13 res.send("movie home");
14 } 14 }
15 15
16 -export const movieInformation = (req,res)=>{ 16 +export const movieInformation = async (req,res)=>{
17 - res.send("movie detail"); 17 + const {id}= req.params;
18 + const KEY= process.env.API_KEY
19 + const data = await fetch(`https://api.themoviedb.org/3/movie/${id}?api_key=${KEY}&language=ko-KR`)
20 + const info = await data.json();
21 + res.render('detail.pug',{siteTitle:"movie!",pageTitle:`${info.original_title}`,info})
22 +}
23 +
24 +export const getDiscover = (req, res)=>{
25 + res.render('discover',{siteTitle:"movie!"})
26 +}
27 +
28 +export const postDiscover = async (req, res)=>{
29 + const {year, genre,rating} = req.body
30 + console.log(year,genre,rating)
31 + const KEY= process.env.API_KEY
32 + const genreData = await fetch(`https://api.themoviedb.org/3/genre/movie/list?api_key=${KEY}&language=en-US`)
33 + const genres = await genreData.json()
34 + const target = genres.genres.filter(index => index.name === genre)
35 + const genreId = target[0].id
36 +
37 + const moviesData = await fetch(`
38 + https://api.themoviedb.org/3/discover/movie?api_key=${KEY}&language=en-US&sort_by=popularity.desc&include_adult=false&include_video=false&page=1&year=${year}&vote_average.gte=${rating}&with_genres=28%2C12&with_watch_monetization_types=flatrate`,
39 + {
40 + method:"GET"
41 + })
42 + const Result = await moviesData.json()
43 + const movies = Result.results
44 + console.log(movies)
45 + return res.render(`discoverResult.pug`,{siteTitle:"movie!",movies})
18 } 46 }
......
1 -export const userId = (req,res) =>{ 1 +export const logout =(req,res)=>{
2 - //getMovies(); 2 + req.session.destroy();
3 - res.send("user page"); 3 + return res.redirect("/")
4 } 4 }
5 -
6 -export const userLikemovie = (req,res) =>{
7 - //getMovies();
8 - res.send("user's favorite");
9 -}
10 -
......
1 +import mongoose from "mongoose";
2 +
3 +
4 +mongoose.connect(process.env.DB_URL)
5 +
6 +const db = mongoose.connection;
7 +
8 +db.on("error",(error)=>console.log("DB Error",error))
9 +db.once("open",()=>console.log("DB is Ready!"))
...\ No newline at end of file ...\ No newline at end of file
1 +import "dotenv/config"
2 +import "./db"
3 +import "../models/User"
4 +import app from "./server";
5 +
6 +console.log("hihihihihih")
7 +
8 +const PORT = 3000
9 +
10 +app.listen(PORT,() => console.log(`The Server is running on http://localhost:${PORT}`));
1 +export const editLocals = (req,res,next) =>{
2 + res.locals.loggedIn = Boolean(req.session.loggedIn)
3 + res.locals.loggedInUser = req.session.user;
4 + next();
5 +}
...\ No newline at end of file ...\ No newline at end of file
1 import express from "express"; 1 import express from "express";
2 -import {home,join,login} from "../controllers/globalController" 2 +import {getJoin, getLogin, home, postJoin, postLogin} from "../controllers/globalController"
3 +import { logout } from "../controllers/usersController";
3 const globalRouter = express.Router(); 4 const globalRouter = express.Router();
4 5
5 globalRouter.get('/',home); 6 globalRouter.get('/',home);
6 -globalRouter.get('/join',join); 7 +globalRouter.get("/logout",logout)
7 -globalRouter.get('/login',login); 8 +globalRouter.route('/join').get(getJoin).post(postJoin)
9 +globalRouter.route('/login').get(getLogin).post(postLogin)
8 export default globalRouter 10 export default globalRouter
...\ No newline at end of file ...\ No newline at end of file
......
1 import express from "express"; 1 import express from "express";
2 -import { showMovies, movieInformation } from "../controllers/movieController"; 2 +import { showMovies, movieInformation, getDiscover, postDiscover } from "../controllers/movieController";
3 3
4 const movieRouter = express.Router(); 4 const movieRouter = express.Router();
5 5
6 movieRouter.get('/',showMovies); 6 movieRouter.get('/',showMovies);
7 7
8 -movieRouter.get('/:id', movieInformation); 8 +movieRouter.get('/:id(\\d+)', movieInformation);
9 +
10 +movieRouter.route('/discover/').get(getDiscover).post(postDiscover)
11 +
9 12
10 export default movieRouter; 13 export default movieRouter;
...\ No newline at end of file ...\ No newline at end of file
......
1 import express from "express"; 1 import express from "express";
2 -import { userId, userLikemovie } from "../controllers/usersController"; 2 +import { finishGithubLogin, startGithubLogin } from "../controllers/globalController";
3 3
4 const userRouter = express.Router(); 4 const userRouter = express.Router();
5 5
6 -userRouter.get('/:id(\\d+)', userId); 6 +userRouter.get("/github/start",startGithubLogin)
7 -userRouter.get('/likemovie', userLikemovie); 7 +userRouter.get("/github/finish",finishGithubLogin)
8 8
9 export default userRouter 9 export default userRouter
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -2,14 +2,29 @@ import express from "express" ...@@ -2,14 +2,29 @@ import express from "express"
2 import global from "./routers/globalRouter"; 2 import global from "./routers/globalRouter";
3 import movies from "./routers/movieRouter"; 3 import movies from "./routers/movieRouter";
4 import users from "./routers/userRouter"; 4 import users from "./routers/userRouter";
5 +import session from "express-session";
6 +import MongoStore from "connect-mongo";
7 +import { editLocals } from "./middlewares";
5 8
6 const PORT = 3000 9 const PORT = 3000
7 const app = express(); 10 const app = express();
8 11
12 +
13 +app.use(express.json())
14 +app.use(express.urlencoded({extend: true}))
15 +app.use(session({
16 + secret:process.env.COOKIE_SCRET,
17 + resave:false,
18 + saveUninitialized:false,
19 + store: MongoStore.create({mongoUrl: process.env.DB_URL})
20 +}))
21 +
9 app.set('view engine',"pug"); 22 app.set('view engine',"pug");
10 app.set("views",process.cwd() +"/src/views"); 23 app.set("views",process.cwd() +"/src/views");
24 +app.use(editLocals);
11 app.use('/',global); 25 app.use('/',global);
12 app.use('/movies',movies); 26 app.use('/movies',movies);
13 app.use('/users',users) 27 app.use('/users',users)
14 28
15 -app.listen(PORT,() => console.log(`The Server is running on http://localhost:${PORT}`)); 29 +export default app
30 +
......
1 +import bcrypt from "bcrypt";
2 +import mongoose from "mongoose";
3 +
4 +const userSchema = new mongoose.Schema({
5 + email: { type: String, required: true, unique: true },
6 + username: { type: String, unique: true },
7 + password: { type: String, },
8 + likeMovies: [{type: String}],
9 + isO_Auth: {type:Boolean,default:false}
10 +});
11 +
12 +userSchema.pre('save', async function(){
13 + console.log("Users password:", this.password);
14 + this.password = await bcrypt.hash(this.password, 5);``
15 + console.log("Users password:", this.password);
16 +})
17 +
18 +const User = mongoose.model("User", userSchema);
19 +export default User;
...\ No newline at end of file ...\ No newline at end of file
1 +extends layout.pug
2 +include mixins/trending.pug
3 +
4 +block content
5 + div
6 + h1=pageTitle
7 + img(src=`https://www.themoviedb.org/t/p/w600_and_h900_bestv2${info.poster_path}`)
8 + div
9 + span=info.overview
10 + br
11 + span
12 + a(href=`https://www.themoviedb.org/movie/${info.id}`) The movie DB에서 영화정보 보기 &rarr;
...\ No newline at end of file ...\ No newline at end of file
1 +extends layout.pug
2 +
3 +block content
4 + form(method="POST")
5 + select(name="year")
6 + option(value="" selected) 년도선택
7 + option(value="2017") 2017
8 + option(value="2018") 2018
9 + option(value="2019") 2019
10 + option(value="2020") 2020
11 + option(value="2021") 2021
12 + option(value="2022") 2022
13 + select(name="genre")
14 + option(value="") 장르 선택
15 + option(value="Action") 액션
16 + option(value="Adventure") 어드벤쳐
17 + option(value="Animation") 애니메이션
18 + option(value="Comedy") 코미디
19 + option(value="Crime") 범죄
20 + option(value="Documentary") 다큐
21 + option(value="Drama") 드라마
22 + option(value="Family") 가족영화
23 + option(value="Fantasy") 판타지
24 + option(value="History") 역사
25 + option(value="Horror") 호러
26 + option(value="Music") 음악
27 + option(value="Mystery") 미스터리
28 + option(value="Romance") 로멘스
29 + option(value="Science Fiction") 공상과학
30 + option(value="TV Movie") Tv영화
31 + option(value="Thriller") 스릴러
32 + option(value="War") 전쟁
33 + option(value="Western") 서부영화
34 + select(name="rating")
35 + option(value="") 평점 선택
36 + option(value="5.0") 5.0
37 + option(value="6.0") 6.0
38 + option(value="7.0") 7.0
39 + option(value="8.0") 8.0
40 + option(value="9.0") 9.0
41 + input(value="영화 검색!" type="submit")
42 +
43 +
1 +extends layout.pug
2 +include mixins/movies.pug
3 +
4 +block content
5 + div
6 + h1 영화 검색 결과
7 + +movies(movies)
...\ No newline at end of file ...\ No newline at end of file
1 extends layout.pug 1 extends layout.pug
2 +include mixins/trending.pug
2 3
3 block content 4 block content
4 div 5 div
5 h1=pageTitle 6 h1=pageTitle
7 + small 이번주에 인기있는 영화들
8 + +trending(movies)
...\ No newline at end of file ...\ No newline at end of file
......
1 +extends layout.pug
2 +
3 +block content
4 + if errorMessage
5 + h3=errorMessage
6 + h1=pageTitle
7 + form(method="POST")
8 + input(name="email" placeholder="your email plz" required type="email")
9 + input(name="username" placeholder="your nickname!" required)
10 + input(name="password" placeholder="your password" required type="password")
11 + input(name="passwordcheck" placeholder="passwowrd validation" required type="password")
12 + input(value="join now!" type="submit")
13 + hr
14 + span
15 + a(href="/login") you already have account? login now! &rarr;
...\ No newline at end of file ...\ No newline at end of file
1 +extends layout.pug
2 +
3 +block content
4 + if errorMessage
5 + h3=errorMessage
6 + h1=pageTitle
7 + form(method="POST")
8 + input(name="username" placeholder="your username plz" required type="text")
9 + input(name="password" placeholder="your password" required type="password")
10 + input(value="login now!" type="submit")
11 + hr
12 + span
13 + a(href="/join") you don't have account? Join now! &rarr;
14 + a(href="/users/github/start") Continue with Github &rarr;
...\ No newline at end of file ...\ No newline at end of file
1 +mixin movies(movies)
2 + div
3 + ul
4 + each movie in movies
5 + li
6 + a(href=`/movies/${movie.id}`)=movie.title
...\ No newline at end of file ...\ No newline at end of file
1 +mixin trending(movies)
2 + div
3 + ul
4 + each movie in movies
5 + li
6 + a(href=`/movies/${movie.id}`)=movie.title
...\ No newline at end of file ...\ No newline at end of file
...@@ -4,4 +4,12 @@ header ...@@ -4,4 +4,12 @@ header
4 li 4 li
5 a(href="/") Home 5 a(href="/") Home
6 li 6 li
7 - a(href="/movies") Movies
...\ No newline at end of file ...\ No newline at end of file
7 + a(href="/movies/discover/") Movies
8 + if loggedIn
9 + li
10 + a(href="/logout") logout
11 + else
12 + li
13 + a(href="/login") login
14 + li
15 + a(href="/join") join
...\ No newline at end of file ...\ No newline at end of file
......