최은석

mongoDB post save test

...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
6 "@testing-library/jest-dom": "^5.16.4", 6 "@testing-library/jest-dom": "^5.16.4",
7 "@testing-library/react": "^13.3.0", 7 "@testing-library/react": "^13.3.0",
8 "@testing-library/user-event": "^13.5.0", 8 "@testing-library/user-event": "^13.5.0",
9 + "axios": "^0.27.2",
9 "react": "^18.1.0", 10 "react": "^18.1.0",
10 "react-dom": "^18.1.0", 11 "react-dom": "^18.1.0",
11 "react-scripts": "5.0.1", 12 "react-scripts": "5.0.1",
......
1 { 1 {
2 - "name": "reactTest", 2 + "name": "ossw-project",
3 "lockfileVersion": 2, 3 "lockfileVersion": 2,
4 "requires": true, 4 "requires": true,
5 "packages": { 5 "packages": {
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
9 "concurrently": "^7.2.1", 9 "concurrently": "^7.2.1",
10 "express": "^4.18.1", 10 "express": "^4.18.1",
11 "http-proxy-middleware": "^2.0.6", 11 "http-proxy-middleware": "^2.0.6",
12 + "mongoose": "^6.3.4",
12 "nodemon": "^2.0.16" 13 "nodemon": "^2.0.16"
13 } 14 }
14 }, 15 },
...@@ -44,6 +45,20 @@ ...@@ -44,6 +45,20 @@
44 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.36.tgz", 45 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.36.tgz",
45 "integrity": "sha512-V3orv+ggDsWVHP99K3JlwtH20R7J4IhI1Kksgc+64q5VxgfRkQG8Ws3MFm/FZOKDYGy9feGFlZ70/HpCNe9QaA==" 46 "integrity": "sha512-V3orv+ggDsWVHP99K3JlwtH20R7J4IhI1Kksgc+64q5VxgfRkQG8Ws3MFm/FZOKDYGy9feGFlZ70/HpCNe9QaA=="
46 }, 47 },
48 + "node_modules/@types/webidl-conversions": {
49 + "version": "6.1.1",
50 + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz",
51 + "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q=="
52 + },
53 + "node_modules/@types/whatwg-url": {
54 + "version": "8.2.1",
55 + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz",
56 + "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==",
57 + "dependencies": {
58 + "@types/node": "*",
59 + "@types/webidl-conversions": "*"
60 + }
61 + },
47 "node_modules/abbrev": { 62 "node_modules/abbrev": {
48 "version": "1.1.1", 63 "version": "1.1.1",
49 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 64 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
...@@ -127,6 +142,25 @@ ...@@ -127,6 +142,25 @@
127 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 142 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
128 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 143 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
129 }, 144 },
145 + "node_modules/base64-js": {
146 + "version": "1.5.1",
147 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
148 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
149 + "funding": [
150 + {
151 + "type": "github",
152 + "url": "https://github.com/sponsors/feross"
153 + },
154 + {
155 + "type": "patreon",
156 + "url": "https://www.patreon.com/feross"
157 + },
158 + {
159 + "type": "consulting",
160 + "url": "https://feross.org/support"
161 + }
162 + ]
163 + },
130 "node_modules/binary-extensions": { 164 "node_modules/binary-extensions": {
131 "version": "2.2.0", 165 "version": "2.2.0",
132 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 166 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
...@@ -199,6 +233,40 @@ ...@@ -199,6 +233,40 @@
199 "node": ">=8" 233 "node": ">=8"
200 } 234 }
201 }, 235 },
236 + "node_modules/bson": {
237 + "version": "4.6.4",
238 + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.4.tgz",
239 + "integrity": "sha512-TdQ3FzguAu5HKPPlr0kYQCyrYUYh8tFM+CMTpxjNzVzxeiJY00Rtuj3LXLHSgiGvmaWlZ8PE+4KyM2thqE38pQ==",
240 + "dependencies": {
241 + "buffer": "^5.6.0"
242 + },
243 + "engines": {
244 + "node": ">=6.9.0"
245 + }
246 + },
247 + "node_modules/buffer": {
248 + "version": "5.7.1",
249 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
250 + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
251 + "funding": [
252 + {
253 + "type": "github",
254 + "url": "https://github.com/sponsors/feross"
255 + },
256 + {
257 + "type": "patreon",
258 + "url": "https://www.patreon.com/feross"
259 + },
260 + {
261 + "type": "consulting",
262 + "url": "https://feross.org/support"
263 + }
264 + ],
265 + "dependencies": {
266 + "base64-js": "^1.3.1",
267 + "ieee754": "^1.1.13"
268 + }
269 + },
202 "node_modules/bytes": { 270 "node_modules/bytes": {
203 "version": "3.1.2", 271 "version": "3.1.2",
204 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", 272 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
...@@ -547,6 +615,14 @@ ...@@ -547,6 +615,14 @@
547 "node": ">=0.4.0" 615 "node": ">=0.4.0"
548 } 616 }
549 }, 617 },
618 + "node_modules/denque": {
619 + "version": "2.0.1",
620 + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz",
621 + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==",
622 + "engines": {
623 + "node": ">=0.10"
624 + }
625 + },
550 "node_modules/depd": { 626 "node_modules/depd": {
551 "version": "2.0.0", 627 "version": "2.0.0",
552 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 628 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
...@@ -963,6 +1039,25 @@ ...@@ -963,6 +1039,25 @@
963 "node": ">=0.10.0" 1039 "node": ">=0.10.0"
964 } 1040 }
965 }, 1041 },
1042 + "node_modules/ieee754": {
1043 + "version": "1.2.1",
1044 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
1045 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
1046 + "funding": [
1047 + {
1048 + "type": "github",
1049 + "url": "https://github.com/sponsors/feross"
1050 + },
1051 + {
1052 + "type": "patreon",
1053 + "url": "https://www.patreon.com/feross"
1054 + },
1055 + {
1056 + "type": "consulting",
1057 + "url": "https://feross.org/support"
1058 + }
1059 + ]
1060 + },
966 "node_modules/ignore-by-default": { 1061 "node_modules/ignore-by-default": {
967 "version": "1.0.1", 1062 "version": "1.0.1",
968 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", 1063 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
...@@ -997,6 +1092,11 @@ ...@@ -997,6 +1092,11 @@
997 "node": ">=10" 1092 "node": ">=10"
998 } 1093 }
999 }, 1094 },
1095 + "node_modules/ip": {
1096 + "version": "1.1.8",
1097 + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz",
1098 + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg=="
1099 + },
1000 "node_modules/ipaddr.js": { 1100 "node_modules/ipaddr.js": {
1001 "version": "1.9.1", 1101 "version": "1.9.1",
1002 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 1102 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
...@@ -1130,6 +1230,11 @@ ...@@ -1130,6 +1230,11 @@
1130 "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", 1230 "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz",
1131 "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" 1231 "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ=="
1132 }, 1232 },
1233 + "node_modules/kareem": {
1234 + "version": "2.3.5",
1235 + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.5.tgz",
1236 + "integrity": "sha512-qxCyQtp3ioawkiRNQr/v8xw9KIviMSSNmy+63Wubj7KmMn3g7noRXIZB4vPCAP+ETi2SR8eH6CvmlKZuGpoHOg=="
1237 + },
1133 "node_modules/keyv": { 1238 "node_modules/keyv": {
1134 "version": "3.1.0", 1239 "version": "3.1.0",
1135 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", 1240 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz",
...@@ -1203,6 +1308,12 @@ ...@@ -1203,6 +1308,12 @@
1203 "node": ">= 0.6" 1308 "node": ">= 0.6"
1204 } 1309 }
1205 }, 1310 },
1311 + "node_modules/memory-pager": {
1312 + "version": "1.5.0",
1313 + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
1314 + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
1315 + "optional": true
1316 + },
1206 "node_modules/merge-descriptors": { 1317 "node_modules/merge-descriptors": {
1207 "version": "1.0.1", 1318 "version": "1.0.1",
1208 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 1319 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
...@@ -1282,6 +1393,98 @@ ...@@ -1282,6 +1393,98 @@
1282 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", 1393 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
1283 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" 1394 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q=="
1284 }, 1395 },
1396 + "node_modules/mongodb": {
1397 + "version": "4.5.0",
1398 + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.5.0.tgz",
1399 + "integrity": "sha512-A2l8MjEpKojnhbCM0MK3+UOGUSGvTNNSv7AkP1fsT7tkambrkkqN/5F2y+PhzsV0Nbv58u04TETpkaSEdI2zKA==",
1400 + "dependencies": {
1401 + "bson": "^4.6.2",
1402 + "denque": "^2.0.1",
1403 + "mongodb-connection-string-url": "^2.5.2",
1404 + "socks": "^2.6.2"
1405 + },
1406 + "engines": {
1407 + "node": ">=12.9.0"
1408 + },
1409 + "optionalDependencies": {
1410 + "saslprep": "^1.0.3"
1411 + }
1412 + },
1413 + "node_modules/mongodb-connection-string-url": {
1414 + "version": "2.5.2",
1415 + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz",
1416 + "integrity": "sha512-tWDyIG8cQlI5k3skB6ywaEA5F9f5OntrKKsT/Lteub2zgwSUlhqEN2inGgBTm8bpYJf8QYBdA/5naz65XDpczA==",
1417 + "dependencies": {
1418 + "@types/whatwg-url": "^8.2.1",
1419 + "whatwg-url": "^11.0.0"
1420 + }
1421 + },
1422 + "node_modules/mongoose": {
1423 + "version": "6.3.4",
1424 + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.3.4.tgz",
1425 + "integrity": "sha512-UP0azyGMdY+2YNbJUHeHhnVw5vPzCqs4GQDUwHkilif/rwmSZktUQhQWMp1pUgRNeF2JC30vWGLrInZxD7K/Qw==",
1426 + "dependencies": {
1427 + "bson": "^4.6.2",
1428 + "kareem": "2.3.5",
1429 + "mongodb": "4.5.0",
1430 + "mpath": "0.9.0",
1431 + "mquery": "4.0.3",
1432 + "ms": "2.1.3",
1433 + "sift": "16.0.0"
1434 + },
1435 + "engines": {
1436 + "node": ">=12.0.0"
1437 + },
1438 + "funding": {
1439 + "type": "opencollective",
1440 + "url": "https://opencollective.com/mongoose"
1441 + }
1442 + },
1443 + "node_modules/mongoose/node_modules/ms": {
1444 + "version": "2.1.3",
1445 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1446 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
1447 + },
1448 + "node_modules/mpath": {
1449 + "version": "0.9.0",
1450 + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
1451 + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==",
1452 + "engines": {
1453 + "node": ">=4.0.0"
1454 + }
1455 + },
1456 + "node_modules/mquery": {
1457 + "version": "4.0.3",
1458 + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz",
1459 + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==",
1460 + "dependencies": {
1461 + "debug": "4.x"
1462 + },
1463 + "engines": {
1464 + "node": ">=12.0.0"
1465 + }
1466 + },
1467 + "node_modules/mquery/node_modules/debug": {
1468 + "version": "4.3.4",
1469 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
1470 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
1471 + "dependencies": {
1472 + "ms": "2.1.2"
1473 + },
1474 + "engines": {
1475 + "node": ">=6.0"
1476 + },
1477 + "peerDependenciesMeta": {
1478 + "supports-color": {
1479 + "optional": true
1480 + }
1481 + }
1482 + },
1483 + "node_modules/mquery/node_modules/ms": {
1484 + "version": "2.1.2",
1485 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1486 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
1487 + },
1285 "node_modules/ms": { 1488 "node_modules/ms": {
1286 "version": "2.0.0", 1489 "version": "2.0.0",
1287 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1490 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
...@@ -1481,6 +1684,14 @@ ...@@ -1481,6 +1684,14 @@
1481 "once": "^1.3.1" 1684 "once": "^1.3.1"
1482 } 1685 }
1483 }, 1686 },
1687 + "node_modules/punycode": {
1688 + "version": "2.1.1",
1689 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
1690 + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
1691 + "engines": {
1692 + "node": ">=6"
1693 + }
1694 + },
1484 "node_modules/pupa": { 1695 "node_modules/pupa": {
1485 "version": "2.1.1", 1696 "version": "2.1.1",
1486 "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", 1697 "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz",
...@@ -1636,6 +1847,18 @@ ...@@ -1636,6 +1847,18 @@
1636 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 1847 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1637 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 1848 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1638 }, 1849 },
1850 + "node_modules/saslprep": {
1851 + "version": "1.0.3",
1852 + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
1853 + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
1854 + "optional": true,
1855 + "dependencies": {
1856 + "sparse-bitfield": "^3.0.3"
1857 + },
1858 + "engines": {
1859 + "node": ">=6"
1860 + }
1861 + },
1639 "node_modules/semver": { 1862 "node_modules/semver": {
1640 "version": "5.7.1", 1863 "version": "5.7.1",
1641 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 1864 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
...@@ -1728,11 +1951,47 @@ ...@@ -1728,11 +1951,47 @@
1728 "url": "https://github.com/sponsors/ljharb" 1951 "url": "https://github.com/sponsors/ljharb"
1729 } 1952 }
1730 }, 1953 },
1954 + "node_modules/sift": {
1955 + "version": "16.0.0",
1956 + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.0.tgz",
1957 + "integrity": "sha512-ILTjdP2Mv9V1kIxWMXeMTIRbOBrqKc4JAXmFMnFq3fKeyQ2Qwa3Dw1ubcye3vR+Y6ofA0b9gNDr/y2t6eUeIzQ=="
1958 + },
1731 "node_modules/signal-exit": { 1959 "node_modules/signal-exit": {
1732 "version": "3.0.7", 1960 "version": "3.0.7",
1733 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 1961 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1734 "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" 1962 "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
1735 }, 1963 },
1964 + "node_modules/smart-buffer": {
1965 + "version": "4.2.0",
1966 + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
1967 + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
1968 + "engines": {
1969 + "node": ">= 6.0.0",
1970 + "npm": ">= 3.0.0"
1971 + }
1972 + },
1973 + "node_modules/socks": {
1974 + "version": "2.6.2",
1975 + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz",
1976 + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==",
1977 + "dependencies": {
1978 + "ip": "^1.1.5",
1979 + "smart-buffer": "^4.2.0"
1980 + },
1981 + "engines": {
1982 + "node": ">= 10.13.0",
1983 + "npm": ">= 3.0.0"
1984 + }
1985 + },
1986 + "node_modules/sparse-bitfield": {
1987 + "version": "3.0.3",
1988 + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
1989 + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
1990 + "optional": true,
1991 + "dependencies": {
1992 + "memory-pager": "^1.0.2"
1993 + }
1994 + },
1736 "node_modules/spawn-command": { 1995 "node_modules/spawn-command": {
1737 "version": "0.0.2-1", 1996 "version": "0.0.2-1",
1738 "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz", 1997 "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz",
...@@ -1827,6 +2086,17 @@ ...@@ -1827,6 +2086,17 @@
1827 "nodetouch": "bin/nodetouch.js" 2086 "nodetouch": "bin/nodetouch.js"
1828 } 2087 }
1829 }, 2088 },
2089 + "node_modules/tr46": {
2090 + "version": "3.0.0",
2091 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
2092 + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
2093 + "dependencies": {
2094 + "punycode": "^2.1.1"
2095 + },
2096 + "engines": {
2097 + "node": ">=12"
2098 + }
2099 + },
1830 "node_modules/tree-kill": { 2100 "node_modules/tree-kill": {
1831 "version": "1.2.2", 2101 "version": "1.2.2",
1832 "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", 2102 "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz",
...@@ -1963,6 +2233,26 @@ ...@@ -1963,6 +2233,26 @@
1963 "node": ">= 0.8" 2233 "node": ">= 0.8"
1964 } 2234 }
1965 }, 2235 },
2236 + "node_modules/webidl-conversions": {
2237 + "version": "7.0.0",
2238 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
2239 + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
2240 + "engines": {
2241 + "node": ">=12"
2242 + }
2243 + },
2244 + "node_modules/whatwg-url": {
2245 + "version": "11.0.0",
2246 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
2247 + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
2248 + "dependencies": {
2249 + "tr46": "^3.0.0",
2250 + "webidl-conversions": "^7.0.0"
2251 + },
2252 + "engines": {
2253 + "node": ">=12"
2254 + }
2255 + },
1966 "node_modules/widest-line": { 2256 "node_modules/widest-line": {
1967 "version": "3.1.0", 2257 "version": "3.1.0",
1968 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 2258 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz",
...@@ -2080,6 +2370,20 @@ ...@@ -2080,6 +2370,20 @@
2080 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.36.tgz", 2370 "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.36.tgz",
2081 "integrity": "sha512-V3orv+ggDsWVHP99K3JlwtH20R7J4IhI1Kksgc+64q5VxgfRkQG8Ws3MFm/FZOKDYGy9feGFlZ70/HpCNe9QaA==" 2371 "integrity": "sha512-V3orv+ggDsWVHP99K3JlwtH20R7J4IhI1Kksgc+64q5VxgfRkQG8Ws3MFm/FZOKDYGy9feGFlZ70/HpCNe9QaA=="
2082 }, 2372 },
2373 + "@types/webidl-conversions": {
2374 + "version": "6.1.1",
2375 + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz",
2376 + "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q=="
2377 + },
2378 + "@types/whatwg-url": {
2379 + "version": "8.2.1",
2380 + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz",
2381 + "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==",
2382 + "requires": {
2383 + "@types/node": "*",
2384 + "@types/webidl-conversions": "*"
2385 + }
2386 + },
2083 "abbrev": { 2387 "abbrev": {
2084 "version": "1.1.1", 2388 "version": "1.1.1",
2085 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 2389 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
...@@ -2148,6 +2452,11 @@ ...@@ -2148,6 +2452,11 @@
2148 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 2452 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
2149 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 2453 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
2150 }, 2454 },
2455 + "base64-js": {
2456 + "version": "1.5.1",
2457 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
2458 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
2459 + },
2151 "binary-extensions": { 2460 "binary-extensions": {
2152 "version": "2.2.0", 2461 "version": "2.2.0",
2153 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 2462 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
...@@ -2204,6 +2513,23 @@ ...@@ -2204,6 +2513,23 @@
2204 "fill-range": "^7.0.1" 2513 "fill-range": "^7.0.1"
2205 } 2514 }
2206 }, 2515 },
2516 + "bson": {
2517 + "version": "4.6.4",
2518 + "resolved": "https://registry.npmjs.org/bson/-/bson-4.6.4.tgz",
2519 + "integrity": "sha512-TdQ3FzguAu5HKPPlr0kYQCyrYUYh8tFM+CMTpxjNzVzxeiJY00Rtuj3LXLHSgiGvmaWlZ8PE+4KyM2thqE38pQ==",
2520 + "requires": {
2521 + "buffer": "^5.6.0"
2522 + }
2523 + },
2524 + "buffer": {
2525 + "version": "5.7.1",
2526 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
2527 + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
2528 + "requires": {
2529 + "base64-js": "^1.3.1",
2530 + "ieee754": "^1.1.13"
2531 + }
2532 + },
2207 "bytes": { 2533 "bytes": {
2208 "version": "3.1.2", 2534 "version": "3.1.2",
2209 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", 2535 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
...@@ -2453,6 +2779,11 @@ ...@@ -2453,6 +2779,11 @@
2453 "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 2779 "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
2454 "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" 2780 "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
2455 }, 2781 },
2782 + "denque": {
2783 + "version": "2.0.1",
2784 + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz",
2785 + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ=="
2786 + },
2456 "depd": { 2787 "depd": {
2457 "version": "2.0.0", 2788 "version": "2.0.0",
2458 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 2789 "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
...@@ -2752,6 +3083,11 @@ ...@@ -2752,6 +3083,11 @@
2752 "safer-buffer": ">= 2.1.2 < 3" 3083 "safer-buffer": ">= 2.1.2 < 3"
2753 } 3084 }
2754 }, 3085 },
3086 + "ieee754": {
3087 + "version": "1.2.1",
3088 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
3089 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
3090 + },
2755 "ignore-by-default": { 3091 "ignore-by-default": {
2756 "version": "1.0.1", 3092 "version": "1.0.1",
2757 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", 3093 "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
...@@ -2777,6 +3113,11 @@ ...@@ -2777,6 +3113,11 @@
2777 "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", 3113 "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz",
2778 "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" 3114 "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA=="
2779 }, 3115 },
3116 + "ip": {
3117 + "version": "1.1.8",
3118 + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz",
3119 + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg=="
3120 + },
2780 "ipaddr.js": { 3121 "ipaddr.js": {
2781 "version": "1.9.1", 3122 "version": "1.9.1",
2782 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 3123 "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
...@@ -2865,6 +3206,11 @@ ...@@ -2865,6 +3206,11 @@
2865 "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", 3206 "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz",
2866 "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" 3207 "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ=="
2867 }, 3208 },
3209 + "kareem": {
3210 + "version": "2.3.5",
3211 + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.5.tgz",
3212 + "integrity": "sha512-qxCyQtp3ioawkiRNQr/v8xw9KIviMSSNmy+63Wubj7KmMn3g7noRXIZB4vPCAP+ETi2SR8eH6CvmlKZuGpoHOg=="
3213 + },
2868 "keyv": { 3214 "keyv": {
2869 "version": "3.1.0", 3215 "version": "3.1.0",
2870 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", 3216 "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz",
...@@ -2919,6 +3265,12 @@ ...@@ -2919,6 +3265,12 @@
2919 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 3265 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
2920 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" 3266 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
2921 }, 3267 },
3268 + "memory-pager": {
3269 + "version": "1.5.0",
3270 + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
3271 + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
3272 + "optional": true
3273 + },
2922 "merge-descriptors": { 3274 "merge-descriptors": {
2923 "version": "1.0.1", 3275 "version": "1.0.1",
2924 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 3276 "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
...@@ -2974,6 +3326,76 @@ ...@@ -2974,6 +3326,76 @@
2974 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", 3326 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
2975 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" 3327 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q=="
2976 }, 3328 },
3329 + "mongodb": {
3330 + "version": "4.5.0",
3331 + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.5.0.tgz",
3332 + "integrity": "sha512-A2l8MjEpKojnhbCM0MK3+UOGUSGvTNNSv7AkP1fsT7tkambrkkqN/5F2y+PhzsV0Nbv58u04TETpkaSEdI2zKA==",
3333 + "requires": {
3334 + "bson": "^4.6.2",
3335 + "denque": "^2.0.1",
3336 + "mongodb-connection-string-url": "^2.5.2",
3337 + "saslprep": "^1.0.3",
3338 + "socks": "^2.6.2"
3339 + }
3340 + },
3341 + "mongodb-connection-string-url": {
3342 + "version": "2.5.2",
3343 + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz",
3344 + "integrity": "sha512-tWDyIG8cQlI5k3skB6ywaEA5F9f5OntrKKsT/Lteub2zgwSUlhqEN2inGgBTm8bpYJf8QYBdA/5naz65XDpczA==",
3345 + "requires": {
3346 + "@types/whatwg-url": "^8.2.1",
3347 + "whatwg-url": "^11.0.0"
3348 + }
3349 + },
3350 + "mongoose": {
3351 + "version": "6.3.4",
3352 + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.3.4.tgz",
3353 + "integrity": "sha512-UP0azyGMdY+2YNbJUHeHhnVw5vPzCqs4GQDUwHkilif/rwmSZktUQhQWMp1pUgRNeF2JC30vWGLrInZxD7K/Qw==",
3354 + "requires": {
3355 + "bson": "^4.6.2",
3356 + "kareem": "2.3.5",
3357 + "mongodb": "4.5.0",
3358 + "mpath": "0.9.0",
3359 + "mquery": "4.0.3",
3360 + "ms": "2.1.3",
3361 + "sift": "16.0.0"
3362 + },
3363 + "dependencies": {
3364 + "ms": {
3365 + "version": "2.1.3",
3366 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
3367 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
3368 + }
3369 + }
3370 + },
3371 + "mpath": {
3372 + "version": "0.9.0",
3373 + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
3374 + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew=="
3375 + },
3376 + "mquery": {
3377 + "version": "4.0.3",
3378 + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz",
3379 + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==",
3380 + "requires": {
3381 + "debug": "4.x"
3382 + },
3383 + "dependencies": {
3384 + "debug": {
3385 + "version": "4.3.4",
3386 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
3387 + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
3388 + "requires": {
3389 + "ms": "2.1.2"
3390 + }
3391 + },
3392 + "ms": {
3393 + "version": "2.1.2",
3394 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3395 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
3396 + }
3397 + }
3398 + },
2977 "ms": { 3399 "ms": {
2978 "version": "2.0.0", 3400 "version": "2.0.0",
2979 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 3401 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
...@@ -3121,6 +3543,11 @@ ...@@ -3121,6 +3543,11 @@
3121 "once": "^1.3.1" 3543 "once": "^1.3.1"
3122 } 3544 }
3123 }, 3545 },
3546 + "punycode": {
3547 + "version": "2.1.1",
3548 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
3549 + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
3550 + },
3124 "pupa": { 3551 "pupa": {
3125 "version": "2.1.1", 3552 "version": "2.1.1",
3126 "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", 3553 "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz",
...@@ -3231,6 +3658,15 @@ ...@@ -3231,6 +3658,15 @@
3231 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 3658 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
3232 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 3659 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
3233 }, 3660 },
3661 + "saslprep": {
3662 + "version": "1.0.3",
3663 + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
3664 + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
3665 + "optional": true,
3666 + "requires": {
3667 + "sparse-bitfield": "^3.0.3"
3668 + }
3669 + },
3234 "semver": { 3670 "semver": {
3235 "version": "5.7.1", 3671 "version": "5.7.1",
3236 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 3672 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
...@@ -3309,11 +3745,39 @@ ...@@ -3309,11 +3745,39 @@
3309 "object-inspect": "^1.9.0" 3745 "object-inspect": "^1.9.0"
3310 } 3746 }
3311 }, 3747 },
3748 + "sift": {
3749 + "version": "16.0.0",
3750 + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.0.tgz",
3751 + "integrity": "sha512-ILTjdP2Mv9V1kIxWMXeMTIRbOBrqKc4JAXmFMnFq3fKeyQ2Qwa3Dw1ubcye3vR+Y6ofA0b9gNDr/y2t6eUeIzQ=="
3752 + },
3312 "signal-exit": { 3753 "signal-exit": {
3313 "version": "3.0.7", 3754 "version": "3.0.7",
3314 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 3755 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
3315 "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" 3756 "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
3316 }, 3757 },
3758 + "smart-buffer": {
3759 + "version": "4.2.0",
3760 + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
3761 + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg=="
3762 + },
3763 + "socks": {
3764 + "version": "2.6.2",
3765 + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz",
3766 + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==",
3767 + "requires": {
3768 + "ip": "^1.1.5",
3769 + "smart-buffer": "^4.2.0"
3770 + }
3771 + },
3772 + "sparse-bitfield": {
3773 + "version": "3.0.3",
3774 + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
3775 + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
3776 + "optional": true,
3777 + "requires": {
3778 + "memory-pager": "^1.0.2"
3779 + }
3780 + },
3317 "spawn-command": { 3781 "spawn-command": {
3318 "version": "0.0.2-1", 3782 "version": "0.0.2-1",
3319 "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz", 3783 "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz",
...@@ -3381,6 +3845,14 @@ ...@@ -3381,6 +3845,14 @@
3381 "nopt": "~1.0.10" 3845 "nopt": "~1.0.10"
3382 } 3846 }
3383 }, 3847 },
3848 + "tr46": {
3849 + "version": "3.0.0",
3850 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz",
3851 + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==",
3852 + "requires": {
3853 + "punycode": "^2.1.1"
3854 + }
3855 + },
3384 "tree-kill": { 3856 "tree-kill": {
3385 "version": "1.2.2", 3857 "version": "1.2.2",
3386 "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", 3858 "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz",
...@@ -3480,6 +3952,20 @@ ...@@ -3480,6 +3952,20 @@
3480 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 3952 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
3481 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" 3953 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
3482 }, 3954 },
3955 + "webidl-conversions": {
3956 + "version": "7.0.0",
3957 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
3958 + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g=="
3959 + },
3960 + "whatwg-url": {
3961 + "version": "11.0.0",
3962 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
3963 + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==",
3964 + "requires": {
3965 + "tr46": "^3.0.0",
3966 + "webidl-conversions": "^7.0.0"
3967 + }
3968 + },
3483 "widest-line": { 3969 "widest-line": {
3484 "version": "3.1.0", 3970 "version": "3.1.0",
3485 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 3971 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz",
......
1 { 1 {
2 "scripts": { 2 "scripts": {
3 "server": "cd server && nodemon server", 3 "server": "cd server && nodemon server",
4 - "client": "cd client && npm start", 4 + "client": "cd client && npm start --port",
5 "start": "concurrently --kill-others-on-fail \"npm run server\" \"npm run client\"" 5 "start": "concurrently --kill-others-on-fail \"npm run server\" \"npm run client\""
6 }, 6 },
7 "dependencies": { 7 "dependencies": {
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
9 "concurrently": "^7.2.1", 9 "concurrently": "^7.2.1",
10 "express": "^4.18.1", 10 "express": "^4.18.1",
11 "http-proxy-middleware": "^2.0.6", 11 "http-proxy-middleware": "^2.0.6",
12 + "mongoose": "^6.3.4",
12 "nodemon": "^2.0.16" 13 "nodemon": "^2.0.16"
13 } 14 }
14 } 15 }
......
1 +const express = require('express');
2 +const router = express.Router();
3 +const mongoose = require('mongoose')
4 +
5 +mongoose.connect('mongodb+srv://choieunseok:uA3mhjPcB3DwsuuD@cluster0.2gsua4u.mongodb.net/?retryWrites=true&w=majority');
6 +
7 +const db = mongoose.connection
8 +db.on('error', console.error)
9 +db.once('open', () => {
10 + console.log('Connected to mongodb Server')
11 +});
12 +
13 +const dayPostList = mongoose.Schema({
14 + date: 'string',
15 + idArray: [{ type: String }]
16 +});
17 +const dayPostListModel = mongoose.model('dayPostList', dayPostList);
18 +const post = mongoose.Schema({
19 + date: 'string',
20 + title: 'string',
21 + content: 'string',
22 + password: 'string'
23 +});
24 +const postModel = mongoose.model('post', post);
25 +
26 +// router.get('/api', (req, res) => {
27 +// res.send({ test: "hi" });
28 +// });
29 +
30 +router.get('/api/getAll', (req, res) => {
31 + dayPostListModel.find(function (error, dayPostLists) {
32 + console.log('--- Read all ---');
33 + if (error) {
34 + res.send(error);
35 + } else {
36 + res.send(dayPostLists);
37 + }
38 + })
39 +});
40 +
41 +router.get('/api/testSave', async(req, res) => {
42 + var isFirst = false;
43 +
44 + var testDayPostList = await dayPostListModel.findOne({date: '2022-05-30'});
45 + if(testDayPostList == null){
46 + testDayPostList = new dayPostListModel({ date: '2022-05-30', idArray: [] });
47 + isFirst = true;
48 + }
49 + var postListArr = testDayPostList.idArray;
50 +
51 + var newPost = new postModel({ date: '2022-05-30', title: '테스트 제목', age: '테스트 내용', password: 'password' });
52 + var newPostData = await newPost.save();
53 + postListArr.push(newPostData._id.toString());
54 +
55 + if(isFirst) await testDayPostList.save();
56 + else await dayPostListModel.updateOne({date: '2022-05-30'},{idArray: postListArr});
57 +
58 + res.send("test");
59 +});
60 +
61 +module.exports = router;
62 +
1 -const express = require('express');
2 -const router = express.Router();
3 -
4 -router.get('/api', (req, res)=>{
5 - res.send({ test: "hi"});
6 -});
7 -
8 -module.exports = router;
...\ No newline at end of file ...\ No newline at end of file
1 const express = require('express'); 1 const express = require('express');
2 const app = express(); 2 const app = express();
3 -const test = require('.//Router/test'); 3 +const api = require('./Router/api');
4 4
5 -app.use('/', test); 5 +app.use('/', api);
6 6
7 -const port=23023;
8 -app.listen(port, ()=>{console.log(`Listening on port ${port}`)});
...\ No newline at end of file ...\ No newline at end of file
7 +const port = 23023;
8 +app.listen(port, () => { console.log(`Listening on port ${port}`) });
...\ No newline at end of file ...\ No newline at end of file
......