박권수

feat. 의사 자격 인증 : 번호입력 -> GCS 파일 업로드 / Batch로 약 정보 매달 1일 업데이트

...@@ -6,7 +6,6 @@ const bodyparser = require('koa-bodyparser'); ...@@ -6,7 +6,6 @@ const bodyparser = require('koa-bodyparser');
6 6
7 const Mongoose = require('mongoose'); 7 const Mongoose = require('mongoose');
8 const api = require('./src/api'); 8 const api = require('./src/api');
9 -const updateMedicineInfo = require('./src/lib/UpdatingMedicineInfo');
10 const MqttServer = require('./src/util/MqttServer'); 9 const MqttServer = require('./src/util/MqttServer');
11 const BatchSystem = require('./src/util/Batch'); 10 const BatchSystem = require('./src/util/Batch');
12 11
...@@ -25,7 +24,7 @@ Mongoose.connect(MONGO_URL, { ...@@ -25,7 +24,7 @@ Mongoose.connect(MONGO_URL, {
25 useCreateIndex : true 24 useCreateIndex : true
26 }).then(() => { 25 }).then(() => {
27 console.log('\x1b[1;32mMongo DB is connected : ', MONGO_URL, '\x1b[0m'); 26 console.log('\x1b[1;32mMongo DB is connected : ', MONGO_URL, '\x1b[0m');
28 - // updateMedicineInfo.updateMedicineInfo(); 27 + BatchSystem.updateMedicineData();
29 }).catch(e => { 28 }).catch(e => {
30 console.log(e); 29 console.log(e);
31 }); 30 });
......
...@@ -5,11 +5,17 @@ ...@@ -5,11 +5,17 @@
5 "requires": true, 5 "requires": true,
6 "packages": { 6 "packages": {
7 "": { 7 "": {
8 + "name": "server",
8 "version": "1.0.0", 9 "version": "1.0.0",
9 "license": "ISC", 10 "license": "ISC",
10 "dependencies": { 11 "dependencies": {
12 + "@google-cloud/storage": "^5.14.2",
13 + "@koa/cors": "^3.1.0",
14 + "koa-body": "^4.2.0",
11 "moment": "^2.29.1", 15 "moment": "^2.29.1",
12 - "mqtt": "^4.2.6" 16 + "moment-timezone": "^0.5.33",
17 + "mqtt": "^4.2.6",
18 + "node-cron": "^3.0.0"
13 }, 19 },
14 "devDependencies": { 20 "devDependencies": {
15 "eslint": "^7.32.0" 21 "eslint": "^7.32.0"
...@@ -138,6 +144,114 @@ ...@@ -138,6 +144,114 @@
138 "node": "^10.12.0 || >=12.0.0" 144 "node": "^10.12.0 || >=12.0.0"
139 } 145 }
140 }, 146 },
147 + "node_modules/@google-cloud/common": {
148 + "version": "3.7.2",
149 + "resolved": "https://registry.npmjs.org/@google-cloud/common/-/common-3.7.2.tgz",
150 + "integrity": "sha512-5Q9f74IbZaY6xAwJSNFy5SrGwbm1j7mpv+6A/r+K2dymjsXBH5UauB0tziaMwWoVVaMq1IQnZF9lgtfqqvxcUg==",
151 + "dependencies": {
152 + "@google-cloud/projectify": "^2.0.0",
153 + "@google-cloud/promisify": "^2.0.0",
154 + "arrify": "^2.0.1",
155 + "duplexify": "^4.1.1",
156 + "ent": "^2.2.0",
157 + "extend": "^3.0.2",
158 + "google-auth-library": "^7.0.2",
159 + "retry-request": "^4.2.2",
160 + "teeny-request": "^7.0.0"
161 + },
162 + "engines": {
163 + "node": ">=10"
164 + }
165 + },
166 + "node_modules/@google-cloud/common/node_modules/duplexify": {
167 + "version": "4.1.2",
168 + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz",
169 + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
170 + "dependencies": {
171 + "end-of-stream": "^1.4.1",
172 + "inherits": "^2.0.3",
173 + "readable-stream": "^3.1.1",
174 + "stream-shift": "^1.0.0"
175 + }
176 + },
177 + "node_modules/@google-cloud/paginator": {
178 + "version": "3.0.6",
179 + "resolved": "https://registry.npmjs.org/@google-cloud/paginator/-/paginator-3.0.6.tgz",
180 + "integrity": "sha512-XCTm/GfQIlc1ZxpNtTSs/mnZxC2cePNhxU3X8EzHXKIJ2JFncmJj2Fcd2IP+gbmZaSZnY0juFxbUCkIeuu/2eQ==",
181 + "dependencies": {
182 + "arrify": "^2.0.0",
183 + "extend": "^3.0.2"
184 + },
185 + "engines": {
186 + "node": ">=10"
187 + }
188 + },
189 + "node_modules/@google-cloud/projectify": {
190 + "version": "2.1.1",
191 + "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz",
192 + "integrity": "sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ==",
193 + "engines": {
194 + "node": ">=10"
195 + }
196 + },
197 + "node_modules/@google-cloud/promisify": {
198 + "version": "2.0.4",
199 + "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz",
200 + "integrity": "sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA==",
201 + "engines": {
202 + "node": ">=10"
203 + }
204 + },
205 + "node_modules/@google-cloud/storage": {
206 + "version": "5.14.2",
207 + "resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.14.2.tgz",
208 + "integrity": "sha512-mO2OV2J5eHWtYbjYjqIzOnucZ0wxxVTS6PYU0v1Cfa3iNWRD6oiv+OUvSz6FCifrJHgGuqb9J4kR9N6x72C7nw==",
209 + "dependencies": {
210 + "@google-cloud/common": "^3.7.0",
211 + "@google-cloud/paginator": "^3.0.0",
212 + "@google-cloud/promisify": "^2.0.0",
213 + "arrify": "^2.0.0",
214 + "async-retry": "^1.3.1",
215 + "compressible": "^2.0.12",
216 + "date-and-time": "^2.0.0",
217 + "duplexify": "^4.0.0",
218 + "extend": "^3.0.2",
219 + "gcs-resumable-upload": "^3.3.0",
220 + "get-stream": "^6.0.0",
221 + "hash-stream-validation": "^0.2.2",
222 + "mime": "^2.2.0",
223 + "mime-types": "^2.0.8",
224 + "p-limit": "^3.0.1",
225 + "pumpify": "^2.0.0",
226 + "snakeize": "^0.1.0",
227 + "stream-events": "^1.0.1",
228 + "xdg-basedir": "^4.0.0"
229 + },
230 + "engines": {
231 + "node": ">=10"
232 + }
233 + },
234 + "node_modules/@google-cloud/storage/node_modules/duplexify": {
235 + "version": "4.1.2",
236 + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz",
237 + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
238 + "dependencies": {
239 + "end-of-stream": "^1.4.1",
240 + "inherits": "^2.0.3",
241 + "readable-stream": "^3.1.1",
242 + "stream-shift": "^1.0.0"
243 + }
244 + },
245 + "node_modules/@google-cloud/storage/node_modules/pumpify": {
246 + "version": "2.0.1",
247 + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz",
248 + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==",
249 + "dependencies": {
250 + "duplexify": "^4.1.1",
251 + "inherits": "^2.0.3",
252 + "pump": "^3.0.0"
253 + }
254 + },
141 "node_modules/@humanwhocodes/config-array": { 255 "node_modules/@humanwhocodes/config-array": {
142 "version": "0.5.0", 256 "version": "0.5.0",
143 "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", 257 "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz",
...@@ -158,6 +272,49 @@ ...@@ -158,6 +272,49 @@
158 "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", 272 "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
159 "dev": true 273 "dev": true
160 }, 274 },
275 + "node_modules/@koa/cors": {
276 + "version": "3.1.0",
277 + "resolved": "https://registry.npmjs.org/@koa/cors/-/cors-3.1.0.tgz",
278 + "integrity": "sha512-7ulRC1da/rBa6kj6P4g2aJfnET3z8Uf3SWu60cjbtxTA5g8lxRdX/Bd2P92EagGwwAhANeNw8T8if99rJliR6Q==",
279 + "dependencies": {
280 + "vary": "^1.1.2"
281 + },
282 + "engines": {
283 + "node": ">= 8.0.0"
284 + }
285 + },
286 + "node_modules/@tootallnate/once": {
287 + "version": "1.1.2",
288 + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
289 + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
290 + "engines": {
291 + "node": ">= 6"
292 + }
293 + },
294 + "node_modules/@types/formidable": {
295 + "version": "1.2.4",
296 + "resolved": "https://registry.npmjs.org/@types/formidable/-/formidable-1.2.4.tgz",
297 + "integrity": "sha512-Z+ICLPV/BPYK5pHYDryNKRk26etA9WCicg620XZM0Uqto5gOv6XySMIlXQ3Ae6V3tS7CZNpE8UdHuuxOZxWVfw==",
298 + "dependencies": {
299 + "@types/node": "*"
300 + }
301 + },
302 + "node_modules/@types/node": {
303 + "version": "16.9.2",
304 + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.2.tgz",
305 + "integrity": "sha512-ZHty/hKoOLZvSz6BtP1g7tc7nUeJhoCf3flLjh8ZEv1vFKBWHXcnMbJMyN/pftSljNyy0kNW/UqI3DccnBnZ8w=="
306 + },
307 + "node_modules/abort-controller": {
308 + "version": "3.0.0",
309 + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
310 + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
311 + "dependencies": {
312 + "event-target-shim": "^5.0.0"
313 + },
314 + "engines": {
315 + "node": ">=6.5"
316 + }
317 + },
161 "node_modules/acorn": { 318 "node_modules/acorn": {
162 "version": "7.4.1", 319 "version": "7.4.1",
163 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 320 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
...@@ -179,6 +336,17 @@ ...@@ -179,6 +336,17 @@
179 "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 336 "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
180 } 337 }
181 }, 338 },
339 + "node_modules/agent-base": {
340 + "version": "6.0.2",
341 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
342 + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
343 + "dependencies": {
344 + "debug": "4"
345 + },
346 + "engines": {
347 + "node": ">= 6.0.0"
348 + }
349 + },
182 "node_modules/ajv": { 350 "node_modules/ajv": {
183 "version": "6.12.6", 351 "version": "6.12.6",
184 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 352 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
...@@ -237,6 +405,14 @@ ...@@ -237,6 +405,14 @@
237 "sprintf-js": "~1.0.2" 405 "sprintf-js": "~1.0.2"
238 } 406 }
239 }, 407 },
408 + "node_modules/arrify": {
409 + "version": "2.0.1",
410 + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
411 + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
412 + "engines": {
413 + "node": ">=8"
414 + }
415 + },
240 "node_modules/astral-regex": { 416 "node_modules/astral-regex": {
241 "version": "2.0.0", 417 "version": "2.0.0",
242 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", 418 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
...@@ -246,6 +422,14 @@ ...@@ -246,6 +422,14 @@
246 "node": ">=8" 422 "node": ">=8"
247 } 423 }
248 }, 424 },
425 + "node_modules/async-retry": {
426 + "version": "1.3.3",
427 + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz",
428 + "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==",
429 + "dependencies": {
430 + "retry": "0.13.1"
431 + }
432 + },
249 "node_modules/balanced-match": { 433 "node_modules/balanced-match": {
250 "version": "1.0.2", 434 "version": "1.0.2",
251 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 435 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
...@@ -270,6 +454,14 @@ ...@@ -270,6 +454,14 @@
270 } 454 }
271 ] 455 ]
272 }, 456 },
457 + "node_modules/bignumber.js": {
458 + "version": "9.0.1",
459 + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz",
460 + "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA==",
461 + "engines": {
462 + "node": "*"
463 + }
464 + },
273 "node_modules/bl": { 465 "node_modules/bl": {
274 "version": "4.1.0", 466 "version": "4.1.0",
275 "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", 467 "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
...@@ -312,11 +504,36 @@ ...@@ -312,11 +504,36 @@
312 "ieee754": "^1.1.13" 504 "ieee754": "^1.1.13"
313 } 505 }
314 }, 506 },
507 + "node_modules/buffer-equal-constant-time": {
508 + "version": "1.0.1",
509 + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
510 + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="
511 + },
315 "node_modules/buffer-from": { 512 "node_modules/buffer-from": {
316 "version": "1.1.1", 513 "version": "1.1.1",
317 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 514 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
318 "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" 515 "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
319 }, 516 },
517 + "node_modules/bytes": {
518 + "version": "3.1.0",
519 + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
520 + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
521 + "engines": {
522 + "node": ">= 0.8"
523 + }
524 + },
525 + "node_modules/call-bind": {
526 + "version": "1.0.2",
527 + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
528 + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
529 + "dependencies": {
530 + "function-bind": "^1.1.1",
531 + "get-intrinsic": "^1.0.2"
532 + },
533 + "funding": {
534 + "url": "https://github.com/sponsors/ljharb"
535 + }
536 + },
320 "node_modules/callback-stream": { 537 "node_modules/callback-stream": {
321 "version": "1.1.0", 538 "version": "1.1.0",
322 "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz", 539 "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz",
...@@ -378,6 +595,17 @@ ...@@ -378,6 +595,17 @@
378 "url": "https://github.com/chalk/chalk?sponsor=1" 595 "url": "https://github.com/chalk/chalk?sponsor=1"
379 } 596 }
380 }, 597 },
598 + "node_modules/co-body": {
599 + "version": "5.2.0",
600 + "resolved": "https://registry.npmjs.org/co-body/-/co-body-5.2.0.tgz",
601 + "integrity": "sha512-sX/LQ7LqUhgyaxzbe7IqwPeTr2yfpfUIQ/dgpKo6ZI4y4lpQA0YxAomWIY+7I7rHWcG02PG+OuPREzMW/5tszQ==",
602 + "dependencies": {
603 + "inflation": "^2.0.0",
604 + "qs": "^6.4.0",
605 + "raw-body": "^2.2.0",
606 + "type-is": "^1.6.14"
607 + }
608 + },
381 "node_modules/color-convert": { 609 "node_modules/color-convert": {
382 "version": "2.0.1", 610 "version": "2.0.1",
383 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 611 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
...@@ -405,6 +633,17 @@ ...@@ -405,6 +633,17 @@
405 "minimist": "^1.1.0" 633 "minimist": "^1.1.0"
406 } 634 }
407 }, 635 },
636 + "node_modules/compressible": {
637 + "version": "2.0.18",
638 + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
639 + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
640 + "dependencies": {
641 + "mime-db": ">= 1.43.0 < 2"
642 + },
643 + "engines": {
644 + "node": ">= 0.6"
645 + }
646 + },
408 "node_modules/concat-map": { 647 "node_modules/concat-map": {
409 "version": "0.0.1", 648 "version": "0.0.1",
410 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 649 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
...@@ -424,6 +663,22 @@ ...@@ -424,6 +663,22 @@
424 "typedarray": "^0.0.6" 663 "typedarray": "^0.0.6"
425 } 664 }
426 }, 665 },
666 + "node_modules/configstore": {
667 + "version": "5.0.1",
668 + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz",
669 + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==",
670 + "dependencies": {
671 + "dot-prop": "^5.2.0",
672 + "graceful-fs": "^4.1.2",
673 + "make-dir": "^3.0.0",
674 + "unique-string": "^2.0.0",
675 + "write-file-atomic": "^3.0.0",
676 + "xdg-basedir": "^4.0.0"
677 + },
678 + "engines": {
679 + "node": ">=8"
680 + }
681 + },
427 "node_modules/core-util-is": { 682 "node_modules/core-util-is": {
428 "version": "1.0.2", 683 "version": "1.0.2",
429 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 684 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
...@@ -443,6 +698,19 @@ ...@@ -443,6 +698,19 @@
443 "node": ">= 8" 698 "node": ">= 8"
444 } 699 }
445 }, 700 },
701 + "node_modules/crypto-random-string": {
702 + "version": "2.0.0",
703 + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
704 + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==",
705 + "engines": {
706 + "node": ">=8"
707 + }
708 + },
709 + "node_modules/date-and-time": {
710 + "version": "2.0.0",
711 + "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-2.0.0.tgz",
712 + "integrity": "sha512-HJSzj25iPm8E01nt+rSmCIlwjsmjvKfUivG/kXBglpymcHF1FolWAqWwTEV4FvN1Lx5UjPf0J1W4H8yQsVBfFg=="
713 + },
446 "node_modules/debug": { 714 "node_modules/debug": {
447 "version": "4.3.1", 715 "version": "4.3.1",
448 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", 716 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
...@@ -465,6 +733,14 @@ ...@@ -465,6 +733,14 @@
465 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 733 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
466 "dev": true 734 "dev": true
467 }, 735 },
736 + "node_modules/depd": {
737 + "version": "1.1.2",
738 + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
739 + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
740 + "engines": {
741 + "node": ">= 0.6"
742 + }
743 + },
468 "node_modules/doctrine": { 744 "node_modules/doctrine": {
469 "version": "3.0.0", 745 "version": "3.0.0",
470 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", 746 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
...@@ -477,6 +753,17 @@ ...@@ -477,6 +753,17 @@
477 "node": ">=6.0.0" 753 "node": ">=6.0.0"
478 } 754 }
479 }, 755 },
756 + "node_modules/dot-prop": {
757 + "version": "5.3.0",
758 + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
759 + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
760 + "dependencies": {
761 + "is-obj": "^2.0.0"
762 + },
763 + "engines": {
764 + "node": ">=8"
765 + }
766 + },
480 "node_modules/duplexify": { 767 "node_modules/duplexify": {
481 "version": "3.7.1", 768 "version": "3.7.1",
482 "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", 769 "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
...@@ -515,6 +802,14 @@ ...@@ -515,6 +802,14 @@
515 "safe-buffer": "~5.1.0" 802 "safe-buffer": "~5.1.0"
516 } 803 }
517 }, 804 },
805 + "node_modules/ecdsa-sig-formatter": {
806 + "version": "1.0.11",
807 + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
808 + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
809 + "dependencies": {
810 + "safe-buffer": "^5.0.1"
811 + }
812 + },
518 "node_modules/emoji-regex": { 813 "node_modules/emoji-regex": {
519 "version": "8.0.0", 814 "version": "8.0.0",
520 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 815 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
...@@ -541,6 +836,11 @@ ...@@ -541,6 +836,11 @@
541 "node": ">=8.6" 836 "node": ">=8.6"
542 } 837 }
543 }, 838 },
839 + "node_modules/ent": {
840 + "version": "2.2.0",
841 + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
842 + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0="
843 + },
544 "node_modules/escape-string-regexp": { 844 "node_modules/escape-string-regexp": {
545 "version": "4.0.0", 845 "version": "4.0.0",
546 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 846 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
...@@ -776,6 +1076,14 @@ ...@@ -776,6 +1076,14 @@
776 "node": ">=0.10.0" 1076 "node": ">=0.10.0"
777 } 1077 }
778 }, 1078 },
1079 + "node_modules/event-target-shim": {
1080 + "version": "5.0.1",
1081 + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
1082 + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==",
1083 + "engines": {
1084 + "node": ">=6"
1085 + }
1086 + },
779 "node_modules/extend": { 1087 "node_modules/extend": {
780 "version": "3.0.2", 1088 "version": "3.0.2",
781 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", 1089 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
...@@ -799,6 +1107,11 @@ ...@@ -799,6 +1107,11 @@
799 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1107 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
800 "dev": true 1108 "dev": true
801 }, 1109 },
1110 + "node_modules/fast-text-encoding": {
1111 + "version": "1.0.3",
1112 + "resolved": "https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz",
1113 + "integrity": "sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig=="
1114 + },
802 "node_modules/file-entry-cache": { 1115 "node_modules/file-entry-cache": {
803 "version": "6.0.1", 1116 "version": "6.0.1",
804 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 1117 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
...@@ -830,17 +1143,122 @@ ...@@ -830,17 +1143,122 @@
830 "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", 1143 "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==",
831 "dev": true 1144 "dev": true
832 }, 1145 },
1146 + "node_modules/formidable": {
1147 + "version": "1.2.2",
1148 + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz",
1149 + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==",
1150 + "funding": {
1151 + "url": "https://ko-fi.com/tunnckoCore/commissions"
1152 + }
1153 + },
833 "node_modules/fs.realpath": { 1154 "node_modules/fs.realpath": {
834 "version": "1.0.0", 1155 "version": "1.0.0",
835 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1156 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
836 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 1157 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
837 }, 1158 },
1159 + "node_modules/function-bind": {
1160 + "version": "1.1.1",
1161 + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1162 + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
1163 + },
838 "node_modules/functional-red-black-tree": { 1164 "node_modules/functional-red-black-tree": {
839 "version": "1.0.1", 1165 "version": "1.0.1",
840 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 1166 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
841 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 1167 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
842 "dev": true 1168 "dev": true
843 }, 1169 },
1170 + "node_modules/gaxios": {
1171 + "version": "4.3.2",
1172 + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.2.tgz",
1173 + "integrity": "sha512-T+ap6GM6UZ0c4E6yb1y/hy2UB6hTrqhglp3XfmU9qbLCGRYhLVV5aRPpC4EmoG8N8zOnkYCgoBz+ScvGAARY6Q==",
1174 + "dependencies": {
1175 + "abort-controller": "^3.0.0",
1176 + "extend": "^3.0.2",
1177 + "https-proxy-agent": "^5.0.0",
1178 + "is-stream": "^2.0.0",
1179 + "node-fetch": "^2.6.1"
1180 + },
1181 + "engines": {
1182 + "node": ">=10"
1183 + }
1184 + },
1185 + "node_modules/gcp-metadata": {
1186 + "version": "4.3.1",
1187 + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz",
1188 + "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",
1189 + "dependencies": {
1190 + "gaxios": "^4.0.0",
1191 + "json-bigint": "^1.0.0"
1192 + },
1193 + "engines": {
1194 + "node": ">=10"
1195 + }
1196 + },
1197 + "node_modules/gcs-resumable-upload": {
1198 + "version": "3.3.1",
1199 + "resolved": "https://registry.npmjs.org/gcs-resumable-upload/-/gcs-resumable-upload-3.3.1.tgz",
1200 + "integrity": "sha512-WyC0i4VkslIdrdmeM5PNuGzANALLXTG5RoHb08OE30gYT+FEvCDPiA8KOjV2s1wOu9ngEW4+IuzBjtP/ni7UdQ==",
1201 + "dependencies": {
1202 + "abort-controller": "^3.0.0",
1203 + "configstore": "^5.0.0",
1204 + "extend": "^3.0.2",
1205 + "gaxios": "^4.0.0",
1206 + "google-auth-library": "^7.0.0",
1207 + "pumpify": "^2.0.0",
1208 + "stream-events": "^1.0.4"
1209 + },
1210 + "bin": {
1211 + "gcs-upload": "build/src/cli.js"
1212 + },
1213 + "engines": {
1214 + "node": ">=10"
1215 + }
1216 + },
1217 + "node_modules/gcs-resumable-upload/node_modules/duplexify": {
1218 + "version": "4.1.2",
1219 + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz",
1220 + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
1221 + "dependencies": {
1222 + "end-of-stream": "^1.4.1",
1223 + "inherits": "^2.0.3",
1224 + "readable-stream": "^3.1.1",
1225 + "stream-shift": "^1.0.0"
1226 + }
1227 + },
1228 + "node_modules/gcs-resumable-upload/node_modules/pumpify": {
1229 + "version": "2.0.1",
1230 + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz",
1231 + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==",
1232 + "dependencies": {
1233 + "duplexify": "^4.1.1",
1234 + "inherits": "^2.0.3",
1235 + "pump": "^3.0.0"
1236 + }
1237 + },
1238 + "node_modules/get-intrinsic": {
1239 + "version": "1.1.1",
1240 + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
1241 + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
1242 + "dependencies": {
1243 + "function-bind": "^1.1.1",
1244 + "has": "^1.0.3",
1245 + "has-symbols": "^1.0.1"
1246 + },
1247 + "funding": {
1248 + "url": "https://github.com/sponsors/ljharb"
1249 + }
1250 + },
1251 + "node_modules/get-stream": {
1252 + "version": "6.0.1",
1253 + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
1254 + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
1255 + "engines": {
1256 + "node": ">=10"
1257 + },
1258 + "funding": {
1259 + "url": "https://github.com/sponsors/sindresorhus"
1260 + }
1261 + },
844 "node_modules/glob": { 1262 "node_modules/glob": {
845 "version": "7.1.6", 1263 "version": "7.1.6",
846 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 1264 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
...@@ -931,6 +1349,68 @@ ...@@ -931,6 +1349,68 @@
931 "url": "https://github.com/sponsors/sindresorhus" 1349 "url": "https://github.com/sponsors/sindresorhus"
932 } 1350 }
933 }, 1351 },
1352 + "node_modules/google-auth-library": {
1353 + "version": "7.9.2",
1354 + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.9.2.tgz",
1355 + "integrity": "sha512-HjxbJt660a+YUTYAgYor87JCuBZvjUSNBExk4bXTEaMuCn8IHSDeHmFxKqThuDPrLCiKJp8blk/Ze8f7SI4N6g==",
1356 + "dependencies": {
1357 + "arrify": "^2.0.0",
1358 + "base64-js": "^1.3.0",
1359 + "ecdsa-sig-formatter": "^1.0.11",
1360 + "fast-text-encoding": "^1.0.0",
1361 + "gaxios": "^4.0.0",
1362 + "gcp-metadata": "^4.2.0",
1363 + "gtoken": "^5.0.4",
1364 + "jws": "^4.0.0",
1365 + "lru-cache": "^6.0.0"
1366 + },
1367 + "engines": {
1368 + "node": ">=10"
1369 + }
1370 + },
1371 + "node_modules/google-p12-pem": {
1372 + "version": "3.1.2",
1373 + "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.2.tgz",
1374 + "integrity": "sha512-tjf3IQIt7tWCDsa0ofDQ1qqSCNzahXDxdAGJDbruWqu3eCg5CKLYKN+hi0s6lfvzYZ1GDVr+oDF9OOWlDSdf0A==",
1375 + "dependencies": {
1376 + "node-forge": "^0.10.0"
1377 + },
1378 + "bin": {
1379 + "gp12-pem": "build/src/bin/gp12-pem.js"
1380 + },
1381 + "engines": {
1382 + "node": ">=10"
1383 + }
1384 + },
1385 + "node_modules/graceful-fs": {
1386 + "version": "4.2.8",
1387 + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
1388 + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg=="
1389 + },
1390 + "node_modules/gtoken": {
1391 + "version": "5.3.1",
1392 + "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.1.tgz",
1393 + "integrity": "sha512-yqOREjzLHcbzz1UrQoxhBtpk8KjrVhuqPE7od1K2uhyxG2BHjKZetlbLw/SPZak/QqTIQW+addS+EcjqQsZbwQ==",
1394 + "dependencies": {
1395 + "gaxios": "^4.0.0",
1396 + "google-p12-pem": "^3.0.3",
1397 + "jws": "^4.0.0"
1398 + },
1399 + "engines": {
1400 + "node": ">=10"
1401 + }
1402 + },
1403 + "node_modules/has": {
1404 + "version": "1.0.3",
1405 + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1406 + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1407 + "dependencies": {
1408 + "function-bind": "^1.1.1"
1409 + },
1410 + "engines": {
1411 + "node": ">= 0.4.0"
1412 + }
1413 + },
934 "node_modules/has-flag": { 1414 "node_modules/has-flag": {
935 "version": "4.0.0", 1415 "version": "4.0.0",
936 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 1416 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
...@@ -940,6 +1420,22 @@ ...@@ -940,6 +1420,22 @@
940 "node": ">=8" 1420 "node": ">=8"
941 } 1421 }
942 }, 1422 },
1423 + "node_modules/has-symbols": {
1424 + "version": "1.0.2",
1425 + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
1426 + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==",
1427 + "engines": {
1428 + "node": ">= 0.4"
1429 + },
1430 + "funding": {
1431 + "url": "https://github.com/sponsors/ljharb"
1432 + }
1433 + },
1434 + "node_modules/hash-stream-validation": {
1435 + "version": "0.2.4",
1436 + "resolved": "https://registry.npmjs.org/hash-stream-validation/-/hash-stream-validation-0.2.4.tgz",
1437 + "integrity": "sha512-Gjzu0Xn7IagXVkSu9cSFuK1fqzwtLwFhNhVL8IFJijRNMgUttFbBSIAzKuSIrsFMO1+g1RlsoN49zPIbwPDMGQ=="
1438 + },
943 "node_modules/help-me": { 1439 "node_modules/help-me": {
944 "version": "1.1.0", 1440 "version": "1.1.0",
945 "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz", 1441 "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz",
...@@ -951,6 +1447,57 @@ ...@@ -951,6 +1447,57 @@
951 "xtend": "^4.0.0" 1447 "xtend": "^4.0.0"
952 } 1448 }
953 }, 1449 },
1450 + "node_modules/http-errors": {
1451 + "version": "1.7.3",
1452 + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz",
1453 + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==",
1454 + "dependencies": {
1455 + "depd": "~1.1.2",
1456 + "inherits": "2.0.4",
1457 + "setprototypeof": "1.1.1",
1458 + "statuses": ">= 1.5.0 < 2",
1459 + "toidentifier": "1.0.0"
1460 + },
1461 + "engines": {
1462 + "node": ">= 0.6"
1463 + }
1464 + },
1465 + "node_modules/http-proxy-agent": {
1466 + "version": "4.0.1",
1467 + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
1468 + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
1469 + "dependencies": {
1470 + "@tootallnate/once": "1",
1471 + "agent-base": "6",
1472 + "debug": "4"
1473 + },
1474 + "engines": {
1475 + "node": ">= 6"
1476 + }
1477 + },
1478 + "node_modules/https-proxy-agent": {
1479 + "version": "5.0.0",
1480 + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz",
1481 + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
1482 + "dependencies": {
1483 + "agent-base": "6",
1484 + "debug": "4"
1485 + },
1486 + "engines": {
1487 + "node": ">= 6"
1488 + }
1489 + },
1490 + "node_modules/iconv-lite": {
1491 + "version": "0.4.24",
1492 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1493 + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
1494 + "dependencies": {
1495 + "safer-buffer": ">= 2.1.2 < 3"
1496 + },
1497 + "engines": {
1498 + "node": ">=0.10.0"
1499 + }
1500 + },
954 "node_modules/ieee754": { 1501 "node_modules/ieee754": {
955 "version": "1.2.1", 1502 "version": "1.2.1",
956 "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", 1503 "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
...@@ -999,11 +1546,18 @@ ...@@ -999,11 +1546,18 @@
999 "version": "0.1.4", 1546 "version": "0.1.4",
1000 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1547 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1001 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 1548 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
1002 - "dev": true,
1003 "engines": { 1549 "engines": {
1004 "node": ">=0.8.19" 1550 "node": ">=0.8.19"
1005 } 1551 }
1006 }, 1552 },
1553 + "node_modules/inflation": {
1554 + "version": "2.0.0",
1555 + "resolved": "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz",
1556 + "integrity": "sha1-i0F+R8KPklpFEz2RTKH9OJEH8w8=",
1557 + "engines": {
1558 + "node": ">= 0.8.0"
1559 + }
1560 + },
1007 "node_modules/inflight": { 1561 "node_modules/inflight": {
1008 "version": "1.0.6", 1562 "version": "1.0.6",
1009 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1563 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
...@@ -1066,6 +1620,14 @@ ...@@ -1066,6 +1620,14 @@
1066 "node": ">=0.10.0" 1620 "node": ">=0.10.0"
1067 } 1621 }
1068 }, 1622 },
1623 + "node_modules/is-obj": {
1624 + "version": "2.0.0",
1625 + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
1626 + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
1627 + "engines": {
1628 + "node": ">=8"
1629 + }
1630 + },
1069 "node_modules/is-relative": { 1631 "node_modules/is-relative": {
1070 "version": "1.0.0", 1632 "version": "1.0.0",
1071 "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", 1633 "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
...@@ -1077,6 +1639,22 @@ ...@@ -1077,6 +1639,22 @@
1077 "node": ">=0.10.0" 1639 "node": ">=0.10.0"
1078 } 1640 }
1079 }, 1641 },
1642 + "node_modules/is-stream": {
1643 + "version": "2.0.1",
1644 + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
1645 + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
1646 + "engines": {
1647 + "node": ">=8"
1648 + },
1649 + "funding": {
1650 + "url": "https://github.com/sponsors/sindresorhus"
1651 + }
1652 + },
1653 + "node_modules/is-typedarray": {
1654 + "version": "1.0.0",
1655 + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
1656 + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
1657 + },
1080 "node_modules/is-unc-path": { 1658 "node_modules/is-unc-path": {
1081 "version": "1.0.0", 1659 "version": "1.0.0",
1082 "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", 1660 "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
...@@ -1126,6 +1704,14 @@ ...@@ -1126,6 +1704,14 @@
1126 "js-yaml": "bin/js-yaml.js" 1704 "js-yaml": "bin/js-yaml.js"
1127 } 1705 }
1128 }, 1706 },
1707 + "node_modules/json-bigint": {
1708 + "version": "1.0.0",
1709 + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
1710 + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
1711 + "dependencies": {
1712 + "bignumber.js": "^9.0.0"
1713 + }
1714 + },
1129 "node_modules/json-schema-traverse": { 1715 "node_modules/json-schema-traverse": {
1130 "version": "0.4.1", 1716 "version": "0.4.1",
1131 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 1717 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
...@@ -1137,6 +1723,35 @@ ...@@ -1137,6 +1723,35 @@
1137 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 1723 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1138 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" 1724 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE="
1139 }, 1725 },
1726 + "node_modules/jwa": {
1727 + "version": "2.0.0",
1728 + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz",
1729 + "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==",
1730 + "dependencies": {
1731 + "buffer-equal-constant-time": "1.0.1",
1732 + "ecdsa-sig-formatter": "1.0.11",
1733 + "safe-buffer": "^5.0.1"
1734 + }
1735 + },
1736 + "node_modules/jws": {
1737 + "version": "4.0.0",
1738 + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz",
1739 + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==",
1740 + "dependencies": {
1741 + "jwa": "^2.0.0",
1742 + "safe-buffer": "^5.0.1"
1743 + }
1744 + },
1745 + "node_modules/koa-body": {
1746 + "version": "4.2.0",
1747 + "resolved": "https://registry.npmjs.org/koa-body/-/koa-body-4.2.0.tgz",
1748 + "integrity": "sha512-wdGu7b9amk4Fnk/ytH8GuWwfs4fsB5iNkY8kZPpgQVb04QZSv85T0M8reb+cJmvLE8cjPYvBzRikD3s6qz8OoA==",
1749 + "dependencies": {
1750 + "@types/formidable": "^1.0.31",
1751 + "co-body": "^5.1.1",
1752 + "formidable": "^1.1.1"
1753 + }
1754 + },
1140 "node_modules/leven": { 1755 "node_modules/leven": {
1141 "version": "2.1.0", 1756 "version": "2.1.0",
1142 "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", 1757 "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
...@@ -1180,7 +1795,6 @@ ...@@ -1180,7 +1795,6 @@
1180 "version": "6.0.0", 1795 "version": "6.0.0",
1181 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 1796 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
1182 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 1797 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
1183 - "dev": true,
1184 "dependencies": { 1798 "dependencies": {
1185 "yallist": "^4.0.0" 1799 "yallist": "^4.0.0"
1186 }, 1800 },
...@@ -1188,6 +1802,66 @@ ...@@ -1188,6 +1802,66 @@
1188 "node": ">=10" 1802 "node": ">=10"
1189 } 1803 }
1190 }, 1804 },
1805 + "node_modules/make-dir": {
1806 + "version": "3.1.0",
1807 + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
1808 + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
1809 + "dependencies": {
1810 + "semver": "^6.0.0"
1811 + },
1812 + "engines": {
1813 + "node": ">=8"
1814 + },
1815 + "funding": {
1816 + "url": "https://github.com/sponsors/sindresorhus"
1817 + }
1818 + },
1819 + "node_modules/make-dir/node_modules/semver": {
1820 + "version": "6.3.0",
1821 + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1822 + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1823 + "bin": {
1824 + "semver": "bin/semver.js"
1825 + }
1826 + },
1827 + "node_modules/media-typer": {
1828 + "version": "0.3.0",
1829 + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
1830 + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
1831 + "engines": {
1832 + "node": ">= 0.6"
1833 + }
1834 + },
1835 + "node_modules/mime": {
1836 + "version": "2.5.2",
1837 + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz",
1838 + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==",
1839 + "bin": {
1840 + "mime": "cli.js"
1841 + },
1842 + "engines": {
1843 + "node": ">=4.0.0"
1844 + }
1845 + },
1846 + "node_modules/mime-db": {
1847 + "version": "1.49.0",
1848 + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz",
1849 + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==",
1850 + "engines": {
1851 + "node": ">= 0.6"
1852 + }
1853 + },
1854 + "node_modules/mime-types": {
1855 + "version": "2.1.32",
1856 + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz",
1857 + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==",
1858 + "dependencies": {
1859 + "mime-db": "1.49.0"
1860 + },
1861 + "engines": {
1862 + "node": ">= 0.6"
1863 + }
1864 + },
1191 "node_modules/minimatch": { 1865 "node_modules/minimatch": {
1192 "version": "3.0.4", 1866 "version": "3.0.4",
1193 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 1867 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
...@@ -1212,6 +1886,17 @@ ...@@ -1212,6 +1886,17 @@
1212 "node": "*" 1886 "node": "*"
1213 } 1887 }
1214 }, 1888 },
1889 + "node_modules/moment-timezone": {
1890 + "version": "0.5.33",
1891 + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz",
1892 + "integrity": "sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==",
1893 + "dependencies": {
1894 + "moment": ">= 2.9.0"
1895 + },
1896 + "engines": {
1897 + "node": "*"
1898 + }
1899 + },
1215 "node_modules/mqtt": { 1900 "node_modules/mqtt": {
1216 "version": "4.2.6", 1901 "version": "4.2.6",
1217 "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.6.tgz", 1902 "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.6.tgz",
...@@ -1261,6 +1946,41 @@ ...@@ -1261,6 +1946,41 @@
1261 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 1946 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
1262 "dev": true 1947 "dev": true
1263 }, 1948 },
1949 + "node_modules/node-cron": {
1950 + "version": "3.0.0",
1951 + "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.0.tgz",
1952 + "integrity": "sha512-DDwIvvuCwrNiaU7HEivFDULcaQualDv7KoNlB/UU1wPW0n1tDEmBJKhEIE6DlF2FuoOHcNbLJ8ITL2Iv/3AWmA==",
1953 + "dependencies": {
1954 + "moment-timezone": "^0.5.31"
1955 + },
1956 + "engines": {
1957 + "node": ">=6.0.0"
1958 + }
1959 + },
1960 + "node_modules/node-fetch": {
1961 + "version": "2.6.2",
1962 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.2.tgz",
1963 + "integrity": "sha512-aLoxToI6RfZ+0NOjmWAgn9+LEd30YCkJKFSyWacNZdEKTit/ZMcKjGkTRo8uWEsnIb/hfKecNPEbln02PdWbcA==",
1964 + "engines": {
1965 + "node": "4.x || >=6.0.0"
1966 + }
1967 + },
1968 + "node_modules/node-forge": {
1969 + "version": "0.10.0",
1970 + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz",
1971 + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==",
1972 + "engines": {
1973 + "node": ">= 6.0.0"
1974 + }
1975 + },
1976 + "node_modules/object-inspect": {
1977 + "version": "1.11.0",
1978 + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
1979 + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==",
1980 + "funding": {
1981 + "url": "https://github.com/sponsors/ljharb"
1982 + }
1983 + },
1264 "node_modules/once": { 1984 "node_modules/once": {
1265 "version": "1.4.0", 1985 "version": "1.4.0",
1266 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1986 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
...@@ -1321,6 +2041,20 @@ ...@@ -1321,6 +2041,20 @@
1321 "safe-buffer": "~5.1.0" 2041 "safe-buffer": "~5.1.0"
1322 } 2042 }
1323 }, 2043 },
2044 + "node_modules/p-limit": {
2045 + "version": "3.1.0",
2046 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
2047 + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
2048 + "dependencies": {
2049 + "yocto-queue": "^0.1.0"
2050 + },
2051 + "engines": {
2052 + "node": ">=10"
2053 + },
2054 + "funding": {
2055 + "url": "https://github.com/sponsors/sindresorhus"
2056 + }
2057 + },
1324 "node_modules/parent-module": { 2058 "node_modules/parent-module": {
1325 "version": "1.0.1", 2059 "version": "1.0.1",
1326 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 2060 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
...@@ -1415,6 +2149,34 @@ ...@@ -1415,6 +2149,34 @@
1415 "node": ">=6" 2149 "node": ">=6"
1416 } 2150 }
1417 }, 2151 },
2152 + "node_modules/qs": {
2153 + "version": "6.10.1",
2154 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz",
2155 + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==",
2156 + "dependencies": {
2157 + "side-channel": "^1.0.4"
2158 + },
2159 + "engines": {
2160 + "node": ">=0.6"
2161 + },
2162 + "funding": {
2163 + "url": "https://github.com/sponsors/ljharb"
2164 + }
2165 + },
2166 + "node_modules/raw-body": {
2167 + "version": "2.4.1",
2168 + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz",
2169 + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==",
2170 + "dependencies": {
2171 + "bytes": "3.1.0",
2172 + "http-errors": "1.7.3",
2173 + "iconv-lite": "0.4.24",
2174 + "unpipe": "1.0.0"
2175 + },
2176 + "engines": {
2177 + "node": ">= 0.8"
2178 + }
2179 + },
1418 "node_modules/readable-stream": { 2180 "node_modules/readable-stream": {
1419 "version": "3.6.0", 2181 "version": "3.6.0",
1420 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 2182 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
...@@ -1468,6 +2230,26 @@ ...@@ -1468,6 +2230,26 @@
1468 "node": ">=4" 2230 "node": ">=4"
1469 } 2231 }
1470 }, 2232 },
2233 + "node_modules/retry": {
2234 + "version": "0.13.1",
2235 + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
2236 + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==",
2237 + "engines": {
2238 + "node": ">= 4"
2239 + }
2240 + },
2241 + "node_modules/retry-request": {
2242 + "version": "4.2.2",
2243 + "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz",
2244 + "integrity": "sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==",
2245 + "dependencies": {
2246 + "debug": "^4.1.1",
2247 + "extend": "^3.0.2"
2248 + },
2249 + "engines": {
2250 + "node": ">=8.10.0"
2251 + }
2252 + },
1471 "node_modules/rimraf": { 2253 "node_modules/rimraf": {
1472 "version": "3.0.2", 2254 "version": "3.0.2",
1473 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", 2255 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
...@@ -1502,6 +2284,11 @@ ...@@ -1502,6 +2284,11 @@
1502 } 2284 }
1503 ] 2285 ]
1504 }, 2286 },
2287 + "node_modules/safer-buffer": {
2288 + "version": "2.1.2",
2289 + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
2290 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
2291 + },
1505 "node_modules/semver": { 2292 "node_modules/semver": {
1506 "version": "7.3.5", 2293 "version": "7.3.5",
1507 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", 2294 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
...@@ -1517,6 +2304,11 @@ ...@@ -1517,6 +2304,11 @@
1517 "node": ">=10" 2304 "node": ">=10"
1518 } 2305 }
1519 }, 2306 },
2307 + "node_modules/setprototypeof": {
2308 + "version": "1.1.1",
2309 + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
2310 + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw=="
2311 + },
1520 "node_modules/shebang-command": { 2312 "node_modules/shebang-command": {
1521 "version": "2.0.0", 2313 "version": "2.0.0",
1522 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 2314 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
...@@ -1538,6 +2330,24 @@ ...@@ -1538,6 +2330,24 @@
1538 "node": ">=8" 2330 "node": ">=8"
1539 } 2331 }
1540 }, 2332 },
2333 + "node_modules/side-channel": {
2334 + "version": "1.0.4",
2335 + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
2336 + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
2337 + "dependencies": {
2338 + "call-bind": "^1.0.0",
2339 + "get-intrinsic": "^1.0.2",
2340 + "object-inspect": "^1.9.0"
2341 + },
2342 + "funding": {
2343 + "url": "https://github.com/sponsors/ljharb"
2344 + }
2345 + },
2346 + "node_modules/signal-exit": {
2347 + "version": "3.0.4",
2348 + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz",
2349 + "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q=="
2350 + },
1541 "node_modules/slice-ansi": { 2351 "node_modules/slice-ansi": {
1542 "version": "4.0.0", 2352 "version": "4.0.0",
1543 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", 2353 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
...@@ -1555,6 +2365,11 @@ ...@@ -1555,6 +2365,11 @@
1555 "url": "https://github.com/chalk/slice-ansi?sponsor=1" 2365 "url": "https://github.com/chalk/slice-ansi?sponsor=1"
1556 } 2366 }
1557 }, 2367 },
2368 + "node_modules/snakeize": {
2369 + "version": "0.1.0",
2370 + "resolved": "https://registry.npmjs.org/snakeize/-/snakeize-0.1.0.tgz",
2371 + "integrity": "sha1-EMCI2LWOsHazIpu1oE4jLOEmQi0="
2372 + },
1558 "node_modules/split2": { 2373 "node_modules/split2": {
1559 "version": "3.2.2", 2374 "version": "3.2.2",
1560 "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", 2375 "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz",
...@@ -1569,6 +2384,22 @@ ...@@ -1569,6 +2384,22 @@
1569 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 2384 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
1570 "dev": true 2385 "dev": true
1571 }, 2386 },
2387 + "node_modules/statuses": {
2388 + "version": "1.5.0",
2389 + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
2390 + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
2391 + "engines": {
2392 + "node": ">= 0.6"
2393 + }
2394 + },
2395 + "node_modules/stream-events": {
2396 + "version": "1.0.5",
2397 + "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz",
2398 + "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==",
2399 + "dependencies": {
2400 + "stubs": "^3.0.0"
2401 + }
2402 + },
1572 "node_modules/stream-shift": { 2403 "node_modules/stream-shift": {
1573 "version": "1.0.1", 2404 "version": "1.0.1",
1574 "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", 2405 "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz",
...@@ -1620,6 +2451,11 @@ ...@@ -1620,6 +2451,11 @@
1620 "url": "https://github.com/sponsors/sindresorhus" 2451 "url": "https://github.com/sponsors/sindresorhus"
1621 } 2452 }
1622 }, 2453 },
2454 + "node_modules/stubs": {
2455 + "version": "3.0.0",
2456 + "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz",
2457 + "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls="
2458 + },
1623 "node_modules/supports-color": { 2459 "node_modules/supports-color": {
1624 "version": "7.2.0", 2460 "version": "7.2.0",
1625 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 2461 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
...@@ -1671,6 +2507,21 @@ ...@@ -1671,6 +2507,21 @@
1671 "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", 2507 "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
1672 "dev": true 2508 "dev": true
1673 }, 2509 },
2510 + "node_modules/teeny-request": {
2511 + "version": "7.1.2",
2512 + "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.1.2.tgz",
2513 + "integrity": "sha512-Mr4NYZuniKDpgcLxdBkDE1CcWy98Aw1ennn6oNofen+XWUvDs+ZZzBAujy6XOAVwwLLZMwEQSfdljUI+ebs4Ww==",
2514 + "dependencies": {
2515 + "http-proxy-agent": "^4.0.0",
2516 + "https-proxy-agent": "^5.0.0",
2517 + "node-fetch": "^2.6.1",
2518 + "stream-events": "^1.0.5",
2519 + "uuid": "^8.0.0"
2520 + },
2521 + "engines": {
2522 + "node": ">=10"
2523 + }
2524 + },
1674 "node_modules/text-table": { 2525 "node_modules/text-table": {
1675 "version": "0.2.0", 2526 "version": "0.2.0",
1676 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 2527 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
...@@ -1734,6 +2585,14 @@ ...@@ -1734,6 +2585,14 @@
1734 "node": ">=0.10.0" 2585 "node": ">=0.10.0"
1735 } 2586 }
1736 }, 2587 },
2588 + "node_modules/toidentifier": {
2589 + "version": "1.0.0",
2590 + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
2591 + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==",
2592 + "engines": {
2593 + "node": ">=0.6"
2594 + }
2595 + },
1737 "node_modules/type-check": { 2596 "node_modules/type-check": {
1738 "version": "0.4.0", 2597 "version": "0.4.0",
1739 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 2598 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
...@@ -1758,11 +2617,31 @@ ...@@ -1758,11 +2617,31 @@
1758 "url": "https://github.com/sponsors/sindresorhus" 2617 "url": "https://github.com/sponsors/sindresorhus"
1759 } 2618 }
1760 }, 2619 },
2620 + "node_modules/type-is": {
2621 + "version": "1.6.18",
2622 + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
2623 + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
2624 + "dependencies": {
2625 + "media-typer": "0.3.0",
2626 + "mime-types": "~2.1.24"
2627 + },
2628 + "engines": {
2629 + "node": ">= 0.6"
2630 + }
2631 + },
1761 "node_modules/typedarray": { 2632 "node_modules/typedarray": {
1762 "version": "0.0.6", 2633 "version": "0.0.6",
1763 "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 2634 "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
1764 "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 2635 "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
1765 }, 2636 },
2637 + "node_modules/typedarray-to-buffer": {
2638 + "version": "3.1.5",
2639 + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
2640 + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
2641 + "dependencies": {
2642 + "is-typedarray": "^1.0.0"
2643 + }
2644 + },
1766 "node_modules/unc-path-regex": { 2645 "node_modules/unc-path-regex": {
1767 "version": "0.1.2", 2646 "version": "0.1.2",
1768 "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", 2647 "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
...@@ -1780,6 +2659,25 @@ ...@@ -1780,6 +2659,25 @@
1780 "through2-filter": "^3.0.0" 2659 "through2-filter": "^3.0.0"
1781 } 2660 }
1782 }, 2661 },
2662 + "node_modules/unique-string": {
2663 + "version": "2.0.0",
2664 + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz",
2665 + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==",
2666 + "dependencies": {
2667 + "crypto-random-string": "^2.0.0"
2668 + },
2669 + "engines": {
2670 + "node": ">=8"
2671 + }
2672 + },
2673 + "node_modules/unpipe": {
2674 + "version": "1.0.0",
2675 + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
2676 + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
2677 + "engines": {
2678 + "node": ">= 0.8"
2679 + }
2680 + },
1783 "node_modules/uri-js": { 2681 "node_modules/uri-js": {
1784 "version": "4.4.1", 2682 "version": "4.4.1",
1785 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 2683 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
...@@ -1794,12 +2692,28 @@ ...@@ -1794,12 +2692,28 @@
1794 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 2692 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1795 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 2693 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
1796 }, 2694 },
2695 + "node_modules/uuid": {
2696 + "version": "8.3.2",
2697 + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
2698 + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
2699 + "bin": {
2700 + "uuid": "dist/bin/uuid"
2701 + }
2702 + },
1797 "node_modules/v8-compile-cache": { 2703 "node_modules/v8-compile-cache": {
1798 "version": "2.3.0", 2704 "version": "2.3.0",
1799 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", 2705 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
1800 "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", 2706 "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
1801 "dev": true 2707 "dev": true
1802 }, 2708 },
2709 + "node_modules/vary": {
2710 + "version": "1.1.2",
2711 + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
2712 + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
2713 + "engines": {
2714 + "node": ">= 0.8"
2715 + }
2716 + },
1803 "node_modules/which": { 2717 "node_modules/which": {
1804 "version": "2.0.2", 2718 "version": "2.0.2",
1805 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 2719 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
...@@ -1829,6 +2743,17 @@ ...@@ -1829,6 +2743,17 @@
1829 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 2743 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1830 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 2744 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
1831 }, 2745 },
2746 + "node_modules/write-file-atomic": {
2747 + "version": "3.0.3",
2748 + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
2749 + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
2750 + "dependencies": {
2751 + "imurmurhash": "^0.1.4",
2752 + "is-typedarray": "^1.0.0",
2753 + "signal-exit": "^3.0.2",
2754 + "typedarray-to-buffer": "^3.1.5"
2755 + }
2756 + },
1832 "node_modules/ws": { 2757 "node_modules/ws": {
1833 "version": "7.4.5", 2758 "version": "7.4.5",
1834 "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz", 2759 "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz",
...@@ -1849,6 +2774,14 @@ ...@@ -1849,6 +2774,14 @@
1849 } 2774 }
1850 } 2775 }
1851 }, 2776 },
2777 + "node_modules/xdg-basedir": {
2778 + "version": "4.0.0",
2779 + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz",
2780 + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==",
2781 + "engines": {
2782 + "node": ">=8"
2783 + }
2784 + },
1852 "node_modules/xtend": { 2785 "node_modules/xtend": {
1853 "version": "4.0.2", 2786 "version": "4.0.2",
1854 "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 2787 "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
...@@ -1856,12 +2789,22 @@ ...@@ -1856,12 +2789,22 @@
1856 "engines": { 2789 "engines": {
1857 "node": ">=0.4" 2790 "node": ">=0.4"
1858 } 2791 }
1859 - }, 2792 + },
1860 - "node_modules/yallist": { 2793 + "node_modules/yallist": {
1861 - "version": "4.0.0", 2794 + "version": "4.0.0",
1862 - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 2795 + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
1863 - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 2796 + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
1864 - "dev": true 2797 + },
2798 + "node_modules/yocto-queue": {
2799 + "version": "0.1.0",
2800 + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
2801 + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
2802 + "engines": {
2803 + "node": ">=10"
2804 + },
2805 + "funding": {
2806 + "url": "https://github.com/sponsors/sindresorhus"
2807 + }
1865 } 2808 }
1866 }, 2809 },
1867 "dependencies": { 2810 "dependencies": {
...@@ -1966,6 +2909,103 @@ ...@@ -1966,6 +2909,103 @@
1966 "strip-json-comments": "^3.1.1" 2909 "strip-json-comments": "^3.1.1"
1967 } 2910 }
1968 }, 2911 },
2912 + "@google-cloud/common": {
2913 + "version": "3.7.2",
2914 + "resolved": "https://registry.npmjs.org/@google-cloud/common/-/common-3.7.2.tgz",
2915 + "integrity": "sha512-5Q9f74IbZaY6xAwJSNFy5SrGwbm1j7mpv+6A/r+K2dymjsXBH5UauB0tziaMwWoVVaMq1IQnZF9lgtfqqvxcUg==",
2916 + "requires": {
2917 + "@google-cloud/projectify": "^2.0.0",
2918 + "@google-cloud/promisify": "^2.0.0",
2919 + "arrify": "^2.0.1",
2920 + "duplexify": "^4.1.1",
2921 + "ent": "^2.2.0",
2922 + "extend": "^3.0.2",
2923 + "google-auth-library": "^7.0.2",
2924 + "retry-request": "^4.2.2",
2925 + "teeny-request": "^7.0.0"
2926 + },
2927 + "dependencies": {
2928 + "duplexify": {
2929 + "version": "4.1.2",
2930 + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz",
2931 + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
2932 + "requires": {
2933 + "end-of-stream": "^1.4.1",
2934 + "inherits": "^2.0.3",
2935 + "readable-stream": "^3.1.1",
2936 + "stream-shift": "^1.0.0"
2937 + }
2938 + }
2939 + }
2940 + },
2941 + "@google-cloud/paginator": {
2942 + "version": "3.0.6",
2943 + "resolved": "https://registry.npmjs.org/@google-cloud/paginator/-/paginator-3.0.6.tgz",
2944 + "integrity": "sha512-XCTm/GfQIlc1ZxpNtTSs/mnZxC2cePNhxU3X8EzHXKIJ2JFncmJj2Fcd2IP+gbmZaSZnY0juFxbUCkIeuu/2eQ==",
2945 + "requires": {
2946 + "arrify": "^2.0.0",
2947 + "extend": "^3.0.2"
2948 + }
2949 + },
2950 + "@google-cloud/projectify": {
2951 + "version": "2.1.1",
2952 + "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz",
2953 + "integrity": "sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ=="
2954 + },
2955 + "@google-cloud/promisify": {
2956 + "version": "2.0.4",
2957 + "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz",
2958 + "integrity": "sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA=="
2959 + },
2960 + "@google-cloud/storage": {
2961 + "version": "5.14.2",
2962 + "resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.14.2.tgz",
2963 + "integrity": "sha512-mO2OV2J5eHWtYbjYjqIzOnucZ0wxxVTS6PYU0v1Cfa3iNWRD6oiv+OUvSz6FCifrJHgGuqb9J4kR9N6x72C7nw==",
2964 + "requires": {
2965 + "@google-cloud/common": "^3.7.0",
2966 + "@google-cloud/paginator": "^3.0.0",
2967 + "@google-cloud/promisify": "^2.0.0",
2968 + "arrify": "^2.0.0",
2969 + "async-retry": "^1.3.1",
2970 + "compressible": "^2.0.12",
2971 + "date-and-time": "^2.0.0",
2972 + "duplexify": "^4.0.0",
2973 + "extend": "^3.0.2",
2974 + "gcs-resumable-upload": "^3.3.0",
2975 + "get-stream": "^6.0.0",
2976 + "hash-stream-validation": "^0.2.2",
2977 + "mime": "^2.2.0",
2978 + "mime-types": "^2.0.8",
2979 + "p-limit": "^3.0.1",
2980 + "pumpify": "^2.0.0",
2981 + "snakeize": "^0.1.0",
2982 + "stream-events": "^1.0.1",
2983 + "xdg-basedir": "^4.0.0"
2984 + },
2985 + "dependencies": {
2986 + "duplexify": {
2987 + "version": "4.1.2",
2988 + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz",
2989 + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
2990 + "requires": {
2991 + "end-of-stream": "^1.4.1",
2992 + "inherits": "^2.0.3",
2993 + "readable-stream": "^3.1.1",
2994 + "stream-shift": "^1.0.0"
2995 + }
2996 + },
2997 + "pumpify": {
2998 + "version": "2.0.1",
2999 + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz",
3000 + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==",
3001 + "requires": {
3002 + "duplexify": "^4.1.1",
3003 + "inherits": "^2.0.3",
3004 + "pump": "^3.0.0"
3005 + }
3006 + }
3007 + }
3008 + },
1969 "@humanwhocodes/config-array": { 3009 "@humanwhocodes/config-array": {
1970 "version": "0.5.0", 3010 "version": "0.5.0",
1971 "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", 3011 "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz",
...@@ -1983,6 +3023,40 @@ ...@@ -1983,6 +3023,40 @@
1983 "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", 3023 "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
1984 "dev": true 3024 "dev": true
1985 }, 3025 },
3026 + "@koa/cors": {
3027 + "version": "3.1.0",
3028 + "resolved": "https://registry.npmjs.org/@koa/cors/-/cors-3.1.0.tgz",
3029 + "integrity": "sha512-7ulRC1da/rBa6kj6P4g2aJfnET3z8Uf3SWu60cjbtxTA5g8lxRdX/Bd2P92EagGwwAhANeNw8T8if99rJliR6Q==",
3030 + "requires": {
3031 + "vary": "^1.1.2"
3032 + }
3033 + },
3034 + "@tootallnate/once": {
3035 + "version": "1.1.2",
3036 + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
3037 + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw=="
3038 + },
3039 + "@types/formidable": {
3040 + "version": "1.2.4",
3041 + "resolved": "https://registry.npmjs.org/@types/formidable/-/formidable-1.2.4.tgz",
3042 + "integrity": "sha512-Z+ICLPV/BPYK5pHYDryNKRk26etA9WCicg620XZM0Uqto5gOv6XySMIlXQ3Ae6V3tS7CZNpE8UdHuuxOZxWVfw==",
3043 + "requires": {
3044 + "@types/node": "*"
3045 + }
3046 + },
3047 + "@types/node": {
3048 + "version": "16.9.2",
3049 + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.2.tgz",
3050 + "integrity": "sha512-ZHty/hKoOLZvSz6BtP1g7tc7nUeJhoCf3flLjh8ZEv1vFKBWHXcnMbJMyN/pftSljNyy0kNW/UqI3DccnBnZ8w=="
3051 + },
3052 + "abort-controller": {
3053 + "version": "3.0.0",
3054 + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
3055 + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
3056 + "requires": {
3057 + "event-target-shim": "^5.0.0"
3058 + }
3059 + },
1986 "acorn": { 3060 "acorn": {
1987 "version": "7.4.1", 3061 "version": "7.4.1",
1988 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 3062 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
...@@ -1996,6 +3070,14 @@ ...@@ -1996,6 +3070,14 @@
1996 "dev": true, 3070 "dev": true,
1997 "requires": {} 3071 "requires": {}
1998 }, 3072 },
3073 + "agent-base": {
3074 + "version": "6.0.2",
3075 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
3076 + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
3077 + "requires": {
3078 + "debug": "4"
3079 + }
3080 + },
1999 "ajv": { 3081 "ajv": {
2000 "version": "6.12.6", 3082 "version": "6.12.6",
2001 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 3083 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
...@@ -2038,12 +3120,25 @@ ...@@ -2038,12 +3120,25 @@
2038 "sprintf-js": "~1.0.2" 3120 "sprintf-js": "~1.0.2"
2039 } 3121 }
2040 }, 3122 },
3123 + "arrify": {
3124 + "version": "2.0.1",
3125 + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
3126 + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug=="
3127 + },
2041 "astral-regex": { 3128 "astral-regex": {
2042 "version": "2.0.0", 3129 "version": "2.0.0",
2043 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", 3130 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
2044 "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", 3131 "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
2045 "dev": true 3132 "dev": true
2046 }, 3133 },
3134 + "async-retry": {
3135 + "version": "1.3.3",
3136 + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz",
3137 + "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==",
3138 + "requires": {
3139 + "retry": "0.13.1"
3140 + }
3141 + },
2047 "balanced-match": { 3142 "balanced-match": {
2048 "version": "1.0.2", 3143 "version": "1.0.2",
2049 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 3144 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
...@@ -2054,6 +3149,11 @@ ...@@ -2054,6 +3149,11 @@
2054 "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 3149 "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
2055 "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" 3150 "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
2056 }, 3151 },
3152 + "bignumber.js": {
3153 + "version": "9.0.1",
3154 + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz",
3155 + "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA=="
3156 + },
2057 "bl": { 3157 "bl": {
2058 "version": "4.1.0", 3158 "version": "4.1.0",
2059 "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", 3159 "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
...@@ -2082,11 +3182,30 @@ ...@@ -2082,11 +3182,30 @@
2082 "ieee754": "^1.1.13" 3182 "ieee754": "^1.1.13"
2083 } 3183 }
2084 }, 3184 },
3185 + "buffer-equal-constant-time": {
3186 + "version": "1.0.1",
3187 + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
3188 + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="
3189 + },
2085 "buffer-from": { 3190 "buffer-from": {
2086 "version": "1.1.1", 3191 "version": "1.1.1",
2087 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 3192 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
2088 "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" 3193 "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
2089 }, 3194 },
3195 + "bytes": {
3196 + "version": "3.1.0",
3197 + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
3198 + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg=="
3199 + },
3200 + "call-bind": {
3201 + "version": "1.0.2",
3202 + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
3203 + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
3204 + "requires": {
3205 + "function-bind": "^1.1.1",
3206 + "get-intrinsic": "^1.0.2"
3207 + }
3208 + },
2090 "callback-stream": { 3209 "callback-stream": {
2091 "version": "1.1.0", 3210 "version": "1.1.0",
2092 "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz", 3211 "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz",
...@@ -2141,6 +3260,17 @@ ...@@ -2141,6 +3260,17 @@
2141 "supports-color": "^7.1.0" 3260 "supports-color": "^7.1.0"
2142 } 3261 }
2143 }, 3262 },
3263 + "co-body": {
3264 + "version": "5.2.0",
3265 + "resolved": "https://registry.npmjs.org/co-body/-/co-body-5.2.0.tgz",
3266 + "integrity": "sha512-sX/LQ7LqUhgyaxzbe7IqwPeTr2yfpfUIQ/dgpKo6ZI4y4lpQA0YxAomWIY+7I7rHWcG02PG+OuPREzMW/5tszQ==",
3267 + "requires": {
3268 + "inflation": "^2.0.0",
3269 + "qs": "^6.4.0",
3270 + "raw-body": "^2.2.0",
3271 + "type-is": "^1.6.14"
3272 + }
3273 + },
2144 "color-convert": { 3274 "color-convert": {
2145 "version": "2.0.1", 3275 "version": "2.0.1",
2146 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 3276 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
...@@ -2165,6 +3295,14 @@ ...@@ -2165,6 +3295,14 @@
2165 "minimist": "^1.1.0" 3295 "minimist": "^1.1.0"
2166 } 3296 }
2167 }, 3297 },
3298 + "compressible": {
3299 + "version": "2.0.18",
3300 + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
3301 + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
3302 + "requires": {
3303 + "mime-db": ">= 1.43.0 < 2"
3304 + }
3305 + },
2168 "concat-map": { 3306 "concat-map": {
2169 "version": "0.0.1", 3307 "version": "0.0.1",
2170 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 3308 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
...@@ -2181,6 +3319,19 @@ ...@@ -2181,6 +3319,19 @@
2181 "typedarray": "^0.0.6" 3319 "typedarray": "^0.0.6"
2182 } 3320 }
2183 }, 3321 },
3322 + "configstore": {
3323 + "version": "5.0.1",
3324 + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz",
3325 + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==",
3326 + "requires": {
3327 + "dot-prop": "^5.2.0",
3328 + "graceful-fs": "^4.1.2",
3329 + "make-dir": "^3.0.0",
3330 + "unique-string": "^2.0.0",
3331 + "write-file-atomic": "^3.0.0",
3332 + "xdg-basedir": "^4.0.0"
3333 + }
3334 + },
2184 "core-util-is": { 3335 "core-util-is": {
2185 "version": "1.0.2", 3336 "version": "1.0.2",
2186 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 3337 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
...@@ -2197,6 +3348,16 @@ ...@@ -2197,6 +3348,16 @@
2197 "which": "^2.0.1" 3348 "which": "^2.0.1"
2198 } 3349 }
2199 }, 3350 },
3351 + "crypto-random-string": {
3352 + "version": "2.0.0",
3353 + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
3354 + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA=="
3355 + },
3356 + "date-and-time": {
3357 + "version": "2.0.0",
3358 + "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-2.0.0.tgz",
3359 + "integrity": "sha512-HJSzj25iPm8E01nt+rSmCIlwjsmjvKfUivG/kXBglpymcHF1FolWAqWwTEV4FvN1Lx5UjPf0J1W4H8yQsVBfFg=="
3360 + },
2200 "debug": { 3361 "debug": {
2201 "version": "4.3.1", 3362 "version": "4.3.1",
2202 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", 3363 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
...@@ -2211,6 +3372,11 @@ ...@@ -2211,6 +3372,11 @@
2211 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 3372 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
2212 "dev": true 3373 "dev": true
2213 }, 3374 },
3375 + "depd": {
3376 + "version": "1.1.2",
3377 + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
3378 + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
3379 + },
2214 "doctrine": { 3380 "doctrine": {
2215 "version": "3.0.0", 3381 "version": "3.0.0",
2216 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", 3382 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
...@@ -2220,6 +3386,14 @@ ...@@ -2220,6 +3386,14 @@
2220 "esutils": "^2.0.2" 3386 "esutils": "^2.0.2"
2221 } 3387 }
2222 }, 3388 },
3389 + "dot-prop": {
3390 + "version": "5.3.0",
3391 + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
3392 + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
3393 + "requires": {
3394 + "is-obj": "^2.0.0"
3395 + }
3396 + },
2223 "duplexify": { 3397 "duplexify": {
2224 "version": "3.7.1", 3398 "version": "3.7.1",
2225 "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", 3399 "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
...@@ -2260,6 +3434,14 @@ ...@@ -2260,6 +3434,14 @@
2260 } 3434 }
2261 } 3435 }
2262 }, 3436 },
3437 + "ecdsa-sig-formatter": {
3438 + "version": "1.0.11",
3439 + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
3440 + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
3441 + "requires": {
3442 + "safe-buffer": "^5.0.1"
3443 + }
3444 + },
2263 "emoji-regex": { 3445 "emoji-regex": {
2264 "version": "8.0.0", 3446 "version": "8.0.0",
2265 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 3447 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
...@@ -2283,6 +3465,11 @@ ...@@ -2283,6 +3465,11 @@
2283 "ansi-colors": "^4.1.1" 3465 "ansi-colors": "^4.1.1"
2284 } 3466 }
2285 }, 3467 },
3468 + "ent": {
3469 + "version": "2.2.0",
3470 + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
3471 + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0="
3472 + },
2286 "escape-string-regexp": { 3473 "escape-string-regexp": {
2287 "version": "4.0.0", 3474 "version": "4.0.0",
2288 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 3475 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
...@@ -2461,6 +3648,11 @@ ...@@ -2461,6 +3648,11 @@
2461 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 3648 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
2462 "dev": true 3649 "dev": true
2463 }, 3650 },
3651 + "event-target-shim": {
3652 + "version": "5.0.1",
3653 + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
3654 + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
3655 + },
2464 "extend": { 3656 "extend": {
2465 "version": "3.0.2", 3657 "version": "3.0.2",
2466 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", 3658 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
...@@ -2484,6 +3676,11 @@ ...@@ -2484,6 +3676,11 @@
2484 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 3676 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
2485 "dev": true 3677 "dev": true
2486 }, 3678 },
3679 + "fast-text-encoding": {
3680 + "version": "1.0.3",
3681 + "resolved": "https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz",
3682 + "integrity": "sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig=="
3683 + },
2487 "file-entry-cache": { 3684 "file-entry-cache": {
2488 "version": "6.0.1", 3685 "version": "6.0.1",
2489 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 3686 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
...@@ -2509,17 +3706,100 @@ ...@@ -2509,17 +3706,100 @@
2509 "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", 3706 "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==",
2510 "dev": true 3707 "dev": true
2511 }, 3708 },
3709 + "formidable": {
3710 + "version": "1.2.2",
3711 + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz",
3712 + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q=="
3713 + },
2512 "fs.realpath": { 3714 "fs.realpath": {
2513 "version": "1.0.0", 3715 "version": "1.0.0",
2514 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 3716 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
2515 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 3717 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
2516 }, 3718 },
3719 + "function-bind": {
3720 + "version": "1.1.1",
3721 + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
3722 + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
3723 + },
2517 "functional-red-black-tree": { 3724 "functional-red-black-tree": {
2518 "version": "1.0.1", 3725 "version": "1.0.1",
2519 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 3726 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
2520 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 3727 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
2521 "dev": true 3728 "dev": true
2522 }, 3729 },
3730 + "gaxios": {
3731 + "version": "4.3.2",
3732 + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.2.tgz",
3733 + "integrity": "sha512-T+ap6GM6UZ0c4E6yb1y/hy2UB6hTrqhglp3XfmU9qbLCGRYhLVV5aRPpC4EmoG8N8zOnkYCgoBz+ScvGAARY6Q==",
3734 + "requires": {
3735 + "abort-controller": "^3.0.0",
3736 + "extend": "^3.0.2",
3737 + "https-proxy-agent": "^5.0.0",
3738 + "is-stream": "^2.0.0",
3739 + "node-fetch": "^2.6.1"
3740 + }
3741 + },
3742 + "gcp-metadata": {
3743 + "version": "4.3.1",
3744 + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz",
3745 + "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",
3746 + "requires": {
3747 + "gaxios": "^4.0.0",
3748 + "json-bigint": "^1.0.0"
3749 + }
3750 + },
3751 + "gcs-resumable-upload": {
3752 + "version": "3.3.1",
3753 + "resolved": "https://registry.npmjs.org/gcs-resumable-upload/-/gcs-resumable-upload-3.3.1.tgz",
3754 + "integrity": "sha512-WyC0i4VkslIdrdmeM5PNuGzANALLXTG5RoHb08OE30gYT+FEvCDPiA8KOjV2s1wOu9ngEW4+IuzBjtP/ni7UdQ==",
3755 + "requires": {
3756 + "abort-controller": "^3.0.0",
3757 + "configstore": "^5.0.0",
3758 + "extend": "^3.0.2",
3759 + "gaxios": "^4.0.0",
3760 + "google-auth-library": "^7.0.0",
3761 + "pumpify": "^2.0.0",
3762 + "stream-events": "^1.0.4"
3763 + },
3764 + "dependencies": {
3765 + "duplexify": {
3766 + "version": "4.1.2",
3767 + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz",
3768 + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
3769 + "requires": {
3770 + "end-of-stream": "^1.4.1",
3771 + "inherits": "^2.0.3",
3772 + "readable-stream": "^3.1.1",
3773 + "stream-shift": "^1.0.0"
3774 + }
3775 + },
3776 + "pumpify": {
3777 + "version": "2.0.1",
3778 + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz",
3779 + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==",
3780 + "requires": {
3781 + "duplexify": "^4.1.1",
3782 + "inherits": "^2.0.3",
3783 + "pump": "^3.0.0"
3784 + }
3785 + }
3786 + }
3787 + },
3788 + "get-intrinsic": {
3789 + "version": "1.1.1",
3790 + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
3791 + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
3792 + "requires": {
3793 + "function-bind": "^1.1.1",
3794 + "has": "^1.0.3",
3795 + "has-symbols": "^1.0.1"
3796 + }
3797 + },
3798 + "get-stream": {
3799 + "version": "6.0.1",
3800 + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
3801 + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg=="
3802 + },
2523 "glob": { 3803 "glob": {
2524 "version": "7.1.6", 3804 "version": "7.1.6",
2525 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 3805 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
...@@ -2597,12 +3877,69 @@ ...@@ -2597,12 +3877,69 @@
2597 "type-fest": "^0.20.2" 3877 "type-fest": "^0.20.2"
2598 } 3878 }
2599 }, 3879 },
3880 + "google-auth-library": {
3881 + "version": "7.9.2",
3882 + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.9.2.tgz",
3883 + "integrity": "sha512-HjxbJt660a+YUTYAgYor87JCuBZvjUSNBExk4bXTEaMuCn8IHSDeHmFxKqThuDPrLCiKJp8blk/Ze8f7SI4N6g==",
3884 + "requires": {
3885 + "arrify": "^2.0.0",
3886 + "base64-js": "^1.3.0",
3887 + "ecdsa-sig-formatter": "^1.0.11",
3888 + "fast-text-encoding": "^1.0.0",
3889 + "gaxios": "^4.0.0",
3890 + "gcp-metadata": "^4.2.0",
3891 + "gtoken": "^5.0.4",
3892 + "jws": "^4.0.0",
3893 + "lru-cache": "^6.0.0"
3894 + }
3895 + },
3896 + "google-p12-pem": {
3897 + "version": "3.1.2",
3898 + "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.2.tgz",
3899 + "integrity": "sha512-tjf3IQIt7tWCDsa0ofDQ1qqSCNzahXDxdAGJDbruWqu3eCg5CKLYKN+hi0s6lfvzYZ1GDVr+oDF9OOWlDSdf0A==",
3900 + "requires": {
3901 + "node-forge": "^0.10.0"
3902 + }
3903 + },
3904 + "graceful-fs": {
3905 + "version": "4.2.8",
3906 + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
3907 + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg=="
3908 + },
3909 + "gtoken": {
3910 + "version": "5.3.1",
3911 + "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.1.tgz",
3912 + "integrity": "sha512-yqOREjzLHcbzz1UrQoxhBtpk8KjrVhuqPE7od1K2uhyxG2BHjKZetlbLw/SPZak/QqTIQW+addS+EcjqQsZbwQ==",
3913 + "requires": {
3914 + "gaxios": "^4.0.0",
3915 + "google-p12-pem": "^3.0.3",
3916 + "jws": "^4.0.0"
3917 + }
3918 + },
3919 + "has": {
3920 + "version": "1.0.3",
3921 + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
3922 + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
3923 + "requires": {
3924 + "function-bind": "^1.1.1"
3925 + }
3926 + },
2600 "has-flag": { 3927 "has-flag": {
2601 "version": "4.0.0", 3928 "version": "4.0.0",
2602 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 3929 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2603 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 3930 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2604 "dev": true 3931 "dev": true
2605 }, 3932 },
3933 + "has-symbols": {
3934 + "version": "1.0.2",
3935 + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
3936 + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw=="
3937 + },
3938 + "hash-stream-validation": {
3939 + "version": "0.2.4",
3940 + "resolved": "https://registry.npmjs.org/hash-stream-validation/-/hash-stream-validation-0.2.4.tgz",
3941 + "integrity": "sha512-Gjzu0Xn7IagXVkSu9cSFuK1fqzwtLwFhNhVL8IFJijRNMgUttFbBSIAzKuSIrsFMO1+g1RlsoN49zPIbwPDMGQ=="
3942 + },
2606 "help-me": { 3943 "help-me": {
2607 "version": "1.1.0", 3944 "version": "1.1.0",
2608 "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz", 3945 "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz",
...@@ -2614,6 +3951,45 @@ ...@@ -2614,6 +3951,45 @@
2614 "xtend": "^4.0.0" 3951 "xtend": "^4.0.0"
2615 } 3952 }
2616 }, 3953 },
3954 + "http-errors": {
3955 + "version": "1.7.3",
3956 + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz",
3957 + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==",
3958 + "requires": {
3959 + "depd": "~1.1.2",
3960 + "inherits": "2.0.4",
3961 + "setprototypeof": "1.1.1",
3962 + "statuses": ">= 1.5.0 < 2",
3963 + "toidentifier": "1.0.0"
3964 + }
3965 + },
3966 + "http-proxy-agent": {
3967 + "version": "4.0.1",
3968 + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
3969 + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
3970 + "requires": {
3971 + "@tootallnate/once": "1",
3972 + "agent-base": "6",
3973 + "debug": "4"
3974 + }
3975 + },
3976 + "https-proxy-agent": {
3977 + "version": "5.0.0",
3978 + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz",
3979 + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
3980 + "requires": {
3981 + "agent-base": "6",
3982 + "debug": "4"
3983 + }
3984 + },
3985 + "iconv-lite": {
3986 + "version": "0.4.24",
3987 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
3988 + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
3989 + "requires": {
3990 + "safer-buffer": ">= 2.1.2 < 3"
3991 + }
3992 + },
2617 "ieee754": { 3993 "ieee754": {
2618 "version": "1.2.1", 3994 "version": "1.2.1",
2619 "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", 3995 "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
...@@ -2638,8 +4014,12 @@ ...@@ -2638,8 +4014,12 @@
2638 "imurmurhash": { 4014 "imurmurhash": {
2639 "version": "0.1.4", 4015 "version": "0.1.4",
2640 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 4016 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
2641 - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 4017 + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
2642 - "dev": true 4018 + },
4019 + "inflation": {
4020 + "version": "2.0.0",
4021 + "resolved": "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz",
4022 + "integrity": "sha1-i0F+R8KPklpFEz2RTKH9OJEH8w8="
2643 }, 4023 },
2644 "inflight": { 4024 "inflight": {
2645 "version": "1.0.6", 4025 "version": "1.0.6",
...@@ -2688,6 +4068,11 @@ ...@@ -2688,6 +4068,11 @@
2688 "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", 4068 "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
2689 "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=" 4069 "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI="
2690 }, 4070 },
4071 + "is-obj": {
4072 + "version": "2.0.0",
4073 + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
4074 + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w=="
4075 + },
2691 "is-relative": { 4076 "is-relative": {
2692 "version": "1.0.0", 4077 "version": "1.0.0",
2693 "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", 4078 "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
...@@ -2696,6 +4081,16 @@ ...@@ -2696,6 +4081,16 @@
2696 "is-unc-path": "^1.0.0" 4081 "is-unc-path": "^1.0.0"
2697 } 4082 }
2698 }, 4083 },
4084 + "is-stream": {
4085 + "version": "2.0.1",
4086 + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
4087 + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
4088 + },
4089 + "is-typedarray": {
4090 + "version": "1.0.0",
4091 + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
4092 + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
4093 + },
2699 "is-unc-path": { 4094 "is-unc-path": {
2700 "version": "1.0.0", 4095 "version": "1.0.0",
2701 "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", 4096 "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
...@@ -2736,6 +4131,14 @@ ...@@ -2736,6 +4131,14 @@
2736 "esprima": "^4.0.0" 4131 "esprima": "^4.0.0"
2737 } 4132 }
2738 }, 4133 },
4134 + "json-bigint": {
4135 + "version": "1.0.0",
4136 + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
4137 + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
4138 + "requires": {
4139 + "bignumber.js": "^9.0.0"
4140 + }
4141 + },
2739 "json-schema-traverse": { 4142 "json-schema-traverse": {
2740 "version": "0.4.1", 4143 "version": "0.4.1",
2741 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 4144 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
...@@ -2747,6 +4150,35 @@ ...@@ -2747,6 +4150,35 @@
2747 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 4150 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
2748 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" 4151 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE="
2749 }, 4152 },
4153 + "jwa": {
4154 + "version": "2.0.0",
4155 + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz",
4156 + "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==",
4157 + "requires": {
4158 + "buffer-equal-constant-time": "1.0.1",
4159 + "ecdsa-sig-formatter": "1.0.11",
4160 + "safe-buffer": "^5.0.1"
4161 + }
4162 + },
4163 + "jws": {
4164 + "version": "4.0.0",
4165 + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz",
4166 + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==",
4167 + "requires": {
4168 + "jwa": "^2.0.0",
4169 + "safe-buffer": "^5.0.1"
4170 + }
4171 + },
4172 + "koa-body": {
4173 + "version": "4.2.0",
4174 + "resolved": "https://registry.npmjs.org/koa-body/-/koa-body-4.2.0.tgz",
4175 + "integrity": "sha512-wdGu7b9amk4Fnk/ytH8GuWwfs4fsB5iNkY8kZPpgQVb04QZSv85T0M8reb+cJmvLE8cjPYvBzRikD3s6qz8OoA==",
4176 + "requires": {
4177 + "@types/formidable": "^1.0.31",
4178 + "co-body": "^5.1.1",
4179 + "formidable": "^1.1.1"
4180 + }
4181 + },
2750 "leven": { 4182 "leven": {
2751 "version": "2.1.0", 4183 "version": "2.1.0",
2752 "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", 4184 "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
...@@ -2784,11 +4216,48 @@ ...@@ -2784,11 +4216,48 @@
2784 "version": "6.0.0", 4216 "version": "6.0.0",
2785 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 4217 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
2786 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 4218 "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
2787 - "dev": true,
2788 "requires": { 4219 "requires": {
2789 "yallist": "^4.0.0" 4220 "yallist": "^4.0.0"
2790 } 4221 }
2791 }, 4222 },
4223 + "make-dir": {
4224 + "version": "3.1.0",
4225 + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
4226 + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
4227 + "requires": {
4228 + "semver": "^6.0.0"
4229 + },
4230 + "dependencies": {
4231 + "semver": {
4232 + "version": "6.3.0",
4233 + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
4234 + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
4235 + }
4236 + }
4237 + },
4238 + "media-typer": {
4239 + "version": "0.3.0",
4240 + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
4241 + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
4242 + },
4243 + "mime": {
4244 + "version": "2.5.2",
4245 + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz",
4246 + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg=="
4247 + },
4248 + "mime-db": {
4249 + "version": "1.49.0",
4250 + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz",
4251 + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA=="
4252 + },
4253 + "mime-types": {
4254 + "version": "2.1.32",
4255 + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz",
4256 + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==",
4257 + "requires": {
4258 + "mime-db": "1.49.0"
4259 + }
4260 + },
2792 "minimatch": { 4261 "minimatch": {
2793 "version": "3.0.4", 4262 "version": "3.0.4",
2794 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 4263 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
...@@ -2807,6 +4276,14 @@ ...@@ -2807,6 +4276,14 @@
2807 "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", 4276 "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
2808 "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" 4277 "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ=="
2809 }, 4278 },
4279 + "moment-timezone": {
4280 + "version": "0.5.33",
4281 + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz",
4282 + "integrity": "sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==",
4283 + "requires": {
4284 + "moment": ">= 2.9.0"
4285 + }
4286 + },
2810 "mqtt": { 4287 "mqtt": {
2811 "version": "4.2.6", 4288 "version": "4.2.6",
2812 "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.6.tgz", 4289 "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.6.tgz",
...@@ -2848,6 +4325,29 @@ ...@@ -2848,6 +4325,29 @@
2848 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 4325 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
2849 "dev": true 4326 "dev": true
2850 }, 4327 },
4328 + "node-cron": {
4329 + "version": "3.0.0",
4330 + "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.0.tgz",
4331 + "integrity": "sha512-DDwIvvuCwrNiaU7HEivFDULcaQualDv7KoNlB/UU1wPW0n1tDEmBJKhEIE6DlF2FuoOHcNbLJ8ITL2Iv/3AWmA==",
4332 + "requires": {
4333 + "moment-timezone": "^0.5.31"
4334 + }
4335 + },
4336 + "node-fetch": {
4337 + "version": "2.6.2",
4338 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.2.tgz",
4339 + "integrity": "sha512-aLoxToI6RfZ+0NOjmWAgn9+LEd30YCkJKFSyWacNZdEKTit/ZMcKjGkTRo8uWEsnIb/hfKecNPEbln02PdWbcA=="
4340 + },
4341 + "node-forge": {
4342 + "version": "0.10.0",
4343 + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz",
4344 + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA=="
4345 + },
4346 + "object-inspect": {
4347 + "version": "1.11.0",
4348 + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
4349 + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg=="
4350 + },
2851 "once": { 4351 "once": {
2852 "version": "1.4.0", 4352 "version": "1.4.0",
2853 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 4353 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
...@@ -2907,6 +4407,14 @@ ...@@ -2907,6 +4407,14 @@
2907 } 4407 }
2908 } 4408 }
2909 }, 4409 },
4410 + "p-limit": {
4411 + "version": "3.1.0",
4412 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
4413 + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
4414 + "requires": {
4415 + "yocto-queue": "^0.1.0"
4416 + }
4417 + },
2910 "parent-module": { 4418 "parent-module": {
2911 "version": "1.0.1", 4419 "version": "1.0.1",
2912 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 4420 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
...@@ -2985,6 +4493,25 @@ ...@@ -2985,6 +4493,25 @@
2985 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 4493 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
2986 "dev": true 4494 "dev": true
2987 }, 4495 },
4496 + "qs": {
4497 + "version": "6.10.1",
4498 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz",
4499 + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==",
4500 + "requires": {
4501 + "side-channel": "^1.0.4"
4502 + }
4503 + },
4504 + "raw-body": {
4505 + "version": "2.4.1",
4506 + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz",
4507 + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==",
4508 + "requires": {
4509 + "bytes": "3.1.0",
4510 + "http-errors": "1.7.3",
4511 + "iconv-lite": "0.4.24",
4512 + "unpipe": "1.0.0"
4513 + }
4514 + },
2988 "readable-stream": { 4515 "readable-stream": {
2989 "version": "3.6.0", 4516 "version": "3.6.0",
2990 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 4517 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
...@@ -3023,6 +4550,20 @@ ...@@ -3023,6 +4550,20 @@
3023 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 4550 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
3024 "dev": true 4551 "dev": true
3025 }, 4552 },
4553 + "retry": {
4554 + "version": "0.13.1",
4555 + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
4556 + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg=="
4557 + },
4558 + "retry-request": {
4559 + "version": "4.2.2",
4560 + "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz",
4561 + "integrity": "sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==",
4562 + "requires": {
4563 + "debug": "^4.1.1",
4564 + "extend": "^3.0.2"
4565 + }
4566 + },
3026 "rimraf": { 4567 "rimraf": {
3027 "version": "3.0.2", 4568 "version": "3.0.2",
3028 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", 4569 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
...@@ -3037,6 +4578,11 @@ ...@@ -3037,6 +4578,11 @@
3037 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 4578 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
3038 "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 4579 "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
3039 }, 4580 },
4581 + "safer-buffer": {
4582 + "version": "2.1.2",
4583 + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
4584 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
4585 + },
3040 "semver": { 4586 "semver": {
3041 "version": "7.3.5", 4587 "version": "7.3.5",
3042 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", 4588 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
...@@ -3046,6 +4592,11 @@ ...@@ -3046,6 +4592,11 @@
3046 "lru-cache": "^6.0.0" 4592 "lru-cache": "^6.0.0"
3047 } 4593 }
3048 }, 4594 },
4595 + "setprototypeof": {
4596 + "version": "1.1.1",
4597 + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
4598 + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw=="
4599 + },
3049 "shebang-command": { 4600 "shebang-command": {
3050 "version": "2.0.0", 4601 "version": "2.0.0",
3051 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 4602 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
...@@ -3061,6 +4612,21 @@ ...@@ -3061,6 +4612,21 @@
3061 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 4612 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
3062 "dev": true 4613 "dev": true
3063 }, 4614 },
4615 + "side-channel": {
4616 + "version": "1.0.4",
4617 + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
4618 + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
4619 + "requires": {
4620 + "call-bind": "^1.0.0",
4621 + "get-intrinsic": "^1.0.2",
4622 + "object-inspect": "^1.9.0"
4623 + }
4624 + },
4625 + "signal-exit": {
4626 + "version": "3.0.4",
4627 + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz",
4628 + "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q=="
4629 + },
3064 "slice-ansi": { 4630 "slice-ansi": {
3065 "version": "4.0.0", 4631 "version": "4.0.0",
3066 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", 4632 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
...@@ -3072,6 +4638,11 @@ ...@@ -3072,6 +4638,11 @@
3072 "is-fullwidth-code-point": "^3.0.0" 4638 "is-fullwidth-code-point": "^3.0.0"
3073 } 4639 }
3074 }, 4640 },
4641 + "snakeize": {
4642 + "version": "0.1.0",
4643 + "resolved": "https://registry.npmjs.org/snakeize/-/snakeize-0.1.0.tgz",
4644 + "integrity": "sha1-EMCI2LWOsHazIpu1oE4jLOEmQi0="
4645 + },
3075 "split2": { 4646 "split2": {
3076 "version": "3.2.2", 4647 "version": "3.2.2",
3077 "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", 4648 "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz",
...@@ -3086,6 +4657,19 @@ ...@@ -3086,6 +4657,19 @@
3086 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 4657 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
3087 "dev": true 4658 "dev": true
3088 }, 4659 },
4660 + "statuses": {
4661 + "version": "1.5.0",
4662 + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
4663 + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
4664 + },
4665 + "stream-events": {
4666 + "version": "1.0.5",
4667 + "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz",
4668 + "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==",
4669 + "requires": {
4670 + "stubs": "^3.0.0"
4671 + }
4672 + },
3089 "stream-shift": { 4673 "stream-shift": {
3090 "version": "1.0.1", 4674 "version": "1.0.1",
3091 "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", 4675 "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz",
...@@ -3125,6 +4709,11 @@ ...@@ -3125,6 +4709,11 @@
3125 "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 4709 "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
3126 "dev": true 4710 "dev": true
3127 }, 4711 },
4712 + "stubs": {
4713 + "version": "3.0.0",
4714 + "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz",
4715 + "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls="
4716 + },
3128 "supports-color": { 4717 "supports-color": {
3129 "version": "7.2.0", 4718 "version": "7.2.0",
3130 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 4719 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
...@@ -3168,6 +4757,18 @@ ...@@ -3168,6 +4757,18 @@
3168 } 4757 }
3169 } 4758 }
3170 }, 4759 },
4760 + "teeny-request": {
4761 + "version": "7.1.2",
4762 + "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.1.2.tgz",
4763 + "integrity": "sha512-Mr4NYZuniKDpgcLxdBkDE1CcWy98Aw1ennn6oNofen+XWUvDs+ZZzBAujy6XOAVwwLLZMwEQSfdljUI+ebs4Ww==",
4764 + "requires": {
4765 + "http-proxy-agent": "^4.0.0",
4766 + "https-proxy-agent": "^5.0.0",
4767 + "node-fetch": "^2.6.1",
4768 + "stream-events": "^1.0.5",
4769 + "uuid": "^8.0.0"
4770 + }
4771 + },
3171 "text-table": { 4772 "text-table": {
3172 "version": "0.2.0", 4773 "version": "0.2.0",
3173 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 4774 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
...@@ -3230,6 +4831,11 @@ ...@@ -3230,6 +4831,11 @@
3230 "is-negated-glob": "^1.0.0" 4831 "is-negated-glob": "^1.0.0"
3231 } 4832 }
3232 }, 4833 },
4834 + "toidentifier": {
4835 + "version": "1.0.0",
4836 + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
4837 + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw=="
4838 + },
3233 "type-check": { 4839 "type-check": {
3234 "version": "0.4.0", 4840 "version": "0.4.0",
3235 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 4841 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
...@@ -3245,11 +4851,28 @@ ...@@ -3245,11 +4851,28 @@
3245 "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 4851 "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
3246 "dev": true 4852 "dev": true
3247 }, 4853 },
4854 + "type-is": {
4855 + "version": "1.6.18",
4856 + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
4857 + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
4858 + "requires": {
4859 + "media-typer": "0.3.0",
4860 + "mime-types": "~2.1.24"
4861 + }
4862 + },
3248 "typedarray": { 4863 "typedarray": {
3249 "version": "0.0.6", 4864 "version": "0.0.6",
3250 "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 4865 "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
3251 "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 4866 "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
3252 }, 4867 },
4868 + "typedarray-to-buffer": {
4869 + "version": "3.1.5",
4870 + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
4871 + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
4872 + "requires": {
4873 + "is-typedarray": "^1.0.0"
4874 + }
4875 + },
3253 "unc-path-regex": { 4876 "unc-path-regex": {
3254 "version": "0.1.2", 4877 "version": "0.1.2",
3255 "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", 4878 "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
...@@ -3264,6 +4887,19 @@ ...@@ -3264,6 +4887,19 @@
3264 "through2-filter": "^3.0.0" 4887 "through2-filter": "^3.0.0"
3265 } 4888 }
3266 }, 4889 },
4890 + "unique-string": {
4891 + "version": "2.0.0",
4892 + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz",
4893 + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==",
4894 + "requires": {
4895 + "crypto-random-string": "^2.0.0"
4896 + }
4897 + },
4898 + "unpipe": {
4899 + "version": "1.0.0",
4900 + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
4901 + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
4902 + },
3267 "uri-js": { 4903 "uri-js": {
3268 "version": "4.4.1", 4904 "version": "4.4.1",
3269 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 4905 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
...@@ -3278,12 +4914,22 @@ ...@@ -3278,12 +4914,22 @@
3278 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 4914 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
3279 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 4915 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
3280 }, 4916 },
4917 + "uuid": {
4918 + "version": "8.3.2",
4919 + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
4920 + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
4921 + },
3281 "v8-compile-cache": { 4922 "v8-compile-cache": {
3282 "version": "2.3.0", 4923 "version": "2.3.0",
3283 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", 4924 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
3284 "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", 4925 "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
3285 "dev": true 4926 "dev": true
3286 }, 4927 },
4928 + "vary": {
4929 + "version": "1.1.2",
4930 + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
4931 + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
4932 + },
3287 "which": { 4933 "which": {
3288 "version": "2.0.2", 4934 "version": "2.0.2",
3289 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 4935 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
...@@ -3304,12 +4950,28 @@ ...@@ -3304,12 +4950,28 @@
3304 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 4950 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
3305 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 4951 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
3306 }, 4952 },
4953 + "write-file-atomic": {
4954 + "version": "3.0.3",
4955 + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
4956 + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
4957 + "requires": {
4958 + "imurmurhash": "^0.1.4",
4959 + "is-typedarray": "^1.0.0",
4960 + "signal-exit": "^3.0.2",
4961 + "typedarray-to-buffer": "^3.1.5"
4962 + }
4963 + },
3307 "ws": { 4964 "ws": {
3308 "version": "7.4.5", 4965 "version": "7.4.5",
3309 "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz", 4966 "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz",
3310 "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==", 4967 "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==",
3311 "requires": {} 4968 "requires": {}
3312 }, 4969 },
4970 + "xdg-basedir": {
4971 + "version": "4.0.0",
4972 + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz",
4973 + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q=="
4974 + },
3313 "xtend": { 4975 "xtend": {
3314 "version": "4.0.2", 4976 "version": "4.0.2",
3315 "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 4977 "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
...@@ -3318,8 +4980,12 @@ ...@@ -3318,8 +4980,12 @@
3318 "yallist": { 4980 "yallist": {
3319 "version": "4.0.0", 4981 "version": "4.0.0",
3320 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 4982 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
3321 - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 4983 + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
3322 - "dev": true 4984 + },
4985 + "yocto-queue": {
4986 + "version": "0.1.0",
4987 + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
4988 + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
3323 } 4989 }
3324 } 4990 }
3325 } 4991 }
......
...@@ -17,7 +17,9 @@ ...@@ -17,7 +17,9 @@
17 "author": "박권수", 17 "author": "박권수",
18 "license": "ISC", 18 "license": "ISC",
19 "dependencies": { 19 "dependencies": {
20 + "@google-cloud/storage": "^5.14.2",
20 "@koa/cors": "^3.1.0", 21 "@koa/cors": "^3.1.0",
22 + "koa-body": "^4.2.0",
21 "moment": "^2.29.1", 23 "moment": "^2.29.1",
22 "moment-timezone": "^0.5.33", 24 "moment-timezone": "^0.5.33",
23 "mqtt": "^4.2.6", 25 "mqtt": "^4.2.6",
......
...@@ -7,6 +7,8 @@ const Joi = require('joi'); ...@@ -7,6 +7,8 @@ const Joi = require('joi');
7 const jwt = require('jsonwebtoken'); 7 const jwt = require('jsonwebtoken');
8 const axios = require('axios'); 8 const axios = require('axios');
9 9
10 +const { Storage } = require('@google-cloud/storage');
11 +const GoogleStorageUrl = 'https://storage.googleapis.com/';
10 12
11 exports.register = async(ctx) => { 13 exports.register = async(ctx) => {
12 const { 14 const {
...@@ -95,17 +97,38 @@ exports.doctorRegister = async ctx => { ...@@ -95,17 +97,38 @@ exports.doctorRegister = async ctx => {
95 userId, 97 userId,
96 password, 98 password,
97 passwordCheck, 99 passwordCheck,
98 - info, 100 +
101 + contact,
102 + hospitalNm,
103 + hospitalAddr,
104 + doctorType,
105 + doctorNm,
99 } = ctx.request.body; 106 } = ctx.request.body;
100 107
108 + const { doctorInfoFile } = ctx.request.files;
109 +
110 + const info = {
111 + contact,
112 + hospitalAddr,
113 + hospitalNm,
114 + doctorType,
115 + doctorNm,
116 + doctorLicense : '',
117 + };
118 +
101 const schema = Joi.object().keys({ 119 const schema = Joi.object().keys({
102 userId : Joi.string().email().max(50).required(), 120 userId : Joi.string().email().max(50).required(),
103 password : Joi.string().required(), 121 password : Joi.string().required(),
104 passwordCheck : Joi.string().required(), 122 passwordCheck : Joi.string().required(),
105 - info : Joi.object().required(), 123 + doctorInfoFile : Joi.object().required(),
106 - }) 124 + });
107 - 125 +
108 - const result = schema.validate(ctx.request.body); 126 + const result = schema.validate({
127 + userId,
128 + password,
129 + passwordCheck,
130 + doctorInfoFile,
131 + });
109 if(result.error || password !== passwordCheck) { 132 if(result.error || password !== passwordCheck) {
110 ctx.status = 400; 133 ctx.status = 400;
111 ctx.body = { 134 ctx.body = {
...@@ -145,19 +168,31 @@ exports.doctorRegister = async ctx => { ...@@ -145,19 +168,31 @@ exports.doctorRegister = async ctx => {
145 }); 168 });
146 169
147 await doctor.setPassword(password); 170 await doctor.setPassword(password);
171 + doctor.save();
148 172
149 - const doctorInfo = new DoctorInfo({
150 - doctorId : userId,
151 - info,
152 - useYn : 'W',
153 - });
154 173
174 + const destination = userId + '_' + doctorInfoFile.name;
175 + const storage = new Storage();
176 + storage.bucket('doctor-info').upload(doctorInfoFile.path, {
177 + destination,
178 + }, (err, file, res) => {
179 + if(err) console.log('Fail to upload Doctor License');
180 + else {
181 + info.doctorLicense = GoogleStorageUrl + `${res.bucket}/${res.name}`;
182 + console.log('Success to Upload Doctor License!');
183 + }
155 184
156 - doctor.save(); 185 + const doctorInfo = new DoctorInfo({
157 - doctorInfo.save(); 186 + doctorId : userId,
187 + info,
188 + useYn : 'W',
189 + });
190 +
191 + doctorInfo.save();
192 + });
158 193
159 ctx.status = 201; 194 ctx.status = 201;
160 - 195 +
161 } 196 }
162 197
163 exports.login = async(ctx) => { 198 exports.login = async(ctx) => {
......
1 const Router = require('koa-router') 1 const Router = require('koa-router')
2 +const KoaBody = require('koa-body')({multipart : true});
2 const authCtrl = require('./auth.ctrl') 3 const authCtrl = require('./auth.ctrl')
3 4
4 const auth = new Router() 5 const auth = new Router()
...@@ -22,10 +23,10 @@ auth.get('/hospital', authCtrl.searchHospital); ...@@ -22,10 +23,10 @@ auth.get('/hospital', authCtrl.searchHospital);
22 /** 23 /**
23 * 회원가입 (email type) : 의사 회원가입 24 * 회원가입 (email type) : 의사 회원가입
24 * url : http://localhost:4000/api/auth/register/doctor 25 * url : http://localhost:4000/api/auth/register/doctor
25 - * request parameter : userId, password, passwordCheck, doctorInfo 26 + * request parameter : userId, password, passwordCheck, doctorInfo(File)
26 * return : null 27 * return : null
27 */ 28 */
28 - auth.post('/register/doctor', authCtrl.doctorRegister) 29 + auth.post('/register/doctor', KoaBody, authCtrl.doctorRegister)
29 30
30 /** 31 /**
31 * 로그인 (email type) 32 * 로그인 (email type)
......
1 const User = require('../../models/user'); 1 const User = require('../../models/user');
2 const DoctorInfo = require('../../models/doctorInfo'); 2 const DoctorInfo = require('../../models/doctorInfo');
3 -const Profile = require('../../models/profile');
4 const jwt = require('jsonwebtoken'); 3 const jwt = require('jsonwebtoken');
5 4
5 +const { Storage } = require('@google-cloud/storage');
6 +
7 +
6 /** 8 /**
7 * 의사 회원가입을 요청한 회원 리스트를 확인한다. 9 * 의사 회원가입을 요청한 회원 리스트를 확인한다.
8 * http methods : get 10 * http methods : get
...@@ -108,9 +110,25 @@ exports.getDoctorRegReqDetail = async ctx => { ...@@ -108,9 +110,25 @@ exports.getDoctorRegReqDetail = async ctx => {
108 return; 110 return;
109 } 111 }
110 112
113 + const fileName = doctorInfo.info.doctorLicense.split('/').pop();
114 + const file = new Storage().bucket('doctor-info').file(fileName);
115 + const option = {
116 + version : 'v4',
117 + expires : Date.now() + 1000 * 60 * 15,
118 + action : 'read',
119 + };
120 +
121 + const [signedUrl] = file ? await file.getSignedUrl(option) : [''];
122 +
111 ctx.status = 200; 123 ctx.status = 200;
112 ctx.body = { 124 ctx.body = {
113 - doctorInfo, 125 + doctorInfo : {
126 + ...doctorInfo._doc,
127 + info : {
128 + ...doctorInfo.info,
129 + doctorLicense : signedUrl,
130 + },
131 + },
114 }; 132 };
115 133
116 } catch (e) { 134 } catch (e) {
......
...@@ -13,6 +13,8 @@ ...@@ -13,6 +13,8 @@
13 const Hub = require('../models/hub'); 13 const Hub = require('../models/hub');
14 const Bottle = require('../models/bottle'); 14 const Bottle = require('../models/bottle');
15 const BottleMedicine = require('../models/bottleMedicine'); 15 const BottleMedicine = require('../models/bottleMedicine');
16 +
17 +const updateMedicineInfo = require('../lib/UpdatingMedicineInfo');
16 18
17 19
18 // //매년 1월 1일 00시 00분에 1살씩 추가 20 // //매년 1월 1일 00시 00분에 1살씩 추가
...@@ -28,9 +30,16 @@ ...@@ -28,9 +30,16 @@
28 // timezone : 'Asia/Tokyo', 30 // timezone : 'Asia/Tokyo',
29 // }); 31 // });
30 // }; 32 // };
31 - 33 +
32 - //dosage에 따라, Push Notification을 발송한다. 34 +//매월 1일 0시 0분에 약 정보 업데이트
33 - //아침 8시, 점심 12시, 저녁 6시에 한번씩 발송 35 +exports.updateMedicineData = async () => {
36 + cron.schedule('0 0 0 1 * *', () => {
37 + updateMedicineInfo.updateMedicineInfo();
38 + });
39 +};
40 +
41 +//dosage에 따라, Push Notification을 발송한다.
42 +//아침 8시, 점심 12시, 저녁 6시에 한번씩 발송
34 exports.PushNotifyByDosage = async() => { 43 exports.PushNotifyByDosage = async() => {
35 44
36 //매일 아침 8시 : 복용량 상관 없이 보냄 45 //매일 아침 8시 : 복용량 상관 없이 보냄
......
This diff could not be displayed because it is too large.