박민정

[feat] Password Encryption

...@@ -33,6 +33,9 @@ app.post('/register', (req, res) => { ...@@ -33,6 +33,9 @@ app.post('/register', (req, res) => {
33 33
34 const user = new User(req.body) // req.body에 User의 정보를 저장 34 const user = new User(req.body) // req.body에 User의 정보를 저장
35 35
36 + // 비밀번호 암호화
37 +
38 +
36 // mongoDB에서 오는 메서드. 정보들이 user model에 저장 39 // mongoDB에서 오는 메서드. 정보들이 user model에 저장
37 user.save((err, userInfo) => { 40 user.save((err, userInfo) => {
38 // 만약 에러가 나면, json형식으로 success:false를 보내주고, 에러메시지를 보내줌 41 // 만약 에러가 나면, json형식으로 success:false를 보내주고, 에러메시지를 보내줌
......
1 // monggoDB Model and Schema 1 // monggoDB Model and Schema
2 const mongoose = require('mongoose'); 2 const mongoose = require('mongoose');
3 - 3 +// bcrypt 가져옴
4 +const bcrypt = require('bcrypt')
5 +// bcrypt 사용하기 위해 salt를 생성하고 그걸 이용해 암호화 시킴
6 +const saltRounds = 10 // salt를 몇글자 할 건지
4 7
5 const userSchema = mongoose.Schema({ 8 const userSchema = mongoose.Schema({
6 name:{ 9 name:{
...@@ -32,6 +35,30 @@ const userSchema = mongoose.Schema({ ...@@ -32,6 +35,30 @@ const userSchema = mongoose.Schema({
32 } 35 }
33 }) 36 })
34 37
38 +// index.js의 app.post('/register', (req, res)에 있는
39 +// user model에 user 정보를 저장하기 전에 무엇을 한다는 것
40 +// function( next )를 해서 얘네가 끝난 다음에 다음걸 실행해라~
41 +userSchema.pre('save', function( next ){
42 + var user = this
43 +
44 + if(user.isModified('password')) // password를 변경할 때만 적용되도록..
45 + {
46 + // 비밀번호 암호화 (https://www.npmjs.com/package/bcrypt 에서 가져옴)
47 + bcrypt.genSalt(saltRounds, function(err, salt) // salt를 만드는 함수
48 + {
49 + if(err) return next(err) // 에러 나면 return err
50 + bcrypt.hash(user.password, salt, function(err, hash) { // bcrypt.hash(암호화되지 않은 pw, salt, function(err, 암호화된 비밀번호))
51 + if(err) return next(err) // 에러 나면 return err
52 + user.password = hash // 성공하면 user.password를 hash로 교체
53 + next()
54 + });
55 + });
56 + }
57 +
58 +
59 +})
60 +
61 +
35 // 만든 스키마를 모델로 감싸줌 62 // 만든 스키마를 모델로 감싸줌
36 const User = mongoose.model('User', userSchema) 63 const User = mongoose.model('User', userSchema)
37 64
......
...@@ -4,6 +4,40 @@ ...@@ -4,6 +4,40 @@
4 "lockfileVersion": 1, 4 "lockfileVersion": 1,
5 "requires": true, 5 "requires": true,
6 "dependencies": { 6 "dependencies": {
7 + "@mapbox/node-pre-gyp": {
8 + "version": "1.0.5",
9 + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.5.tgz",
10 + "integrity": "sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA==",
11 + "requires": {
12 + "detect-libc": "^1.0.3",
13 + "https-proxy-agent": "^5.0.0",
14 + "make-dir": "^3.1.0",
15 + "node-fetch": "^2.6.1",
16 + "nopt": "^5.0.0",
17 + "npmlog": "^4.1.2",
18 + "rimraf": "^3.0.2",
19 + "semver": "^7.3.4",
20 + "tar": "^6.1.0"
21 + },
22 + "dependencies": {
23 + "nopt": {
24 + "version": "5.0.0",
25 + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
26 + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
27 + "requires": {
28 + "abbrev": "1"
29 + }
30 + },
31 + "semver": {
32 + "version": "7.3.5",
33 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
34 + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
35 + "requires": {
36 + "lru-cache": "^6.0.0"
37 + }
38 + }
39 + }
40 + },
7 "@sindresorhus/is": { 41 "@sindresorhus/is": {
8 "version": "0.14.0", 42 "version": "0.14.0",
9 "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", 43 "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
...@@ -44,8 +78,7 @@ ...@@ -44,8 +78,7 @@
44 "abbrev": { 78 "abbrev": {
45 "version": "1.1.1", 79 "version": "1.1.1",
46 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 80 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
47 - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", 81 + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
48 - "dev": true
49 }, 82 },
50 "accepts": { 83 "accepts": {
51 "version": "1.3.7", 84 "version": "1.3.7",
...@@ -56,6 +89,29 @@ ...@@ -56,6 +89,29 @@
56 "negotiator": "0.6.2" 89 "negotiator": "0.6.2"
57 } 90 }
58 }, 91 },
92 + "agent-base": {
93 + "version": "6.0.2",
94 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
95 + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
96 + "requires": {
97 + "debug": "4"
98 + },
99 + "dependencies": {
100 + "debug": {
101 + "version": "4.3.1",
102 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
103 + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
104 + "requires": {
105 + "ms": "2.1.2"
106 + }
107 + },
108 + "ms": {
109 + "version": "2.1.2",
110 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
111 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
112 + }
113 + }
114 + },
59 "ansi-align": { 115 "ansi-align": {
60 "version": "3.0.0", 116 "version": "3.0.0",
61 "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", 117 "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz",
...@@ -103,6 +159,20 @@ ...@@ -103,6 +159,20 @@
103 "picomatch": "^2.0.4" 159 "picomatch": "^2.0.4"
104 } 160 }
105 }, 161 },
162 + "aproba": {
163 + "version": "1.2.0",
164 + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
165 + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
166 + },
167 + "are-we-there-yet": {
168 + "version": "1.1.5",
169 + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
170 + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
171 + "requires": {
172 + "delegates": "^1.0.0",
173 + "readable-stream": "^2.0.6"
174 + }
175 + },
106 "array-flatten": { 176 "array-flatten": {
107 "version": "1.1.1", 177 "version": "1.1.1",
108 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 178 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
...@@ -111,8 +181,16 @@ ...@@ -111,8 +181,16 @@
111 "balanced-match": { 181 "balanced-match": {
112 "version": "1.0.2", 182 "version": "1.0.2",
113 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 183 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
114 - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 184 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
115 - "dev": true 185 + },
186 + "bcrypt": {
187 + "version": "5.0.1",
188 + "resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.0.1.tgz",
189 + "integrity": "sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw==",
190 + "requires": {
191 + "@mapbox/node-pre-gyp": "^1.0.0",
192 + "node-addon-api": "^3.1.0"
193 + }
116 }, 194 },
117 "binary-extensions": { 195 "binary-extensions": {
118 "version": "2.2.0", 196 "version": "2.2.0",
...@@ -171,7 +249,6 @@ ...@@ -171,7 +249,6 @@
171 "version": "1.1.11", 249 "version": "1.1.11",
172 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 250 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
173 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 251 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
174 - "dev": true,
175 "requires": { 252 "requires": {
176 "balanced-match": "^1.0.0", 253 "balanced-match": "^1.0.0",
177 "concat-map": "0.0.1" 254 "concat-map": "0.0.1"
...@@ -277,6 +354,11 @@ ...@@ -277,6 +354,11 @@
277 "readdirp": "~3.5.0" 354 "readdirp": "~3.5.0"
278 } 355 }
279 }, 356 },
357 + "chownr": {
358 + "version": "2.0.0",
359 + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
360 + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
361 + },
280 "ci-info": { 362 "ci-info": {
281 "version": "2.0.0", 363 "version": "2.0.0",
282 "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", 364 "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
...@@ -298,6 +380,11 @@ ...@@ -298,6 +380,11 @@
298 "mimic-response": "^1.0.0" 380 "mimic-response": "^1.0.0"
299 } 381 }
300 }, 382 },
383 + "code-point-at": {
384 + "version": "1.1.0",
385 + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
386 + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
387 + },
301 "color-convert": { 388 "color-convert": {
302 "version": "2.0.1", 389 "version": "2.0.1",
303 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 390 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
...@@ -316,8 +403,7 @@ ...@@ -316,8 +403,7 @@
316 "concat-map": { 403 "concat-map": {
317 "version": "0.0.1", 404 "version": "0.0.1",
318 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 405 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
319 - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 406 + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
320 - "dev": true
321 }, 407 },
322 "configstore": { 408 "configstore": {
323 "version": "5.0.1", 409 "version": "5.0.1",
...@@ -333,6 +419,11 @@ ...@@ -333,6 +419,11 @@
333 "xdg-basedir": "^4.0.0" 419 "xdg-basedir": "^4.0.0"
334 } 420 }
335 }, 421 },
422 + "console-control-strings": {
423 + "version": "1.1.0",
424 + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
425 + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4="
426 + },
336 "content-disposition": { 427 "content-disposition": {
337 "version": "0.5.3", 428 "version": "0.5.3",
338 "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", 429 "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz",
...@@ -396,6 +487,11 @@ ...@@ -396,6 +487,11 @@
396 "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", 487 "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==",
397 "dev": true 488 "dev": true
398 }, 489 },
490 + "delegates": {
491 + "version": "1.0.0",
492 + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
493 + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
494 + },
399 "denque": { 495 "denque": {
400 "version": "1.5.0", 496 "version": "1.5.0",
401 "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.0.tgz", 497 "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.0.tgz",
...@@ -411,6 +507,11 @@ ...@@ -411,6 +507,11 @@
411 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", 507 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
412 "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" 508 "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
413 }, 509 },
510 + "detect-libc": {
511 + "version": "1.0.3",
512 + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
513 + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups="
514 + },
414 "dot-prop": { 515 "dot-prop": {
415 "version": "5.3.0", 516 "version": "5.3.0",
416 "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", 517 "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
...@@ -537,6 +638,19 @@ ...@@ -537,6 +638,19 @@
537 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 638 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
538 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" 639 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
539 }, 640 },
641 + "fs-minipass": {
642 + "version": "2.1.0",
643 + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
644 + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
645 + "requires": {
646 + "minipass": "^3.0.0"
647 + }
648 + },
649 + "fs.realpath": {
650 + "version": "1.0.0",
651 + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
652 + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
653 + },
540 "fsevents": { 654 "fsevents": {
541 "version": "2.3.2", 655 "version": "2.3.2",
542 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 656 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
...@@ -544,6 +658,54 @@ ...@@ -544,6 +658,54 @@
544 "dev": true, 658 "dev": true,
545 "optional": true 659 "optional": true
546 }, 660 },
661 + "gauge": {
662 + "version": "2.7.4",
663 + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
664 + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
665 + "requires": {
666 + "aproba": "^1.0.3",
667 + "console-control-strings": "^1.0.0",
668 + "has-unicode": "^2.0.0",
669 + "object-assign": "^4.1.0",
670 + "signal-exit": "^3.0.0",
671 + "string-width": "^1.0.1",
672 + "strip-ansi": "^3.0.1",
673 + "wide-align": "^1.1.0"
674 + },
675 + "dependencies": {
676 + "ansi-regex": {
677 + "version": "2.1.1",
678 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
679 + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
680 + },
681 + "is-fullwidth-code-point": {
682 + "version": "1.0.0",
683 + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
684 + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
685 + "requires": {
686 + "number-is-nan": "^1.0.0"
687 + }
688 + },
689 + "string-width": {
690 + "version": "1.0.2",
691 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
692 + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
693 + "requires": {
694 + "code-point-at": "^1.0.0",
695 + "is-fullwidth-code-point": "^1.0.0",
696 + "strip-ansi": "^3.0.0"
697 + }
698 + },
699 + "strip-ansi": {
700 + "version": "3.0.1",
701 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
702 + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
703 + "requires": {
704 + "ansi-regex": "^2.0.0"
705 + }
706 + }
707 + }
708 + },
547 "get-stream": { 709 "get-stream": {
548 "version": "4.1.0", 710 "version": "4.1.0",
549 "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 711 "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
...@@ -553,6 +715,19 @@ ...@@ -553,6 +715,19 @@
553 "pump": "^3.0.0" 715 "pump": "^3.0.0"
554 } 716 }
555 }, 717 },
718 + "glob": {
719 + "version": "7.1.7",
720 + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
721 + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
722 + "requires": {
723 + "fs.realpath": "^1.0.0",
724 + "inflight": "^1.0.4",
725 + "inherits": "2",
726 + "minimatch": "^3.0.4",
727 + "once": "^1.3.0",
728 + "path-is-absolute": "^1.0.0"
729 + }
730 + },
556 "glob-parent": { 731 "glob-parent": {
557 "version": "5.1.2", 732 "version": "5.1.2",
558 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 733 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
...@@ -602,6 +777,11 @@ ...@@ -602,6 +777,11 @@
602 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 777 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
603 "dev": true 778 "dev": true
604 }, 779 },
780 + "has-unicode": {
781 + "version": "2.0.1",
782 + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
783 + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
784 + },
605 "has-yarn": { 785 "has-yarn": {
606 "version": "2.1.0", 786 "version": "2.1.0",
607 "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", 787 "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz",
...@@ -626,6 +806,30 @@ ...@@ -626,6 +806,30 @@
626 "toidentifier": "1.0.0" 806 "toidentifier": "1.0.0"
627 } 807 }
628 }, 808 },
809 + "https-proxy-agent": {
810 + "version": "5.0.0",
811 + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz",
812 + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
813 + "requires": {
814 + "agent-base": "6",
815 + "debug": "4"
816 + },
817 + "dependencies": {
818 + "debug": {
819 + "version": "4.3.1",
820 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
821 + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
822 + "requires": {
823 + "ms": "2.1.2"
824 + }
825 + },
826 + "ms": {
827 + "version": "2.1.2",
828 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
829 + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
830 + }
831 + }
832 + },
629 "iconv-lite": { 833 "iconv-lite": {
630 "version": "0.4.24", 834 "version": "0.4.24",
631 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 835 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
...@@ -652,6 +856,15 @@ ...@@ -652,6 +856,15 @@
652 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 856 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
653 "dev": true 857 "dev": true
654 }, 858 },
859 + "inflight": {
860 + "version": "1.0.6",
861 + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
862 + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
863 + "requires": {
864 + "once": "^1.3.0",
865 + "wrappy": "1"
866 + }
867 + },
655 "inherits": { 868 "inherits": {
656 "version": "2.0.3", 869 "version": "2.0.3",
657 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 870 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
...@@ -695,8 +908,7 @@ ...@@ -695,8 +908,7 @@
695 "is-fullwidth-code-point": { 908 "is-fullwidth-code-point": {
696 "version": "2.0.0", 909 "version": "2.0.0",
697 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 910 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
698 - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 911 + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8="
699 - "dev": true
700 }, 912 },
701 "is-glob": { 913 "is-glob": {
702 "version": "4.0.1", 914 "version": "4.0.1",
...@@ -793,11 +1005,18 @@ ...@@ -793,11 +1005,18 @@
793 "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", 1005 "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==",
794 "dev": true 1006 "dev": true
795 }, 1007 },
1008 + "lru-cache": {
1009 + "version": "6.0.0",
1010 + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
1011 + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
1012 + "requires": {
1013 + "yallist": "^4.0.0"
1014 + }
1015 + },
796 "make-dir": { 1016 "make-dir": {
797 "version": "3.1.0", 1017 "version": "3.1.0",
798 "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", 1018 "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
799 "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", 1019 "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
800 - "dev": true,
801 "requires": { 1020 "requires": {
802 "semver": "^6.0.0" 1021 "semver": "^6.0.0"
803 }, 1022 },
...@@ -805,8 +1024,7 @@ ...@@ -805,8 +1024,7 @@
805 "semver": { 1024 "semver": {
806 "version": "6.3.0", 1025 "version": "6.3.0",
807 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1026 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
808 - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1027 + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
809 - "dev": true
810 } 1028 }
811 } 1029 }
812 }, 1030 },
...@@ -859,7 +1077,6 @@ ...@@ -859,7 +1077,6 @@
859 "version": "3.0.4", 1077 "version": "3.0.4",
860 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 1078 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
861 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 1079 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
862 - "dev": true,
863 "requires": { 1080 "requires": {
864 "brace-expansion": "^1.1.7" 1081 "brace-expansion": "^1.1.7"
865 } 1082 }
...@@ -870,6 +1087,28 @@ ...@@ -870,6 +1087,28 @@
870 "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", 1087 "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
871 "dev": true 1088 "dev": true
872 }, 1089 },
1090 + "minipass": {
1091 + "version": "3.1.3",
1092 + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz",
1093 + "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==",
1094 + "requires": {
1095 + "yallist": "^4.0.0"
1096 + }
1097 + },
1098 + "minizlib": {
1099 + "version": "2.1.2",
1100 + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
1101 + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
1102 + "requires": {
1103 + "minipass": "^3.0.0",
1104 + "yallist": "^4.0.0"
1105 + }
1106 + },
1107 + "mkdirp": {
1108 + "version": "1.0.4",
1109 + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
1110 + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
1111 + },
873 "mongodb": { 1112 "mongodb": {
874 "version": "3.6.8", 1113 "version": "3.6.8",
875 "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.6.8.tgz", 1114 "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.6.8.tgz",
...@@ -956,6 +1195,16 @@ ...@@ -956,6 +1195,16 @@
956 "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", 1195 "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
957 "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" 1196 "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw=="
958 }, 1197 },
1198 + "node-addon-api": {
1199 + "version": "3.2.1",
1200 + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz",
1201 + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A=="
1202 + },
1203 + "node-fetch": {
1204 + "version": "2.6.1",
1205 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
1206 + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw=="
1207 + },
959 "nodemon": { 1208 "nodemon": {
960 "version": "2.0.7", 1209 "version": "2.0.7",
961 "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.7.tgz", 1210 "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.7.tgz",
...@@ -1012,6 +1261,27 @@ ...@@ -1012,6 +1261,27 @@
1012 "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", 1261 "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==",
1013 "dev": true 1262 "dev": true
1014 }, 1263 },
1264 + "npmlog": {
1265 + "version": "4.1.2",
1266 + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
1267 + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
1268 + "requires": {
1269 + "are-we-there-yet": "~1.1.2",
1270 + "console-control-strings": "~1.1.0",
1271 + "gauge": "~2.7.3",
1272 + "set-blocking": "~2.0.0"
1273 + }
1274 + },
1275 + "number-is-nan": {
1276 + "version": "1.0.1",
1277 + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
1278 + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0="
1279 + },
1280 + "object-assign": {
1281 + "version": "4.1.1",
1282 + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1283 + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
1284 + },
1015 "on-finished": { 1285 "on-finished": {
1016 "version": "2.3.0", 1286 "version": "2.3.0",
1017 "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 1287 "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
...@@ -1024,7 +1294,6 @@ ...@@ -1024,7 +1294,6 @@
1024 "version": "1.4.0", 1294 "version": "1.4.0",
1025 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1295 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1026 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1296 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
1027 - "dev": true,
1028 "requires": { 1297 "requires": {
1029 "wrappy": "1" 1298 "wrappy": "1"
1030 } 1299 }
...@@ -1065,6 +1334,11 @@ ...@@ -1065,6 +1334,11 @@
1065 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 1334 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
1066 "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" 1335 "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="
1067 }, 1336 },
1337 + "path-is-absolute": {
1338 + "version": "1.0.1",
1339 + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1340 + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
1341 + },
1068 "path-to-regexp": { 1342 "path-to-regexp": {
1069 "version": "0.1.7", 1343 "version": "0.1.7",
1070 "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 1344 "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
...@@ -1209,6 +1483,14 @@ ...@@ -1209,6 +1483,14 @@
1209 "lowercase-keys": "^1.0.0" 1483 "lowercase-keys": "^1.0.0"
1210 } 1484 }
1211 }, 1485 },
1486 + "rimraf": {
1487 + "version": "3.0.2",
1488 + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
1489 + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1490 + "requires": {
1491 + "glob": "^7.1.3"
1492 + }
1493 + },
1212 "safe-buffer": { 1494 "safe-buffer": {
1213 "version": "5.1.2", 1495 "version": "5.1.2",
1214 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 1496 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
...@@ -1289,6 +1571,11 @@ ...@@ -1289,6 +1571,11 @@
1289 "send": "0.17.1" 1571 "send": "0.17.1"
1290 } 1572 }
1291 }, 1573 },
1574 + "set-blocking": {
1575 + "version": "2.0.0",
1576 + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
1577 + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
1578 + },
1292 "setprototypeof": { 1579 "setprototypeof": {
1293 "version": "1.1.1", 1580 "version": "1.1.1",
1294 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", 1581 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
...@@ -1302,8 +1589,7 @@ ...@@ -1302,8 +1589,7 @@
1302 "signal-exit": { 1589 "signal-exit": {
1303 "version": "3.0.3", 1590 "version": "3.0.3",
1304 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", 1591 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
1305 - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", 1592 + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA=="
1306 - "dev": true
1307 }, 1593 },
1308 "sliced": { 1594 "sliced": {
1309 "version": "1.0.1", 1595 "version": "1.0.1",
...@@ -1396,6 +1682,19 @@ ...@@ -1396,6 +1682,19 @@
1396 "has-flag": "^3.0.0" 1682 "has-flag": "^3.0.0"
1397 } 1683 }
1398 }, 1684 },
1685 + "tar": {
1686 + "version": "6.1.0",
1687 + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
1688 + "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
1689 + "requires": {
1690 + "chownr": "^2.0.0",
1691 + "fs-minipass": "^2.0.0",
1692 + "minipass": "^3.0.0",
1693 + "minizlib": "^2.1.1",
1694 + "mkdirp": "^1.0.3",
1695 + "yallist": "^4.0.0"
1696 + }
1697 + },
1399 "term-size": { 1698 "term-size": {
1400 "version": "2.2.1", 1699 "version": "2.2.1",
1401 "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", 1700 "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz",
...@@ -1523,6 +1822,38 @@ ...@@ -1523,6 +1822,38 @@
1523 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 1822 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1524 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" 1823 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
1525 }, 1824 },
1825 + "wide-align": {
1826 + "version": "1.1.3",
1827 + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
1828 + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
1829 + "requires": {
1830 + "string-width": "^1.0.2 || 2"
1831 + },
1832 + "dependencies": {
1833 + "ansi-regex": {
1834 + "version": "3.0.0",
1835 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
1836 + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg="
1837 + },
1838 + "string-width": {
1839 + "version": "2.1.1",
1840 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
1841 + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
1842 + "requires": {
1843 + "is-fullwidth-code-point": "^2.0.0",
1844 + "strip-ansi": "^4.0.0"
1845 + }
1846 + },
1847 + "strip-ansi": {
1848 + "version": "4.0.0",
1849 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
1850 + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
1851 + "requires": {
1852 + "ansi-regex": "^3.0.0"
1853 + }
1854 + }
1855 + }
1856 + },
1526 "widest-line": { 1857 "widest-line": {
1527 "version": "3.1.0", 1858 "version": "3.1.0",
1528 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 1859 "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz",
...@@ -1535,8 +1866,7 @@ ...@@ -1535,8 +1866,7 @@
1535 "wrappy": { 1866 "wrappy": {
1536 "version": "1.0.2", 1867 "version": "1.0.2",
1537 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1868 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1538 - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 1869 + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
1539 - "dev": true
1540 }, 1870 },
1541 "write-file-atomic": { 1871 "write-file-atomic": {
1542 "version": "3.0.3", 1872 "version": "3.0.3",
...@@ -1555,6 +1885,11 @@ ...@@ -1555,6 +1885,11 @@
1555 "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", 1885 "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz",
1556 "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", 1886 "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==",
1557 "dev": true 1887 "dev": true
1888 + },
1889 + "yallist": {
1890 + "version": "4.0.0",
1891 + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
1892 + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
1558 } 1893 }
1559 } 1894 }
1560 } 1895 }
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
11 "author": "mindyeoi", 11 "author": "mindyeoi",
12 "license": "ISC", 12 "license": "ISC",
13 "dependencies": { 13 "dependencies": {
14 + "bcrypt": "^5.0.1",
14 "body-parser": "^1.19.0", 15 "body-parser": "^1.19.0",
15 "express": "^4.17.1", 16 "express": "^4.17.1",
16 "mongoose": "^5.12.12" 17 "mongoose": "^5.12.12"
......