장소원
1 +# Dependency directories
2 +node_modules/
1 +var express = require('express');
2 +var client_id = 'your cfr client id';//cfr api client id를 입력하세요
3 +var client_secret = 'your cfr client secret';//cfr api client secret을 입력하세요
4 +const request = require('request');
5 +const TARGET_URL = 'https://api.line.me/v2/bot/message/reply'
6 +const TOKEN = 'your chatbot token' //line chatbot api token을 입력하세요
7 +const SECRET = 'your chatbot secret' //line chatbot api secret을 입력하세요
8 +const fs = require('fs');
9 +const path = require('path');
10 +const HTTPS = require('https');
11 +const domain = "your domain" //도메인을 입력하세요
12 +const sslport = 23023;
13 +const line = require('@line/bot-sdk');
14 +
15 +const bodyParser = require('body-parser');
16 +const { assert } = require('console');
17 +var app = express();
18 +app.use(bodyParser.json());
19 +
20 +var usingMessage = ''
21 +var content_id = ''
22 +
23 +
24 +//search
25 +var search_client_id = 'your search client id';//naver search local api client id를 입력하세요
26 +var search_client_secret = 'your search client secret';//naver search local api client secret 입력하세요
27 +
28 +//data parsing
29 +var data='';
30 +var title='';
31 +var link='';
32 +var category='';
33 +var address='';
34 +var roadAddress='';
35 +var menu='';
36 +
37 +var arrmenu=new Array('술','야식','한식','치킨','양식','중식','일식','고기','디저트','카페');
38 +
39 +app.post('/hook', function (req, res) {
40 +
41 + var eventObj = req.body.events[0];
42 + var text = eventObj.message.text;
43 +
44 + // request log
45 + if (!(eventObj.message.type == 'image')) {
46 + console.log('======================', new Date() ,'======================');
47 + console.log('[request]', req.body);
48 + console.log('[request source] ', eventObj.source);
49 + console.log('[request message]', eventObj.message);
50 + }
51 +
52 + if (eventObj.message.type == 'location') {
53 +
54 + //위치 받아서 맛집 추천해주는 함수
55 + var chatbotaddress=eventObj.message;
56 + var chatbotdata1=chatbotaddress.address;
57 + var chatbotdata2=chatbotdata1.split(' ');
58 + var place=chatbotdata2[3];
59 +
60 + console.log(place);
61 +
62 + var query= place + ' ' + menu + ' 맛집'; //검색 원하는 문자열
63 + RecommendationResult(eventObj.replyToken, query);
64 +
65 + res.sendStatus(200);
66 + } else if (text == 'Cfr:Yes') {
67 + QuickReplyCfrYes(eventObj.replyToken);
68 + res.sendStatus(200);
69 + } else if (text == 'Cfr:No') {
70 + QuickReplyCfrNo(eventObj.replyToken);
71 + res.sendStatus(200);
72 + } else if (text == '랜덤 추천' || text == '위치 기반 추천') {
73 + if (text == '랜덤 추천') {
74 +
75 + //랜덤으로 맛집 추천해주는 함수
76 + var randomMenu=Math.floor(Math.random()*10);
77 + var query = randomMenu+' 맛집';
78 + RecommendationResult(eventObj.replyToken, query);
79 +
80 + res.sendStatus(200);
81 + }
82 + else {
83 + SendingLocation(eventObj.replyToken);
84 + res.sendStatus(200);
85 + }
86 + } else if (eventObj.message.type == 'image') {
87 + content_id = eventObj.message.id;
88 + const downloadPath = path.join(__dirname, 'sample.jpg');
89 + downloadContent(content_id, downloadPath);
90 + Checking(eventObj.replyToken);
91 + res.sendStatus(200);
92 + } else if (text == 'ㅇ') {
93 + //사진으로 얼굴 인식해주는 함수
94 + imgtodata('sample.jpg');
95 + SendingLocation(eventObj.replyToken);
96 + res.sendStatus(200);
97 + }
98 + else {
99 + usingMessage = text;
100 + initReply(eventObj.replyToken);
101 + res.sendStatus(200);
102 + }
103 +
104 +});
105 +
106 +const quickReplyLocation = {
107 + "items": [
108 + {
109 + "type": "action",
110 + "action": {
111 + "type": "location",
112 + "label": "위치 입력"
113 + }
114 + }
115 + ]
116 +};
117 +
118 +const quickReplyCfrYes = {
119 + "items": [
120 + {
121 + "type": "action",
122 + "action": {
123 + "type": "cameraRoll",
124 + "label": "사진 가져오기"
125 + }
126 + },
127 + {
128 + "type": "action",
129 + "action": {
130 + "type": "camera",
131 + "label": "사진 찍기"
132 + }
133 + },
134 + ]
135 + };
136 +
137 +const quickReplyCfrNo = {
138 + items: [
139 + {
140 + "type": "action",
141 + "action": {
142 + "type": "message",
143 + "label": "random",
144 + "text": "랜덤 추천"
145 + }
146 + },
147 + {
148 + "type": "action",
149 + "action": {
150 + "type": "message",
151 + "label": "location",
152 + "text": "위치 기반 추천"
153 + }
154 + }
155 + ]
156 + };
157 +
158 +//기본 reply
159 +function initReply (replyToken) {
160 + request.post(
161 + {
162 + url: TARGET_URL,
163 + headers: {
164 + 'Authorization': `Bearer ${TOKEN}`
165 + },
166 + json: {
167 + "replyToken":replyToken,
168 + "messages":[
169 + {
170 + "type": "sticker",
171 + "packageId": "11537",
172 + "stickerId": "52002738"
173 + },
174 + {
175 + "type": "text",
176 + "text": "안녕하세요.\nCFR을 이용한 얼굴인식 맛집 추천봇입니다."
177 + },
178 + {
179 + "type": "template",
180 + "altText": "얼굴 인식을 위해 사진을 가져오시겠습니까?",
181 + "template": {
182 + "type": "confirm",
183 + "text": "얼굴 인식을 위해 사진을 가져오시겠습니까?",
184 + "actions": [
185 + {
186 + "type": "message",
187 + "label": "Cfr:Yes",
188 + "text": "Cfr:Yes"
189 + },
190 + {
191 + "type": "message",
192 + "label": "Cfr:No",
193 + "text": "Cfr:No"
194 + }
195 + ]
196 + }
197 + }
198 + ]
199 + }
200 + },(error, response, body) => {
201 + console.log(body)
202 + });
203 +}
204 +
205 +//위치 입력 reply
206 +function SendingLocation(replyToken) {
207 + request.post(
208 + {
209 + url: TARGET_URL,
210 + headers: {
211 + 'Authorization': `Bearer ${TOKEN}`
212 + },
213 + json: {
214 + "replyToken": replyToken,
215 + "messages": [
216 + {
217 + "type": "text",
218 + "text": "위치를 입력해주세요.",
219 + "quickReply": quickReplyLocation
220 + }
221 + ]
222 + },
223 + body: request
224 + },(error, response, body) => {
225 + console.log(body)
226 + });
227 +}
228 +
229 +//cfr 이용할 때 reply
230 +function QuickReplyCfrYes(replyToken) {
231 + request.post(
232 + {
233 + url: TARGET_URL,
234 + headers: {
235 + 'Authorization': `Bearer ${TOKEN}`
236 + },
237 + json: {
238 + "replyToken": replyToken,
239 + "messages": [
240 + {
241 + "type": "text",
242 + "text": "사진을 입력해주세요. 얼굴 인식이 되지 않을 경우 위치 기반으로 추천됩니다.",
243 + "quickReply": quickReplyCfrYes
244 + }
245 + ]
246 + }
247 + },(error, response, body) => {
248 + console.log(body)
249 + });
250 +}
251 +
252 +//cfr 이용하지 않을 때 reply
253 +function QuickReplyCfrNo (replyToken) {
254 + request.post(
255 + {
256 + url: TARGET_URL,
257 + headers: {
258 + 'Authorization': `Bearer ${TOKEN}`
259 + },
260 + json: {
261 + "replyToken": replyToken,
262 + "messages": [
263 + {
264 + "type": "text",
265 + "text": "랜덤 추천 옵션을 선택해주세요.",
266 + "quickReply": quickReplyCfrNo
267 + }
268 + ]
269 + }
270 + },(error, response, body) => {
271 + console.log(body)
272 + });
273 +}
274 +
275 +function Checking (replyToken) {
276 + request.post(
277 + {
278 + url: TARGET_URL,
279 + headers: {
280 + 'Authorization': `Bearer ${TOKEN}`
281 + },
282 + json: {
283 + "replyToken": replyToken,
284 + "messages": [
285 + {
286 + "type": "text",
287 + "label": "계속 진행",
288 + "text": "계속 진행하시려면 'ㅇ'을 입력해주세요."
289 + },
290 + ],
291 + }
292 + },(error, response, body) => {
293 + console.log(body)
294 + });
295 +}
296 +
297 +
298 +//추천 결과 + Search
299 +function RecommendationResult(replyToken, query) {
300 +
301 + console.log(query);
302 + var display = '1'; //검색 결과 출력 건수. 최대 5개
303 + var start = '1'; //검색 시작 위치. 1만 가능
304 + var sort = 'comment'; //정렬 옵션 (random : 유사도순, comment : 카페/블로그 리뷰 개수 순)
305 +
306 + var api_url = 'https://openapi.naver.com/v1/search/local?query=' + encodeURI(query) + '&display=' + encodeURI(display) + '&start=' + encodeURI(start) + '&sort=' + encodeURI(sort);
307 + var options = {
308 + url: api_url,
309 + headers: { 'X-Naver-Client-Id': search_client_id, 'X-Naver-Client-Secret': search_client_secret }
310 + };
311 + request.get(options, function (error, response, body) {
312 + if (!error && response.statusCode == 200) {
313 + //response.writeHead(200, {'Content-Type': 'text/json;charset=utf-8'});
314 + console.log(body);
315 +
316 + //데이터 parsing
317 + data = JSON.parse(body);
318 + title = data.items[0].title;
319 + console.log(title);
320 +
321 + link = data.items[0].link;
322 + console.log(link);
323 +
324 + category = data.items[0].category;
325 + console.log(category);
326 +
327 + address = data.items[0].address;
328 + console.log(address);
329 +
330 + roadAddress = data.items[0].roadAddress;
331 + console.log(roadAddress);
332 +
333 + var x = Number(data.items[0].mapx);
334 + var y = Number(data.items[0].mapy);
335 +
336 + var longitude = TMtoWGS(x, y)[0];
337 + var latitude = TMtoWGS(x, y)[1];
338 +
339 + request.post(
340 + {
341 + url: TARGET_URL,
342 + headers: {
343 + 'Authorization': `Bearer ${TOKEN}`
344 + },
345 + json: {
346 + "replyToken": replyToken,
347 + "messages": [
348 + {
349 + "type":"location",
350 + "title": title,
351 + "address": address,
352 + "latitude": latitude,
353 + "longitude": longitude
354 + },
355 + {
356 + "type": "text",
357 + "text": "맛집 이름: " + title
358 + },
359 + {
360 + "type":"text",
361 + "text": "맛집 주소: " + address
362 + }
363 + ]
364 + }
365 + }, (error, response, body) => {
366 + console.log(body)
367 + });
368 +
369 + } else {
370 + res.status(response.statusCode).end();
371 + console.log('error = ' + response.statusCode);
372 + }
373 + })
374 +
375 +}
376 +
377 +
378 +imgtodata = function(dir) {
379 + var api_url = 'https://openapi.naver.com/v1/vision/face'; // 얼굴 감지
380 +
381 + var _formData = {
382 + image: 'image',
383 + image: fs.createReadStream(path.join(__dirname, dir)) // FILE 이름
384 + };
385 +
386 + request.post({
387 + url: api_url,
388 + formData: _formData,
389 + headers: {
390 + 'X-Naver-Client-Id': client_id,
391 + 'X-Naver-Client-Secret': client_secret
392 + }
393 + }, (err, response, body) => {
394 + console.log(response.statusCode); // 200
395 + //console.log(response.headers['content-type'])
396 + console.log(body);
397 + var cfrdata = JSON.parse(body);
398 +
399 + var facenum = cfrdata.info.faceCount;
400 + //인식된 얼굴이 없을 때
401 + if (facenum == 0) {
402 + menu=''
403 + }
404 + //얼굴 1개 이상
405 + else {
406 + //제일 잘 인식되는 얼굴 기준
407 + var cfrgender = cfrdata.faces[0].gender.value; //CFR의 성별 데이터 (json)
408 + var cfremotion = cfrdata.faces[0].emotion.value; //CFR의 감정 데이터 (json)
409 +
410 + var gender = cfrgender; //사용자 성별
411 + var emotion = cfremotion; //사용자 감정
412 +
413 + console.log(facenum);
414 + console.log(gender);
415 + console.log(emotion);
416 +
417 + if (gender == 'male') {
418 + if (emotion == 'angry') {
419 + menu = arrmenu[0];
420 + } else if (emotion == 'disgust') {
421 + menu = arrmenu[1];
422 + } else if (emotion == 'fear') {
423 + menu = arrmenu[2];
424 + } else if (emotion == 'laugh') {
425 + menu = arrmenu[3];
426 + } else if (emotion == 'neutral') {
427 + menu = arrmenu[4];
428 + } else if (emotion == 'sad') {
429 + menu = arrmenu[5];
430 + } else if (emotion == 'surprise') {
431 + menu = arrmenu[6];
432 + } else if (emotion == 'smile') {
433 + menu = arrmenu[7];
434 + } else if (emotion == 'talking') {
435 + menu = arrmenu[0];
436 + } else {
437 + randomMenu=Math.floor(Math.random()*10);
438 + menu = arrmenu[randomMenu];
439 + }
440 + }
441 + else if (gender == 'female') {
442 + if (emotion == 'angry') {
443 + menu = arrmenu[7];
444 + } else if (emotion == 'disgust') {
445 + menu = arrmenu[8];
446 + } else if (emotion == 'fear') {
447 + menu = arrmenu[2];
448 + } else if (emotion == 'laugh') {
449 + menu = arrmenu[6];
450 + } else if (emotion == 'neutral') {
451 + menu = arrmenu[5];
452 + } else if (emotion == 'sad') {
453 + menu = arrmenu[1];
454 + } else if (emotion == 'surprise') {
455 + menu = arrmenu[5];
456 + } else if (emotion == 'smile') {
457 + menu = arrmenu[3];
458 + } else if (emotion == 'talking') {
459 + menu = arrmenu[9];
460 + } else {
461 + randomMenu=Math.floor(Math.random()*10);
462 + menu = arrmenu[randomMenu];
463 + }
464 + } else {
465 + randomMenu=Math.floor(Math.random()*10);
466 + menu = arrmenu[randomMenu];
467 + }
468 +
469 + console.log(menu);
470 + }
471 + });
472 +}
473 +
474 +//좌표 변경
475 +const proj4 = require('proj4');
476 +function TMtoWGS(x,y){
477 + var to = 'WGS84'
478 + var from = 'TM128'
479 +
480 + proj4.defs('WGS84', "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs");
481 + proj4.defs('TM128', '+proj=tmerc +lat_0=38 +lon_0=128 +k=0.9999 +x_0=400000 +y_0=600000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43');
482 +
483 + var xy = [x, y];
484 + var result = proj4(from, to, xy);
485 +
486 + return result;
487 +}
488 +
489 +//사용자가 보낸 사진 저장
490 +const config = ({
491 + channelAccessToken: `${TOKEN}`,
492 + channelSecret: `${SECRET}`,
493 +});
494 +
495 +const client = new line.Client(config);
496 +function downloadContent(messageId, downloadPath) {
497 + return client.getMessageContent(messageId)
498 + .then((stream) => new Promise((resolve, reject) => {
499 + const writable = fs.createWriteStream(downloadPath);
500 + stream.pipe(writable);
501 + stream.on('end', () => resolve(downloadPath));
502 + stream.on('error', reject);
503 + }));
504 +}
505 +
506 +
507 +try {
508 + const option = {
509 + ca: fs.readFileSync('/etc/letsencrypt/live/' + domain +'/fullchain.pem'),
510 + key: fs.readFileSync(path.resolve(process.cwd(), '/etc/letsencrypt/live/' + domain +'/privkey.pem'), 'utf8').toString(),
511 + cert: fs.readFileSync(path.resolve(process.cwd(), '/etc/letsencrypt/live/' + domain +'/cert.pem'), 'utf8').toString(),
512 + };
513 + if (usingMessage == '') {
514 + HTTPS.createServer(option, app).listen(sslport, () => {
515 + console.log(`[HTTPS] Server is started on port ${sslport}`);
516 + });
517 + }
518 + } catch (error) {
519 + console.log('[HTTPS] HTTPS 오류가 발생하였습니다. HTTPS 서버는 실행되지 않습니다.');
520 + console.log(error);
521 +}
...\ No newline at end of file ...\ No newline at end of file
1 +{
2 + "name": "cfr-chatbot",
3 + "version": "1.0.0",
4 + "lockfileVersion": 1,
5 + "requires": true,
6 + "dependencies": {
7 + "@line/bot-sdk": {
8 + "version": "7.1.0",
9 + "resolved": "https://registry.npmjs.org/@line/bot-sdk/-/bot-sdk-7.1.0.tgz",
10 + "integrity": "sha512-2yjbIuIPLkBuK6/spXWXaxdj8lz1fP3vkkBG6iknVlj1UrVy8InnT+F6WmiFFsi1OeDKGXvhIDtiWslwWYH6JQ==",
11 + "requires": {
12 + "@types/body-parser": "^1.19.0",
13 + "@types/node": "^14.10.0",
14 + "axios": "^0.20.0",
15 + "body-parser": "^1.19.0",
16 + "file-type": "^15.0.0",
17 + "form-data": "^3.0.0"
18 + },
19 + "dependencies": {
20 + "form-data": {
21 + "version": "3.0.0",
22 + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz",
23 + "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==",
24 + "requires": {
25 + "asynckit": "^0.4.0",
26 + "combined-stream": "^1.0.8",
27 + "mime-types": "^2.1.12"
28 + }
29 + }
30 + }
31 + },
32 + "@tokenizer/token": {
33 + "version": "0.1.1",
34 + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz",
35 + "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w=="
36 + },
37 + "@types/anymatch": {
38 + "version": "1.3.1",
39 + "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz",
40 + "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA=="
41 + },
42 + "@types/body-parser": {
43 + "version": "1.19.0",
44 + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz",
45 + "integrity": "sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==",
46 + "requires": {
47 + "@types/connect": "*",
48 + "@types/node": "*"
49 + }
50 + },
51 + "@types/connect": {
52 + "version": "3.4.33",
53 + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz",
54 + "integrity": "sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A==",
55 + "requires": {
56 + "@types/node": "*"
57 + }
58 + },
59 + "@types/debug": {
60 + "version": "4.1.5",
61 + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz",
62 + "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ=="
63 + },
64 + "@types/eslint": {
65 + "version": "7.2.6",
66 + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.6.tgz",
67 + "integrity": "sha512-I+1sYH+NPQ3/tVqCeUSBwTE/0heyvtXqpIopUUArlBm0Kpocb8FbMa3AZ/ASKIFpN3rnEx932TTXDbt9OXsNDw==",
68 + "requires": {
69 + "@types/estree": "*",
70 + "@types/json-schema": "*"
71 + }
72 + },
73 + "@types/eslint-scope": {
74 + "version": "3.7.0",
75 + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz",
76 + "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==",
77 + "requires": {
78 + "@types/eslint": "*",
79 + "@types/estree": "*"
80 + }
81 + },
82 + "@types/estree": {
83 + "version": "0.0.45",
84 + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.45.tgz",
85 + "integrity": "sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g=="
86 + },
87 + "@types/html-minifier-terser": {
88 + "version": "5.1.1",
89 + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz",
90 + "integrity": "sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA=="
91 + },
92 + "@types/json-schema": {
93 + "version": "7.0.6",
94 + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz",
95 + "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw=="
96 + },
97 + "@types/node": {
98 + "version": "14.14.10",
99 + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.10.tgz",
100 + "integrity": "sha512-J32dgx2hw8vXrSbu4ZlVhn1Nm3GbeCFNw2FWL8S5QKucHGY0cyNwjdQdO+KMBZ4wpmC7KhLCiNsdk1RFRIYUQQ=="
101 + },
102 + "@types/source-list-map": {
103 + "version": "0.1.2",
104 + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz",
105 + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA=="
106 + },
107 + "@types/tapable": {
108 + "version": "1.0.6",
109 + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.6.tgz",
110 + "integrity": "sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA=="
111 + },
112 + "@types/uglify-js": {
113 + "version": "3.11.1",
114 + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.11.1.tgz",
115 + "integrity": "sha512-7npvPKV+jINLu1SpSYVWG8KvyJBhBa8tmzMMdDoVc2pWUYHN8KIXlPJhjJ4LT97c4dXJA2SHL/q6ADbDriZN+Q==",
116 + "requires": {
117 + "source-map": "^0.6.1"
118 + }
119 + },
120 + "@types/webpack": {
121 + "version": "4.41.25",
122 + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.25.tgz",
123 + "integrity": "sha512-cr6kZ+4m9lp86ytQc1jPOJXgINQyz3kLLunZ57jznW+WIAL0JqZbGubQk4GlD42MuQL5JGOABrxdpqqWeovlVQ==",
124 + "requires": {
125 + "@types/anymatch": "*",
126 + "@types/node": "*",
127 + "@types/tapable": "*",
128 + "@types/uglify-js": "*",
129 + "@types/webpack-sources": "*",
130 + "source-map": "^0.6.0"
131 + }
132 + },
133 + "@types/webpack-sources": {
134 + "version": "2.1.0",
135 + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.0.tgz",
136 + "integrity": "sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg==",
137 + "requires": {
138 + "@types/node": "*",
139 + "@types/source-list-map": "*",
140 + "source-map": "^0.7.3"
141 + },
142 + "dependencies": {
143 + "source-map": {
144 + "version": "0.7.3",
145 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
146 + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ=="
147 + }
148 + }
149 + },
150 + "@webassemblyjs/ast": {
151 + "version": "1.9.0",
152 + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz",
153 + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==",
154 + "requires": {
155 + "@webassemblyjs/helper-module-context": "1.9.0",
156 + "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
157 + "@webassemblyjs/wast-parser": "1.9.0"
158 + }
159 + },
160 + "@webassemblyjs/floating-point-hex-parser": {
161 + "version": "1.9.0",
162 + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz",
163 + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA=="
164 + },
165 + "@webassemblyjs/helper-api-error": {
166 + "version": "1.9.0",
167 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz",
168 + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw=="
169 + },
170 + "@webassemblyjs/helper-buffer": {
171 + "version": "1.9.0",
172 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz",
173 + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA=="
174 + },
175 + "@webassemblyjs/helper-code-frame": {
176 + "version": "1.9.0",
177 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz",
178 + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==",
179 + "requires": {
180 + "@webassemblyjs/wast-printer": "1.9.0"
181 + }
182 + },
183 + "@webassemblyjs/helper-fsm": {
184 + "version": "1.9.0",
185 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz",
186 + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw=="
187 + },
188 + "@webassemblyjs/helper-module-context": {
189 + "version": "1.9.0",
190 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz",
191 + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==",
192 + "requires": {
193 + "@webassemblyjs/ast": "1.9.0"
194 + }
195 + },
196 + "@webassemblyjs/helper-wasm-bytecode": {
197 + "version": "1.9.0",
198 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz",
199 + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw=="
200 + },
201 + "@webassemblyjs/helper-wasm-section": {
202 + "version": "1.9.0",
203 + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz",
204 + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==",
205 + "requires": {
206 + "@webassemblyjs/ast": "1.9.0",
207 + "@webassemblyjs/helper-buffer": "1.9.0",
208 + "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
209 + "@webassemblyjs/wasm-gen": "1.9.0"
210 + }
211 + },
212 + "@webassemblyjs/ieee754": {
213 + "version": "1.9.0",
214 + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz",
215 + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==",
216 + "requires": {
217 + "@xtuc/ieee754": "^1.2.0"
218 + }
219 + },
220 + "@webassemblyjs/leb128": {
221 + "version": "1.9.0",
222 + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz",
223 + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==",
224 + "requires": {
225 + "@xtuc/long": "4.2.2"
226 + }
227 + },
228 + "@webassemblyjs/utf8": {
229 + "version": "1.9.0",
230 + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz",
231 + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w=="
232 + },
233 + "@webassemblyjs/wasm-edit": {
234 + "version": "1.9.0",
235 + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz",
236 + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==",
237 + "requires": {
238 + "@webassemblyjs/ast": "1.9.0",
239 + "@webassemblyjs/helper-buffer": "1.9.0",
240 + "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
241 + "@webassemblyjs/helper-wasm-section": "1.9.0",
242 + "@webassemblyjs/wasm-gen": "1.9.0",
243 + "@webassemblyjs/wasm-opt": "1.9.0",
244 + "@webassemblyjs/wasm-parser": "1.9.0",
245 + "@webassemblyjs/wast-printer": "1.9.0"
246 + }
247 + },
248 + "@webassemblyjs/wasm-gen": {
249 + "version": "1.9.0",
250 + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz",
251 + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==",
252 + "requires": {
253 + "@webassemblyjs/ast": "1.9.0",
254 + "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
255 + "@webassemblyjs/ieee754": "1.9.0",
256 + "@webassemblyjs/leb128": "1.9.0",
257 + "@webassemblyjs/utf8": "1.9.0"
258 + }
259 + },
260 + "@webassemblyjs/wasm-opt": {
261 + "version": "1.9.0",
262 + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz",
263 + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==",
264 + "requires": {
265 + "@webassemblyjs/ast": "1.9.0",
266 + "@webassemblyjs/helper-buffer": "1.9.0",
267 + "@webassemblyjs/wasm-gen": "1.9.0",
268 + "@webassemblyjs/wasm-parser": "1.9.0"
269 + }
270 + },
271 + "@webassemblyjs/wasm-parser": {
272 + "version": "1.9.0",
273 + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz",
274 + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==",
275 + "requires": {
276 + "@webassemblyjs/ast": "1.9.0",
277 + "@webassemblyjs/helper-api-error": "1.9.0",
278 + "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
279 + "@webassemblyjs/ieee754": "1.9.0",
280 + "@webassemblyjs/leb128": "1.9.0",
281 + "@webassemblyjs/utf8": "1.9.0"
282 + }
283 + },
284 + "@webassemblyjs/wast-parser": {
285 + "version": "1.9.0",
286 + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz",
287 + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==",
288 + "requires": {
289 + "@webassemblyjs/ast": "1.9.0",
290 + "@webassemblyjs/floating-point-hex-parser": "1.9.0",
291 + "@webassemblyjs/helper-api-error": "1.9.0",
292 + "@webassemblyjs/helper-code-frame": "1.9.0",
293 + "@webassemblyjs/helper-fsm": "1.9.0",
294 + "@xtuc/long": "4.2.2"
295 + }
296 + },
297 + "@webassemblyjs/wast-printer": {
298 + "version": "1.9.0",
299 + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz",
300 + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==",
301 + "requires": {
302 + "@webassemblyjs/ast": "1.9.0",
303 + "@webassemblyjs/wast-parser": "1.9.0",
304 + "@xtuc/long": "4.2.2"
305 + }
306 + },
307 + "@xtuc/ieee754": {
308 + "version": "1.2.0",
309 + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
310 + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA=="
311 + },
312 + "@xtuc/long": {
313 + "version": "4.2.2",
314 + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
315 + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="
316 + },
317 + "accepts": {
318 + "version": "1.3.7",
319 + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
320 + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==",
321 + "requires": {
322 + "mime-types": "~2.1.24",
323 + "negotiator": "0.6.2"
324 + }
325 + },
326 + "acorn": {
327 + "version": "8.0.4",
328 + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz",
329 + "integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ=="
330 + },
331 + "ajv": {
332 + "version": "6.12.6",
333 + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
334 + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
335 + "requires": {
336 + "fast-deep-equal": "^3.1.1",
337 + "fast-json-stable-stringify": "^2.0.0",
338 + "json-schema-traverse": "^0.4.1",
339 + "uri-js": "^4.2.2"
340 + }
341 + },
342 + "ajv-keywords": {
343 + "version": "3.5.2",
344 + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
345 + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ=="
346 + },
347 + "ansi-regex": {
348 + "version": "2.1.1",
349 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
350 + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
351 + },
352 + "array-flatten": {
353 + "version": "1.1.1",
354 + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
355 + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
356 + },
357 + "asn1": {
358 + "version": "0.2.4",
359 + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
360 + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
361 + "requires": {
362 + "safer-buffer": "~2.1.0"
363 + }
364 + },
365 + "assert-plus": {
366 + "version": "1.0.0",
367 + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
368 + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
369 + },
370 + "asynckit": {
371 + "version": "0.4.0",
372 + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
373 + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
374 + },
375 + "aws-sign2": {
376 + "version": "0.7.0",
377 + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
378 + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
379 + },
380 + "aws4": {
381 + "version": "1.11.0",
382 + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz",
383 + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA=="
384 + },
385 + "axios": {
386 + "version": "0.20.0",
387 + "resolved": "https://registry.npmjs.org/axios/-/axios-0.20.0.tgz",
388 + "integrity": "sha512-ANA4rr2BDcmmAQLOKft2fufrtuvlqR+cXNNinUmvfeSNCOF98PZL+7M/v1zIdGo7OLjEA9J2gXJL+j4zGsl0bA==",
389 + "requires": {
390 + "follow-redirects": "^1.10.0"
391 + }
392 + },
393 + "bcrypt-pbkdf": {
394 + "version": "1.0.2",
395 + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
396 + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
397 + "requires": {
398 + "tweetnacl": "^0.14.3"
399 + }
400 + },
401 + "big.js": {
402 + "version": "5.2.2",
403 + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
404 + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ=="
405 + },
406 + "body-parser": {
407 + "version": "1.19.0",
408 + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz",
409 + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==",
410 + "requires": {
411 + "bytes": "3.1.0",
412 + "content-type": "~1.0.4",
413 + "debug": "2.6.9",
414 + "depd": "~1.1.2",
415 + "http-errors": "1.7.2",
416 + "iconv-lite": "0.4.24",
417 + "on-finished": "~2.3.0",
418 + "qs": "6.7.0",
419 + "raw-body": "2.4.0",
420 + "type-is": "~1.6.17"
421 + }
422 + },
423 + "boolbase": {
424 + "version": "1.0.0",
425 + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
426 + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
427 + },
428 + "browserslist": {
429 + "version": "4.15.0",
430 + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.15.0.tgz",
431 + "integrity": "sha512-IJ1iysdMkGmjjYeRlDU8PQejVwxvVO5QOfXH7ylW31GO6LwNRSmm/SgRXtNsEXqMLl2e+2H5eEJ7sfynF8TCaQ==",
432 + "requires": {
433 + "caniuse-lite": "^1.0.30001164",
434 + "colorette": "^1.2.1",
435 + "electron-to-chromium": "^1.3.612",
436 + "escalade": "^3.1.1",
437 + "node-releases": "^1.1.67"
438 + }
439 + },
440 + "buffer-from": {
441 + "version": "1.1.1",
442 + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
443 + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
444 + },
445 + "bytes": {
446 + "version": "3.1.0",
447 + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
448 + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg=="
449 + },
450 + "call-bind": {
451 + "version": "1.0.0",
452 + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.0.tgz",
453 + "integrity": "sha512-AEXsYIyyDY3MCzbwdhzG3Jx1R0J2wetQyUynn6dYHAO+bg8l1k7jwZtRv4ryryFs7EP+NDlikJlVe59jr0cM2w==",
454 + "requires": {
455 + "function-bind": "^1.1.1",
456 + "get-intrinsic": "^1.0.0"
457 + }
458 + },
459 + "camel-case": {
460 + "version": "4.1.2",
461 + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz",
462 + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==",
463 + "requires": {
464 + "pascal-case": "^3.1.2",
465 + "tslib": "^2.0.3"
466 + },
467 + "dependencies": {
468 + "tslib": {
469 + "version": "2.0.3",
470 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz",
471 + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ=="
472 + }
473 + }
474 + },
475 + "caniuse-lite": {
476 + "version": "1.0.30001164",
477 + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001164.tgz",
478 + "integrity": "sha512-G+A/tkf4bu0dSp9+duNiXc7bGds35DioCyC6vgK2m/rjA4Krpy5WeZgZyfH2f0wj2kI6yAWWucyap6oOwmY1mg=="
479 + },
480 + "caseless": {
481 + "version": "0.12.0",
482 + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
483 + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
484 + },
485 + "chrome-trace-event": {
486 + "version": "1.0.2",
487 + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz",
488 + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==",
489 + "requires": {
490 + "tslib": "^1.9.0"
491 + }
492 + },
493 + "clean-css": {
494 + "version": "4.2.3",
495 + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz",
496 + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==",
497 + "requires": {
498 + "source-map": "~0.6.0"
499 + }
500 + },
501 + "colorette": {
502 + "version": "1.2.1",
503 + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz",
504 + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw=="
505 + },
506 + "combined-stream": {
507 + "version": "1.0.8",
508 + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
509 + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
510 + "requires": {
511 + "delayed-stream": "~1.0.0"
512 + }
513 + },
514 + "commander": {
515 + "version": "2.20.3",
516 + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
517 + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
518 + },
519 + "content-disposition": {
520 + "version": "0.5.3",
521 + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz",
522 + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",
523 + "requires": {
524 + "safe-buffer": "5.1.2"
525 + }
526 + },
527 + "content-type": {
528 + "version": "1.0.4",
529 + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
530 + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
531 + },
532 + "cookie": {
533 + "version": "0.4.0",
534 + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz",
535 + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg=="
536 + },
537 + "cookie-signature": {
538 + "version": "1.0.6",
539 + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
540 + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
541 + },
542 + "core-util-is": {
543 + "version": "1.0.2",
544 + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
545 + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
546 + },
547 + "create-temp-file": {
548 + "version": "2.0.0",
549 + "resolved": "https://registry.npmjs.org/create-temp-file/-/create-temp-file-2.0.0.tgz",
550 + "integrity": "sha512-isXlhTiLPmXlzn13g3/PJ8Qg+as32V694hsPhlm0vP7/xsZzTaD1Iyhv4uheVQFuJ6QZ7D7bIwxsyMJOMDaY6Q==",
551 + "requires": {
552 + "tempfile": "^1.1.1"
553 + }
554 + },
555 + "css-select": {
556 + "version": "1.2.0",
557 + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
558 + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
559 + "requires": {
560 + "boolbase": "~1.0.0",
561 + "css-what": "2.1",
562 + "domutils": "1.5.1",
563 + "nth-check": "~1.0.1"
564 + }
565 + },
566 + "css-what": {
567 + "version": "2.1.3",
568 + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
569 + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg=="
570 + },
571 + "dashdash": {
572 + "version": "1.14.1",
573 + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
574 + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
575 + "requires": {
576 + "assert-plus": "^1.0.0"
577 + }
578 + },
579 + "debug": {
580 + "version": "2.6.9",
581 + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
582 + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
583 + "requires": {
584 + "ms": "2.0.0"
585 + }
586 + },
587 + "define-properties": {
588 + "version": "1.1.3",
589 + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
590 + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
591 + "requires": {
592 + "object-keys": "^1.0.12"
593 + }
594 + },
595 + "delayed-stream": {
596 + "version": "1.0.0",
597 + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
598 + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
599 + },
600 + "depd": {
601 + "version": "1.1.2",
602 + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
603 + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
604 + },
605 + "destroy": {
606 + "version": "1.0.4",
607 + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
608 + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
609 + },
610 + "dom-converter": {
611 + "version": "0.2.0",
612 + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
613 + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==",
614 + "requires": {
615 + "utila": "~0.4"
616 + }
617 + },
618 + "dom-serializer": {
619 + "version": "0.2.2",
620 + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
621 + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
622 + "requires": {
623 + "domelementtype": "^2.0.1",
624 + "entities": "^2.0.0"
625 + },
626 + "dependencies": {
627 + "domelementtype": {
628 + "version": "2.1.0",
629 + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
630 + "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w=="
631 + }
632 + }
633 + },
634 + "domelementtype": {
635 + "version": "1.3.1",
636 + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
637 + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
638 + },
639 + "domhandler": {
640 + "version": "2.4.2",
641 + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
642 + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
643 + "requires": {
644 + "domelementtype": "1"
645 + }
646 + },
647 + "domutils": {
648 + "version": "1.5.1",
649 + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
650 + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
651 + "requires": {
652 + "dom-serializer": "0",
653 + "domelementtype": "1"
654 + }
655 + },
656 + "dot-case": {
657 + "version": "3.0.4",
658 + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz",
659 + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==",
660 + "requires": {
661 + "no-case": "^3.0.4",
662 + "tslib": "^2.0.3"
663 + },
664 + "dependencies": {
665 + "tslib": {
666 + "version": "2.0.3",
667 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz",
668 + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ=="
669 + }
670 + }
671 + },
672 + "ecc-jsbn": {
673 + "version": "0.1.2",
674 + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
675 + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
676 + "requires": {
677 + "jsbn": "~0.1.0",
678 + "safer-buffer": "^2.1.0"
679 + }
680 + },
681 + "ee-first": {
682 + "version": "1.1.1",
683 + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
684 + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
685 + },
686 + "electron-to-chromium": {
687 + "version": "1.3.614",
688 + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.614.tgz",
689 + "integrity": "sha512-JMDl46mg4G+n6q/hAJkwy9eMTj5FJjsE+8f/irAGRMLM4yeRVbMuRrdZrbbGGOrGVcZc4vJPjUpEUWNb/fA6hg=="
690 + },
691 + "emojis-list": {
692 + "version": "3.0.0",
693 + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
694 + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q=="
695 + },
696 + "encodeurl": {
697 + "version": "1.0.2",
698 + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
699 + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
700 + },
701 + "enhanced-resolve": {
702 + "version": "5.4.0",
703 + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.4.0.tgz",
704 + "integrity": "sha512-ZmqfWURB2lConOBM1JdCVfPyMRv5RdKWktLXO6123p97ovVm2CLBgw9t5MBj3jJWA6eHyOeIws9iJQoGFR4euQ==",
705 + "requires": {
706 + "graceful-fs": "^4.2.4",
707 + "tapable": "^2.0.0"
708 + }
709 + },
710 + "entities": {
711 + "version": "2.1.0",
712 + "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz",
713 + "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w=="
714 + },
715 + "es-abstract": {
716 + "version": "1.18.0-next.1",
717 + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz",
718 + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==",
719 + "requires": {
720 + "es-to-primitive": "^1.2.1",
721 + "function-bind": "^1.1.1",
722 + "has": "^1.0.3",
723 + "has-symbols": "^1.0.1",
724 + "is-callable": "^1.2.2",
725 + "is-negative-zero": "^2.0.0",
726 + "is-regex": "^1.1.1",
727 + "object-inspect": "^1.8.0",
728 + "object-keys": "^1.1.1",
729 + "object.assign": "^4.1.1",
730 + "string.prototype.trimend": "^1.0.1",
731 + "string.prototype.trimstart": "^1.0.1"
732 + }
733 + },
734 + "es-to-primitive": {
735 + "version": "1.2.1",
736 + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
737 + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
738 + "requires": {
739 + "is-callable": "^1.1.4",
740 + "is-date-object": "^1.0.1",
741 + "is-symbol": "^1.0.2"
742 + }
743 + },
744 + "escalade": {
745 + "version": "3.1.1",
746 + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
747 + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
748 + },
749 + "escape-html": {
750 + "version": "1.0.3",
751 + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
752 + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
753 + },
754 + "eslint-scope": {
755 + "version": "5.1.1",
756 + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
757 + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
758 + "requires": {
759 + "esrecurse": "^4.3.0",
760 + "estraverse": "^4.1.1"
761 + }
762 + },
763 + "esrecurse": {
764 + "version": "4.3.0",
765 + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
766 + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
767 + "requires": {
768 + "estraverse": "^5.2.0"
769 + },
770 + "dependencies": {
771 + "estraverse": {
772 + "version": "5.2.0",
773 + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
774 + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ=="
775 + }
776 + }
777 + },
778 + "estraverse": {
779 + "version": "4.3.0",
780 + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
781 + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="
782 + },
783 + "etag": {
784 + "version": "1.8.1",
785 + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
786 + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
787 + },
788 + "events": {
789 + "version": "3.2.0",
790 + "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz",
791 + "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg=="
792 + },
793 + "express": {
794 + "version": "4.17.1",
795 + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz",
796 + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==",
797 + "requires": {
798 + "accepts": "~1.3.7",
799 + "array-flatten": "1.1.1",
800 + "body-parser": "1.19.0",
801 + "content-disposition": "0.5.3",
802 + "content-type": "~1.0.4",
803 + "cookie": "0.4.0",
804 + "cookie-signature": "1.0.6",
805 + "debug": "2.6.9",
806 + "depd": "~1.1.2",
807 + "encodeurl": "~1.0.2",
808 + "escape-html": "~1.0.3",
809 + "etag": "~1.8.1",
810 + "finalhandler": "~1.1.2",
811 + "fresh": "0.5.2",
812 + "merge-descriptors": "1.0.1",
813 + "methods": "~1.1.2",
814 + "on-finished": "~2.3.0",
815 + "parseurl": "~1.3.3",
816 + "path-to-regexp": "0.1.7",
817 + "proxy-addr": "~2.0.5",
818 + "qs": "6.7.0",
819 + "range-parser": "~1.2.1",
820 + "safe-buffer": "5.1.2",
821 + "send": "0.17.1",
822 + "serve-static": "1.14.1",
823 + "setprototypeof": "1.1.1",
824 + "statuses": "~1.5.0",
825 + "type-is": "~1.6.18",
826 + "utils-merge": "1.0.1",
827 + "vary": "~1.1.2"
828 + }
829 + },
830 + "extend": {
831 + "version": "3.0.2",
832 + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
833 + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
834 + },
835 + "extsprintf": {
836 + "version": "1.3.0",
837 + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
838 + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
839 + },
840 + "fast-deep-equal": {
841 + "version": "3.1.3",
842 + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
843 + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
844 + },
845 + "fast-json-stable-stringify": {
846 + "version": "2.1.0",
847 + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
848 + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
849 + },
850 + "file-type": {
851 + "version": "15.0.1",
852 + "resolved": "https://registry.npmjs.org/file-type/-/file-type-15.0.1.tgz",
853 + "integrity": "sha512-0LieQlSA3bWUdErNrxzxfI4rhsvNAVPBO06R8pTc1hp9SE6nhqlVyvhcaXoMmtXkBTPnQenbMPLW9X76hH76oQ==",
854 + "requires": {
855 + "readable-web-to-node-stream": "^2.0.0",
856 + "strtok3": "^6.0.3",
857 + "token-types": "^2.0.0",
858 + "typedarray-to-buffer": "^3.1.5"
859 + }
860 + },
861 + "finalhandler": {
862 + "version": "1.1.2",
863 + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
864 + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
865 + "requires": {
866 + "debug": "2.6.9",
867 + "encodeurl": "~1.0.2",
868 + "escape-html": "~1.0.3",
869 + "on-finished": "~2.3.0",
870 + "parseurl": "~1.3.3",
871 + "statuses": "~1.5.0",
872 + "unpipe": "~1.0.0"
873 + }
874 + },
875 + "find-up": {
876 + "version": "4.1.0",
877 + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
878 + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
879 + "requires": {
880 + "locate-path": "^5.0.0",
881 + "path-exists": "^4.0.0"
882 + }
883 + },
884 + "follow-redirects": {
885 + "version": "1.13.0",
886 + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz",
887 + "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA=="
888 + },
889 + "forever-agent": {
890 + "version": "0.6.1",
891 + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
892 + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
893 + },
894 + "form-data": {
895 + "version": "2.3.3",
896 + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
897 + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
898 + "requires": {
899 + "asynckit": "^0.4.0",
900 + "combined-stream": "^1.0.6",
901 + "mime-types": "^2.1.12"
902 + }
903 + },
904 + "forwarded": {
905 + "version": "0.1.2",
906 + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
907 + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
908 + },
909 + "fresh": {
910 + "version": "0.5.2",
911 + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
912 + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
913 + },
914 + "fs": {
915 + "version": "0.0.1-security",
916 + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz",
917 + "integrity": "sha1-invTcYa23d84E/I4WLV+yq9eQdQ="
918 + },
919 + "function-bind": {
920 + "version": "1.1.1",
921 + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
922 + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
923 + },
924 + "get-intrinsic": {
925 + "version": "1.0.1",
926 + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.1.tgz",
927 + "integrity": "sha512-ZnWP+AmS1VUaLgTRy47+zKtjTxz+0xMpx3I52i+aalBK1QP19ggLF3Db89KJX7kjfOfP2eoa01qc++GwPgufPg==",
928 + "requires": {
929 + "function-bind": "^1.1.1",
930 + "has": "^1.0.3",
931 + "has-symbols": "^1.0.1"
932 + }
933 + },
934 + "getpass": {
935 + "version": "0.1.7",
936 + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
937 + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
938 + "requires": {
939 + "assert-plus": "^1.0.0"
940 + }
941 + },
942 + "glob-to-regexp": {
943 + "version": "0.4.1",
944 + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
945 + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
946 + },
947 + "graceful-fs": {
948 + "version": "4.2.4",
949 + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
950 + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="
951 + },
952 + "har-schema": {
953 + "version": "2.0.0",
954 + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
955 + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
956 + },
957 + "har-validator": {
958 + "version": "5.1.5",
959 + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
960 + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
961 + "requires": {
962 + "ajv": "^6.12.3",
963 + "har-schema": "^2.0.0"
964 + }
965 + },
966 + "has": {
967 + "version": "1.0.3",
968 + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
969 + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
970 + "requires": {
971 + "function-bind": "^1.1.1"
972 + }
973 + },
974 + "has-flag": {
975 + "version": "4.0.0",
976 + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
977 + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
978 + },
979 + "has-symbols": {
980 + "version": "1.0.1",
981 + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
982 + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg=="
983 + },
984 + "he": {
985 + "version": "1.2.0",
986 + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
987 + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw=="
988 + },
989 + "html-minifier-terser": {
990 + "version": "5.1.1",
991 + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz",
992 + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==",
993 + "requires": {
994 + "camel-case": "^4.1.1",
995 + "clean-css": "^4.2.3",
996 + "commander": "^4.1.1",
997 + "he": "^1.2.0",
998 + "param-case": "^3.0.3",
999 + "relateurl": "^0.2.7",
1000 + "terser": "^4.6.3"
1001 + },
1002 + "dependencies": {
1003 + "commander": {
1004 + "version": "4.1.1",
1005 + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
1006 + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA=="
1007 + },
1008 + "terser": {
1009 + "version": "4.8.0",
1010 + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz",
1011 + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==",
1012 + "requires": {
1013 + "commander": "^2.20.0",
1014 + "source-map": "~0.6.1",
1015 + "source-map-support": "~0.5.12"
1016 + },
1017 + "dependencies": {
1018 + "commander": {
1019 + "version": "2.20.3",
1020 + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
1021 + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
1022 + }
1023 + }
1024 + }
1025 + }
1026 + },
1027 + "html-webpack-plugin": {
1028 + "version": "4.5.0",
1029 + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz",
1030 + "integrity": "sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw==",
1031 + "requires": {
1032 + "@types/html-minifier-terser": "^5.0.0",
1033 + "@types/tapable": "^1.0.5",
1034 + "@types/webpack": "^4.41.8",
1035 + "html-minifier-terser": "^5.0.1",
1036 + "loader-utils": "^1.2.3",
1037 + "lodash": "^4.17.15",
1038 + "pretty-error": "^2.1.1",
1039 + "tapable": "^1.1.3",
1040 + "util.promisify": "1.0.0"
1041 + },
1042 + "dependencies": {
1043 + "tapable": {
1044 + "version": "1.1.3",
1045 + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz",
1046 + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA=="
1047 + }
1048 + }
1049 + },
1050 + "htmlparser2": {
1051 + "version": "3.10.1",
1052 + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
1053 + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
1054 + "requires": {
1055 + "domelementtype": "^1.3.1",
1056 + "domhandler": "^2.3.0",
1057 + "domutils": "^1.5.1",
1058 + "entities": "^1.1.1",
1059 + "inherits": "^2.0.1",
1060 + "readable-stream": "^3.1.1"
1061 + },
1062 + "dependencies": {
1063 + "entities": {
1064 + "version": "1.1.2",
1065 + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
1066 + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
1067 + }
1068 + }
1069 + },
1070 + "http-errors": {
1071 + "version": "1.7.2",
1072 + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
1073 + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
1074 + "requires": {
1075 + "depd": "~1.1.2",
1076 + "inherits": "2.0.3",
1077 + "setprototypeof": "1.1.1",
1078 + "statuses": ">= 1.5.0 < 2",
1079 + "toidentifier": "1.0.0"
1080 + }
1081 + },
1082 + "http-signature": {
1083 + "version": "1.2.0",
1084 + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
1085 + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
1086 + "requires": {
1087 + "assert-plus": "^1.0.0",
1088 + "jsprim": "^1.2.2",
1089 + "sshpk": "^1.7.0"
1090 + }
1091 + },
1092 + "iconv-lite": {
1093 + "version": "0.4.24",
1094 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1095 + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
1096 + "requires": {
1097 + "safer-buffer": ">= 2.1.2 < 3"
1098 + }
1099 + },
1100 + "ieee754": {
1101 + "version": "1.2.1",
1102 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
1103 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
1104 + },
1105 + "inherits": {
1106 + "version": "2.0.3",
1107 + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
1108 + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
1109 + },
1110 + "ipaddr.js": {
1111 + "version": "1.9.1",
1112 + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
1113 + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g=="
1114 + },
1115 + "is-callable": {
1116 + "version": "1.2.2",
1117 + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz",
1118 + "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA=="
1119 + },
1120 + "is-date-object": {
1121 + "version": "1.0.2",
1122 + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz",
1123 + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g=="
1124 + },
1125 + "is-negative-zero": {
1126 + "version": "2.0.0",
1127 + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz",
1128 + "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE="
1129 + },
1130 + "is-regex": {
1131 + "version": "1.1.1",
1132 + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz",
1133 + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==",
1134 + "requires": {
1135 + "has-symbols": "^1.0.1"
1136 + }
1137 + },
1138 + "is-symbol": {
1139 + "version": "1.0.3",
1140 + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
1141 + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
1142 + "requires": {
1143 + "has-symbols": "^1.0.1"
1144 + }
1145 + },
1146 + "is-typedarray": {
1147 + "version": "1.0.0",
1148 + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
1149 + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
1150 + },
1151 + "isstream": {
1152 + "version": "0.1.2",
1153 + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
1154 + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
1155 + },
1156 + "jest-worker": {
1157 + "version": "26.6.2",
1158 + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz",
1159 + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==",
1160 + "requires": {
1161 + "@types/node": "*",
1162 + "merge-stream": "^2.0.0",
1163 + "supports-color": "^7.0.0"
1164 + }
1165 + },
1166 + "jsbn": {
1167 + "version": "0.1.1",
1168 + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
1169 + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
1170 + },
1171 + "json-parse-better-errors": {
1172 + "version": "1.0.2",
1173 + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
1174 + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw=="
1175 + },
1176 + "json-schema": {
1177 + "version": "0.2.3",
1178 + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
1179 + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
1180 + },
1181 + "json-schema-traverse": {
1182 + "version": "0.4.1",
1183 + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1184 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
1185 + },
1186 + "json-stringify-safe": {
1187 + "version": "5.0.1",
1188 + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
1189 + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
1190 + },
1191 + "json5": {
1192 + "version": "1.0.1",
1193 + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
1194 + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
1195 + "requires": {
1196 + "minimist": "^1.2.0"
1197 + }
1198 + },
1199 + "jsprim": {
1200 + "version": "1.4.1",
1201 + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
1202 + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
1203 + "requires": {
1204 + "assert-plus": "1.0.0",
1205 + "extsprintf": "1.3.0",
1206 + "json-schema": "0.2.3",
1207 + "verror": "1.10.0"
1208 + }
1209 + },
1210 + "line-bot-sdk-nodejs": {
1211 + "version": "1.0.0",
1212 + "resolved": "https://registry.npmjs.org/line-bot-sdk-nodejs/-/line-bot-sdk-nodejs-1.0.0.tgz",
1213 + "integrity": "sha1-zLof3Lg5ON2eRtl1qoyMPPU6K4w="
1214 + },
1215 + "loader-runner": {
1216 + "version": "4.1.0",
1217 + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.1.0.tgz",
1218 + "integrity": "sha512-oR4lB4WvwFoC70ocraKhn5nkKSs23t57h9udUgw8o0iH8hMXeEoRuUgfcvgUwAJ1ZpRqBvcou4N2SMvM1DwMrA=="
1219 + },
1220 + "loader-utils": {
1221 + "version": "1.4.0",
1222 + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
1223 + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
1224 + "requires": {
1225 + "big.js": "^5.2.2",
1226 + "emojis-list": "^3.0.0",
1227 + "json5": "^1.0.1"
1228 + }
1229 + },
1230 + "locate-path": {
1231 + "version": "5.0.0",
1232 + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
1233 + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
1234 + "requires": {
1235 + "p-locate": "^4.1.0"
1236 + }
1237 + },
1238 + "lodash": {
1239 + "version": "4.17.20",
1240 + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
1241 + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="
1242 + },
1243 + "lower-case": {
1244 + "version": "2.0.2",
1245 + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz",
1246 + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==",
1247 + "requires": {
1248 + "tslib": "^2.0.3"
1249 + },
1250 + "dependencies": {
1251 + "tslib": {
1252 + "version": "2.0.3",
1253 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz",
1254 + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ=="
1255 + }
1256 + }
1257 + },
1258 + "media-typer": {
1259 + "version": "0.3.0",
1260 + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
1261 + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
1262 + },
1263 + "merge-descriptors": {
1264 + "version": "1.0.1",
1265 + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
1266 + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
1267 + },
1268 + "merge-stream": {
1269 + "version": "2.0.0",
1270 + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
1271 + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
1272 + },
1273 + "methods": {
1274 + "version": "1.1.2",
1275 + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
1276 + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
1277 + },
1278 + "mgrs": {
1279 + "version": "1.0.0",
1280 + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz",
1281 + "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk="
1282 + },
1283 + "mime": {
1284 + "version": "1.6.0",
1285 + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
1286 + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
1287 + },
1288 + "mime-db": {
1289 + "version": "1.44.0",
1290 + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
1291 + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg=="
1292 + },
1293 + "mime-types": {
1294 + "version": "2.1.27",
1295 + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
1296 + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
1297 + "requires": {
1298 + "mime-db": "1.44.0"
1299 + }
1300 + },
1301 + "minimist": {
1302 + "version": "1.2.5",
1303 + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
1304 + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
1305 + },
1306 + "ms": {
1307 + "version": "2.0.0",
1308 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1309 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
1310 + },
1311 + "negotiator": {
1312 + "version": "0.6.2",
1313 + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
1314 + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw=="
1315 + },
1316 + "neo-async": {
1317 + "version": "2.6.2",
1318 + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
1319 + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
1320 + },
1321 + "no-case": {
1322 + "version": "3.0.4",
1323 + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
1324 + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==",
1325 + "requires": {
1326 + "lower-case": "^2.0.2",
1327 + "tslib": "^2.0.3"
1328 + },
1329 + "dependencies": {
1330 + "tslib": {
1331 + "version": "2.0.3",
1332 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz",
1333 + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ=="
1334 + }
1335 + }
1336 + },
1337 + "node-releases": {
1338 + "version": "1.1.67",
1339 + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.67.tgz",
1340 + "integrity": "sha512-V5QF9noGFl3EymEwUYzO+3NTDpGfQB4ve6Qfnzf3UNydMhjQRVPR1DZTuvWiLzaFJYw2fmDwAfnRNEVb64hSIg=="
1341 + },
1342 + "nth-check": {
1343 + "version": "1.0.2",
1344 + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
1345 + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
1346 + "requires": {
1347 + "boolbase": "~1.0.0"
1348 + }
1349 + },
1350 + "oauth-sign": {
1351 + "version": "0.9.0",
1352 + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
1353 + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="
1354 + },
1355 + "object-inspect": {
1356 + "version": "1.9.0",
1357 + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz",
1358 + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw=="
1359 + },
1360 + "object-keys": {
1361 + "version": "1.1.1",
1362 + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
1363 + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
1364 + },
1365 + "object.assign": {
1366 + "version": "4.1.2",
1367 + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
1368 + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
1369 + "requires": {
1370 + "call-bind": "^1.0.0",
1371 + "define-properties": "^1.1.3",
1372 + "has-symbols": "^1.0.1",
1373 + "object-keys": "^1.1.1"
1374 + }
1375 + },
1376 + "object.getownpropertydescriptors": {
1377 + "version": "2.1.1",
1378 + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz",
1379 + "integrity": "sha512-6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng==",
1380 + "requires": {
1381 + "call-bind": "^1.0.0",
1382 + "define-properties": "^1.1.3",
1383 + "es-abstract": "^1.18.0-next.1"
1384 + }
1385 + },
1386 + "on-finished": {
1387 + "version": "2.3.0",
1388 + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
1389 + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
1390 + "requires": {
1391 + "ee-first": "1.1.1"
1392 + }
1393 + },
1394 + "os-tmpdir": {
1395 + "version": "1.0.2",
1396 + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
1397 + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
1398 + },
1399 + "p-limit": {
1400 + "version": "2.3.0",
1401 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
1402 + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
1403 + "requires": {
1404 + "p-try": "^2.0.0"
1405 + }
1406 + },
1407 + "p-locate": {
1408 + "version": "4.1.0",
1409 + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
1410 + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
1411 + "requires": {
1412 + "p-limit": "^2.2.0"
1413 + }
1414 + },
1415 + "p-try": {
1416 + "version": "2.2.0",
1417 + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
1418 + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
1419 + },
1420 + "param-case": {
1421 + "version": "3.0.4",
1422 + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz",
1423 + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==",
1424 + "requires": {
1425 + "dot-case": "^3.0.4",
1426 + "tslib": "^2.0.3"
1427 + },
1428 + "dependencies": {
1429 + "tslib": {
1430 + "version": "2.0.3",
1431 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz",
1432 + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ=="
1433 + }
1434 + }
1435 + },
1436 + "parseurl": {
1437 + "version": "1.3.3",
1438 + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
1439 + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="
1440 + },
1441 + "pascal-case": {
1442 + "version": "3.1.2",
1443 + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz",
1444 + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==",
1445 + "requires": {
1446 + "no-case": "^3.0.4",
1447 + "tslib": "^2.0.3"
1448 + },
1449 + "dependencies": {
1450 + "tslib": {
1451 + "version": "2.0.3",
1452 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz",
1453 + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ=="
1454 + }
1455 + }
1456 + },
1457 + "path-exists": {
1458 + "version": "4.0.0",
1459 + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
1460 + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
1461 + },
1462 + "path-to-regexp": {
1463 + "version": "0.1.7",
1464 + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
1465 + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
1466 + },
1467 + "peek-readable": {
1468 + "version": "3.1.0",
1469 + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.0.tgz",
1470 + "integrity": "sha512-KGuODSTV6hcgdZvDrIDBUkN0utcAVj1LL7FfGbM0viKTtCHmtZcuEJ+lGqsp0fTFkGqesdtemV2yUSMeyy3ddA=="
1471 + },
1472 + "performance-now": {
1473 + "version": "2.1.0",
1474 + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
1475 + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
1476 + },
1477 + "pkg-dir": {
1478 + "version": "4.2.0",
1479 + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
1480 + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
1481 + "requires": {
1482 + "find-up": "^4.0.0"
1483 + }
1484 + },
1485 + "pretty-error": {
1486 + "version": "2.1.2",
1487 + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz",
1488 + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==",
1489 + "requires": {
1490 + "lodash": "^4.17.20",
1491 + "renderkid": "^2.0.4"
1492 + }
1493 + },
1494 + "proj4": {
1495 + "version": "2.6.3",
1496 + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.6.3.tgz",
1497 + "integrity": "sha512-XRqnLmHWlvi7jqKNTqaOUrVy72JEtOUrnlLki99yZUOSvcSeBaZ1I/EGnQ2LzplSbjSrebGAdikqCLeCxC/YEg==",
1498 + "requires": {
1499 + "mgrs": "1.0.0",
1500 + "wkt-parser": "^1.2.4"
1501 + }
1502 + },
1503 + "proxy-addr": {
1504 + "version": "2.0.6",
1505 + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz",
1506 + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==",
1507 + "requires": {
1508 + "forwarded": "~0.1.2",
1509 + "ipaddr.js": "1.9.1"
1510 + }
1511 + },
1512 + "psl": {
1513 + "version": "1.8.0",
1514 + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
1515 + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
1516 + },
1517 + "punycode": {
1518 + "version": "2.1.1",
1519 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
1520 + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
1521 + },
1522 + "qs": {
1523 + "version": "6.7.0",
1524 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
1525 + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ=="
1526 + },
1527 + "randombytes": {
1528 + "version": "2.1.0",
1529 + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
1530 + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
1531 + "requires": {
1532 + "safe-buffer": "^5.1.0"
1533 + }
1534 + },
1535 + "range-parser": {
1536 + "version": "1.2.1",
1537 + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
1538 + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="
1539 + },
1540 + "raw-body": {
1541 + "version": "2.4.0",
1542 + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz",
1543 + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==",
1544 + "requires": {
1545 + "bytes": "3.1.0",
1546 + "http-errors": "1.7.2",
1547 + "iconv-lite": "0.4.24",
1548 + "unpipe": "1.0.0"
1549 + }
1550 + },
1551 + "readable-stream": {
1552 + "version": "3.6.0",
1553 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
1554 + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
1555 + "requires": {
1556 + "inherits": "^2.0.3",
1557 + "string_decoder": "^1.1.1",
1558 + "util-deprecate": "^1.0.1"
1559 + }
1560 + },
1561 + "readable-web-to-node-stream": {
1562 + "version": "2.0.0",
1563 + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-2.0.0.tgz",
1564 + "integrity": "sha512-+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA=="
1565 + },
1566 + "relateurl": {
1567 + "version": "0.2.7",
1568 + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
1569 + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk="
1570 + },
1571 + "renderkid": {
1572 + "version": "2.0.4",
1573 + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.4.tgz",
1574 + "integrity": "sha512-K2eXrSOJdq+HuKzlcjOlGoOarUu5SDguDEhE7+Ah4zuOWL40j8A/oHvLlLob9PSTNvVnBd+/q0Er1QfpEuem5g==",
1575 + "requires": {
1576 + "css-select": "^1.1.0",
1577 + "dom-converter": "^0.2",
1578 + "htmlparser2": "^3.3.0",
1579 + "lodash": "^4.17.20",
1580 + "strip-ansi": "^3.0.0"
1581 + }
1582 + },
1583 + "request": {
1584 + "version": "2.88.2",
1585 + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
1586 + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
1587 + "requires": {
1588 + "aws-sign2": "~0.7.0",
1589 + "aws4": "^1.8.0",
1590 + "caseless": "~0.12.0",
1591 + "combined-stream": "~1.0.6",
1592 + "extend": "~3.0.2",
1593 + "forever-agent": "~0.6.1",
1594 + "form-data": "~2.3.2",
1595 + "har-validator": "~5.1.3",
1596 + "http-signature": "~1.2.0",
1597 + "is-typedarray": "~1.0.0",
1598 + "isstream": "~0.1.2",
1599 + "json-stringify-safe": "~5.0.1",
1600 + "mime-types": "~2.1.19",
1601 + "oauth-sign": "~0.9.0",
1602 + "performance-now": "^2.1.0",
1603 + "qs": "~6.5.2",
1604 + "safe-buffer": "^5.1.2",
1605 + "tough-cookie": "~2.5.0",
1606 + "tunnel-agent": "^0.6.0",
1607 + "uuid": "^3.3.2"
1608 + },
1609 + "dependencies": {
1610 + "qs": {
1611 + "version": "6.5.2",
1612 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
1613 + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="
1614 + }
1615 + }
1616 + },
1617 + "safe-buffer": {
1618 + "version": "5.1.2",
1619 + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
1620 + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
1621 + },
1622 + "safer-buffer": {
1623 + "version": "2.1.2",
1624 + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1625 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1626 + },
1627 + "schema-utils": {
1628 + "version": "3.0.0",
1629 + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
1630 + "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
1631 + "requires": {
1632 + "@types/json-schema": "^7.0.6",
1633 + "ajv": "^6.12.5",
1634 + "ajv-keywords": "^3.5.2"
1635 + }
1636 + },
1637 + "send": {
1638 + "version": "0.17.1",
1639 + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz",
1640 + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==",
1641 + "requires": {
1642 + "debug": "2.6.9",
1643 + "depd": "~1.1.2",
1644 + "destroy": "~1.0.4",
1645 + "encodeurl": "~1.0.2",
1646 + "escape-html": "~1.0.3",
1647 + "etag": "~1.8.1",
1648 + "fresh": "0.5.2",
1649 + "http-errors": "~1.7.2",
1650 + "mime": "1.6.0",
1651 + "ms": "2.1.1",
1652 + "on-finished": "~2.3.0",
1653 + "range-parser": "~1.2.1",
1654 + "statuses": "~1.5.0"
1655 + },
1656 + "dependencies": {
1657 + "ms": {
1658 + "version": "2.1.1",
1659 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
1660 + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="
1661 + }
1662 + }
1663 + },
1664 + "serialize-javascript": {
1665 + "version": "5.0.1",
1666 + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz",
1667 + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==",
1668 + "requires": {
1669 + "randombytes": "^2.1.0"
1670 + }
1671 + },
1672 + "serve-static": {
1673 + "version": "1.14.1",
1674 + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz",
1675 + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==",
1676 + "requires": {
1677 + "encodeurl": "~1.0.2",
1678 + "escape-html": "~1.0.3",
1679 + "parseurl": "~1.3.3",
1680 + "send": "0.17.1"
1681 + }
1682 + },
1683 + "setprototypeof": {
1684 + "version": "1.1.1",
1685 + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
1686 + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw=="
1687 + },
1688 + "source-list-map": {
1689 + "version": "2.0.1",
1690 + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
1691 + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw=="
1692 + },
1693 + "source-map": {
1694 + "version": "0.6.1",
1695 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
1696 + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
1697 + },
1698 + "source-map-support": {
1699 + "version": "0.5.19",
1700 + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
1701 + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
1702 + "requires": {
1703 + "buffer-from": "^1.0.0",
1704 + "source-map": "^0.6.0"
1705 + }
1706 + },
1707 + "sshpk": {
1708 + "version": "1.16.1",
1709 + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
1710 + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
1711 + "requires": {
1712 + "asn1": "~0.2.3",
1713 + "assert-plus": "^1.0.0",
1714 + "bcrypt-pbkdf": "^1.0.0",
1715 + "dashdash": "^1.12.0",
1716 + "ecc-jsbn": "~0.1.1",
1717 + "getpass": "^0.1.1",
1718 + "jsbn": "~0.1.0",
1719 + "safer-buffer": "^2.0.2",
1720 + "tweetnacl": "~0.14.0"
1721 + }
1722 + },
1723 + "statuses": {
1724 + "version": "1.5.0",
1725 + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
1726 + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
1727 + },
1728 + "string.prototype.trimend": {
1729 + "version": "1.0.3",
1730 + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz",
1731 + "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==",
1732 + "requires": {
1733 + "call-bind": "^1.0.0",
1734 + "define-properties": "^1.1.3"
1735 + }
1736 + },
1737 + "string.prototype.trimstart": {
1738 + "version": "1.0.3",
1739 + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz",
1740 + "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==",
1741 + "requires": {
1742 + "call-bind": "^1.0.0",
1743 + "define-properties": "^1.1.3"
1744 + }
1745 + },
1746 + "string_decoder": {
1747 + "version": "1.3.0",
1748 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
1749 + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
1750 + "requires": {
1751 + "safe-buffer": "~5.2.0"
1752 + },
1753 + "dependencies": {
1754 + "safe-buffer": {
1755 + "version": "5.2.1",
1756 + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
1757 + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
1758 + }
1759 + }
1760 + },
1761 + "strip-ansi": {
1762 + "version": "3.0.1",
1763 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
1764 + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
1765 + "requires": {
1766 + "ansi-regex": "^2.0.0"
1767 + }
1768 + },
1769 + "strtok3": {
1770 + "version": "6.0.4",
1771 + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.4.tgz",
1772 + "integrity": "sha512-rqWMKwsbN9APU47bQTMEYTPcwdpKDtmf1jVhHzNW2cL1WqAxaM9iBb9t5P2fj+RV2YsErUWgQzHD5JwV0uCTEQ==",
1773 + "requires": {
1774 + "@tokenizer/token": "^0.1.1",
1775 + "@types/debug": "^4.1.5",
1776 + "peek-readable": "^3.1.0"
1777 + }
1778 + },
1779 + "supports-color": {
1780 + "version": "7.2.0",
1781 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1782 + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1783 + "requires": {
1784 + "has-flag": "^4.0.0"
1785 + }
1786 + },
1787 + "tapable": {
1788 + "version": "2.1.1",
1789 + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.1.1.tgz",
1790 + "integrity": "sha512-Wib1S8m2wdpLbmQz0RBEVosIyvb/ykfKXf3ZIDqvWoMg/zTNm6G/tDSuUM61J1kNCDXWJrLHGSFeMhAG+gAGpQ=="
1791 + },
1792 + "tempfile": {
1793 + "version": "1.1.1",
1794 + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz",
1795 + "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=",
1796 + "requires": {
1797 + "os-tmpdir": "^1.0.0",
1798 + "uuid": "^2.0.1"
1799 + },
1800 + "dependencies": {
1801 + "uuid": {
1802 + "version": "2.0.3",
1803 + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
1804 + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho="
1805 + }
1806 + }
1807 + },
1808 + "terser": {
1809 + "version": "5.5.1",
1810 + "resolved": "https://registry.npmjs.org/terser/-/terser-5.5.1.tgz",
1811 + "integrity": "sha512-6VGWZNVP2KTUcltUQJ25TtNjx/XgdDsBDKGt8nN0MpydU36LmbPPcMBd2kmtZNNGVVDLg44k7GKeHHj+4zPIBQ==",
1812 + "requires": {
1813 + "commander": "^2.20.0",
1814 + "source-map": "~0.7.2",
1815 + "source-map-support": "~0.5.19"
1816 + },
1817 + "dependencies": {
1818 + "source-map": {
1819 + "version": "0.7.3",
1820 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
1821 + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ=="
1822 + }
1823 + }
1824 + },
1825 + "terser-webpack-plugin": {
1826 + "version": "5.0.3",
1827 + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.0.3.tgz",
1828 + "integrity": "sha512-zFdGk8Lh9ZJGPxxPE6jwysOlATWB8GMW8HcfGULWA/nPal+3VdATflQvSBSLQJRCmYZnfFJl6vkRTiwJGNgPiQ==",
1829 + "requires": {
1830 + "jest-worker": "^26.6.1",
1831 + "p-limit": "^3.0.2",
1832 + "schema-utils": "^3.0.0",
1833 + "serialize-javascript": "^5.0.1",
1834 + "source-map": "^0.6.1",
1835 + "terser": "^5.3.8"
1836 + },
1837 + "dependencies": {
1838 + "p-limit": {
1839 + "version": "3.1.0",
1840 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
1841 + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
1842 + "requires": {
1843 + "yocto-queue": "^0.1.0"
1844 + }
1845 + }
1846 + }
1847 + },
1848 + "toidentifier": {
1849 + "version": "1.0.0",
1850 + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
1851 + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw=="
1852 + },
1853 + "token-types": {
1854 + "version": "2.0.0",
1855 + "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.0.0.tgz",
1856 + "integrity": "sha512-WWvu8sGK8/ZmGusekZJJ5NM6rRVTTDO7/bahz4NGiSDb/XsmdYBn6a1N/bymUHuWYTWeuLUg98wUzvE4jPdCZw==",
1857 + "requires": {
1858 + "@tokenizer/token": "^0.1.0",
1859 + "ieee754": "^1.1.13"
1860 + }
1861 + },
1862 + "tough-cookie": {
1863 + "version": "2.5.0",
1864 + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
1865 + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
1866 + "requires": {
1867 + "psl": "^1.1.28",
1868 + "punycode": "^2.1.1"
1869 + }
1870 + },
1871 + "tslib": {
1872 + "version": "1.14.1",
1873 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
1874 + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
1875 + },
1876 + "tunnel-agent": {
1877 + "version": "0.6.0",
1878 + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
1879 + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
1880 + "requires": {
1881 + "safe-buffer": "^5.0.1"
1882 + }
1883 + },
1884 + "tweetnacl": {
1885 + "version": "0.14.5",
1886 + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
1887 + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
1888 + },
1889 + "type-is": {
1890 + "version": "1.6.18",
1891 + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
1892 + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
1893 + "requires": {
1894 + "media-typer": "0.3.0",
1895 + "mime-types": "~2.1.24"
1896 + }
1897 + },
1898 + "typedarray-to-buffer": {
1899 + "version": "3.1.5",
1900 + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
1901 + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
1902 + "requires": {
1903 + "is-typedarray": "^1.0.0"
1904 + }
1905 + },
1906 + "unpipe": {
1907 + "version": "1.0.0",
1908 + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
1909 + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
1910 + },
1911 + "uri-js": {
1912 + "version": "4.4.0",
1913 + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz",
1914 + "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==",
1915 + "requires": {
1916 + "punycode": "^2.1.0"
1917 + }
1918 + },
1919 + "util-deprecate": {
1920 + "version": "1.0.2",
1921 + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1922 + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
1923 + },
1924 + "util.promisify": {
1925 + "version": "1.0.0",
1926 + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz",
1927 + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==",
1928 + "requires": {
1929 + "define-properties": "^1.1.2",
1930 + "object.getownpropertydescriptors": "^2.0.3"
1931 + }
1932 + },
1933 + "utila": {
1934 + "version": "0.4.0",
1935 + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz",
1936 + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw="
1937 + },
1938 + "utils-merge": {
1939 + "version": "1.0.1",
1940 + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
1941 + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
1942 + },
1943 + "uuid": {
1944 + "version": "3.4.0",
1945 + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
1946 + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
1947 + },
1948 + "vary": {
1949 + "version": "1.1.2",
1950 + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1951 + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
1952 + },
1953 + "verror": {
1954 + "version": "1.10.0",
1955 + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
1956 + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
1957 + "requires": {
1958 + "assert-plus": "^1.0.0",
1959 + "core-util-is": "1.0.2",
1960 + "extsprintf": "^1.2.0"
1961 + }
1962 + },
1963 + "watchpack": {
1964 + "version": "2.0.1",
1965 + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.0.1.tgz",
1966 + "integrity": "sha512-vO8AKGX22ZRo6PiOFM9dC0re8IcKh8Kd/aH2zeqUc6w4/jBGlTy2P7fTC6ekT0NjVeGjgU2dGC5rNstKkeLEQg==",
1967 + "requires": {
1968 + "glob-to-regexp": "^0.4.1",
1969 + "graceful-fs": "^4.1.2"
1970 + }
1971 + },
1972 + "webpack": {
1973 + "version": "5.9.0",
1974 + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.9.0.tgz",
1975 + "integrity": "sha512-YnnqIV/uAS5ZrNpctSv378qV7HmbJ74DL+XfvMxzbX1bV9e7eeT6eEWU4wuUw33CNr/HspBh7R/xQlVjTEyAeA==",
1976 + "requires": {
1977 + "@types/eslint-scope": "^3.7.0",
1978 + "@types/estree": "^0.0.45",
1979 + "@webassemblyjs/ast": "1.9.0",
1980 + "@webassemblyjs/helper-module-context": "1.9.0",
1981 + "@webassemblyjs/wasm-edit": "1.9.0",
1982 + "@webassemblyjs/wasm-parser": "1.9.0",
1983 + "acorn": "^8.0.4",
1984 + "browserslist": "^4.14.5",
1985 + "chrome-trace-event": "^1.0.2",
1986 + "enhanced-resolve": "^5.3.1",
1987 + "eslint-scope": "^5.1.1",
1988 + "events": "^3.2.0",
1989 + "glob-to-regexp": "^0.4.1",
1990 + "graceful-fs": "^4.2.4",
1991 + "json-parse-better-errors": "^1.0.2",
1992 + "loader-runner": "^4.1.0",
1993 + "mime-types": "^2.1.27",
1994 + "neo-async": "^2.6.2",
1995 + "pkg-dir": "^4.2.0",
1996 + "schema-utils": "^3.0.0",
1997 + "tapable": "^2.1.1",
1998 + "terser-webpack-plugin": "^5.0.3",
1999 + "watchpack": "^2.0.0",
2000 + "webpack-sources": "^2.1.1"
2001 + }
2002 + },
2003 + "webpack-sources": {
2004 + "version": "2.2.0",
2005 + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz",
2006 + "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==",
2007 + "requires": {
2008 + "source-list-map": "^2.0.1",
2009 + "source-map": "^0.6.1"
2010 + }
2011 + },
2012 + "wkt-parser": {
2013 + "version": "1.2.4",
2014 + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.2.4.tgz",
2015 + "integrity": "sha512-ZzKnc7ml/91fOPh5bANBL4vUlWPIYYv11waCtWTkl2TRN+LEmBg60Q1MA8gqV4hEp4MGfSj9JiHz91zw/gTDXg=="
2016 + },
2017 + "yocto-queue": {
2018 + "version": "0.1.0",
2019 + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
2020 + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
2021 + }
2022 + }
2023 +}
1 +{
2 + "name": "cfr-chatbot",
3 + "version": "1.0.0",
4 + "description": "chatbot to recommend good restaurants using CFR API",
5 + "main": "chatbot.js",
6 + "scripts": {
7 + "test": "echo \"Error: no test specified\" && exit 1"
8 + },
9 + "author": "whdkgp97@khu.ac.kr",
10 + "license": "ISC",
11 + "dependencies": {
12 + "@line/bot-sdk": "^7.1.0",
13 + "body-parser": "^1.19.0",
14 + "create-temp-file": "^2.0.0",
15 + "express": "^4.17.1",
16 + "follow-redirects": "^1.13.0",
17 + "fs": "0.0.1-security",
18 + "html-webpack-plugin": "^4.5.0",
19 + "line-bot-sdk-nodejs": "^1.0.0",
20 + "proj4": "^2.6.3",
21 + "request": "^2.88.2",
22 + "webpack": "^5.9.0"
23 + }
24 +}
...\ No newline at end of file ...\ No newline at end of file