박시진

Login function using puppeteer

...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
12 "@testing-library/react": "^13.2.0", 12 "@testing-library/react": "^13.2.0",
13 "@testing-library/user-event": "^13.5.0", 13 "@testing-library/user-event": "^13.5.0",
14 "localforage": "^1.10.0", 14 "localforage": "^1.10.0",
15 + "puppeteer": "^14.1.1",
15 "react": "^18.1.0", 16 "react": "^18.1.0",
16 "react-dom": "^18.1.0", 17 "react-dom": "^18.1.0",
17 "react-router-dom": "^6.3.0", 18 "react-router-dom": "^6.3.0",
...@@ -3760,6 +3761,15 @@ ...@@ -3760,6 +3761,15 @@
3760 "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", 3761 "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz",
3761 "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" 3762 "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA=="
3762 }, 3763 },
3764 + "node_modules/@types/yauzl": {
3765 + "version": "2.10.0",
3766 + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
3767 + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==",
3768 + "optional": true,
3769 + "dependencies": {
3770 + "@types/node": "*"
3771 + }
3772 + },
3763 "node_modules/@typescript-eslint/eslint-plugin": { 3773 "node_modules/@typescript-eslint/eslint-plugin": {
3764 "version": "5.24.0", 3774 "version": "5.24.0",
3765 "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.24.0.tgz", 3775 "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.24.0.tgz",
...@@ -4821,6 +4831,25 @@ ...@@ -4821,6 +4831,25 @@
4821 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 4831 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
4822 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 4832 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
4823 }, 4833 },
4834 + "node_modules/base64-js": {
4835 + "version": "1.5.1",
4836 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
4837 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
4838 + "funding": [
4839 + {
4840 + "type": "github",
4841 + "url": "https://github.com/sponsors/feross"
4842 + },
4843 + {
4844 + "type": "patreon",
4845 + "url": "https://www.patreon.com/feross"
4846 + },
4847 + {
4848 + "type": "consulting",
4849 + "url": "https://feross.org/support"
4850 + }
4851 + ]
4852 + },
4824 "node_modules/batch": { 4853 "node_modules/batch": {
4825 "version": "0.6.1", 4854 "version": "0.6.1",
4826 "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", 4855 "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
...@@ -4856,6 +4885,16 @@ ...@@ -4856,6 +4885,16 @@
4856 "node": ">=8" 4885 "node": ">=8"
4857 } 4886 }
4858 }, 4887 },
4888 + "node_modules/bl": {
4889 + "version": "4.1.0",
4890 + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
4891 + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
4892 + "dependencies": {
4893 + "buffer": "^5.5.0",
4894 + "inherits": "^2.0.4",
4895 + "readable-stream": "^3.4.0"
4896 + }
4897 + },
4859 "node_modules/bluebird": { 4898 "node_modules/bluebird": {
4860 "version": "3.7.2", 4899 "version": "3.7.2",
4861 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", 4900 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
...@@ -4993,6 +5032,37 @@ ...@@ -4993,6 +5032,37 @@
4993 "node-int64": "^0.4.0" 5032 "node-int64": "^0.4.0"
4994 } 5033 }
4995 }, 5034 },
5035 + "node_modules/buffer": {
5036 + "version": "5.7.1",
5037 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
5038 + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
5039 + "funding": [
5040 + {
5041 + "type": "github",
5042 + "url": "https://github.com/sponsors/feross"
5043 + },
5044 + {
5045 + "type": "patreon",
5046 + "url": "https://www.patreon.com/feross"
5047 + },
5048 + {
5049 + "type": "consulting",
5050 + "url": "https://feross.org/support"
5051 + }
5052 + ],
5053 + "dependencies": {
5054 + "base64-js": "^1.3.1",
5055 + "ieee754": "^1.1.13"
5056 + }
5057 + },
5058 + "node_modules/buffer-crc32": {
5059 + "version": "0.2.13",
5060 + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
5061 + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
5062 + "engines": {
5063 + "node": "*"
5064 + }
5065 + },
4996 "node_modules/buffer-from": { 5066 "node_modules/buffer-from": {
4997 "version": "1.1.2", 5067 "version": "1.1.2",
4998 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", 5068 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
...@@ -5170,6 +5240,11 @@ ...@@ -5170,6 +5240,11 @@
5170 "node": ">= 6" 5240 "node": ">= 6"
5171 } 5241 }
5172 }, 5242 },
5243 + "node_modules/chownr": {
5244 + "version": "1.1.4",
5245 + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
5246 + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg=="
5247 + },
5173 "node_modules/chrome-trace-event": { 5248 "node_modules/chrome-trace-event": {
5174 "version": "1.0.3", 5249 "version": "1.0.3",
5175 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", 5250 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
...@@ -5483,6 +5558,14 @@ ...@@ -5483,6 +5558,14 @@
5483 "node": ">=10" 5558 "node": ">=10"
5484 } 5559 }
5485 }, 5560 },
5561 + "node_modules/cross-fetch": {
5562 + "version": "3.1.5",
5563 + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz",
5564 + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==",
5565 + "dependencies": {
5566 + "node-fetch": "2.6.7"
5567 + }
5568 + },
5486 "node_modules/cross-spawn": { 5569 "node_modules/cross-spawn": {
5487 "version": "7.0.3", 5570 "version": "7.0.3",
5488 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 5571 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
...@@ -6098,6 +6181,11 @@ ...@@ -6098,6 +6181,11 @@
6098 "node": ">=0.8.0" 6181 "node": ">=0.8.0"
6099 } 6182 }
6100 }, 6183 },
6184 + "node_modules/devtools-protocol": {
6185 + "version": "0.0.982423",
6186 + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.982423.tgz",
6187 + "integrity": "sha512-FnVW2nDbjGNw1uD/JRC+9U5768W7e1TfUwqbDTcSsAu1jXFjITSX8w3rkW5FEpHRMPPGpvNSmO1pOpqByiWscA=="
6188 + },
6101 "node_modules/didyoumean": { 6189 "node_modules/didyoumean": {
6102 "version": "1.2.2", 6190 "version": "1.2.2",
6103 "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 6191 "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
...@@ -6320,6 +6408,14 @@ ...@@ -6320,6 +6408,14 @@
6320 "node": ">= 0.8" 6408 "node": ">= 0.8"
6321 } 6409 }
6322 }, 6410 },
6411 + "node_modules/end-of-stream": {
6412 + "version": "1.4.4",
6413 + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
6414 + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
6415 + "dependencies": {
6416 + "once": "^1.4.0"
6417 + }
6418 + },
6323 "node_modules/enhanced-resolve": { 6419 "node_modules/enhanced-resolve": {
6324 "version": "5.9.3", 6420 "version": "5.9.3",
6325 "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz", 6421 "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz",
...@@ -7289,6 +7385,39 @@ ...@@ -7289,6 +7385,39 @@
7289 } 7385 }
7290 ] 7386 ]
7291 }, 7387 },
7388 + "node_modules/extract-zip": {
7389 + "version": "2.0.1",
7390 + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
7391 + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
7392 + "dependencies": {
7393 + "debug": "^4.1.1",
7394 + "get-stream": "^5.1.0",
7395 + "yauzl": "^2.10.0"
7396 + },
7397 + "bin": {
7398 + "extract-zip": "cli.js"
7399 + },
7400 + "engines": {
7401 + "node": ">= 10.17.0"
7402 + },
7403 + "optionalDependencies": {
7404 + "@types/yauzl": "^2.9.1"
7405 + }
7406 + },
7407 + "node_modules/extract-zip/node_modules/get-stream": {
7408 + "version": "5.2.0",
7409 + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
7410 + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
7411 + "dependencies": {
7412 + "pump": "^3.0.0"
7413 + },
7414 + "engines": {
7415 + "node": ">=8"
7416 + },
7417 + "funding": {
7418 + "url": "https://github.com/sponsors/sindresorhus"
7419 + }
7420 + },
7292 "node_modules/fast-deep-equal": { 7421 "node_modules/fast-deep-equal": {
7293 "version": "3.1.3", 7422 "version": "3.1.3",
7294 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 7423 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
...@@ -7357,6 +7486,14 @@ ...@@ -7357,6 +7486,14 @@
7357 "bser": "2.1.1" 7486 "bser": "2.1.1"
7358 } 7487 }
7359 }, 7488 },
7489 + "node_modules/fd-slicer": {
7490 + "version": "1.1.0",
7491 + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
7492 + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
7493 + "dependencies": {
7494 + "pend": "~1.2.0"
7495 + }
7496 + },
7360 "node_modules/file-entry-cache": { 7497 "node_modules/file-entry-cache": {
7361 "version": "6.0.1", 7498 "version": "6.0.1",
7362 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 7499 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
...@@ -7727,6 +7864,11 @@ ...@@ -7727,6 +7864,11 @@
7727 "node": ">= 0.6" 7864 "node": ">= 0.6"
7728 } 7865 }
7729 }, 7866 },
7867 + "node_modules/fs-constants": {
7868 + "version": "1.0.0",
7869 + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
7870 + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
7871 + },
7730 "node_modules/fs-extra": { 7872 "node_modules/fs-extra": {
7731 "version": "10.1.0", 7873 "version": "10.1.0",
7732 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", 7874 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
...@@ -8325,6 +8467,25 @@ ...@@ -8325,6 +8467,25 @@
8325 "node": ">=4" 8467 "node": ">=4"
8326 } 8468 }
8327 }, 8469 },
8470 + "node_modules/ieee754": {
8471 + "version": "1.2.1",
8472 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
8473 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
8474 + "funding": [
8475 + {
8476 + "type": "github",
8477 + "url": "https://github.com/sponsors/feross"
8478 + },
8479 + {
8480 + "type": "patreon",
8481 + "url": "https://www.patreon.com/feross"
8482 + },
8483 + {
8484 + "type": "consulting",
8485 + "url": "https://feross.org/support"
8486 + }
8487 + ]
8488 + },
8328 "node_modules/ignore": { 8489 "node_modules/ignore": {
8329 "version": "5.2.0", 8490 "version": "5.2.0",
8330 "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", 8491 "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
...@@ -11374,6 +11535,11 @@ ...@@ -11374,6 +11535,11 @@
11374 "mkdirp": "bin/cmd.js" 11535 "mkdirp": "bin/cmd.js"
11375 } 11536 }
11376 }, 11537 },
11538 + "node_modules/mkdirp-classic": {
11539 + "version": "0.5.3",
11540 + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
11541 + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A=="
11542 + },
11377 "node_modules/ms": { 11543 "node_modules/ms": {
11378 "version": "2.1.2", 11544 "version": "2.1.2",
11379 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 11545 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
...@@ -11429,6 +11595,44 @@ ...@@ -11429,6 +11595,44 @@
11429 "tslib": "^2.0.3" 11595 "tslib": "^2.0.3"
11430 } 11596 }
11431 }, 11597 },
11598 + "node_modules/node-fetch": {
11599 + "version": "2.6.7",
11600 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
11601 + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
11602 + "dependencies": {
11603 + "whatwg-url": "^5.0.0"
11604 + },
11605 + "engines": {
11606 + "node": "4.x || >=6.0.0"
11607 + },
11608 + "peerDependencies": {
11609 + "encoding": "^0.1.0"
11610 + },
11611 + "peerDependenciesMeta": {
11612 + "encoding": {
11613 + "optional": true
11614 + }
11615 + }
11616 + },
11617 + "node_modules/node-fetch/node_modules/tr46": {
11618 + "version": "0.0.3",
11619 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
11620 + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o="
11621 + },
11622 + "node_modules/node-fetch/node_modules/webidl-conversions": {
11623 + "version": "3.0.1",
11624 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
11625 + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE="
11626 + },
11627 + "node_modules/node-fetch/node_modules/whatwg-url": {
11628 + "version": "5.0.0",
11629 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
11630 + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
11631 + "dependencies": {
11632 + "tr46": "~0.0.3",
11633 + "webidl-conversions": "^3.0.0"
11634 + }
11635 + },
11432 "node_modules/node-forge": { 11636 "node_modules/node-forge": {
11433 "version": "1.3.1", 11637 "version": "1.3.1",
11434 "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", 11638 "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
...@@ -11850,6 +12054,11 @@ ...@@ -11850,6 +12054,11 @@
11850 "node": ">=8" 12054 "node": ">=8"
11851 } 12055 }
11852 }, 12056 },
12057 + "node_modules/pend": {
12058 + "version": "1.2.0",
12059 + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
12060 + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
12061 + },
11853 "node_modules/performance-now": { 12062 "node_modules/performance-now": {
11854 "version": "2.1.0", 12063 "version": "2.1.0",
11855 "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", 12064 "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
...@@ -13141,6 +13350,14 @@ ...@@ -13141,6 +13350,14 @@
13141 "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 13350 "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
13142 "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 13351 "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
13143 }, 13352 },
13353 + "node_modules/progress": {
13354 + "version": "2.0.3",
13355 + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
13356 + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
13357 + "engines": {
13358 + "node": ">=0.4.0"
13359 + }
13360 + },
13144 "node_modules/promise": { 13361 "node_modules/promise": {
13145 "version": "8.1.0", 13362 "version": "8.1.0",
13146 "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz", 13363 "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz",
...@@ -13196,11 +13413,25 @@ ...@@ -13196,11 +13413,25 @@
13196 "node": ">= 0.10" 13413 "node": ">= 0.10"
13197 } 13414 }
13198 }, 13415 },
13416 + "node_modules/proxy-from-env": {
13417 + "version": "1.1.0",
13418 + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
13419 + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
13420 + },
13199 "node_modules/psl": { 13421 "node_modules/psl": {
13200 "version": "1.8.0", 13422 "version": "1.8.0",
13201 "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", 13423 "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
13202 "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" 13424 "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
13203 }, 13425 },
13426 + "node_modules/pump": {
13427 + "version": "3.0.0",
13428 + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
13429 + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
13430 + "dependencies": {
13431 + "end-of-stream": "^1.1.0",
13432 + "once": "^1.3.1"
13433 + }
13434 + },
13204 "node_modules/punycode": { 13435 "node_modules/punycode": {
13205 "version": "2.1.1", 13436 "version": "2.1.1",
13206 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 13437 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
...@@ -13209,6 +13440,49 @@ ...@@ -13209,6 +13440,49 @@
13209 "node": ">=6" 13440 "node": ">=6"
13210 } 13441 }
13211 }, 13442 },
13443 + "node_modules/puppeteer": {
13444 + "version": "14.1.1",
13445 + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-14.1.1.tgz",
13446 + "integrity": "sha512-4dC6GYR5YlXTmNO3TbYEHTdVSdml1cVD2Ok/h/f/xSTp4ITVdbRWkMjiOaEKRAhtIl6GqaP7B89zx+hfhcNGMQ==",
13447 + "hasInstallScript": true,
13448 + "dependencies": {
13449 + "cross-fetch": "3.1.5",
13450 + "debug": "4.3.4",
13451 + "devtools-protocol": "0.0.982423",
13452 + "extract-zip": "2.0.1",
13453 + "https-proxy-agent": "5.0.1",
13454 + "pkg-dir": "4.2.0",
13455 + "progress": "2.0.3",
13456 + "proxy-from-env": "1.1.0",
13457 + "rimraf": "3.0.2",
13458 + "tar-fs": "2.1.1",
13459 + "unbzip2-stream": "1.4.3",
13460 + "ws": "8.6.0"
13461 + },
13462 + "engines": {
13463 + "node": ">=14.1.0"
13464 + }
13465 + },
13466 + "node_modules/puppeteer/node_modules/ws": {
13467 + "version": "8.6.0",
13468 + "resolved": "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz",
13469 + "integrity": "sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw==",
13470 + "engines": {
13471 + "node": ">=10.0.0"
13472 + },
13473 + "peerDependencies": {
13474 + "bufferutil": "^4.0.1",
13475 + "utf-8-validate": "^5.0.2"
13476 + },
13477 + "peerDependenciesMeta": {
13478 + "bufferutil": {
13479 + "optional": true
13480 + },
13481 + "utf-8-validate": {
13482 + "optional": true
13483 + }
13484 + }
13485 + },
13212 "node_modules/q": { 13486 "node_modules/q": {
13213 "version": "1.5.1", 13487 "version": "1.5.1",
13214 "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", 13488 "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
...@@ -14878,6 +15152,32 @@ ...@@ -14878,6 +15152,32 @@
14878 "node": ">=6" 15152 "node": ">=6"
14879 } 15153 }
14880 }, 15154 },
15155 + "node_modules/tar-fs": {
15156 + "version": "2.1.1",
15157 + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
15158 + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
15159 + "dependencies": {
15160 + "chownr": "^1.1.1",
15161 + "mkdirp-classic": "^0.5.2",
15162 + "pump": "^3.0.0",
15163 + "tar-stream": "^2.1.4"
15164 + }
15165 + },
15166 + "node_modules/tar-stream": {
15167 + "version": "2.2.0",
15168 + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
15169 + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
15170 + "dependencies": {
15171 + "bl": "^4.0.3",
15172 + "end-of-stream": "^1.4.1",
15173 + "fs-constants": "^1.0.0",
15174 + "inherits": "^2.0.3",
15175 + "readable-stream": "^3.1.1"
15176 + },
15177 + "engines": {
15178 + "node": ">=6"
15179 + }
15180 + },
14881 "node_modules/temp-dir": { 15181 "node_modules/temp-dir": {
14882 "version": "2.0.0", 15182 "version": "2.0.0",
14883 "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", 15183 "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz",
...@@ -15049,6 +15349,11 @@ ...@@ -15049,6 +15349,11 @@
15049 "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", 15349 "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz",
15050 "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==" 15350 "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w=="
15051 }, 15351 },
15352 + "node_modules/through": {
15353 + "version": "2.3.8",
15354 + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
15355 + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU="
15356 + },
15052 "node_modules/thunky": { 15357 "node_modules/thunky": {
15053 "version": "1.1.0", 15358 "version": "1.1.0",
15054 "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", 15359 "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
...@@ -15254,6 +15559,15 @@ ...@@ -15254,6 +15559,15 @@
15254 "url": "https://github.com/sponsors/ljharb" 15559 "url": "https://github.com/sponsors/ljharb"
15255 } 15560 }
15256 }, 15561 },
15562 + "node_modules/unbzip2-stream": {
15563 + "version": "1.4.3",
15564 + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
15565 + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
15566 + "dependencies": {
15567 + "buffer": "^5.2.1",
15568 + "through": "^2.3.8"
15569 + }
15570 + },
15257 "node_modules/unicode-canonical-property-names-ecmascript": { 15571 "node_modules/unicode-canonical-property-names-ecmascript": {
15258 "version": "2.0.0", 15572 "version": "2.0.0",
15259 "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", 15573 "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
...@@ -16303,6 +16617,15 @@ ...@@ -16303,6 +16617,15 @@
16303 "node": ">=10" 16617 "node": ">=10"
16304 } 16618 }
16305 }, 16619 },
16620 + "node_modules/yauzl": {
16621 + "version": "2.10.0",
16622 + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
16623 + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
16624 + "dependencies": {
16625 + "buffer-crc32": "~0.2.3",
16626 + "fd-slicer": "~1.1.0"
16627 + }
16628 + },
16306 "node_modules/yocto-queue": { 16629 "node_modules/yocto-queue": {
16307 "version": "0.1.0", 16630 "version": "0.1.0",
16308 "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", 16631 "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
...@@ -18933,6 +19256,15 @@ ...@@ -18933,6 +19256,15 @@
18933 "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", 19256 "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz",
18934 "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" 19257 "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA=="
18935 }, 19258 },
19259 + "@types/yauzl": {
19260 + "version": "2.10.0",
19261 + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
19262 + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==",
19263 + "optional": true,
19264 + "requires": {
19265 + "@types/node": "*"
19266 + }
19267 + },
18936 "@typescript-eslint/eslint-plugin": { 19268 "@typescript-eslint/eslint-plugin": {
18937 "version": "5.24.0", 19269 "version": "5.24.0",
18938 "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.24.0.tgz", 19270 "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.24.0.tgz",
...@@ -19698,6 +20030,11 @@ ...@@ -19698,6 +20030,11 @@
19698 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 20030 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
19699 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 20031 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
19700 }, 20032 },
20033 + "base64-js": {
20034 + "version": "1.5.1",
20035 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
20036 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
20037 + },
19701 "batch": { 20038 "batch": {
19702 "version": "0.6.1", 20039 "version": "0.6.1",
19703 "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", 20040 "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
...@@ -19724,6 +20061,16 @@ ...@@ -19724,6 +20061,16 @@
19724 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 20061 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
19725 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" 20062 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA=="
19726 }, 20063 },
20064 + "bl": {
20065 + "version": "4.1.0",
20066 + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
20067 + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
20068 + "requires": {
20069 + "buffer": "^5.5.0",
20070 + "inherits": "^2.0.4",
20071 + "readable-stream": "^3.4.0"
20072 + }
20073 + },
19727 "bluebird": { 20074 "bluebird": {
19728 "version": "3.7.2", 20075 "version": "3.7.2",
19729 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", 20076 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
...@@ -19834,6 +20181,20 @@ ...@@ -19834,6 +20181,20 @@
19834 "node-int64": "^0.4.0" 20181 "node-int64": "^0.4.0"
19835 } 20182 }
19836 }, 20183 },
20184 + "buffer": {
20185 + "version": "5.7.1",
20186 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
20187 + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
20188 + "requires": {
20189 + "base64-js": "^1.3.1",
20190 + "ieee754": "^1.1.13"
20191 + }
20192 + },
20193 + "buffer-crc32": {
20194 + "version": "0.2.13",
20195 + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
20196 + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ=="
20197 + },
19837 "buffer-from": { 20198 "buffer-from": {
19838 "version": "1.1.2", 20199 "version": "1.1.2",
19839 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", 20200 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
...@@ -19953,6 +20314,11 @@ ...@@ -19953,6 +20314,11 @@
19953 } 20314 }
19954 } 20315 }
19955 }, 20316 },
20317 + "chownr": {
20318 + "version": "1.1.4",
20319 + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
20320 + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg=="
20321 + },
19956 "chrome-trace-event": { 20322 "chrome-trace-event": {
19957 "version": "1.0.3", 20323 "version": "1.0.3",
19958 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", 20324 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
...@@ -20197,6 +20563,14 @@ ...@@ -20197,6 +20563,14 @@
20197 "yaml": "^1.10.0" 20563 "yaml": "^1.10.0"
20198 } 20564 }
20199 }, 20565 },
20566 + "cross-fetch": {
20567 + "version": "3.1.5",
20568 + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz",
20569 + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==",
20570 + "requires": {
20571 + "node-fetch": "2.6.7"
20572 + }
20573 + },
20200 "cross-spawn": { 20574 "cross-spawn": {
20201 "version": "7.0.3", 20575 "version": "7.0.3",
20202 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 20576 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
...@@ -20620,6 +20994,11 @@ ...@@ -20620,6 +20994,11 @@
20620 "minimist": "^1.1.1" 20994 "minimist": "^1.1.1"
20621 } 20995 }
20622 }, 20996 },
20997 + "devtools-protocol": {
20998 + "version": "0.0.982423",
20999 + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.982423.tgz",
21000 + "integrity": "sha512-FnVW2nDbjGNw1uD/JRC+9U5768W7e1TfUwqbDTcSsAu1jXFjITSX8w3rkW5FEpHRMPPGpvNSmO1pOpqByiWscA=="
21001 + },
20623 "didyoumean": { 21002 "didyoumean": {
20624 "version": "1.2.2", 21003 "version": "1.2.2",
20625 "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 21004 "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
...@@ -20787,6 +21166,14 @@ ...@@ -20787,6 +21166,14 @@
20787 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 21166 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
20788 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" 21167 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
20789 }, 21168 },
21169 + "end-of-stream": {
21170 + "version": "1.4.4",
21171 + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
21172 + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
21173 + "requires": {
21174 + "once": "^1.4.0"
21175 + }
21176 + },
20790 "enhanced-resolve": { 21177 "enhanced-resolve": {
20791 "version": "5.9.3", 21178 "version": "5.9.3",
20792 "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz", 21179 "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz",
...@@ -21495,6 +21882,27 @@ ...@@ -21495,6 +21882,27 @@
21495 } 21882 }
21496 } 21883 }
21497 }, 21884 },
21885 + "extract-zip": {
21886 + "version": "2.0.1",
21887 + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
21888 + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
21889 + "requires": {
21890 + "@types/yauzl": "^2.9.1",
21891 + "debug": "^4.1.1",
21892 + "get-stream": "^5.1.0",
21893 + "yauzl": "^2.10.0"
21894 + },
21895 + "dependencies": {
21896 + "get-stream": {
21897 + "version": "5.2.0",
21898 + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
21899 + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
21900 + "requires": {
21901 + "pump": "^3.0.0"
21902 + }
21903 + }
21904 + }
21905 + },
21498 "fast-deep-equal": { 21906 "fast-deep-equal": {
21499 "version": "3.1.3", 21907 "version": "3.1.3",
21500 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 21908 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
...@@ -21556,6 +21964,14 @@ ...@@ -21556,6 +21964,14 @@
21556 "bser": "2.1.1" 21964 "bser": "2.1.1"
21557 } 21965 }
21558 }, 21966 },
21967 + "fd-slicer": {
21968 + "version": "1.1.0",
21969 + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
21970 + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
21971 + "requires": {
21972 + "pend": "~1.2.0"
21973 + }
21974 + },
21559 "file-entry-cache": { 21975 "file-entry-cache": {
21560 "version": "6.0.1", 21976 "version": "6.0.1",
21561 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 21977 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
...@@ -21807,6 +22223,11 @@ ...@@ -21807,6 +22223,11 @@
21807 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 22223 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
21808 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" 22224 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
21809 }, 22225 },
22226 + "fs-constants": {
22227 + "version": "1.0.0",
22228 + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
22229 + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
22230 + },
21810 "fs-extra": { 22231 "fs-extra": {
21811 "version": "10.1.0", 22232 "version": "10.1.0",
21812 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", 22233 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
...@@ -22240,6 +22661,11 @@ ...@@ -22240,6 +22661,11 @@
22240 "harmony-reflect": "^1.4.6" 22661 "harmony-reflect": "^1.4.6"
22241 } 22662 }
22242 }, 22663 },
22664 + "ieee754": {
22665 + "version": "1.2.1",
22666 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
22667 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
22668 + },
22243 "ignore": { 22669 "ignore": {
22244 "version": "5.2.0", 22670 "version": "5.2.0",
22245 "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", 22671 "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
...@@ -24450,6 +24876,11 @@ ...@@ -24450,6 +24876,11 @@
24450 "minimist": "^1.2.6" 24876 "minimist": "^1.2.6"
24451 } 24877 }
24452 }, 24878 },
24879 + "mkdirp-classic": {
24880 + "version": "0.5.3",
24881 + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
24882 + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A=="
24883 + },
24453 "ms": { 24884 "ms": {
24454 "version": "2.1.2", 24885 "version": "2.1.2",
24455 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 24886 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
...@@ -24493,6 +24924,35 @@ ...@@ -24493,6 +24924,35 @@
24493 "tslib": "^2.0.3" 24924 "tslib": "^2.0.3"
24494 } 24925 }
24495 }, 24926 },
24927 + "node-fetch": {
24928 + "version": "2.6.7",
24929 + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
24930 + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
24931 + "requires": {
24932 + "whatwg-url": "^5.0.0"
24933 + },
24934 + "dependencies": {
24935 + "tr46": {
24936 + "version": "0.0.3",
24937 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
24938 + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o="
24939 + },
24940 + "webidl-conversions": {
24941 + "version": "3.0.1",
24942 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
24943 + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE="
24944 + },
24945 + "whatwg-url": {
24946 + "version": "5.0.0",
24947 + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
24948 + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
24949 + "requires": {
24950 + "tr46": "~0.0.3",
24951 + "webidl-conversions": "^3.0.0"
24952 + }
24953 + }
24954 + }
24955 + },
24496 "node-forge": { 24956 "node-forge": {
24497 "version": "1.3.1", 24957 "version": "1.3.1",
24498 "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", 24958 "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
...@@ -24788,6 +25248,11 @@ ...@@ -24788,6 +25248,11 @@
24788 "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", 25248 "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
24789 "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" 25249 "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
24790 }, 25250 },
25251 + "pend": {
25252 + "version": "1.2.0",
25253 + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
25254 + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
25255 + },
24791 "performance-now": { 25256 "performance-now": {
24792 "version": "2.1.0", 25257 "version": "2.1.0",
24793 "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", 25258 "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
...@@ -25574,6 +26039,11 @@ ...@@ -25574,6 +26039,11 @@
25574 "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 26039 "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
25575 "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 26040 "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
25576 }, 26041 },
26042 + "progress": {
26043 + "version": "2.0.3",
26044 + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
26045 + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA=="
26046 + },
25577 "promise": { 26047 "promise": {
25578 "version": "8.1.0", 26048 "version": "8.1.0",
25579 "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz", 26049 "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz",
...@@ -25624,16 +26094,57 @@ ...@@ -25624,16 +26094,57 @@
25624 } 26094 }
25625 } 26095 }
25626 }, 26096 },
26097 + "proxy-from-env": {
26098 + "version": "1.1.0",
26099 + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
26100 + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
26101 + },
25627 "psl": { 26102 "psl": {
25628 "version": "1.8.0", 26103 "version": "1.8.0",
25629 "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", 26104 "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
25630 "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" 26105 "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
25631 }, 26106 },
26107 + "pump": {
26108 + "version": "3.0.0",
26109 + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
26110 + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
26111 + "requires": {
26112 + "end-of-stream": "^1.1.0",
26113 + "once": "^1.3.1"
26114 + }
26115 + },
25632 "punycode": { 26116 "punycode": {
25633 "version": "2.1.1", 26117 "version": "2.1.1",
25634 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 26118 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
25635 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" 26119 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
25636 }, 26120 },
26121 + "puppeteer": {
26122 + "version": "14.1.1",
26123 + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-14.1.1.tgz",
26124 + "integrity": "sha512-4dC6GYR5YlXTmNO3TbYEHTdVSdml1cVD2Ok/h/f/xSTp4ITVdbRWkMjiOaEKRAhtIl6GqaP7B89zx+hfhcNGMQ==",
26125 + "requires": {
26126 + "cross-fetch": "3.1.5",
26127 + "debug": "4.3.4",
26128 + "devtools-protocol": "0.0.982423",
26129 + "extract-zip": "2.0.1",
26130 + "https-proxy-agent": "5.0.1",
26131 + "pkg-dir": "4.2.0",
26132 + "progress": "2.0.3",
26133 + "proxy-from-env": "1.1.0",
26134 + "rimraf": "3.0.2",
26135 + "tar-fs": "2.1.1",
26136 + "unbzip2-stream": "1.4.3",
26137 + "ws": "8.6.0"
26138 + },
26139 + "dependencies": {
26140 + "ws": {
26141 + "version": "8.6.0",
26142 + "resolved": "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz",
26143 + "integrity": "sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw==",
26144 + "requires": {}
26145 + }
26146 + }
26147 + },
25637 "q": { 26148 "q": {
25638 "version": "1.5.1", 26149 "version": "1.5.1",
25639 "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", 26150 "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
...@@ -26872,6 +27383,29 @@ ...@@ -26872,6 +27383,29 @@
26872 "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", 27383 "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
26873 "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" 27384 "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="
26874 }, 27385 },
27386 + "tar-fs": {
27387 + "version": "2.1.1",
27388 + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
27389 + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
27390 + "requires": {
27391 + "chownr": "^1.1.1",
27392 + "mkdirp-classic": "^0.5.2",
27393 + "pump": "^3.0.0",
27394 + "tar-stream": "^2.1.4"
27395 + }
27396 + },
27397 + "tar-stream": {
27398 + "version": "2.2.0",
27399 + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
27400 + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
27401 + "requires": {
27402 + "bl": "^4.0.3",
27403 + "end-of-stream": "^1.4.1",
27404 + "fs-constants": "^1.0.0",
27405 + "inherits": "^2.0.3",
27406 + "readable-stream": "^3.1.1"
27407 + }
27408 + },
26875 "temp-dir": { 27409 "temp-dir": {
26876 "version": "2.0.0", 27410 "version": "2.0.0",
26877 "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", 27411 "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz",
...@@ -26992,6 +27526,11 @@ ...@@ -26992,6 +27526,11 @@
26992 "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", 27526 "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz",
26993 "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==" 27527 "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w=="
26994 }, 27528 },
27529 + "through": {
27530 + "version": "2.3.8",
27531 + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
27532 + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU="
27533 + },
26995 "thunky": { 27534 "thunky": {
26996 "version": "1.1.0", 27535 "version": "1.1.0",
26997 "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", 27536 "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
...@@ -27148,6 +27687,15 @@ ...@@ -27148,6 +27687,15 @@
27148 "which-boxed-primitive": "^1.0.2" 27687 "which-boxed-primitive": "^1.0.2"
27149 } 27688 }
27150 }, 27689 },
27690 + "unbzip2-stream": {
27691 + "version": "1.4.3",
27692 + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
27693 + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
27694 + "requires": {
27695 + "buffer": "^5.2.1",
27696 + "through": "^2.3.8"
27697 + }
27698 + },
27151 "unicode-canonical-property-names-ecmascript": { 27699 "unicode-canonical-property-names-ecmascript": {
27152 "version": "2.0.0", 27700 "version": "2.0.0",
27153 "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", 27701 "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
...@@ -27966,6 +28514,15 @@ ...@@ -27966,6 +28514,15 @@
27966 "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", 28514 "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
27967 "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" 28515 "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w=="
27968 }, 28516 },
28517 + "yauzl": {
28518 + "version": "2.10.0",
28519 + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
28520 + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
28521 + "requires": {
28522 + "buffer-crc32": "~0.2.3",
28523 + "fd-slicer": "~1.1.0"
28524 + }
28525 + },
27969 "yocto-queue": { 28526 "yocto-queue": {
27970 "version": "0.1.0", 28527 "version": "0.1.0",
27971 "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", 28528 "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
7 "@testing-library/react": "^13.2.0", 7 "@testing-library/react": "^13.2.0",
8 "@testing-library/user-event": "^13.5.0", 8 "@testing-library/user-event": "^13.5.0",
9 "localforage": "^1.10.0", 9 "localforage": "^1.10.0",
10 + "puppeteer": "^14.1.1",
10 "react": "^18.1.0", 11 "react": "^18.1.0",
11 "react-dom": "^18.1.0", 12 "react-dom": "^18.1.0",
12 "react-router-dom": "^6.3.0", 13 "react-router-dom": "^6.3.0",
......
1 function login(id, pw) { 1 function login(id, pw) {
2 - return `I got data { id:"${id}" pw:"${pw}" }`; 2 + const crawler = async() => {
3 + try{
4 + const browser = await puppeteer.launch({headless: false, args:['--window-size=1920,1080']});
5 + // for observing the process of login, headless -> false
6 + const page = await browser.newPage();
7 + await page.setViewport({
8 + width:1920,
9 + height:1080
10 + })
11 + await page.goto('https://e-campus.khu.ac.kr/xn-sso/login.php?auto_login=&sso_only=&cvs_lgn=&return_url=https%3A%2F%2Fe-campus.khu.ac.kr%2Fxn-sso%2Fgw-cb.php%3Ffrom%3D%26login_type%3Dstandalone%26return_url%3Dhttps%253A%252F%252Fe-campus.khu.ac.kr%252Flogin%252Fcallback');
12 + await page.evaluate(() => {
13 + document.querySelector("#login_user_id").value = id
14 + document.querySelector("#login_user_password").value = pw
15 + document.querySelector('#form1 > div > div.login_btn > a > span').click();
16 + })
17 +
18 + }catch(err){
19 + console.log(err)
20 + }
21 + if(page.url() === 'https://e-campus.khu.ac.kr/xn-sso/login.php?auto_login=&sso_only=&cvs_lgn=&return_url=https%3A%2F%2Fe-campus.khu.ac.kr%2Fxn-sso%2Fgw-cb.php%3Ffrom%3D%26login_type%3Dstandalone%26return_url%3Dhttps%253A%252F%252Fe-campus.khu.ac.kr%252Flogin%252Fcallback'){
22 + return "the account id or password you entered is incorrect";}
23 + else {
24 + return `I got data { id:"${id}" pw:"${pw}" }`;
25 + }
26 + }
27 + crawler();
3 } 28 }
4 29
5 export { login }; 30 export { login };
31 +
32 +
......