admin: accounts page

Massimo Melina committed Feb 2, 2022 at 20:14 UTC 2c6455764b18312d8d484aef7bc5efc9ab885773
17 files changed +3694 -785
admin/package-lock.json
+3257 -713
@@ -1,12 +1,12 @@
1 {
2 "name": "admin",
3 - "version": "0.8.0",
3 + "version": "0.9.0",
4 "lockfileVersion": 2,
5 "requires": true,
6 "packages": {
7 "": {
8 "name": "admin",
9 - "version": "0.8.0",
9 + "version": "0.9.0",
10 "dependencies": {
11 "@emotion/react": "^11.7.1",
12 "@emotion/styled": "^11.6.0",
@@ -18,17 +18,21 @@
18 "@testing-library/jest-dom": "^5.16.1",
19 "@testing-library/react": "^12.1.2",
20 "@testing-library/user-event": "^13.5.0",
21 - "@types/jest": "^27.4.0",
22 - "@types/node": "^16.11.21",
23 - "@types/react": "^17.0.38",
24 - "@types/react-dom": "^17.0.11",
21 + "js-sha512": "^0.8.0",
22 "react": "^17.0.2",
23 "react-dom": "^17.0.2",
24 "react-router-dom": "^6.2.1",
28 - "react-scripts": "5.0.0",
25 + "tssrp6a": "^3.0.0",
26 "typescript": "^4.5.5",
27 "valtio": "^1.2.9",
28 "web-vitals": "^2.1.4"
29 + },
30 + "devDependencies": {
31 + "@types/jest": "^27.4.0",
32 + "@types/node": "^16.11.21",
33 + "@types/react": "^17.0.38",
34 + "@types/react-dom": "^17.0.11",
35 + "react-scripts": "5.0.0"
36 }
37 },
38 "node_modules/@babel/code-frame": {
@@ -91,6 +95,7 @@
95 "version": "7.16.5",
96 "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.16.5.tgz",
97 "integrity": "sha512-mUqYa46lgWqHKQ33Q6LNCGp/wPR3eqOYTUixHFsfrSQqRxH0+WOzca75iEjFr5RDGH1dDz622LaHhLOzOuQRUA==",
98 + "dev": true,
99 "dependencies": {
100 "eslint-scope": "^5.1.1",
101 "eslint-visitor-keys": "^2.1.0",
@@ -108,6 +113,7 @@
113 "version": "5.1.1",
114 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
115 "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
116 + "dev": true,
117 "dependencies": {
118 "esrecurse": "^4.3.0",
119 "estraverse": "^4.1.1"
@@ -120,6 +126,7 @@
126 "version": "2.1.0",
127 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
128 "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
129 + "dev": true,
130 "engines": {
131 "node": ">=10"
132 }
@@ -128,6 +135,7 @@
135 "version": "4.3.0",
136 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
137 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
138 + "dev": true,
139 "engines": {
140 "node": ">=4.0"
141 }
@@ -136,6 +144,7 @@
144 "version": "6.3.0",
145 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
146 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
147 + "dev": true,
148 "bin": {
149 "semver": "bin/semver.js"
150 }
@@ -157,6 +166,7 @@
166 "version": "7.16.7",
167 "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz",
168 "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==",
169 + "dev": true,
170 "dependencies": {
171 "@babel/types": "^7.16.7"
172 },
@@ -168,6 +178,7 @@
178 "version": "7.16.7",
179 "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz",
180 "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==",
181 + "dev": true,
182 "dependencies": {
183 "@babel/helper-explode-assignable-expression": "^7.16.7",
184 "@babel/types": "^7.16.7"
@@ -205,6 +216,7 @@
216 "version": "7.16.10",
217 "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.10.tgz",
218 "integrity": "sha512-wDeej0pu3WN/ffTxMNCPW5UCiOav8IcLRxSIyp/9+IF2xJUM9h/OYjg0IJLHaL6F8oU8kqMz9nc1vryXhMsgXg==",
219 + "dev": true,
220 "dependencies": {
221 "@babel/helper-annotate-as-pure": "^7.16.7",
222 "@babel/helper-environment-visitor": "^7.16.7",
@@ -225,6 +237,7 @@
237 "version": "7.16.7",
238 "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.7.tgz",
239 "integrity": "sha512-fk5A6ymfp+O5+p2yCkXAu5Kyj6v0xh0RBeNcAkYUMDvvAAoxvSKXn+Jb37t/yWFiQVDFK1ELpUTD8/aLhCPu+g==",
240 + "dev": true,
241 "dependencies": {
242 "@babel/helper-annotate-as-pure": "^7.16.7",
243 "regexpu-core": "^4.7.1"
@@ -240,6 +253,7 @@
253 "version": "0.3.1",
254 "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz",
255 "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==",
256 + "dev": true,
257 "dependencies": {
258 "@babel/helper-compilation-targets": "^7.13.0",
259 "@babel/helper-module-imports": "^7.12.13",
@@ -258,6 +272,7 @@
272 "version": "6.3.0",
273 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
274 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
275 + "dev": true,
276 "bin": {
277 "semver": "bin/semver.js"
278 }
@@ -277,6 +292,7 @@
292 "version": "7.16.7",
293 "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz",
294 "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==",
295 + "dev": true,
296 "dependencies": {
297 "@babel/types": "^7.16.7"
298 },
@@ -323,6 +339,7 @@
339 "version": "7.16.7",
340 "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.7.tgz",
341 "integrity": "sha512-VtJ/65tYiU/6AbMTDwyoXGPKHgTsfRarivm+YbB5uAzKUyuPjgZSgAFeG87FCigc7KNHu2Pegh1XIT3lXjvz3Q==",
342 + "dev": true,
343 "dependencies": {
344 "@babel/types": "^7.16.7"
345 },
@@ -363,6 +380,7 @@
380 "version": "7.16.7",
381 "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz",
382 "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==",
383 + "dev": true,
384 "dependencies": {
385 "@babel/types": "^7.16.7"
386 },
@@ -382,6 +400,7 @@
400 "version": "7.16.8",
401 "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz",
402 "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==",
403 + "dev": true,
404 "dependencies": {
405 "@babel/helper-annotate-as-pure": "^7.16.7",
406 "@babel/helper-wrap-function": "^7.16.8",
@@ -395,6 +414,7 @@
414 "version": "7.16.7",
415 "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz",
416 "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==",
417 + "dev": true,
418 "dependencies": {
419 "@babel/helper-environment-visitor": "^7.16.7",
420 "@babel/helper-member-expression-to-functions": "^7.16.7",
@@ -421,6 +441,7 @@
441 "version": "7.16.0",
442 "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz",
443 "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==",
444 + "dev": true,
445 "dependencies": {
446 "@babel/types": "^7.16.0"
447 },
@@ -459,6 +480,7 @@
480 "version": "7.16.8",
481 "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz",
482 "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==",
483 + "dev": true,
484 "dependencies": {
485 "@babel/helper-function-name": "^7.16.7",
486 "@babel/template": "^7.16.7",
@@ -510,6 +532,7 @@
532 "version": "7.16.7",
533 "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz",
534 "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==",
535 + "dev": true,
536 "dependencies": {
537 "@babel/helper-plugin-utils": "^7.16.7"
538 },
@@ -524,6 +547,7 @@
547 "version": "7.16.7",
548 "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz",
549 "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==",
550 + "dev": true,
551 "dependencies": {
552 "@babel/helper-plugin-utils": "^7.16.7",
553 "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
@@ -540,6 +564,7 @@
564 "version": "7.16.8",
565 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz",
566 "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==",
567 + "dev": true,
568 "dependencies": {
569 "@babel/helper-plugin-utils": "^7.16.7",
570 "@babel/helper-remap-async-to-generator": "^7.16.8",
@@ -556,6 +581,7 @@
581 "version": "7.16.7",
582 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz",
583 "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==",
584 + "dev": true,
585 "dependencies": {
586 "@babel/helper-create-class-features-plugin": "^7.16.7",
587 "@babel/helper-plugin-utils": "^7.16.7"
@@ -571,6 +597,7 @@
597 "version": "7.16.7",
598 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.7.tgz",
599 "integrity": "sha512-dgqJJrcZoG/4CkMopzhPJjGxsIe9A8RlkQLnL/Vhhx8AA9ZuaRwGSlscSh42hazc7WSrya/IK7mTeoF0DP9tEw==",
600 + "dev": true,
601 "dependencies": {
602 "@babel/helper-create-class-features-plugin": "^7.16.7",
603 "@babel/helper-plugin-utils": "^7.16.7",
@@ -587,6 +614,7 @@
614 "version": "7.16.7",
615 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.16.7.tgz",
616 "integrity": "sha512-DoEpnuXK14XV9btI1k8tzNGCutMclpj4yru8aXKoHlVmbO1s+2A+g2+h4JhcjrxkFJqzbymnLG6j/niOf3iFXQ==",
617 + "dev": true,
618 "dependencies": {
619 "@babel/helper-create-class-features-plugin": "^7.16.7",
620 "@babel/helper-plugin-utils": "^7.16.7",
@@ -603,6 +631,7 @@
631 "version": "7.16.7",
632 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz",
633 "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==",
634 + "dev": true,
635 "dependencies": {
636 "@babel/helper-plugin-utils": "^7.16.7",
637 "@babel/plugin-syntax-dynamic-import": "^7.8.3"
@@ -618,6 +647,7 @@
647 "version": "7.16.7",
648 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz",
649 "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==",
650 + "dev": true,
651 "dependencies": {
652 "@babel/helper-plugin-utils": "^7.16.7",
653 "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
@@ -633,6 +663,7 @@
663 "version": "7.16.7",
664 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz",
665 "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==",
666 + "dev": true,
667 "dependencies": {
668 "@babel/helper-plugin-utils": "^7.16.7",
669 "@babel/plugin-syntax-json-strings": "^7.8.3"
@@ -648,6 +679,7 @@
679 "version": "7.16.7",
680 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz",
681 "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==",
682 + "dev": true,
683 "dependencies": {
684 "@babel/helper-plugin-utils": "^7.16.7",
685 "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
@@ -663,6 +695,7 @@
695 "version": "7.16.7",
696 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz",
697 "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==",
698 + "dev": true,
699 "dependencies": {
700 "@babel/helper-plugin-utils": "^7.16.7",
701 "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
@@ -678,6 +711,7 @@
711 "version": "7.16.7",
712 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz",
713 "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==",
714 + "dev": true,
715 "dependencies": {
716 "@babel/helper-plugin-utils": "^7.16.7",
717 "@babel/plugin-syntax-numeric-separator": "^7.10.4"
@@ -693,6 +727,7 @@
727 "version": "7.16.7",
728 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.7.tgz",
729 "integrity": "sha512-3O0Y4+dw94HA86qSg9IHfyPktgR7q3gpNVAeiKQd+8jBKFaU5NQS1Yatgo4wY+UFNuLjvxcSmzcsHqrhgTyBUA==",
730 + "dev": true,
731 "dependencies": {
732 "@babel/compat-data": "^7.16.4",
733 "@babel/helper-compilation-targets": "^7.16.7",
@@ -711,6 +746,7 @@
746 "version": "7.16.7",
747 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz",
748 "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==",
749 + "dev": true,
750 "dependencies": {
751 "@babel/helper-plugin-utils": "^7.16.7",
752 "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
@@ -726,6 +762,7 @@
762 "version": "7.16.7",
763 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz",
764 "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==",
765 + "dev": true,
766 "dependencies": {
767 "@babel/helper-plugin-utils": "^7.16.7",
768 "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
@@ -742,6 +779,7 @@
779 "version": "7.16.11",
780 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz",
781 "integrity": "sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==",
782 + "dev": true,
783 "dependencies": {
784 "@babel/helper-create-class-features-plugin": "^7.16.10",
785 "@babel/helper-plugin-utils": "^7.16.7"
@@ -757,6 +795,7 @@
795 "version": "7.16.7",
796 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz",
797 "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==",
798 + "dev": true,
799 "dependencies": {
800 "@babel/helper-annotate-as-pure": "^7.16.7",
801 "@babel/helper-create-class-features-plugin": "^7.16.7",
@@ -774,6 +813,7 @@
813 "version": "7.16.7",
814 "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz",
815 "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==",
816 + "dev": true,
817 "dependencies": {
818 "@babel/helper-create-regexp-features-plugin": "^7.16.7",
819 "@babel/helper-plugin-utils": "^7.16.7"
@@ -789,6 +829,7 @@
829 "version": "7.8.4",
830 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
831 "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
832 + "dev": true,
833 "dependencies": {
834 "@babel/helper-plugin-utils": "^7.8.0"
835 },
@@ -800,6 +841,7 @@
841 "version": "7.8.3",
842 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
843 "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
844 + "dev": true,
845 "dependencies": {
846 "@babel/helper-plugin-utils": "^7.8.0"
847 },
@@ -811,6 +853,7 @@
853 "version": "7.12.13",
854 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
855 "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
856 + "dev": true,
857 "dependencies": {
858 "@babel/helper-plugin-utils": "^7.12.13"
859 },
@@ -822,6 +865,7 @@
865 "version": "7.14.5",
866 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
867 "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
868 + "dev": true,
869 "dependencies": {
870 "@babel/helper-plugin-utils": "^7.14.5"
871 },
@@ -836,6 +880,7 @@
880 "version": "7.16.7",
881 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.16.7.tgz",
882 "integrity": "sha512-vQ+PxL+srA7g6Rx6I1e15m55gftknl2X8GCUW1JTlkTaXZLJOS0UcaY0eK9jYT7IYf4awn6qwyghVHLDz1WyMw==",
883 + "dev": true,
884 "dependencies": {
885 "@babel/helper-plugin-utils": "^7.16.7"
886 },
@@ -850,6 +895,7 @@
895 "version": "7.8.3",
896 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
897 "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
898 + "dev": true,
899 "dependencies": {
900 "@babel/helper-plugin-utils": "^7.8.0"
901 },
@@ -861,6 +907,7 @@
907 "version": "7.8.3",
908 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
909 "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
910 + "dev": true,
911 "dependencies": {
912 "@babel/helper-plugin-utils": "^7.8.3"
913 },
@@ -872,6 +919,7 @@
919 "version": "7.16.7",
920 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.16.7.tgz",
921 "integrity": "sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ==",
922 + "dev": true,
923 "dependencies": {
924 "@babel/helper-plugin-utils": "^7.16.7"
925 },
@@ -886,6 +934,7 @@
934 "version": "7.10.4",
935 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
936 "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
937 + "dev": true,
938 "dependencies": {
939 "@babel/helper-plugin-utils": "^7.10.4"
940 },
@@ -897,6 +946,7 @@
946 "version": "7.8.3",
947 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
948 "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
949 + "dev": true,
950 "dependencies": {
951 "@babel/helper-plugin-utils": "^7.8.0"
952 },
@@ -922,6 +972,7 @@
972 "version": "7.10.4",
973 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
974 "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
975 + "dev": true,
976 "dependencies": {
977 "@babel/helper-plugin-utils": "^7.10.4"
978 },
@@ -933,6 +984,7 @@
984 "version": "7.8.3",
985 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
986 "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
987 + "dev": true,
988 "dependencies": {
989 "@babel/helper-plugin-utils": "^7.8.0"
990 },
@@ -944,6 +996,7 @@
996 "version": "7.10.4",
997 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
998 "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
999 + "dev": true,
1000 "dependencies": {
1001 "@babel/helper-plugin-utils": "^7.10.4"
1002 },
@@ -955,6 +1008,7 @@
1008 "version": "7.8.3",
1009 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
1010 "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
1011 + "dev": true,
1012 "dependencies": {
1013 "@babel/helper-plugin-utils": "^7.8.0"
1014 },
@@ -966,6 +1020,7 @@
1020 "version": "7.8.3",
1021 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
1022 "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
1023 + "dev": true,
1024 "dependencies": {
1025 "@babel/helper-plugin-utils": "^7.8.0"
1026 },
@@ -977,6 +1032,7 @@
1032 "version": "7.8.3",
1033 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
1034 "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
1035 + "dev": true,
1036 "dependencies": {
1037 "@babel/helper-plugin-utils": "^7.8.0"
1038 },
@@ -988,6 +1044,7 @@
1044 "version": "7.14.5",
1045 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
1046 "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
1047 + "dev": true,
1048 "dependencies": {
1049 "@babel/helper-plugin-utils": "^7.14.5"
1050 },
@@ -1002,6 +1059,7 @@
1059 "version": "7.14.5",
1060 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
1061 "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
1062 + "dev": true,
1063 "dependencies": {
1064 "@babel/helper-plugin-utils": "^7.14.5"
1065 },
@@ -1016,6 +1074,7 @@
1074 "version": "7.16.7",
1075 "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz",
1076 "integrity": "sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==",
1077 + "dev": true,
1078 "dependencies": {
1079 "@babel/helper-plugin-utils": "^7.16.7"
1080 },
@@ -1030,6 +1089,7 @@
1089 "version": "7.16.7",
1090 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz",
1091 "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==",
1092 + "dev": true,
1093 "dependencies": {
1094 "@babel/helper-plugin-utils": "^7.16.7"
1095 },
@@ -1044,6 +1104,7 @@
1104 "version": "7.16.8",
1105 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz",
1106 "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==",
1107 + "dev": true,
1108 "dependencies": {
1109 "@babel/helper-module-imports": "^7.16.7",
1110 "@babel/helper-plugin-utils": "^7.16.7",
@@ -1060,6 +1121,7 @@
1121 "version": "7.16.7",
1122 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz",
1123 "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==",
1124 + "dev": true,
1125 "dependencies": {
1126 "@babel/helper-plugin-utils": "^7.16.7"
1127 },
@@ -1074,6 +1136,7 @@
1136 "version": "7.16.7",
1137 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz",
1138 "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==",
1139 + "dev": true,
1140 "dependencies": {
1141 "@babel/helper-plugin-utils": "^7.16.7"
1142 },
@@ -1088,6 +1151,7 @@
1151 "version": "7.16.7",
1152 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz",
1153 "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==",
1154 + "dev": true,
1155 "dependencies": {
1156 "@babel/helper-annotate-as-pure": "^7.16.7",
1157 "@babel/helper-environment-visitor": "^7.16.7",
@@ -1109,6 +1173,7 @@
1173 "version": "7.16.7",
1174 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz",
1175 "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==",
1176 + "dev": true,
1177 "dependencies": {
1178 "@babel/helper-plugin-utils": "^7.16.7"
1179 },
@@ -1123,6 +1188,7 @@
1188 "version": "7.16.7",
1189 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.7.tgz",
1190 "integrity": "sha512-VqAwhTHBnu5xBVDCvrvqJbtLUa++qZaWC0Fgr2mqokBlulZARGyIvZDoqbPlPaKImQ9dKAcCzbv+ul//uqu70A==",
1191 + "dev": true,
1192 "dependencies": {
1193 "@babel/helper-plugin-utils": "^7.16.7"
1194 },
@@ -1137,6 +1203,7 @@
1203 "version": "7.16.7",
1204 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz",
1205 "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==",
1206 + "dev": true,
1207 "dependencies": {
1208 "@babel/helper-create-regexp-features-plugin": "^7.16.7",
1209 "@babel/helper-plugin-utils": "^7.16.7"
@@ -1152,6 +1219,7 @@
1219 "version": "7.16.7",
1220 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz",
1221 "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==",
1222 + "dev": true,
1223 "dependencies": {
1224 "@babel/helper-plugin-utils": "^7.16.7"
1225 },
@@ -1166,6 +1234,7 @@
1234 "version": "7.16.7",
1235 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz",
1236 "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==",
1237 + "dev": true,
1238 "dependencies": {
1239 "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7",
1240 "@babel/helper-plugin-utils": "^7.16.7"
@@ -1181,6 +1250,7 @@
1250 "version": "7.16.7",
1251 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.16.7.tgz",
1252 "integrity": "sha512-mzmCq3cNsDpZZu9FADYYyfZJIOrSONmHcop2XEKPdBNMa4PDC4eEvcOvzZaCNcjKu72v0XQlA5y1g58aLRXdYg==",
1253 + "dev": true,
1254 "dependencies": {
1255 "@babel/helper-plugin-utils": "^7.16.7",
1256 "@babel/plugin-syntax-flow": "^7.16.7"
@@ -1196,6 +1266,7 @@
1266 "version": "7.16.7",
1267 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz",
1268 "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==",
1269 + "dev": true,
1270 "dependencies": {
1271 "@babel/helper-plugin-utils": "^7.16.7"
1272 },
@@ -1210,6 +1281,7 @@
1281 "version": "7.16.7",
1282 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz",
1283 "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==",
1284 + "dev": true,
1285 "dependencies": {
1286 "@babel/helper-compilation-targets": "^7.16.7",
1287 "@babel/helper-function-name": "^7.16.7",
@@ -1226,6 +1298,7 @@
1298 "version": "7.16.7",
1299 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz",
1300 "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==",
1301 + "dev": true,
1302 "dependencies": {
1303 "@babel/helper-plugin-utils": "^7.16.7"
1304 },
@@ -1240,6 +1313,7 @@
1313 "version": "7.16.7",
1314 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz",
1315 "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==",
1316 + "dev": true,
1317 "dependencies": {
1318 "@babel/helper-plugin-utils": "^7.16.7"
1319 },
@@ -1254,6 +1328,7 @@
1328 "version": "7.16.7",
1329 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz",
1330 "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==",
1331 + "dev": true,
1332 "dependencies": {
1333 "@babel/helper-module-transforms": "^7.16.7",
1334 "@babel/helper-plugin-utils": "^7.16.7",
@@ -1270,6 +1345,7 @@
1345 "version": "7.16.8",
1346 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.8.tgz",
1347 "integrity": "sha512-oflKPvsLT2+uKQopesJt3ApiaIS2HW+hzHFcwRNtyDGieAeC/dIHZX8buJQ2J2X1rxGPy4eRcUijm3qcSPjYcA==",
1348 + "dev": true,
1349 "dependencies": {
1350 "@babel/helper-module-transforms": "^7.16.7",
1351 "@babel/helper-plugin-utils": "^7.16.7",
@@ -1287,6 +1363,7 @@
1363 "version": "7.16.7",
1364 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz",
1365 "integrity": "sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==",
1366 + "dev": true,
1367 "dependencies": {
1368 "@babel/helper-hoist-variables": "^7.16.7",
1369 "@babel/helper-module-transforms": "^7.16.7",
@@ -1305,6 +1382,7 @@
1382 "version": "7.16.7",
1383 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz",
1384 "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==",
1385 + "dev": true,
1386 "dependencies": {
1387 "@babel/helper-module-transforms": "^7.16.7",
1388 "@babel/helper-plugin-utils": "^7.16.7"
@@ -1320,6 +1398,7 @@
1398 "version": "7.16.8",
1399 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz",
1400 "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==",
1401 + "dev": true,
1402 "dependencies": {
1403 "@babel/helper-create-regexp-features-plugin": "^7.16.7"
1404 },
@@ -1334,6 +1413,7 @@
1413 "version": "7.16.7",
1414 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz",
1415 "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==",
1416 + "dev": true,
1417 "dependencies": {
1418 "@babel/helper-plugin-utils": "^7.16.7"
1419 },
@@ -1348,6 +1428,7 @@
1428 "version": "7.16.7",
1429 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz",
1430 "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==",
1431 + "dev": true,
1432 "dependencies": {
1433 "@babel/helper-plugin-utils": "^7.16.7",
1434 "@babel/helper-replace-supers": "^7.16.7"
@@ -1363,6 +1444,7 @@
1444 "version": "7.16.7",
1445 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz",
1446 "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==",
1447 + "dev": true,
1448 "dependencies": {
1449 "@babel/helper-plugin-utils": "^7.16.7"
1450 },
@@ -1377,6 +1459,7 @@
1459 "version": "7.16.7",
1460 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz",
1461 "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==",
1462 + "dev": true,
1463 "dependencies": {
1464 "@babel/helper-plugin-utils": "^7.16.7"
1465 },
@@ -1391,6 +1474,7 @@
1474 "version": "7.16.7",
1475 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.16.7.tgz",
1476 "integrity": "sha512-lF+cfsyTgwWkcw715J88JhMYJ5GpysYNLhLP1PkvkhTRN7B3e74R/1KsDxFxhRpSn0UUD3IWM4GvdBR2PEbbQQ==",
1477 + "dev": true,
1478 "dependencies": {
1479 "@babel/helper-plugin-utils": "^7.16.7"
1480 },
@@ -1405,6 +1489,7 @@
1489 "version": "7.16.7",
1490 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz",
1491 "integrity": "sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==",
1492 + "dev": true,
1493 "dependencies": {
1494 "@babel/helper-plugin-utils": "^7.16.7"
1495 },
@@ -1419,6 +1504,7 @@
1504 "version": "7.16.7",
1505 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.16.7.tgz",
1506 "integrity": "sha512-8D16ye66fxiE8m890w0BpPpngG9o9OVBBy0gH2E+2AR7qMR2ZpTYJEqLxAsoroenMId0p/wMW+Blc0meDgu0Ag==",
1507 + "dev": true,
1508 "dependencies": {
1509 "@babel/helper-annotate-as-pure": "^7.16.7",
1510 "@babel/helper-module-imports": "^7.16.7",
@@ -1437,6 +1523,7 @@
1523 "version": "7.16.7",
1524 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz",
1525 "integrity": "sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==",
1526 + "dev": true,
1527 "dependencies": {
1528 "@babel/plugin-transform-react-jsx": "^7.16.7"
1529 },
@@ -1451,6 +1538,7 @@
1538 "version": "7.16.7",
1539 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.7.tgz",
1540 "integrity": "sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==",
1541 + "dev": true,
1542 "dependencies": {
1543 "@babel/helper-annotate-as-pure": "^7.16.7",
1544 "@babel/helper-plugin-utils": "^7.16.7"
@@ -1466,6 +1554,7 @@
1554 "version": "7.16.7",
1555 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz",
1556 "integrity": "sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q==",
1557 + "dev": true,
1558 "dependencies": {
1559 "regenerator-transform": "^0.14.2"
1560 },
@@ -1480,6 +1569,7 @@
1569 "version": "7.16.7",
1570 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz",
1571 "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==",
1572 + "dev": true,
1573 "dependencies": {
1574 "@babel/helper-plugin-utils": "^7.16.7"
1575 },
@@ -1494,6 +1584,7 @@
1584 "version": "7.16.10",
1585 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.10.tgz",
1586 "integrity": "sha512-9nwTiqETv2G7xI4RvXHNfpGdr8pAA+Q/YtN3yLK7OoK7n9OibVm/xymJ838a9A6E/IciOLPj82lZk0fW6O4O7w==",
1587 + "dev": true,
1588 "dependencies": {
1589 "@babel/helper-module-imports": "^7.16.7",
1590 "@babel/helper-plugin-utils": "^7.16.7",
@@ -1513,6 +1604,7 @@
1604 "version": "6.3.0",
1605 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1606 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1607 + "dev": true,
1608 "bin": {
1609 "semver": "bin/semver.js"
1610 }
@@ -1521,6 +1613,7 @@
1613 "version": "7.16.7",
1614 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz",
1615 "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==",
1616 + "dev": true,
1617 "dependencies": {
1618 "@babel/helper-plugin-utils": "^7.16.7"
1619 },
@@ -1535,6 +1628,7 @@
1628 "version": "7.16.7",
1629 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz",
1630 "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==",
1631 + "dev": true,
1632 "dependencies": {
1633 "@babel/helper-plugin-utils": "^7.16.7",
1634 "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0"
@@ -1550,6 +1644,7 @@
1644 "version": "7.16.7",
1645 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz",
1646 "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==",
1647 + "dev": true,
1648 "dependencies": {
1649 "@babel/helper-plugin-utils": "^7.16.7"
1650 },
@@ -1564,6 +1659,7 @@
1659 "version": "7.16.7",
1660 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz",
1661 "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==",
1662 + "dev": true,
1663 "dependencies": {
1664 "@babel/helper-plugin-utils": "^7.16.7"
1665 },
@@ -1578,6 +1674,7 @@
1674 "version": "7.16.7",
1675 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz",
1676 "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==",
1677 + "dev": true,
1678 "dependencies": {
1679 "@babel/helper-plugin-utils": "^7.16.7"
1680 },
@@ -1592,6 +1689,7 @@
1689 "version": "7.16.8",
1690 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.8.tgz",
1691 "integrity": "sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==",
1692 + "dev": true,
1693 "dependencies": {
1694 "@babel/helper-create-class-features-plugin": "^7.16.7",
1695 "@babel/helper-plugin-utils": "^7.16.7",
@@ -1608,6 +1706,7 @@
1706 "version": "7.16.7",
1707 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz",
1708 "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==",
1709 + "dev": true,
1710 "dependencies": {
1711 "@babel/helper-plugin-utils": "^7.16.7"
1712 },
@@ -1622,6 +1721,7 @@
1721 "version": "7.16.7",
1722 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz",
1723 "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==",
1724 + "dev": true,
1725 "dependencies": {
1726 "@babel/helper-create-regexp-features-plugin": "^7.16.7",
1727 "@babel/helper-plugin-utils": "^7.16.7"
@@ -1637,6 +1737,7 @@
1737 "version": "7.16.11",
1738 "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz",
1739 "integrity": "sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==",
1740 + "dev": true,
1741 "dependencies": {
1742 "@babel/compat-data": "^7.16.8",
1743 "@babel/helper-compilation-targets": "^7.16.7",
@@ -1724,6 +1825,7 @@
1825 "version": "6.3.0",
1826 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1827 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1828 + "dev": true,
1829 "bin": {
1830 "semver": "bin/semver.js"
1831 }
@@ -1732,6 +1834,7 @@
1834 "version": "0.1.5",
1835 "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz",
1836 "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==",
1837 + "dev": true,
1838 "dependencies": {
1839 "@babel/helper-plugin-utils": "^7.0.0",
1840 "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
@@ -1747,6 +1850,7 @@
1850 "version": "7.16.7",
1851 "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.16.7.tgz",
1852 "integrity": "sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==",
1853 + "dev": true,
1854 "dependencies": {
1855 "@babel/helper-plugin-utils": "^7.16.7",
1856 "@babel/helper-validator-option": "^7.16.7",
@@ -1766,6 +1870,7 @@
1870 "version": "7.16.7",
1871 "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.16.7.tgz",
1872 "integrity": "sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==",
1873 + "dev": true,
1874 "dependencies": {
1875 "@babel/helper-plugin-utils": "^7.16.7",
1876 "@babel/helper-validator-option": "^7.16.7",
@@ -1793,6 +1898,7 @@
1898 "version": "7.16.8",
1899 "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.16.8.tgz",
1900 "integrity": "sha512-3fKhuICS1lMz0plI5ktOE/yEtBRMVxplzRkdn6mJQ197XiY0JnrzYV0+Mxozq3JZ8SBV9Ecurmw1XsGbwOf+Sg==",
1901 + "dev": true,
1902 "dependencies": {
1903 "core-js-pure": "^3.20.2",
1904 "regenerator-runtime": "^0.13.4"
@@ -1849,12 +1955,14 @@
1955 "node_modules/@bcoe/v8-coverage": {
1956 "version": "0.2.3",
1957 "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
1852 - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="
1958 + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
1959 + "dev": true
1960 },
1961 "node_modules/@csstools/normalize.css": {
1962 "version": "12.0.0",
1963 "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.0.0.tgz",
1857 - "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg=="
1964 + "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg==",
1965 + "dev": true
1966 },
1967 "node_modules/@date-io/core": {
1968 "version": "2.13.1",
@@ -2100,6 +2208,7 @@
2208 "version": "1.0.5",
2209 "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz",
2210 "integrity": "sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==",
2211 + "dev": true,
2212 "dependencies": {
2213 "ajv": "^6.12.4",
2214 "debug": "^4.3.2",
@@ -2118,12 +2227,14 @@
2227 "node_modules/@eslint/eslintrc/node_modules/argparse": {
2228 "version": "2.0.1",
2229 "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
2121 - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
2230 + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
2231 + "dev": true
2232 },
2233 "node_modules/@eslint/eslintrc/node_modules/globals": {
2234 "version": "13.12.0",
2235 "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz",
2236 "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==",
2237 + "dev": true,
2238 "dependencies": {
2239 "type-fest": "^0.20.2"
2240 },
@@ -2138,6 +2249,7 @@
2249 "version": "4.0.6",
2250 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
2251 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
2252 + "dev": true,
2253 "engines": {
2254 "node": ">= 4"
2255 }
@@ -2146,6 +2258,7 @@
2258 "version": "4.1.0",
2259 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
2260 "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
2261 + "dev": true,
2262 "dependencies": {
2263 "argparse": "^2.0.1"
2264 },
@@ -2157,6 +2270,7 @@
2270 "version": "0.20.2",
2271 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
2272 "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
2273 + "dev": true,
2274 "engines": {
2275 "node": ">=10"
2276 },
@@ -2168,6 +2282,7 @@
2282 "version": "0.9.2",
2283 "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz",
2284 "integrity": "sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==",
2285 + "dev": true,
2286 "dependencies": {
2287 "@humanwhocodes/object-schema": "^1.2.1",
2288 "debug": "^4.1.1",
@@ -2180,12 +2295,14 @@
2295 "node_modules/@humanwhocodes/object-schema": {
2296 "version": "1.2.1",
2297 "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
2183 - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA=="
2298 + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
2299 + "dev": true
2300 },
2301 "node_modules/@istanbuljs/load-nyc-config": {
2302 "version": "1.1.0",
2303 "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
2304 "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
2305 + "dev": true,
2306 "dependencies": {
2307 "camelcase": "^5.3.1",
2308 "find-up": "^4.1.0",
@@ -2201,6 +2318,7 @@
2318 "version": "5.3.1",
2319 "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
2320 "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
2321 + "dev": true,
2322 "engines": {
2323 "node": ">=6"
2324 }
@@ -2209,6 +2327,7 @@
2327 "version": "4.1.0",
2328 "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
2329 "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
2330 + "dev": true,
2331 "dependencies": {
2332 "locate-path": "^5.0.0",
2333 "path-exists": "^4.0.0"
@@ -2221,6 +2340,7 @@
2340 "version": "5.0.0",
2341 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
2342 "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
2343 + "dev": true,
2344 "dependencies": {
2345 "p-locate": "^4.1.0"
2346 },
@@ -2232,6 +2352,7 @@
2352 "version": "2.3.0",
2353 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
2354 "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
2355 + "dev": true,
2356 "dependencies": {
2357 "p-try": "^2.0.0"
2358 },
@@ -2246,6 +2367,7 @@
2367 "version": "4.1.0",
2368 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
2369 "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
2370 + "dev": true,
2371 "dependencies": {
2372 "p-limit": "^2.2.0"
2373 },
@@ -2257,6 +2379,7 @@
2379 "version": "0.1.3",
2380 "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
2381 "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
2382 + "dev": true,
2383 "engines": {
2384 "node": ">=8"
2385 }
@@ -2265,6 +2388,7 @@
2388 "version": "27.4.6",
2389 "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.4.6.tgz",
2390 "integrity": "sha512-jauXyacQD33n47A44KrlOVeiXHEXDqapSdfb9kTekOchH/Pd18kBIO1+xxJQRLuG+LUuljFCwTG92ra4NW7SpA==",
2391 + "dev": true,
2392 "dependencies": {
2393 "@jest/types": "^27.4.2",
2394 "@types/node": "*",
@@ -2281,6 +2405,7 @@
2405 "version": "4.3.0",
2406 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2407 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2408 + "dev": true,
2409 "dependencies": {
2410 "color-convert": "^2.0.1"
2411 },
@@ -2295,6 +2420,7 @@
2420 "version": "4.1.2",
2421 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2422 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2423 + "dev": true,
2424 "dependencies": {
2425 "ansi-styles": "^4.1.0",
2426 "supports-color": "^7.1.0"
@@ -2310,6 +2436,7 @@
2436 "version": "2.0.1",
2437 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2438 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2439 + "dev": true,
2440 "dependencies": {
2441 "color-name": "~1.1.4"
2442 },
@@ -2320,12 +2447,14 @@
2447 "node_modules/@jest/console/node_modules/color-name": {
2448 "version": "1.1.4",
2449 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2323 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2450 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2451 + "dev": true
2452 },
2453 "node_modules/@jest/console/node_modules/has-flag": {
2454 "version": "4.0.0",
2455 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2456 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2457 + "dev": true,
2458 "engines": {
2459 "node": ">=8"
2460 }
@@ -2334,6 +2463,7 @@
2463 "version": "7.2.0",
2464 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2465 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2466 + "dev": true,
2467 "dependencies": {
2468 "has-flag": "^4.0.0"
2469 },
@@ -2345,6 +2475,7 @@
2475 "version": "27.4.7",
2476 "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.4.7.tgz",
2477 "integrity": "sha512-n181PurSJkVMS+kClIFSX/LLvw9ExSb+4IMtD6YnfxZVerw9ANYtW0bPrm0MJu2pfe9SY9FJ9FtQ+MdZkrZwjg==",
2478 + "dev": true,
2479 "dependencies": {
2480 "@jest/console": "^27.4.6",
2481 "@jest/reporters": "^27.4.6",
@@ -2391,6 +2522,7 @@
2522 "version": "4.3.0",
2523 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2524 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2525 + "dev": true,
2526 "dependencies": {
2527 "color-convert": "^2.0.1"
2528 },
@@ -2405,6 +2537,7 @@
2537 "version": "4.1.2",
2538 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2539 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2540 + "dev": true,
2541 "dependencies": {
2542 "ansi-styles": "^4.1.0",
2543 "supports-color": "^7.1.0"
@@ -2420,6 +2553,7 @@
2553 "version": "2.0.1",
2554 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2555 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2556 + "dev": true,
2557 "dependencies": {
2558 "color-name": "~1.1.4"
2559 },
@@ -2430,12 +2564,14 @@
2564 "node_modules/@jest/core/node_modules/color-name": {
2565 "version": "1.1.4",
2566 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2433 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2567 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2568 + "dev": true
2569 },
2570 "node_modules/@jest/core/node_modules/has-flag": {
2571 "version": "4.0.0",
2572 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2573 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2574 + "dev": true,
2575 "engines": {
2576 "node": ">=8"
2577 }
@@ -2444,6 +2580,7 @@
2580 "version": "7.2.0",
2581 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2582 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2583 + "dev": true,
2584 "dependencies": {
2585 "has-flag": "^4.0.0"
2586 },
@@ -2455,6 +2592,7 @@
2592 "version": "27.4.6",
2593 "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.4.6.tgz",
2594 "integrity": "sha512-E6t+RXPfATEEGVidr84WngLNWZ8ffCPky8RqqRK6u1Bn0LK92INe0MDttyPl/JOzaq92BmDzOeuqk09TvM22Sg==",
2595 + "dev": true,
2596 "dependencies": {
2597 "@jest/fake-timers": "^27.4.6",
2598 "@jest/types": "^27.4.2",
@@ -2469,6 +2607,7 @@
2607 "version": "27.4.6",
2608 "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.4.6.tgz",
2609 "integrity": "sha512-mfaethuYF8scV8ntPpiVGIHQgS0XIALbpY2jt2l7wb/bvq4Q5pDLk4EP4D7SAvYT1QrPOPVZAtbdGAOOyIgs7A==",
2610 + "dev": true,
2611 "dependencies": {
2612 "@jest/types": "^27.4.2",
2613 "@sinonjs/fake-timers": "^8.0.1",
@@ -2485,6 +2624,7 @@
2624 "version": "27.4.6",
2625 "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.4.6.tgz",
2626 "integrity": "sha512-kAiwMGZ7UxrgPzu8Yv9uvWmXXxsy0GciNejlHvfPIfWkSxChzv6bgTS3YqBkGuHcis+ouMFI2696n2t+XYIeFw==",
2627 + "dev": true,
2628 "dependencies": {
2629 "@jest/environment": "^27.4.6",
2630 "@jest/types": "^27.4.2",
@@ -2498,6 +2638,7 @@
2638 "version": "27.4.6",
2639 "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.4.6.tgz",
2640 "integrity": "sha512-+Zo9gV81R14+PSq4wzee4GC2mhAN9i9a7qgJWL90Gpx7fHYkWpTBvwWNZUXvJByYR9tAVBdc8VxDWqfJyIUrIQ==",
2641 + "dev": true,
2642 "dependencies": {
2643 "@bcoe/v8-coverage": "^0.2.3",
2644 "@jest/console": "^27.4.6",
@@ -2541,6 +2682,7 @@
2682 "version": "4.3.0",
2683 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2684 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2685 + "dev": true,
2686 "dependencies": {
2687 "color-convert": "^2.0.1"
2688 },
@@ -2555,6 +2697,7 @@
2697 "version": "4.1.2",
2698 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2699 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2700 + "dev": true,
2701 "dependencies": {
2702 "ansi-styles": "^4.1.0",
2703 "supports-color": "^7.1.0"
@@ -2570,6 +2713,7 @@
2713 "version": "2.0.1",
2714 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2715 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2716 + "dev": true,
2717 "dependencies": {
2718 "color-name": "~1.1.4"
2719 },
@@ -2580,12 +2724,14 @@
2724 "node_modules/@jest/reporters/node_modules/color-name": {
2725 "version": "1.1.4",
2726 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2583 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2727 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2728 + "dev": true
2729 },
2730 "node_modules/@jest/reporters/node_modules/has-flag": {
2731 "version": "4.0.0",
2732 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2733 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2734 + "dev": true,
2735 "engines": {
2736 "node": ">=8"
2737 }
@@ -2594,6 +2740,7 @@
2740 "version": "0.6.1",
2741 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
2742 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
2743 + "dev": true,
2744 "engines": {
2745 "node": ">=0.10.0"
2746 }
@@ -2602,6 +2749,7 @@
2749 "version": "7.2.0",
2750 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2751 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2752 + "dev": true,
2753 "dependencies": {
2754 "has-flag": "^4.0.0"
2755 },
@@ -2613,6 +2761,7 @@
2761 "version": "27.4.0",
2762 "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.4.0.tgz",
2763 "integrity": "sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ==",
2764 + "dev": true,
2765 "dependencies": {
2766 "callsites": "^3.0.0",
2767 "graceful-fs": "^4.2.4",
@@ -2626,6 +2775,7 @@
2775 "version": "0.6.1",
2776 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
2777 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
2778 + "dev": true,
2779 "engines": {
2780 "node": ">=0.10.0"
2781 }
@@ -2634,6 +2784,7 @@
2784 "version": "27.4.6",
2785 "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.4.6.tgz",
2786 "integrity": "sha512-fi9IGj3fkOrlMmhQqa/t9xum8jaJOOAi/lZlm6JXSc55rJMXKHxNDN1oCP39B0/DhNOa2OMupF9BcKZnNtXMOQ==",
2787 + "dev": true,
2788 "dependencies": {
2789 "@jest/console": "^27.4.6",
2790 "@jest/types": "^27.4.2",
@@ -2648,6 +2799,7 @@
2799 "version": "27.4.6",
2800 "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.4.6.tgz",
2801 "integrity": "sha512-3GL+nsf6E1PsyNsJuvPyIz+DwFuCtBdtvPpm/LMXVkBJbdFvQYCDpccYT56qq5BGniXWlE81n2qk1sdXfZebnw==",
2802 + "dev": true,
2803 "dependencies": {
2804 "@jest/test-result": "^27.4.6",
2805 "graceful-fs": "^4.2.4",
@@ -2662,6 +2814,7 @@
2814 "version": "27.4.6",
2815 "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.4.6.tgz",
2816 "integrity": "sha512-9MsufmJC8t5JTpWEQJ0OcOOAXaH5ioaIX6uHVBLBMoCZPfKKQF+EqP8kACAvCZ0Y1h2Zr3uOccg8re+Dr5jxyw==",
2817 + "dev": true,
2818 "dependencies": {
2819 "@babel/core": "^7.1.0",
2820 "@jest/types": "^27.4.2",
@@ -2687,6 +2840,7 @@
2840 "version": "4.3.0",
2841 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2842 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2843 + "dev": true,
2844 "dependencies": {
2845 "color-convert": "^2.0.1"
2846 },
@@ -2701,6 +2855,7 @@
2855 "version": "4.1.2",
2856 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2857 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2858 + "dev": true,
2859 "dependencies": {
2860 "ansi-styles": "^4.1.0",
2861 "supports-color": "^7.1.0"
@@ -2716,6 +2871,7 @@
2871 "version": "2.0.1",
2872 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2873 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2874 + "dev": true,
2875 "dependencies": {
2876 "color-name": "~1.1.4"
2877 },
@@ -2726,12 +2882,14 @@
2882 "node_modules/@jest/transform/node_modules/color-name": {
2883 "version": "1.1.4",
2884 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2729 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2885 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2886 + "dev": true
2887 },
2888 "node_modules/@jest/transform/node_modules/has-flag": {
2889 "version": "4.0.0",
2890 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2891 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2892 + "dev": true,
2893 "engines": {
2894 "node": ">=8"
2895 }
@@ -2740,6 +2898,7 @@
2898 "version": "0.6.1",
2899 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
2900 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
2901 + "dev": true,
2902 "engines": {
2903 "node": ">=0.10.0"
2904 }
@@ -2748,6 +2907,7 @@
2907 "version": "7.2.0",
2908 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2909 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2910 + "dev": true,
2911 "dependencies": {
2912 "has-flag": "^4.0.0"
2913 },
@@ -2759,6 +2919,7 @@
2919 "version": "27.4.2",
2920 "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.4.2.tgz",
2921 "integrity": "sha512-j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg==",
2922 + "dev": true,
2923 "dependencies": {
2924 "@types/istanbul-lib-coverage": "^2.0.0",
2925 "@types/istanbul-reports": "^3.0.0",
@@ -2774,6 +2935,7 @@
2935 "version": "4.3.0",
2936 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2937 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2938 + "dev": true,
2939 "dependencies": {
2940 "color-convert": "^2.0.1"
2941 },
@@ -2788,6 +2950,7 @@
2950 "version": "4.1.2",
2951 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2952 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2953 + "dev": true,
2954 "dependencies": {
2955 "ansi-styles": "^4.1.0",
2956 "supports-color": "^7.1.0"
@@ -2803,6 +2966,7 @@
2966 "version": "2.0.1",
2967 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2968 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2969 + "dev": true,
2970 "dependencies": {
2971 "color-name": "~1.1.4"
2972 },
@@ -2813,12 +2977,14 @@
2977 "node_modules/@jest/types/node_modules/color-name": {
2978 "version": "1.1.4",
2979 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2816 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2980 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2981 + "dev": true
2982 },
2983 "node_modules/@jest/types/node_modules/has-flag": {
2984 "version": "4.0.0",
2985 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2986 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2987 + "dev": true,
2988 "engines": {
2989 "node": ">=8"
2990 }
@@ -2827,6 +2993,7 @@
2993 "version": "7.2.0",
2994 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2995 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2996 + "dev": true,
2997 "dependencies": {
2998 "has-flag": "^4.0.0"
2999 },
@@ -3216,6 +3383,7 @@
3383 "version": "2.1.5",
3384 "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
3385 "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
3386 + "dev": true,
3387 "dependencies": {
3388 "@nodelib/fs.stat": "2.0.5",
3389 "run-parallel": "^1.1.9"
@@ -3228,6 +3396,7 @@
3396 "version": "2.0.5",
3397 "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
3398 "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
3399 + "dev": true,
3400 "engines": {
3401 "node": ">= 8"
3402 }
@@ -3236,6 +3405,7 @@
3405 "version": "1.2.8",
3406 "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
3407 "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
3408 + "dev": true,
3409 "dependencies": {
3410 "@nodelib/fs.scandir": "2.1.5",
3411 "fastq": "^1.6.0"
@@ -3248,6 +3418,7 @@
3418 "version": "0.5.4",
3419 "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.4.tgz",
3420 "integrity": "sha512-zZbZeHQDnoTlt2AF+diQT0wsSXpvWiaIOZwBRdltNFhG1+I3ozyaw7U/nBiUwyJ0D+zwdXp0E3bWOl38Ag2BMw==",
3421 + "dev": true,
3422 "dependencies": {
3423 "ansi-html-community": "^0.0.8",
3424 "common-path-prefix": "^3.0.0",
@@ -3297,6 +3468,7 @@
3468 "version": "0.7.3",
3469 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
3470 "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
3471 + "dev": true,
3472 "engines": {
3473 "node": ">= 8"
3474 }
@@ -3314,6 +3486,7 @@
3486 "version": "5.3.0",
3487 "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.0.tgz",
3488 "integrity": "sha512-9uIC8HZOnVLrLHxayq/PTzw+uS25E14KPUBh5ktF+18Mjo5yK0ToMMx6epY0uEgkjwJw0aBW4x2horYXh8juWw==",
3489 + "dev": true,
3490 "dependencies": {
3491 "@babel/helper-module-imports": "^7.10.4",
3492 "@rollup/pluginutils": "^3.1.0"
@@ -3336,6 +3509,7 @@
3509 "version": "11.2.1",
3510 "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz",
3511 "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==",
3512 + "dev": true,
3513 "dependencies": {
3514 "@rollup/pluginutils": "^3.1.0",
3515 "@types/resolve": "1.17.1",
@@ -3355,6 +3529,7 @@
3529 "version": "2.4.2",
3530 "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz",
3531 "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==",
3532 + "dev": true,
3533 "dependencies": {
3534 "@rollup/pluginutils": "^3.1.0",
3535 "magic-string": "^0.25.7"
@@ -3367,6 +3542,7 @@
3542 "version": "3.1.0",
3543 "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
3544 "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
3545 + "dev": true,
3546 "dependencies": {
3547 "@types/estree": "0.0.39",
3548 "estree-walker": "^1.0.1",
@@ -3382,17 +3558,20 @@
3558 "node_modules/@rollup/pluginutils/node_modules/@types/estree": {
3559 "version": "0.0.39",
3560 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
3385 - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw=="
3561 + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
3562 + "dev": true
3563 },
3564 "node_modules/@rushstack/eslint-patch": {
3565 "version": "1.1.0",
3566 "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.1.0.tgz",
3390 - "integrity": "sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A=="
3567 + "integrity": "sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A==",
3568 + "dev": true
3569 },
3570 "node_modules/@sinonjs/commons": {
3571 "version": "1.8.3",
3572 "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz",
3573 "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==",
3574 + "dev": true,
3575 "dependencies": {
3576 "type-detect": "4.0.8"
3577 }
@@ -3401,6 +3580,7 @@
3580 "version": "8.1.0",
3581 "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz",
3582 "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==",
3583 + "dev": true,
3584 "dependencies": {
3585 "@sinonjs/commons": "^1.7.0"
3586 }
@@ -3409,6 +3589,7 @@
3589 "version": "2.2.3",
3590 "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz",
3591 "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==",
3592 + "dev": true,
3593 "dependencies": {
3594 "ejs": "^3.1.6",
3595 "json5": "^2.2.0",
@@ -3420,6 +3601,7 @@
3601 "version": "5.4.0",
3602 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz",
3603 "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==",
3604 + "dev": true,
3605 "engines": {
3606 "node": ">=10"
3607 },
@@ -3432,6 +3614,7 @@
3614 "version": "5.4.0",
3615 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz",
3616 "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==",
3617 + "dev": true,
3618 "engines": {
3619 "node": ">=10"
3620 },
@@ -3444,6 +3627,7 @@
3627 "version": "5.0.1",
3628 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz",
3629 "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==",
3630 + "dev": true,
3631 "engines": {
3632 "node": ">=10"
3633 },
@@ -3456,6 +3640,7 @@
3640 "version": "5.0.1",
3641 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz",
3642 "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==",
3643 + "dev": true,
3644 "engines": {
3645 "node": ">=10"
3646 },
@@ -3468,6 +3653,7 @@
3653 "version": "5.4.0",
3654 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz",
3655 "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==",
3656 + "dev": true,
3657 "engines": {
3658 "node": ">=10"
3659 },
@@ -3480,6 +3666,7 @@
3666 "version": "5.4.0",
3667 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz",
3668 "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==",
3669 + "dev": true,
3670 "engines": {
3671 "node": ">=10"
3672 },
@@ -3492,6 +3679,7 @@
3679 "version": "5.4.0",
3680 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz",
3681 "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==",
3682 + "dev": true,
3683 "engines": {
3684 "node": ">=10"
3685 },
@@ -3504,6 +3692,7 @@
3692 "version": "5.5.0",
3693 "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz",
3694 "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==",
3695 + "dev": true,
3696 "engines": {
3697 "node": ">=10"
3698 },
@@ -3516,6 +3705,7 @@
3705 "version": "5.5.0",
3706 "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz",
3707 "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==",
3708 + "dev": true,
3709 "dependencies": {
3710 "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0",
3711 "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0",
@@ -3538,6 +3728,7 @@
3728 "version": "5.5.0",
3729 "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz",
3730 "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==",
3731 + "dev": true,
3732 "dependencies": {
3733 "@svgr/plugin-jsx": "^5.5.0",
3734 "camelcase": "^6.2.0",
@@ -3555,6 +3746,7 @@
3746 "version": "5.5.0",
3747 "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz",
3748 "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==",
3749 + "dev": true,
3750 "dependencies": {
3751 "@babel/types": "^7.12.6"
3752 },
@@ -3570,6 +3762,7 @@
3762 "version": "5.5.0",
3763 "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz",
3764 "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==",
3765 + "dev": true,
3766 "dependencies": {
3767 "@babel/core": "^7.12.3",
3768 "@svgr/babel-preset": "^5.5.0",
@@ -3588,6 +3781,7 @@
3781 "version": "5.5.0",
3782 "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz",
3783 "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==",
3784 + "dev": true,
3785 "dependencies": {
3786 "cosmiconfig": "^7.0.0",
3787 "deepmerge": "^4.2.2",
@@ -3605,6 +3799,7 @@
3799 "version": "5.5.0",
3800 "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz",
3801 "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==",
3802 + "dev": true,
3803 "dependencies": {
3804 "@babel/core": "^7.12.3",
3805 "@babel/plugin-transform-react-constant-elements": "^7.12.1",
@@ -3838,6 +4033,7 @@
4033 "version": "1.1.2",
4034 "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
4035 "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
4036 + "dev": true,
4037 "engines": {
4038 "node": ">= 6"
4039 }
@@ -3846,6 +4042,7 @@
4042 "version": "0.2.0",
4043 "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
4044 "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
4045 + "dev": true,
4046 "engines": {
4047 "node": ">=10.13.0"
4048 }
@@ -3859,6 +4056,7 @@
4056 "version": "7.1.18",
4057 "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz",
4058 "integrity": "sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==",
4059 + "dev": true,
4060 "dependencies": {
4061 "@babel/parser": "^7.1.0",
4062 "@babel/types": "^7.0.0",
@@ -3871,6 +4069,7 @@
4069 "version": "7.6.4",
4070 "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz",
4071 "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==",
4072 + "dev": true,
4073 "dependencies": {
4074 "@babel/types": "^7.0.0"
4075 }
@@ -3879,6 +4078,7 @@
4078 "version": "7.4.1",
4079 "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz",
4080 "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==",
4081 + "dev": true,
4082 "dependencies": {
4083 "@babel/parser": "^7.1.0",
4084 "@babel/types": "^7.0.0"
@@ -3888,6 +4088,7 @@
4088 "version": "7.14.2",
4089 "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz",
4090 "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==",
4091 + "dev": true,
4092 "dependencies": {
4093 "@babel/types": "^7.3.0"
4094 }
@@ -3896,6 +4097,7 @@
4097 "version": "1.19.2",
4098 "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz",
4099 "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==",
4100 + "dev": true,
4101 "dependencies": {
4102 "@types/connect": "*",
4103 "@types/node": "*"
@@ -3905,6 +4107,7 @@
4107 "version": "3.5.10",
4108 "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz",
4109 "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==",
4110 + "dev": true,
4111 "dependencies": {
4112 "@types/node": "*"
4113 }
@@ -3913,6 +4116,7 @@
4116 "version": "3.4.35",
4117 "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz",
4118 "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==",
4119 + "dev": true,
4120 "dependencies": {
4121 "@types/node": "*"
4122 }
@@ -3921,6 +4125,7 @@
4125 "version": "1.3.5",
4126 "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz",
4127 "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==",
4128 + "dev": true,
4129 "dependencies": {
4130 "@types/express-serve-static-core": "*",
4131 "@types/node": "*"
@@ -3930,6 +4135,7 @@
4135 "version": "7.29.0",
4136 "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz",
4137 "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==",
4138 + "dev": true,
4139 "dependencies": {
4140 "@types/estree": "*",
4141 "@types/json-schema": "*"
@@ -3939,6 +4145,7 @@
4145 "version": "3.7.3",
4146 "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz",
4147 "integrity": "sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==",
4148 + "dev": true,
4149 "dependencies": {
4150 "@types/eslint": "*",
4151 "@types/estree": "*"
@@ -3947,12 +4154,14 @@
4154 "node_modules/@types/estree": {
4155 "version": "0.0.50",
4156 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz",
3950 - "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw=="
4157 + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==",
4158 + "dev": true
4159 },
4160 "node_modules/@types/express": {
4161 "version": "4.17.13",
4162 "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz",
4163 "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==",
4164 + "dev": true,
4165 "dependencies": {
4166 "@types/body-parser": "*",
4167 "@types/express-serve-static-core": "^4.17.18",
@@ -3964,6 +4173,7 @@
4173 "version": "4.17.28",
4174 "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz",
4175 "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==",
4176 + "dev": true,
4177 "dependencies": {
4178 "@types/node": "*",
4179 "@types/qs": "*",
@@ -3974,6 +4184,7 @@
4184 "version": "4.1.5",
4185 "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz",
4186 "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==",
4187 + "dev": true,
4188 "dependencies": {
4189 "@types/node": "*"
4190 }
@@ -3981,12 +4192,14 @@
4192 "node_modules/@types/html-minifier-terser": {
4193 "version": "6.1.0",
4194 "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
3984 - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg=="
4195 + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==",
4196 + "dev": true
4197 },
4198 "node_modules/@types/http-proxy": {
4199 "version": "1.17.8",
4200 "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz",
4201 "integrity": "sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==",
4202 + "dev": true,
4203 "dependencies": {
4204 "@types/node": "*"
4205 }
@@ -3994,12 +4207,14 @@
4207 "node_modules/@types/istanbul-lib-coverage": {
4208 "version": "2.0.4",
4209 "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz",
3997 - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g=="
4210 + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==",
4211 + "dev": true
4212 },
4213 "node_modules/@types/istanbul-lib-report": {
4214 "version": "3.0.0",
4215 "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
4216 "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
4217 + "dev": true,
4218 "dependencies": {
4219 "@types/istanbul-lib-coverage": "*"
4220 }
@@ -4008,6 +4223,7 @@
4223 "version": "3.0.1",
4224 "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
4225 "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
4226 + "dev": true,
4227 "dependencies": {
4228 "@types/istanbul-lib-report": "*"
4229 }
@@ -4024,22 +4240,26 @@
4240 "node_modules/@types/json-schema": {
4241 "version": "7.0.9",
4242 "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
4027 - "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ=="
4243 + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==",
4244 + "dev": true
4245 },
4246 "node_modules/@types/json5": {
4247 "version": "0.0.29",
4248 "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
4032 - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4="
4249 + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=",
4250 + "dev": true
4251 },
4252 "node_modules/@types/mime": {
4253 "version": "1.3.2",
4254 "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz",
4037 - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw=="
4255 + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==",
4256 + "dev": true
4257 },
4258 "node_modules/@types/node": {
4259 "version": "16.11.21",
4260 "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.21.tgz",
4042 - "integrity": "sha512-Pf8M1XD9i1ksZEcCP8vuSNwooJ/bZapNmIzpmsMaL+jMI+8mEYU3PKvs+xDNuQcJWF/x24WzY4qxLtB0zNow9A=="
4261 + "integrity": "sha512-Pf8M1XD9i1ksZEcCP8vuSNwooJ/bZapNmIzpmsMaL+jMI+8mEYU3PKvs+xDNuQcJWF/x24WzY4qxLtB0zNow9A==",
4262 + "dev": true
4263 },
4264 "node_modules/@types/parse-json": {
4265 "version": "4.0.0",
@@ -4049,7 +4269,8 @@
4269 "node_modules/@types/prettier": {
4270 "version": "2.4.3",
4271 "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.3.tgz",
4052 - "integrity": "sha512-QzSuZMBuG5u8HqYz01qtMdg/Jfctlnvj1z/lYnIDXs/golxw0fxtRAHd9KrzjR7Yxz1qVeI00o0kiO3PmVdJ9w=="
4272 + "integrity": "sha512-QzSuZMBuG5u8HqYz01qtMdg/Jfctlnvj1z/lYnIDXs/golxw0fxtRAHd9KrzjR7Yxz1qVeI00o0kiO3PmVdJ9w==",
4273 + "dev": true
4274 },
4275 "node_modules/@types/prop-types": {
4276 "version": "15.7.4",
@@ -4059,17 +4280,20 @@
4280 "node_modules/@types/q": {
4281 "version": "1.5.5",
4282 "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz",
4062 - "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ=="
4283 + "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==",
4284 + "dev": true
4285 },
4286 "node_modules/@types/qs": {
4287 "version": "6.9.7",
4288 "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz",
4067 - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw=="
4289 + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==",
4290 + "dev": true
4291 },
4292 "node_modules/@types/range-parser": {
4293 "version": "1.2.4",
4294 "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz",
4072 - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw=="
4295 + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==",
4296 + "dev": true
4297 },
4298 "node_modules/@types/react": {
4299 "version": "17.0.38",
@@ -4085,6 +4309,7 @@
4309 "version": "17.0.11",
4310 "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.11.tgz",
4311 "integrity": "sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q==",
4312 + "dev": true,
4313 "dependencies": {
4314 "@types/react": "*"
4315 }
@@ -4109,6 +4334,7 @@
4334 "version": "1.17.1",
4335 "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
4336 "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==",
4337 + "dev": true,
4338 "dependencies": {
4339 "@types/node": "*"
4340 }
@@ -4116,7 +4342,8 @@
4342 "node_modules/@types/retry": {
4343 "version": "0.12.1",
4344 "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz",
4119 - "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g=="
4345 + "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==",
4346 + "dev": true
4347 },
4348 "node_modules/@types/scheduler": {
4349 "version": "0.16.2",
@@ -4127,6 +4354,7 @@
4354 "version": "1.9.1",
4355 "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz",
4356 "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==",
4357 + "dev": true,
4358 "dependencies": {
4359 "@types/express": "*"
4360 }
@@ -4135,6 +4363,7 @@
4363 "version": "1.13.10",
4364 "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz",
4365 "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==",
4366 + "dev": true,
4367 "dependencies": {
4368 "@types/mime": "^1",
4369 "@types/node": "*"
@@ -4144,6 +4373,7 @@
4373 "version": "0.3.33",
4374 "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz",
4375 "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==",
4376 + "dev": true,
4377 "dependencies": {
4378 "@types/node": "*"
4379 }
@@ -4151,7 +4381,8 @@
4381 "node_modules/@types/stack-utils": {
4382 "version": "2.0.1",
4383 "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
4154 - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw=="
4384 + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==",
4385 + "dev": true
4386 },
4387 "node_modules/@types/testing-library__jest-dom": {
4388 "version": "5.14.2",
@@ -4164,12 +4395,14 @@
4395 "node_modules/@types/trusted-types": {
4396 "version": "2.0.2",
4397 "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz",
4167 - "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg=="
4398 + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==",
4399 + "dev": true
4400 },
4401 "node_modules/@types/ws": {
4402 "version": "8.2.2",
4403 "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.2.2.tgz",
4404 "integrity": "sha512-NOn5eIcgWLOo6qW8AcuLZ7G8PycXu0xTxxkS6Q18VWFxgPUSOwV0pBj2a/4viNZVu25i7RIB7GttdkAIUUXOOg==",
4405 + "dev": true,
4406 "dependencies": {
4407 "@types/node": "*"
4408 }
@@ -4178,6 +4411,7 @@
4411 "version": "16.0.4",
4412 "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz",
4413 "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==",
4414 + "dev": true,
4415 "dependencies": {
4416 "@types/yargs-parser": "*"
4417 }
@@ -4185,12 +4419,14 @@
4419 "node_modules/@types/yargs-parser": {
4420 "version": "20.2.1",
4421 "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz",
4188 - "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw=="
4422 + "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==",
4423 + "dev": true
4424 },
4425 "node_modules/@typescript-eslint/eslint-plugin": {
4426 "version": "5.10.0",
4427 "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.10.0.tgz",
4428 "integrity": "sha512-XXVKnMsq2fuu9K2KsIxPUGqb6xAImz8MEChClbXmE3VbveFtBUU5bzM6IPVWqzyADIgdkS2Ws/6Xo7W2TeZWjQ==",
4429 + "dev": true,
4430 "dependencies": {
4431 "@typescript-eslint/scope-manager": "5.10.0",
4432 "@typescript-eslint/type-utils": "5.10.0",
@@ -4223,6 +4459,7 @@
4459 "version": "5.10.0",
4460 "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.10.0.tgz",
4461 "integrity": "sha512-GeQAPqQMI5DVMGOUwGbSR+NdsirryyKOgUFRTWInhlsKUArns/MVnXmPpzxfrzB1nU36cT5WJAwmfCsjoaVBWg==",
4462 + "dev": true,
4463 "dependencies": {
4464 "@typescript-eslint/utils": "5.10.0"
4465 },
@@ -4241,6 +4478,7 @@
4478 "version": "5.10.0",
4479 "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.10.0.tgz",
4480 "integrity": "sha512-pJB2CCeHWtwOAeIxv8CHVGJhI5FNyJAIpx5Pt72YkK3QfEzt6qAlXZuyaBmyfOdM62qU0rbxJzNToPTVeJGrQw==",
4481 + "dev": true,
4482 "dependencies": {
4483 "@typescript-eslint/scope-manager": "5.10.0",
4484 "@typescript-eslint/types": "5.10.0",
@@ -4267,6 +4505,7 @@
4505 "version": "5.10.0",
4506 "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.10.0.tgz",
4507 "integrity": "sha512-tgNgUgb4MhqK6DoKn3RBhyZ9aJga7EQrw+2/OiDk5hKf3pTVZWyqBi7ukP+Z0iEEDMF5FDa64LqODzlfE4O/Dg==",
4508 + "dev": true,
4509 "dependencies": {
4510 "@typescript-eslint/types": "5.10.0",
4511 "@typescript-eslint/visitor-keys": "5.10.0"
@@ -4283,6 +4522,7 @@
4522 "version": "5.10.0",
4523 "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.10.0.tgz",
4524 "integrity": "sha512-TzlyTmufJO5V886N+hTJBGIfnjQDQ32rJYxPaeiyWKdjsv2Ld5l8cbS7pxim4DeNs62fKzRSt8Q14Evs4JnZyQ==",
4525 + "dev": true,
4526 "dependencies": {
4527 "@typescript-eslint/utils": "5.10.0",
4528 "debug": "^4.3.2",
@@ -4308,6 +4548,7 @@
4548 "version": "5.10.0",
4549 "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.10.0.tgz",
4550 "integrity": "sha512-wUljCgkqHsMZbw60IbOqT/puLfyqqD5PquGiBo1u1IS3PLxdi3RDGlyf032IJyh+eQoGhz9kzhtZa+VC4eWTlQ==",
4551 + "dev": true,
4552 "engines": {
4553 "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4554 },
@@ -4320,6 +4561,7 @@
4561 "version": "5.10.0",
4562 "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.10.0.tgz",
4563 "integrity": "sha512-x+7e5IqfwLwsxTdliHRtlIYkgdtYXzE0CkFeV6ytAqq431ZyxCFzNMNR5sr3WOlIG/ihVZr9K/y71VHTF/DUQA==",
4564 + "dev": true,
4565 "dependencies": {
4566 "@typescript-eslint/types": "5.10.0",
4567 "@typescript-eslint/visitor-keys": "5.10.0",
@@ -4346,6 +4588,7 @@
4588 "version": "5.10.0",
4589 "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.10.0.tgz",
4590 "integrity": "sha512-IGYwlt1CVcFoE2ueW4/ioEwybR60RAdGeiJX/iDAw0t5w0wK3S7QncDwpmsM70nKgGTuVchEWB8lwZwHqPAWRg==",
4591 + "dev": true,
4592 "dependencies": {
4593 "@types/json-schema": "^7.0.9",
4594 "@typescript-eslint/scope-manager": "5.10.0",
@@ -4369,6 +4612,7 @@
4612 "version": "5.1.1",
4613 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
4614 "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
4615 + "dev": true,
4616 "dependencies": {
4617 "esrecurse": "^4.3.0",
4618 "estraverse": "^4.1.1"
@@ -4381,6 +4625,7 @@
4625 "version": "4.3.0",
4626 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
4627 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
4628 + "dev": true,
4629 "engines": {
4630 "node": ">=4.0"
4631 }
@@ -4389,6 +4634,7 @@
4634 "version": "5.10.0",
4635 "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.10.0.tgz",
4636 "integrity": "sha512-GMxj0K1uyrFLPKASLmZzCuSddmjZVbVj3Ouy5QVuIGKZopxvOr24JsS7gruz6C3GExE01mublZ3mIBOaon9zuQ==",
4637 + "dev": true,
4638 "dependencies": {
4639 "@typescript-eslint/types": "5.10.0",
4640 "eslint-visitor-keys": "^3.0.0"
@@ -4405,6 +4651,7 @@
4651 "version": "1.11.1",
4652 "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
4653 "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
4654 + "dev": true,
4655 "dependencies": {
4656 "@webassemblyjs/helper-numbers": "1.11.1",
4657 "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
@@ -4413,22 +4660,26 @@
4660 "node_modules/@webassemblyjs/floating-point-hex-parser": {
4661 "version": "1.11.1",
4662 "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
4416 - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ=="
4663 + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==",
4664 + "dev": true
4665 },
4666 "node_modules/@webassemblyjs/helper-api-error": {
4667 "version": "1.11.1",
4668 "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
4421 - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg=="
4669 + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==",
4670 + "dev": true
4671 },
4672 "node_modules/@webassemblyjs/helper-buffer": {
4673 "version": "1.11.1",
4674 "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
4426 - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA=="
4675 + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==",
4676 + "dev": true
4677 },
4678 "node_modules/@webassemblyjs/helper-numbers": {
4679 "version": "1.11.1",
4680 "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
4681 "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
4682 + "dev": true,
4683 "dependencies": {
4684 "@webassemblyjs/floating-point-hex-parser": "1.11.1",
4685 "@webassemblyjs/helper-api-error": "1.11.1",
@@ -4438,12 +4689,14 @@
4689 "node_modules/@webassemblyjs/helper-wasm-bytecode": {
4690 "version": "1.11.1",
4691 "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
4441 - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q=="
4692 + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==",
4693 + "dev": true
4694 },
4695 "node_modules/@webassemblyjs/helper-wasm-section": {
4696 "version": "1.11.1",
4697 "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
4698 "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
4699 + "dev": true,
4700 "dependencies": {
4701 "@webassemblyjs/ast": "1.11.1",
4702 "@webassemblyjs/helper-buffer": "1.11.1",
@@ -4455,6 +4708,7 @@
4708 "version": "1.11.1",
4709 "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
4710 "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
4711 + "dev": true,
4712 "dependencies": {
4713 "@xtuc/ieee754": "^1.2.0"
4714 }
@@ -4463,6 +4717,7 @@
4717 "version": "1.11.1",
4718 "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
4719 "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
4720 + "dev": true,
4721 "dependencies": {
4722 "@xtuc/long": "4.2.2"
4723 }
@@ -4470,12 +4725,14 @@
4725 "node_modules/@webassemblyjs/utf8": {
4726 "version": "1.11.1",
4727 "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
4473 - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ=="
4728 + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==",
4729 + "dev": true
4730 },
4731 "node_modules/@webassemblyjs/wasm-edit": {
4732 "version": "1.11.1",
4733 "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
4734 "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
4735 + "dev": true,
4736 "dependencies": {
4737 "@webassemblyjs/ast": "1.11.1",
4738 "@webassemblyjs/helper-buffer": "1.11.1",
@@ -4491,6 +4748,7 @@
4748 "version": "1.11.1",
4749 "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
4750 "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
4751 + "dev": true,
4752 "dependencies": {
4753 "@webassemblyjs/ast": "1.11.1",
4754 "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
@@ -4503,6 +4761,7 @@
4761 "version": "1.11.1",
4762 "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
4763 "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
4764 + "dev": true,
4765 "dependencies": {
4766 "@webassemblyjs/ast": "1.11.1",
4767 "@webassemblyjs/helper-buffer": "1.11.1",
@@ -4514,6 +4773,7 @@
4773 "version": "1.11.1",
4774 "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
4775 "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
4776 + "dev": true,
4777 "dependencies": {
4778 "@webassemblyjs/ast": "1.11.1",
4779 "@webassemblyjs/helper-api-error": "1.11.1",
@@ -4527,6 +4787,7 @@
4787 "version": "1.11.1",
4788 "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
4789 "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
4790 + "dev": true,
4791 "dependencies": {
4792 "@webassemblyjs/ast": "1.11.1",
4793 "@xtuc/long": "4.2.2"
@@ -4535,22 +4796,26 @@
4796 "node_modules/@xtuc/ieee754": {
4797 "version": "1.2.0",
4798 "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
4538 - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA=="
4799 + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
4800 + "dev": true
4801 },
4802 "node_modules/@xtuc/long": {
4803 "version": "4.2.2",
4804 "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
4543 - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="
4805 + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
4806 + "dev": true
4807 },
4808 "node_modules/abab": {
4809 "version": "2.0.5",
4810 "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz",
4548 - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q=="
4811 + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==",
4812 + "dev": true
4813 },
4814 "node_modules/accepts": {
4815 "version": "1.3.7",
4816 "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
4817 "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==",
4818 + "dev": true,
4819 "dependencies": {
4820 "mime-types": "~2.1.24",
4821 "negotiator": "0.6.2"
@@ -4563,6 +4828,7 @@
4828 "version": "8.7.0",
4829 "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz",
4830 "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==",
4831 + "dev": true,
4832 "bin": {
4833 "acorn": "bin/acorn"
4834 },
@@ -4574,6 +4840,7 @@
4840 "version": "6.0.0",
4841 "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz",
4842 "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==",
4843 + "dev": true,
4844 "dependencies": {
4845 "acorn": "^7.1.1",
4846 "acorn-walk": "^7.1.1"
@@ -4583,6 +4850,7 @@
4850 "version": "7.4.1",
4851 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
4852 "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
4853 + "dev": true,
4854 "bin": {
4855 "acorn": "bin/acorn"
4856 },
@@ -4594,6 +4862,7 @@
4862 "version": "1.8.0",
4863 "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz",
4864 "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
4865 + "dev": true,
4866 "peerDependencies": {
4867 "acorn": "^8"
4868 }
@@ -4602,6 +4871,7 @@
4871 "version": "5.3.2",
4872 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
4873 "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
4874 + "dev": true,
4875 "peerDependencies": {
4876 "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
4877 }
@@ -4610,6 +4880,7 @@
4880 "version": "1.8.2",
4881 "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
4882 "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
4883 + "dev": true,
4884 "dependencies": {
4885 "acorn": "^7.0.0",
4886 "acorn-walk": "^7.0.0",
@@ -4620,6 +4891,7 @@
4891 "version": "7.4.1",
4892 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
4893 "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
4894 + "dev": true,
4895 "bin": {
4896 "acorn": "bin/acorn"
4897 },
@@ -4631,6 +4903,7 @@
4903 "version": "7.2.0",
4904 "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
4905 "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
4906 + "dev": true,
4907 "engines": {
4908 "node": ">=0.4.0"
4909 }
@@ -4639,6 +4912,7 @@
4912 "version": "1.1.2",
4913 "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz",
4914 "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==",
4915 + "dev": true,
4916 "engines": {
4917 "node": ">= 0.12.0"
4918 }
@@ -4647,6 +4921,7 @@
4921 "version": "4.0.0",
4922 "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz",
4923 "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==",
4924 + "dev": true,
4925 "dependencies": {
4926 "loader-utils": "^2.0.0",
4927 "regex-parser": "^2.2.11"
@@ -4659,6 +4934,7 @@
4934 "version": "6.0.2",
4935 "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
4936 "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
4937 + "dev": true,
4938 "dependencies": {
4939 "debug": "4"
4940 },
@@ -4670,6 +4946,7 @@
4946 "version": "3.1.0",
4947 "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
4948 "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
4949 + "dev": true,
4950 "dependencies": {
4951 "clean-stack": "^2.0.0",
4952 "indent-string": "^4.0.0"
@@ -4682,6 +4959,7 @@
4959 "version": "6.12.6",
4960 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
4961 "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
4962 + "dev": true,
4963 "dependencies": {
4964 "fast-deep-equal": "^3.1.1",
4965 "fast-json-stable-stringify": "^2.0.0",
@@ -4697,6 +4975,7 @@
4975 "version": "2.1.1",
4976 "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
4977 "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
4978 + "dev": true,
4979 "dependencies": {
4980 "ajv": "^8.0.0"
4981 },
@@ -4713,6 +4992,7 @@
4992 "version": "8.9.0",
4993 "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
4994 "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
4995 + "dev": true,
4996 "dependencies": {
4997 "fast-deep-equal": "^3.1.1",
4998 "json-schema-traverse": "^1.0.0",
@@ -4727,12 +5007,14 @@
5007 "node_modules/ajv-formats/node_modules/json-schema-traverse": {
5008 "version": "1.0.0",
5009 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
4730 - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
5010 + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
5011 + "dev": true
5012 },
5013 "node_modules/ajv-keywords": {
5014 "version": "3.5.2",
5015 "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
5016 "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
5017 + "dev": true,
5018 "peerDependencies": {
5019 "ajv": "^6.9.1"
5020 }
@@ -4741,6 +5023,7 @@
5023 "version": "4.3.2",
5024 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
5025 "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
5026 + "dev": true,
5027 "dependencies": {
5028 "type-fest": "^0.21.3"
5029 },
@@ -4755,6 +5038,7 @@
5038 "version": "0.0.8",
5039 "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
5040 "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==",
5041 + "dev": true,
5042 "engines": [
5043 "node >= 0.8.0"
5044 ],
@@ -4785,6 +5069,7 @@
5069 "version": "3.1.2",
5070 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
5071 "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
5072 + "dev": true,
5073 "dependencies": {
5074 "normalize-path": "^3.0.0",
5075 "picomatch": "^2.0.4"
@@ -4796,12 +5081,14 @@
5081 "node_modules/arg": {
5082 "version": "5.0.1",
5083 "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz",
4799 - "integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA=="
5084 + "integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==",
5085 + "dev": true
5086 },
5087 "node_modules/argparse": {
5088 "version": "1.0.10",
5089 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
5090 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
5091 + "dev": true,
5092 "dependencies": {
5093 "sprintf-js": "~1.0.2"
5094 }
@@ -4810,6 +5097,7 @@
5097 "version": "4.2.2",
5098 "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz",
5099 "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==",
5100 + "dev": true,
5101 "dependencies": {
5102 "@babel/runtime": "^7.10.2",
5103 "@babel/runtime-corejs3": "^7.10.2"
@@ -4821,12 +5109,14 @@
5109 "node_modules/array-flatten": {
5110 "version": "2.1.2",
5111 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
4824 - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ=="
5112 + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==",
5113 + "dev": true
5114 },
5115 "node_modules/array-includes": {
5116 "version": "3.1.4",
5117 "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz",
5118 "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==",
5119 + "dev": true,
5120 "dependencies": {
5121 "call-bind": "^1.0.2",
5122 "define-properties": "^1.1.3",
@@ -4845,6 +5135,7 @@
5135 "version": "2.1.0",
5136 "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
5137 "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
5138 + "dev": true,
5139 "engines": {
5140 "node": ">=8"
5141 }
@@ -4853,6 +5144,7 @@
5144 "version": "1.2.5",
5145 "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz",
5146 "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==",
5147 + "dev": true,
5148 "dependencies": {
5149 "call-bind": "^1.0.2",
5150 "define-properties": "^1.1.3",
@@ -4869,6 +5161,7 @@
5161 "version": "1.2.5",
5162 "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz",
5163 "integrity": "sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA==",
5164 + "dev": true,
5165 "dependencies": {
5166 "call-bind": "^1.0.0",
5167 "define-properties": "^1.1.3",
@@ -4884,17 +5177,20 @@
5177 "node_modules/asap": {
5178 "version": "2.0.6",
5179 "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
4887 - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
5180 + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
5181 + "dev": true
5182 },
5183 "node_modules/ast-types-flow": {
5184 "version": "0.0.7",
5185 "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
4892 - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0="
5186 + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=",
5187 + "dev": true
5188 },
5189 "node_modules/async": {
5190 "version": "2.6.3",
5191 "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
5192 "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
5193 + "dev": true,
5194 "dependencies": {
5195 "lodash": "^4.17.14"
5196 }
@@ -4902,12 +5198,14 @@
5198 "node_modules/asynckit": {
5199 "version": "0.4.0",
5200 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
4905 - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
5201 + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
5202 + "dev": true
5203 },
5204 "node_modules/at-least-node": {
5205 "version": "1.0.0",
5206 "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
5207 "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
5208 + "dev": true,
5209 "engines": {
5210 "node": ">= 4.0.0"
5211 }
@@ -4927,6 +5225,7 @@
5225 "version": "10.4.2",
5226 "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz",
5227 "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==",
5228 + "dev": true,
5229 "dependencies": {
5230 "browserslist": "^4.19.1",
5231 "caniuse-lite": "^1.0.30001297",
@@ -4953,6 +5252,7 @@
5252 "version": "4.3.5",
5253 "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.3.5.tgz",
5254 "integrity": "sha512-WKTW1+xAzhMS5dJsxWkliixlO/PqC4VhmO9T4juNYcaTg9jzWiJsou6m5pxWYGfigWbwzJWeFY6z47a+4neRXA==",
5255 + "dev": true,
5256 "engines": {
5257 "node": ">=4"
5258 }
@@ -4960,12 +5260,14 @@
5260 "node_modules/axobject-query": {
5261 "version": "2.2.0",
5262 "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
4963 - "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA=="
5263 + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==",
5264 + "dev": true
5265 },
5266 "node_modules/babel-jest": {
5267 "version": "27.4.6",
5268 "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.4.6.tgz",
5269 "integrity": "sha512-qZL0JT0HS1L+lOuH+xC2DVASR3nunZi/ozGhpgauJHgmI7f8rudxf6hUjEHympdQ/J64CdKmPkgfJ+A3U6QCrg==",
5270 + "dev": true,
5271 "dependencies": {
5272 "@jest/transform": "^27.4.6",
5273 "@jest/types": "^27.4.2",
@@ -4987,6 +5289,7 @@
5289 "version": "4.3.0",
5290 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
5291 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
5292 + "dev": true,
5293 "dependencies": {
5294 "color-convert": "^2.0.1"
5295 },
@@ -5001,6 +5304,7 @@
5304 "version": "4.1.2",
5305 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
5306 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
5307 + "dev": true,
5308 "dependencies": {
5309 "ansi-styles": "^4.1.0",
5310 "supports-color": "^7.1.0"
@@ -5016,6 +5320,7 @@
5320 "version": "2.0.1",
5321 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
5322 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
5323 + "dev": true,
5324 "dependencies": {
5325 "color-name": "~1.1.4"
5326 },
@@ -5026,12 +5331,14 @@
5331 "node_modules/babel-jest/node_modules/color-name": {
5332 "version": "1.1.4",
5333 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
5029 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
5334 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
5335 + "dev": true
5336 },
5337 "node_modules/babel-jest/node_modules/has-flag": {
5338 "version": "4.0.0",
5339 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
5340 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
5341 + "dev": true,
5342 "engines": {
5343 "node": ">=8"
5344 }
@@ -5040,6 +5347,7 @@
5347 "version": "7.2.0",
5348 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
5349 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
5350 + "dev": true,
5351 "dependencies": {
5352 "has-flag": "^4.0.0"
5353 },
@@ -5051,6 +5359,7 @@
5359 "version": "8.2.3",
5360 "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz",
5361 "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==",
5362 + "dev": true,
5363 "dependencies": {
5364 "find-cache-dir": "^3.3.1",
5365 "loader-utils": "^1.4.0",
@@ -5069,6 +5378,7 @@
5378 "version": "1.0.1",
5379 "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
5380 "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
5381 + "dev": true,
5382 "dependencies": {
5383 "minimist": "^1.2.0"
5384 },
@@ -5080,6 +5390,7 @@
5390 "version": "1.4.0",
5391 "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
5392 "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
5393 + "dev": true,
5394 "dependencies": {
5395 "big.js": "^5.2.2",
5396 "emojis-list": "^3.0.0",
@@ -5093,6 +5404,7 @@
5404 "version": "2.7.1",
5405 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
5406 "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
5407 + "dev": true,
5408 "dependencies": {
5409 "@types/json-schema": "^7.0.5",
5410 "ajv": "^6.12.4",
@@ -5110,6 +5422,7 @@
5422 "version": "2.3.3",
5423 "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
5424 "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
5425 + "dev": true,
5426 "dependencies": {
5427 "object.assign": "^4.1.0"
5428 }
@@ -5118,6 +5431,7 @@
5431 "version": "6.1.1",
5432 "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
5433 "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
5434 + "dev": true,
5435 "dependencies": {
5436 "@babel/helper-plugin-utils": "^7.0.0",
5437 "@istanbuljs/load-nyc-config": "^1.0.0",
@@ -5133,6 +5447,7 @@
5447 "version": "27.4.0",
5448 "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz",
5449 "integrity": "sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw==",
5450 + "dev": true,
5451 "dependencies": {
5452 "@babel/template": "^7.3.3",
5453 "@babel/types": "^7.3.3",
@@ -5147,6 +5462,7 @@
5462 "version": "3.1.0",
5463 "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
5464 "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
5465 + "devOptional": true,
5466 "dependencies": {
5467 "@babel/runtime": "^7.12.5",
5468 "cosmiconfig": "^7.0.0",
@@ -5161,6 +5477,7 @@
5477 "version": "0.3.8",
5478 "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz",
5479 "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==",
5480 + "dev": true,
5481 "peerDependencies": {
5482 "@babel/core": "^7.1.0"
5483 }
@@ -5169,6 +5486,7 @@
5486 "version": "0.3.1",
5487 "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz",
5488 "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==",
5489 + "dev": true,
5490 "dependencies": {
5491 "@babel/compat-data": "^7.13.11",
5492 "@babel/helper-define-polyfill-provider": "^0.3.1",
@@ -5182,6 +5500,7 @@
5500 "version": "6.3.0",
5501 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
5502 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
5503 + "dev": true,
5504 "bin": {
5505 "semver": "bin/semver.js"
5506 }
@@ -5190,6 +5509,7 @@
5509 "version": "0.5.1",
5510 "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.1.tgz",
5511 "integrity": "sha512-TihqEe4sQcb/QcPJvxe94/9RZuLQuF1+To4WqQcRvc+3J3gLCPIPgDKzGLG6zmQLfH3nn25heRuDNkS2KR4I8A==",
5512 + "dev": true,
5513 "dependencies": {
5514 "@babel/helper-define-polyfill-provider": "^0.3.1",
5515 "core-js-compat": "^3.20.0"
@@ -5202,6 +5522,7 @@
5522 "version": "0.3.1",
5523 "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz",
5524 "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==",
5525 + "dev": true,
5526 "dependencies": {
5527 "@babel/helper-define-polyfill-provider": "^0.3.1"
5528 },
@@ -5212,12 +5533,14 @@
5533 "node_modules/babel-plugin-transform-react-remove-prop-types": {
5534 "version": "0.4.24",
5535 "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz",
5215 - "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA=="
5536 + "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==",
5537 + "dev": true
5538 },
5539 "node_modules/babel-preset-current-node-syntax": {
5540 "version": "1.0.1",
5541 "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
5542 "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
5543 + "dev": true,
5544 "dependencies": {
5545 "@babel/plugin-syntax-async-generators": "^7.8.4",
5546 "@babel/plugin-syntax-bigint": "^7.8.3",
@@ -5240,6 +5563,7 @@
5563 "version": "27.4.0",
5564 "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz",
5565 "integrity": "sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg==",
5566 + "dev": true,
5567 "dependencies": {
5568 "babel-plugin-jest-hoist": "^27.4.0",
5569 "babel-preset-current-node-syntax": "^1.0.0"
@@ -5255,6 +5579,7 @@
5579 "version": "10.0.1",
5580 "resolved": "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz",
5581 "integrity": "sha512-b0D9IZ1WhhCWkrTXyFuIIgqGzSkRIH5D5AmB0bXbzYAB1OBAwHcUeyWW2LorutLWF5btNo/N7r/cIdmvvKJlYg==",
5582 + "dev": true,
5583 "dependencies": {
5584 "@babel/core": "^7.16.0",
5585 "@babel/plugin-proposal-class-properties": "^7.16.0",
@@ -5277,17 +5602,20 @@
5602 "node_modules/balanced-match": {
5603 "version": "1.0.2",
5604 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
5280 - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
5605 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
5606 + "dev": true
5607 },
5608 "node_modules/batch": {
5609 "version": "0.6.1",
5610 "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
5285 - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY="
5611 + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
5612 + "dev": true
5613 },
5614 "node_modules/bfj": {
5615 "version": "7.0.2",
5616 "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.0.2.tgz",
5617 "integrity": "sha512-+e/UqUzwmzJamNF50tBV6tZPTORow7gQ96iFow+8b562OdMpEK0BcJEq2OSPEDmAbSMBQ7PKZ87ubFkgxpYWgw==",
5618 + "dev": true,
5619 "dependencies": {
5620 "bluebird": "^3.5.5",
5621 "check-types": "^11.1.1",
@@ -5302,6 +5630,7 @@
5630 "version": "5.2.2",
5631 "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
5632 "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
5633 + "dev": true,
5634 "engines": {
5635 "node": "*"
5636 }
@@ -5310,6 +5639,7 @@
5639 "version": "2.2.0",
5640 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
5641 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
5642 + "dev": true,
5643 "engines": {
5644 "node": ">=8"
5645 }
@@ -5317,12 +5647,14 @@
5647 "node_modules/bluebird": {
5648 "version": "3.7.2",
5649 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
5320 - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="
5650 + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
5651 + "dev": true
5652 },
5653 "node_modules/body-parser": {
5654 "version": "1.19.1",
5655 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz",
5656 "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==",
5657 + "dev": true,
5658 "dependencies": {
5659 "bytes": "3.1.1",
5660 "content-type": "~1.0.4",
@@ -5343,6 +5675,7 @@
5675 "version": "3.1.1",
5676 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz",
5677 "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==",
5678 + "dev": true,
5679 "engines": {
5680 "node": ">= 0.8"
5681 }
@@ -5351,6 +5684,7 @@
5684 "version": "2.6.9",
5685 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
5686 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
5687 + "dev": true,
5688 "dependencies": {
5689 "ms": "2.0.0"
5690 }
@@ -5359,6 +5693,7 @@
5693 "version": "0.4.24",
5694 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
5695 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
5696 + "dev": true,
5697 "dependencies": {
5698 "safer-buffer": ">= 2.1.2 < 3"
5699 },
@@ -5369,12 +5704,14 @@
5704 "node_modules/body-parser/node_modules/ms": {
5705 "version": "2.0.0",
5706 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
5372 - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
5707 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
5708 + "dev": true
5709 },
5710 "node_modules/bonjour": {
5711 "version": "3.5.0",
5712 "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz",
5713 "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=",
5714 + "dev": true,
5715 "dependencies": {
5716 "array-flatten": "^2.1.0",
5717 "deep-equal": "^1.0.1",
@@ -5387,12 +5724,14 @@
5724 "node_modules/boolbase": {
5725 "version": "1.0.0",
5726 "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
5390 - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
5727 + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
5728 + "dev": true
5729 },
5730 "node_modules/brace-expansion": {
5731 "version": "1.1.11",
5732 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
5733 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
5734 + "dev": true,
5735 "dependencies": {
5736 "balanced-match": "^1.0.0",
5737 "concat-map": "0.0.1"
@@ -5402,6 +5741,7 @@
5741 "version": "3.0.2",
5742 "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
5743 "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
5744 + "dev": true,
5745 "dependencies": {
5746 "fill-range": "^7.0.1"
5747 },
@@ -5412,7 +5752,8 @@
5752 "node_modules/browser-process-hrtime": {
5753 "version": "1.0.0",
5754 "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
5415 - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow=="
5755 + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==",
5756 + "dev": true
5757 },
5758 "node_modules/browserslist": {
5759 "version": "4.19.1",
@@ -5440,6 +5781,7 @@
5781 "version": "2.1.1",
5782 "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
5783 "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
5784 + "dev": true,
5785 "dependencies": {
5786 "node-int64": "^0.4.0"
5787 }
@@ -5447,17 +5789,20 @@
5789 "node_modules/buffer-from": {
5790 "version": "1.1.2",
5791 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
5450 - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
5792 + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
5793 + "dev": true
5794 },
5795 "node_modules/buffer-indexof": {
5796 "version": "1.1.1",
5797 "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz",
5455 - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g=="
5798 + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
5799 + "dev": true
5800 },
5801 "node_modules/builtin-modules": {
5802 "version": "3.2.0",
5803 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz",
5804 "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==",
5805 + "dev": true,
5806 "engines": {
5807 "node": ">=6"
5808 },
@@ -5469,6 +5814,7 @@
5814 "version": "3.0.0",
5815 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
5816 "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
5817 + "dev": true,
5818 "engines": {
5819 "node": ">= 0.8"
5820 }
@@ -5477,6 +5823,7 @@
5823 "version": "1.0.2",
5824 "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
5825 "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
5826 + "dev": true,
5827 "dependencies": {
5828 "function-bind": "^1.1.1",
5829 "get-intrinsic": "^1.0.2"
@@ -5497,6 +5844,7 @@
5844 "version": "4.1.2",
5845 "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz",
5846 "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==",
5847 + "dev": true,
5848 "dependencies": {
5849 "pascal-case": "^3.1.2",
5850 "tslib": "^2.0.3"
@@ -5506,6 +5854,7 @@
5854 "version": "6.3.0",
5855 "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
5856 "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
5857 + "dev": true,
5858 "engines": {
5859 "node": ">=10"
5860 },
@@ -5517,6 +5866,7 @@
5866 "version": "2.0.1",
5867 "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
5868 "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
5869 + "dev": true,
5870 "engines": {
5871 "node": ">= 6"
5872 }
@@ -5525,6 +5875,7 @@
5875 "version": "3.0.0",
5876 "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
5877 "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==",
5878 + "dev": true,
5879 "dependencies": {
5880 "browserslist": "^4.0.0",
5881 "caniuse-lite": "^1.0.0",
@@ -5545,6 +5896,7 @@
5896 "version": "2.4.0",
5897 "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz",
5898 "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==",
5899 + "dev": true,
5900 "engines": {
5901 "node": ">=4"
5902 }
@@ -5566,6 +5918,7 @@
5918 "version": "1.0.2",
5919 "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
5920 "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
5921 + "dev": true,
5922 "engines": {
5923 "node": ">=10"
5924 }
@@ -5573,12 +5926,14 @@
5926 "node_modules/check-types": {
5927 "version": "11.1.2",
5928 "resolved": "https://registry.npmjs.org/check-types/-/check-types-11.1.2.tgz",
5576 - "integrity": "sha512-tzWzvgePgLORb9/3a0YenggReLKAIb2owL03H2Xdoe5pKcUyWRSEQ8xfCar8t2SIAuEDwtmx2da1YB52YuHQMQ=="
5929 + "integrity": "sha512-tzWzvgePgLORb9/3a0YenggReLKAIb2owL03H2Xdoe5pKcUyWRSEQ8xfCar8t2SIAuEDwtmx2da1YB52YuHQMQ==",
5930 + "dev": true
5931 },
5932 "node_modules/chokidar": {
5933 "version": "3.5.3",
5934 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
5935 "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
5936 + "dev": true,
5937 "funding": [
5938 {
5939 "type": "individual",
@@ -5605,6 +5960,7 @@
5960 "version": "5.1.2",
5961 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
5962 "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
5963 + "dev": true,
5964 "dependencies": {
5965 "is-glob": "^4.0.1"
5966 },
@@ -5616,6 +5972,7 @@
5972 "version": "1.0.3",
5973 "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
5974 "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
5975 + "dev": true,
5976 "engines": {
5977 "node": ">=6.0"
5978 }
@@ -5623,17 +5980,20 @@
5980 "node_modules/ci-info": {
5981 "version": "3.3.0",
5982 "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz",
5626 - "integrity": "sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw=="
5983 + "integrity": "sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==",
5984 + "dev": true
5985 },
5986 "node_modules/cjs-module-lexer": {
5987 "version": "1.2.2",
5988 "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz",
5631 - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA=="
5989 + "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==",
5990 + "dev": true
5991 },
5992 "node_modules/clean-css": {
5993 "version": "5.2.2",
5994 "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.2.2.tgz",
5995 "integrity": "sha512-/eR8ru5zyxKzpBLv9YZvMXgTSSQn7AdkMItMYynsFgGwTveCRVam9IUPFloE85B4vAIj05IuKmmEoV7/AQjT0w==",
5996 + "dev": true,
5997 "dependencies": {
5998 "source-map": "~0.6.0"
5999 },
@@ -5645,6 +6005,7 @@
6005 "version": "0.6.1",
6006 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
6007 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
6008 + "dev": true,
6009 "engines": {
6010 "node": ">=0.10.0"
6011 }
@@ -5653,6 +6014,7 @@
6014 "version": "2.2.0",
6015 "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
6016 "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
6017 + "dev": true,
6018 "engines": {
6019 "node": ">=6"
6020 }
@@ -5661,6 +6023,7 @@
6023 "version": "7.0.4",
6024 "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
6025 "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
6026 + "dev": true,
6027 "dependencies": {
6028 "string-width": "^4.2.0",
6029 "strip-ansi": "^6.0.0",
@@ -5679,6 +6042,7 @@
6042 "version": "4.6.0",
6043 "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
6044 "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
6045 + "dev": true,
6046 "engines": {
6047 "iojs": ">= 1.0.0",
6048 "node": ">= 0.12.0"
@@ -5688,6 +6052,7 @@
6052 "version": "2.0.2",
6053 "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
6054 "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
6055 + "dev": true,
6056 "dependencies": {
6057 "@types/q": "^1.5.1",
6058 "chalk": "^2.4.1",
@@ -5700,7 +6065,8 @@
6065 "node_modules/collect-v8-coverage": {
6066 "version": "1.0.1",
6067 "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
5703 - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg=="
6068 + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
6069 + "dev": true
6070 },
6071 "node_modules/color-convert": {
6072 "version": "1.9.3",
@@ -5718,17 +6084,20 @@
6084 "node_modules/colord": {
6085 "version": "2.9.2",
6086 "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz",
5721 - "integrity": "sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ=="
6087 + "integrity": "sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==",
6088 + "dev": true
6089 },
6090 "node_modules/colorette": {
6091 "version": "2.0.16",
6092 "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz",
5726 - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g=="
6093 + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==",
6094 + "dev": true
6095 },
6096 "node_modules/combined-stream": {
6097 "version": "1.0.8",
6098 "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
6099 "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
6100 + "dev": true,
6101 "dependencies": {
6102 "delayed-stream": "~1.0.0"
6103 },
@@ -5740,6 +6109,7 @@
6109 "version": "8.3.0",
6110 "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz",
6111 "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==",
6112 + "dev": true,
6113 "engines": {
6114 "node": ">= 12"
6115 }
@@ -5747,12 +6117,14 @@
6117 "node_modules/common-path-prefix": {
6118 "version": "3.0.0",
6119 "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz",
5750 - "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w=="
6120 + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==",
6121 + "dev": true
6122 },
6123 "node_modules/common-tags": {
6124 "version": "1.8.2",
6125 "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz",
6126 "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==",
6127 + "dev": true,
6128 "engines": {
6129 "node": ">=4.0.0"
6130 }
@@ -5760,12 +6132,14 @@
6132 "node_modules/commondir": {
6133 "version": "1.0.1",
6134 "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
5763 - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs="
6135 + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
6136 + "dev": true
6137 },
6138 "node_modules/compressible": {
6139 "version": "2.0.18",
6140 "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
6141 "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
6142 + "dev": true,
6143 "dependencies": {
6144 "mime-db": ">= 1.43.0 < 2"
6145 },
@@ -5777,6 +6151,7 @@
6151 "version": "1.7.4",
6152 "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
6153 "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
6154 + "dev": true,
6155 "dependencies": {
6156 "accepts": "~1.3.5",
6157 "bytes": "3.0.0",
@@ -5794,6 +6169,7 @@
6169 "version": "2.6.9",
6170 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
6171 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
6172 + "dev": true,
6173 "dependencies": {
6174 "ms": "2.0.0"
6175 }
@@ -5801,22 +6177,26 @@
6177 "node_modules/compression/node_modules/ms": {
6178 "version": "2.0.0",
6179 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
5804 - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
6180 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
6181 + "dev": true
6182 },
6183 "node_modules/concat-map": {
6184 "version": "0.0.1",
6185 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
5809 - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
6186 + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
6187 + "dev": true
6188 },
6189 "node_modules/confusing-browser-globals": {
6190 "version": "1.0.11",
6191 "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz",
5814 - "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA=="
6192 + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==",
6193 + "dev": true
6194 },
6195 "node_modules/connect-history-api-fallback": {
6196 "version": "1.6.0",
6197 "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
6198 "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
6199 + "dev": true,
6200 "engines": {
6201 "node": ">=0.8"
6202 }
@@ -5825,6 +6205,7 @@
6205 "version": "0.5.4",
6206 "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
6207 "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
6208 + "dev": true,
6209 "dependencies": {
6210 "safe-buffer": "5.2.1"
6211 },
@@ -5836,6 +6217,7 @@
6217 "version": "5.2.1",
6218 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
6219 "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
6220 + "dev": true,
6221 "funding": [
6222 {
6223 "type": "github",
@@ -5855,6 +6237,7 @@
6237 "version": "1.0.4",
6238 "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
6239 "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
6240 + "dev": true,
6241 "engines": {
6242 "node": ">= 0.6"
6243 }
@@ -5871,6 +6254,7 @@
6254 "version": "0.4.1",
6255 "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
6256 "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
6257 + "dev": true,
6258 "engines": {
6259 "node": ">= 0.6"
6260 }
@@ -5878,12 +6262,14 @@
6262 "node_modules/cookie-signature": {
6263 "version": "1.0.6",
6264 "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
5881 - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
6265 + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
6266 + "dev": true
6267 },
6268 "node_modules/core-js": {
6269 "version": "3.20.3",
6270 "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.20.3.tgz",
6271 "integrity": "sha512-vVl8j8ph6tRS3B8qir40H7yw7voy17xL0piAjlbBUsH7WIfzoedL/ZOr1OV9FyZQLWXsayOJyV4tnRyXR85/ag==",
6272 + "dev": true,
6273 "hasInstallScript": true,
6274 "funding": {
6275 "type": "opencollective",
@@ -5894,6 +6280,7 @@
6280 "version": "3.20.3",
6281 "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.20.3.tgz",
6282 "integrity": "sha512-c8M5h0IkNZ+I92QhIpuSijOxGAcj3lgpsWdkCqmUTZNwidujF4r3pi6x1DCN+Vcs5qTS2XWWMfWSuCqyupX8gw==",
6283 + "dev": true,
6284 "dependencies": {
6285 "browserslist": "^4.19.1",
6286 "semver": "7.0.0"
@@ -5907,6 +6294,7 @@
6294 "version": "7.0.0",
6295 "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
6296 "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
6297 + "dev": true,
6298 "bin": {
6299 "semver": "bin/semver.js"
6300 }
@@ -5915,6 +6303,7 @@
6303 "version": "3.20.3",
6304 "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.20.3.tgz",
6305 "integrity": "sha512-Q2H6tQ5MtPtcC7f3HxJ48i4Q7T9ybPKgvWyuH7JXIoNa2pm0KuBnycsET/qw1SLLZYfbsbrZQNMeIOClb+6WIA==",
6306 + "dev": true,
6307 "hasInstallScript": true,
6308 "funding": {
6309 "type": "opencollective",
@@ -5924,12 +6313,14 @@
6313 "node_modules/core-util-is": {
6314 "version": "1.0.3",
6315 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
5927 - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
6316 + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
6317 + "dev": true
6318 },
6319 "node_modules/cosmiconfig": {
6320 "version": "7.0.1",
6321 "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz",
6322 "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==",
6323 + "devOptional": true,
6324 "dependencies": {
6325 "@types/parse-json": "^4.0.0",
6326 "import-fresh": "^3.2.1",
@@ -5945,6 +6336,7 @@
6336 "version": "7.0.3",
6337 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
6338 "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
6339 + "dev": true,
6340 "dependencies": {
6341 "path-key": "^3.1.0",
6342 "shebang-command": "^2.0.0",
@@ -5958,6 +6350,7 @@
6350 "version": "2.0.0",
6351 "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
6352 "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==",
6353 + "dev": true,
6354 "engines": {
6355 "node": ">=8"
6356 }
@@ -5976,6 +6369,7 @@
6369 "version": "3.0.2",
6370 "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.2.tgz",
6371 "integrity": "sha512-hOb1LFjRR+8ocA071xUSmg5VslJ8NGo/I2qpUpdeAYyBVCgupS5O8SEVo4SxEMYyFBNodBkzG3T1iqW9HCXxew==",
6372 + "dev": true,
6373 "dependencies": {
6374 "postcss-selector-parser": "^6.0.8"
6375 },
@@ -5993,6 +6387,7 @@
6387 "version": "6.1.4",
6388 "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.1.4.tgz",
6389 "integrity": "sha512-lpfkqS0fctcmZotJGhnxkIyJWvBXgpyi2wsFd4J8VB7wzyrT6Ch/3Q+FMNJpjK4gu1+GN5khOnpU2ZVKrLbhCw==",
6390 + "dev": true,
6391 "dependencies": {
6392 "timsort": "^0.3.0"
6393 },
@@ -6007,6 +6402,7 @@
6402 "version": "3.0.3",
6403 "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.3.tgz",
6404 "integrity": "sha512-0gDYWEKaGacwxCqvQ3Ypg6wGdD1AztbMm5h1JsactG2hP2eiflj808QITmuWBpE7sjSEVrAlZhPTVd/nNMj/hQ==",
6405 + "dev": true,
6406 "dependencies": {
6407 "postcss-selector-parser": "^6.0.8"
6408 },
@@ -6024,6 +6420,7 @@
6420 "version": "6.5.1",
6421 "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.1.tgz",
6422 "integrity": "sha512-gEy2w9AnJNnD9Kuo4XAP9VflW/ujKoS9c/syO+uWMlm5igc7LysKzPXaDoR2vroROkSwsTS2tGr1yGGEbZOYZQ==",
6423 + "dev": true,
6424 "dependencies": {
6425 "icss-utils": "^5.1.0",
6426 "postcss": "^8.2.15",
@@ -6049,6 +6446,7 @@
6446 "version": "3.4.1",
6447 "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz",
6448 "integrity": "sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==",
6449 + "dev": true,
6450 "dependencies": {
6451 "cssnano": "^5.0.6",
6452 "jest-worker": "^27.0.2",
@@ -6086,6 +6484,7 @@
6484 "version": "8.9.0",
6485 "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
6486 "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
6487 + "dev": true,
6488 "dependencies": {
6489 "fast-deep-equal": "^3.1.1",
6490 "json-schema-traverse": "^1.0.0",
@@ -6101,6 +6500,7 @@
6500 "version": "5.1.0",
6501 "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
6502 "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
6503 + "dev": true,
6504 "dependencies": {
6505 "fast-deep-equal": "^3.1.3"
6506 },
@@ -6111,12 +6511,14 @@
6511 "node_modules/css-minimizer-webpack-plugin/node_modules/json-schema-traverse": {
6512 "version": "1.0.0",
6513 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
6114 - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
6514 + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
6515 + "dev": true
6516 },
6517 "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": {
6518 "version": "4.0.0",
6519 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz",
6520 "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==",
6521 + "dev": true,
6522 "dependencies": {
6523 "@types/json-schema": "^7.0.9",
6524 "ajv": "^8.8.0",
@@ -6135,6 +6537,7 @@
6537 "version": "0.6.1",
6538 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
6539 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
6540 + "dev": true,
6541 "engines": {
6542 "node": ">=0.10.0"
6543 }
@@ -6143,6 +6546,7 @@
6546 "version": "6.0.2",
6547 "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.2.tgz",
6548 "integrity": "sha512-gv0KQBEM+q/XdoKyznovq3KW7ocO7k+FhPP+hQR1MenJdu0uPGS6IZa9PzlbqBeS6XcZJNAoqoFxlAUW461CrA==",
6549 + "dev": true,
6550 "bin": {
6551 "css-prefers-color-scheme": "dist/cli.cjs"
6552 },
@@ -6157,6 +6561,7 @@
6561 "version": "4.2.1",
6562 "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz",
6563 "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==",
6564 + "dev": true,
6565 "dependencies": {
6566 "boolbase": "^1.0.0",
6567 "css-what": "^5.1.0",
@@ -6171,12 +6576,14 @@
6576 "node_modules/css-select-base-adapter": {
6577 "version": "0.1.1",
6578 "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz",
6174 - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w=="
6579 + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==",
6580 + "dev": true
6581 },
6582 "node_modules/css-tree": {
6583 "version": "1.0.0-alpha.37",
6584 "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz",
6585 "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==",
6586 + "dev": true,
6587 "dependencies": {
6588 "mdn-data": "2.0.4",
6589 "source-map": "^0.6.1"
@@ -6189,6 +6596,7 @@
6596 "version": "0.6.1",
6597 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
6598 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
6599 + "dev": true,
6600 "engines": {
6601 "node": ">=0.10.0"
6602 }
@@ -6206,6 +6614,7 @@
6614 "version": "5.1.0",
6615 "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz",
6616 "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==",
6617 + "dev": true,
6618 "engines": {
6619 "node": ">= 6"
6620 },
@@ -6229,12 +6638,14 @@
6638 "node_modules/cssdb": {
6639 "version": "5.1.0",
6640 "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-5.1.0.tgz",
6232 - "integrity": "sha512-/vqjXhv1x9eGkE/zO6o8ZOI7dgdZbLVLUGyVRbPgk6YipXbW87YzUCcO+Jrmi5bwJlAH6oD+MNeZyRgXea1GZw=="
6641 + "integrity": "sha512-/vqjXhv1x9eGkE/zO6o8ZOI7dgdZbLVLUGyVRbPgk6YipXbW87YzUCcO+Jrmi5bwJlAH6oD+MNeZyRgXea1GZw==",
6642 + "dev": true
6643 },
6644 "node_modules/cssesc": {
6645 "version": "3.0.0",
6646 "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
6647 "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
6648 + "dev": true,
6649 "bin": {
6650 "cssesc": "bin/cssesc"
6651 },
@@ -6246,6 +6657,7 @@
6657 "version": "5.0.16",
6658 "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.0.16.tgz",
6659 "integrity": "sha512-ryhRI9/B9VFCwPbb1z60LLK5/ldoExi7nwdnJzpkLZkm2/r7j2X3jfY+ZvDVJhC/0fPZlrAguYdHNFg0iglPKQ==",
6660 + "dev": true,
6661 "dependencies": {
6662 "cssnano-preset-default": "^5.1.11",
6663 "lilconfig": "^2.0.3",
@@ -6266,6 +6678,7 @@
6678 "version": "5.1.11",
6679 "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.1.11.tgz",
6680 "integrity": "sha512-ETet5hqHxmzQq2ynXMOQofKuLm7VOjMiOB7E2zdtm/hSeCKlD9fabzIUV4GoPcRyJRHi+4kGf0vsfGYbQ4nmPw==",
6681 + "dev": true,
6682 "dependencies": {
6683 "css-declaration-sorter": "^6.0.3",
6684 "cssnano-utils": "^3.0.1",
@@ -6308,6 +6721,7 @@
6721 "version": "3.0.1",
6722 "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.0.1.tgz",
6723 "integrity": "sha512-VNCHL364lh++/ono+S3j9NlUK+d97KNkxI77NlqZU2W3xd2/qmyN61dsa47pTpb55zuU4G4lI7qFjAXZJH1OAQ==",
6724 + "dev": true,
6725 "engines": {
6726 "node": "^10 || ^12 || >=14.0"
6727 },
@@ -6319,6 +6733,7 @@
6733 "version": "4.2.0",
6734 "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz",
6735 "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==",
6736 + "dev": true,
6737 "dependencies": {
6738 "css-tree": "^1.1.2"
6739 },
@@ -6330,6 +6745,7 @@
6745 "version": "1.1.3",
6746 "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
6747 "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
6748 + "dev": true,
6749 "dependencies": {
6750 "mdn-data": "2.0.14",
6751 "source-map": "^0.6.1"
@@ -6341,12 +6757,14 @@
6757 "node_modules/csso/node_modules/mdn-data": {
6758 "version": "2.0.14",
6759 "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
6344 - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow=="
6760 + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==",
6761 + "dev": true
6762 },
6763 "node_modules/csso/node_modules/source-map": {
6764 "version": "0.6.1",
6765 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
6766 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
6767 + "dev": true,
6768 "engines": {
6769 "node": ">=0.10.0"
6770 }
@@ -6354,12 +6772,14 @@
6772 "node_modules/cssom": {
6773 "version": "0.4.4",
6774 "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
6357 - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw=="
6775 + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==",
6776 + "dev": true
6777 },
6778 "node_modules/cssstyle": {
6779 "version": "2.3.0",
6780 "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
6781 "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
6782 + "dev": true,
6783 "dependencies": {
6784 "cssom": "~0.3.6"
6785 },
@@ -6370,7 +6790,8 @@
6790 "node_modules/cssstyle/node_modules/cssom": {
6791 "version": "0.3.8",
6792 "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
6373 - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg=="
6793 + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
6794 + "dev": true
6795 },
6796 "node_modules/csstype": {
6797 "version": "3.0.10",
@@ -6380,12 +6801,14 @@
6801 "node_modules/damerau-levenshtein": {
6802 "version": "1.0.8",
6803 "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
6383 - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA=="
6804 + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==",
6805 + "dev": true
6806 },
6807 "node_modules/data-urls": {
6808 "version": "2.0.0",
6809 "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz",
6810 "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==",
6811 + "dev": true,
6812 "dependencies": {
6813 "abab": "^2.0.3",
6814 "whatwg-mimetype": "^2.3.0",
@@ -6414,7 +6837,8 @@
6837 "node_modules/decimal.js": {
6838 "version": "10.3.1",
6839 "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz",
6417 - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ=="
6840 + "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==",
6841 + "dev": true
6842 },
6843 "node_modules/decode-uri-component": {
6844 "version": "0.2.0",
@@ -6427,12 +6851,14 @@
6851 "node_modules/dedent": {
6852 "version": "0.7.0",
6853 "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
6430 - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw="
6854 + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=",
6855 + "dev": true
6856 },
6857 "node_modules/deep-equal": {
6858 "version": "1.1.1",
6859 "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",
6860 "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==",
6861 + "dev": true,
6862 "dependencies": {
6863 "is-arguments": "^1.0.4",
6864 "is-date-object": "^1.0.1",
@@ -6448,12 +6874,14 @@
6874 "node_modules/deep-is": {
6875 "version": "0.1.4",
6876 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
6451 - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
6877 + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
6878 + "dev": true
6879 },
6880 "node_modules/deepmerge": {
6881 "version": "4.2.2",
6882 "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
6883 "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
6884 + "dev": true,
6885 "engines": {
6886 "node": ">=0.10.0"
6887 }
@@ -6462,6 +6890,7 @@
6890 "version": "6.0.3",
6891 "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz",
6892 "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==",
6893 + "dev": true,
6894 "dependencies": {
6895 "execa": "^5.0.0"
6896 },
@@ -6473,6 +6902,7 @@
6902 "version": "2.0.0",
6903 "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
6904 "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
6905 + "dev": true,
6906 "engines": {
6907 "node": ">=8"
6908 }
@@ -6481,6 +6911,7 @@
6911 "version": "1.1.3",
6912 "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
6913 "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
6914 + "dev": true,
6915 "dependencies": {
6916 "object-keys": "^1.0.12"
6917 },
@@ -6491,12 +6922,14 @@
6922 "node_modules/defined": {
6923 "version": "1.0.0",
6924 "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
6494 - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM="
6925 + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
6926 + "dev": true
6927 },
6928 "node_modules/del": {
6929 "version": "6.0.0",
6930 "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz",
6931 "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==",
6932 + "dev": true,
6933 "dependencies": {
6934 "globby": "^11.0.1",
6935 "graceful-fs": "^4.2.4",
@@ -6518,6 +6951,7 @@
6951 "version": "1.0.0",
6952 "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
6953 "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
6954 + "dev": true,
6955 "engines": {
6956 "node": ">=0.4.0"
6957 }
@@ -6526,6 +6960,7 @@
6960 "version": "1.1.2",
6961 "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
6962 "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
6963 + "dev": true,
6964 "engines": {
6965 "node": ">= 0.6"
6966 }
@@ -6533,12 +6968,14 @@
6968 "node_modules/destroy": {
6969 "version": "1.0.4",
6970 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
6536 - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
6971 + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
6972 + "dev": true
6973 },
6974 "node_modules/detect-newline": {
6975 "version": "3.1.0",
6976 "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
6977 "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
6978 + "dev": true,
6979 "engines": {
6980 "node": ">=8"
6981 }
@@ -6546,12 +6983,14 @@
6983 "node_modules/detect-node": {
6984 "version": "2.1.0",
6985 "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
6549 - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g=="
6986 + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==",
6987 + "dev": true
6988 },
6989 "node_modules/detect-port-alt": {
6990 "version": "1.1.6",
6991 "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz",
6992 "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==",
6993 + "dev": true,
6994 "dependencies": {
6995 "address": "^1.0.1",
6996 "debug": "^2.6.0"
@@ -6568,6 +7007,7 @@
7007 "version": "2.6.9",
7008 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
7009 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
7010 + "dev": true,
7011 "dependencies": {
7012 "ms": "2.0.0"
7013 }
@@ -6575,12 +7015,14 @@
7015 "node_modules/detect-port-alt/node_modules/ms": {
7016 "version": "2.0.0",
7017 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
6578 - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
7018 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
7019 + "dev": true
7020 },
7021 "node_modules/detective": {
7022 "version": "5.2.0",
7023 "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
7024 "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
7025 + "dev": true,
7026 "dependencies": {
7027 "acorn-node": "^1.6.1",
7028 "defined": "^1.0.0",
@@ -6596,7 +7038,8 @@
7038 "node_modules/didyoumean": {
7039 "version": "1.2.2",
7040 "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
6599 - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="
7041 + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
7042 + "dev": true
7043 },
7044 "node_modules/diff-sequences": {
7045 "version": "27.4.0",
@@ -6610,6 +7053,7 @@
7053 "version": "3.0.1",
7054 "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
7055 "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
7056 + "dev": true,
7057 "dependencies": {
7058 "path-type": "^4.0.0"
7059 },
@@ -6620,17 +7064,20 @@
7064 "node_modules/dlv": {
7065 "version": "1.1.3",
7066 "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
6623 - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA=="
7067 + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
7068 + "dev": true
7069 },
7070 "node_modules/dns-equal": {
7071 "version": "1.0.0",
7072 "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
6628 - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0="
7073 + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=",
7074 + "dev": true
7075 },
7076 "node_modules/dns-packet": {
7077 "version": "1.3.4",
7078 "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz",
7079 "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==",
7080 + "dev": true,
7081 "dependencies": {
7082 "ip": "^1.1.0",
7083 "safe-buffer": "^5.0.1"
@@ -6640,6 +7087,7 @@
7087 "version": "2.0.2",
7088 "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz",
7089 "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=",
7090 + "dev": true,
7091 "dependencies": {
7092 "buffer-indexof": "^1.0.0"
7093 }
@@ -6648,6 +7096,7 @@
7096 "version": "3.0.0",
7097 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
7098 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
7099 + "dev": true,
7100 "dependencies": {
7101 "esutils": "^2.0.2"
7102 },
@@ -6664,6 +7113,7 @@
7113 "version": "0.2.0",
7114 "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
7115 "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==",
7116 + "dev": true,
7117 "dependencies": {
7118 "utila": "~0.4"
7119 }
@@ -6681,6 +7131,7 @@
7131 "version": "1.3.2",
7132 "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz",
7133 "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==",
7134 + "dev": true,
7135 "dependencies": {
7136 "domelementtype": "^2.0.1",
7137 "domhandler": "^4.2.0",
@@ -6694,6 +7145,7 @@
7145 "version": "2.2.0",
7146 "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
7147 "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==",
7148 + "dev": true,
7149 "funding": [
7150 {
7151 "type": "github",
@@ -6705,6 +7157,7 @@
7157 "version": "2.0.1",
7158 "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz",
7159 "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==",
7160 + "dev": true,
7161 "dependencies": {
7162 "webidl-conversions": "^5.0.0"
7163 },
@@ -6716,6 +7169,7 @@
7169 "version": "5.0.0",
7170 "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
7171 "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==",
7172 + "dev": true,
7173 "engines": {
7174 "node": ">=8"
7175 }
@@ -6724,6 +7178,7 @@
7178 "version": "4.3.0",
7179 "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz",
7180 "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==",
7181 + "dev": true,
7182 "dependencies": {
7183 "domelementtype": "^2.2.0"
7184 },
@@ -6738,6 +7193,7 @@
7193 "version": "2.8.0",
7194 "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
7195 "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
7196 + "dev": true,
7197 "dependencies": {
7198 "dom-serializer": "^1.0.1",
7199 "domelementtype": "^2.2.0",
@@ -6751,6 +7207,7 @@
7207 "version": "3.0.4",
7208 "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz",
7209 "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==",
7210 + "dev": true,
7211 "dependencies": {
7212 "no-case": "^3.0.4",
7213 "tslib": "^2.0.3"
@@ -6760,6 +7217,7 @@
7217 "version": "10.0.0",
7218 "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz",
7219 "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==",
7220 + "dev": true,
7221 "engines": {
7222 "node": ">=10"
7223 }
@@ -6767,22 +7225,26 @@
7225 "node_modules/dotenv-expand": {
7226 "version": "5.1.0",
7227 "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz",
6770 - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA=="
7228 + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==",
7229 + "dev": true
7230 },
7231 "node_modules/duplexer": {
7232 "version": "0.1.2",
7233 "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
6775 - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg=="
7234 + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
7235 + "dev": true
7236 },
7237 "node_modules/ee-first": {
7238 "version": "1.1.1",
7239 "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
6780 - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
7240 + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
7241 + "dev": true
7242 },
7243 "node_modules/ejs": {
7244 "version": "3.1.6",
7245 "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.6.tgz",
7246 "integrity": "sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==",
7247 + "dev": true,
7248 "dependencies": {
7249 "jake": "^10.6.1"
7250 },
@@ -6802,6 +7264,7 @@
7264 "version": "0.8.1",
7265 "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz",
7266 "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==",
7267 + "dev": true,
7268 "engines": {
7269 "node": ">=10"
7270 },
@@ -6812,12 +7275,14 @@
7275 "node_modules/emoji-regex": {
7276 "version": "9.2.2",
7277 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
6815 - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
7278 + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
7279 + "dev": true
7280 },
7281 "node_modules/emojis-list": {
7282 "version": "3.0.0",
7283 "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
7284 "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
7285 + "dev": true,
7286 "engines": {
7287 "node": ">= 4"
7288 }
@@ -6826,6 +7291,7 @@
7291 "version": "1.0.2",
7292 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
7293 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
7294 + "dev": true,
7295 "engines": {
7296 "node": ">= 0.8"
7297 }
@@ -6834,6 +7300,7 @@
7300 "version": "5.8.3",
7301 "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz",
7302 "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==",
7303 + "dev": true,
7304 "dependencies": {
7305 "graceful-fs": "^4.2.4",
7306 "tapable": "^2.2.0"
@@ -6846,6 +7313,7 @@
7313 "version": "2.2.0",
7314 "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
7315 "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
7316 + "dev": true,
7317 "funding": {
7318 "url": "https://github.com/fb55/entities?sponsor=1"
7319 }
@@ -6862,6 +7330,7 @@
7330 "version": "2.0.6",
7331 "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz",
7332 "integrity": "sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==",
7333 + "dev": true,
7334 "dependencies": {
7335 "stackframe": "^1.1.1"
7336 }
@@ -6870,6 +7339,7 @@
7339 "version": "1.19.1",
7340 "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz",
7341 "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==",
7342 + "dev": true,
7343 "dependencies": {
7344 "call-bind": "^1.0.2",
7345 "es-to-primitive": "^1.2.1",
@@ -6902,12 +7372,14 @@
7372 "node_modules/es-module-lexer": {
7373 "version": "0.9.3",
7374 "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz",
6905 - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ=="
7375 + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==",
7376 + "dev": true
7377 },
7378 "node_modules/es-to-primitive": {
7379 "version": "1.2.1",
7380 "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
7381 "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
7382 + "dev": true,
7383 "dependencies": {
7384 "is-callable": "^1.1.4",
7385 "is-date-object": "^1.0.1",
@@ -6931,7 +7403,8 @@
7403 "node_modules/escape-html": {
7404 "version": "1.0.3",
7405 "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
6934 - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
7406 + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
7407 + "dev": true
7408 },
7409 "node_modules/escape-string-regexp": {
7410 "version": "1.0.5",
@@ -6945,6 +7418,7 @@
7418 "version": "2.0.0",
7419 "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz",
7420 "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==",
7421 + "dev": true,
7422 "dependencies": {
7423 "esprima": "^4.0.1",
7424 "estraverse": "^5.2.0",
@@ -6966,6 +7440,7 @@
7440 "version": "0.3.0",
7441 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
7442 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
7443 + "dev": true,
7444 "dependencies": {
7445 "prelude-ls": "~1.1.2",
7446 "type-check": "~0.3.2"
@@ -6978,6 +7453,7 @@
7453 "version": "0.8.3",
7454 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
7455 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
7456 + "dev": true,
7457 "dependencies": {
7458 "deep-is": "~0.1.3",
7459 "fast-levenshtein": "~2.0.6",
@@ -6994,6 +7470,7 @@
7470 "version": "1.1.2",
7471 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
7472 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
7473 + "dev": true,
7474 "engines": {
7475 "node": ">= 0.8.0"
7476 }
@@ -7002,6 +7479,7 @@
7479 "version": "0.6.1",
7480 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
7481 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
7482 + "dev": true,
7483 "optional": true,
7484 "engines": {
7485 "node": ">=0.10.0"
@@ -7011,6 +7489,7 @@
7489 "version": "0.3.2",
7490 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
7491 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
7492 + "dev": true,
7493 "dependencies": {
7494 "prelude-ls": "~1.1.2"
7495 },
@@ -7022,6 +7501,7 @@
7501 "version": "8.7.0",
7502 "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.7.0.tgz",
7503 "integrity": "sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w==",
7504 + "dev": true,
7505 "dependencies": {
7506 "@eslint/eslintrc": "^1.0.5",
7507 "@humanwhocodes/config-array": "^0.9.2",
@@ -7073,6 +7553,7 @@
7553 "version": "7.0.0",
7554 "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-7.0.0.tgz",
7555 "integrity": "sha512-xyymoxtIt1EOsSaGag+/jmcywRuieQoA2JbPCjnw9HukFj9/97aGPoZVFioaotzk1K5Qt9sHO5EutZbkrAXS0g==",
7556 + "dev": true,
7557 "dependencies": {
7558 "@babel/core": "^7.16.0",
7559 "@babel/eslint-parser": "^7.16.3",
@@ -7100,6 +7581,7 @@
7581 "version": "0.3.6",
7582 "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz",
7583 "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==",
7584 + "dev": true,
7585 "dependencies": {
7586 "debug": "^3.2.7",
7587 "resolve": "^1.20.0"
@@ -7109,6 +7591,7 @@
7591 "version": "3.2.7",
7592 "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
7593 "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
7594 + "dev": true,
7595 "dependencies": {
7596 "ms": "^2.1.1"
7597 }
@@ -7117,6 +7600,7 @@
7600 "version": "2.7.2",
7601 "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.2.tgz",
7602 "integrity": "sha512-zquepFnWCY2ISMFwD/DqzaM++H+7PDzOpUvotJWm/y1BAFt5R4oeULgdrTejKqLkz7MA/tgstsUMNYc7wNdTrg==",
7603 + "dev": true,
7604 "dependencies": {
7605 "debug": "^3.2.7",
7606 "find-up": "^2.1.0"
@@ -7129,6 +7613,7 @@
7613 "version": "3.2.7",
7614 "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
7615 "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
7616 + "dev": true,
7617 "dependencies": {
7618 "ms": "^2.1.1"
7619 }
@@ -7137,6 +7622,7 @@
7622 "version": "2.1.0",
7623 "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
7624 "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
7625 + "dev": true,
7626 "dependencies": {
7627 "locate-path": "^2.0.0"
7628 },
@@ -7148,6 +7634,7 @@
7634 "version": "2.0.0",
7635 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
7636 "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
7637 + "dev": true,
7638 "dependencies": {
7639 "p-locate": "^2.0.0",
7640 "path-exists": "^3.0.0"
@@ -7160,6 +7647,7 @@
7647 "version": "1.3.0",
7648 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
7649 "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
7650 + "dev": true,
7651 "dependencies": {
7652 "p-try": "^1.0.0"
7653 },
@@ -7171,6 +7659,7 @@
7659 "version": "2.0.0",
7660 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
7661 "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
7662 + "dev": true,
7663 "dependencies": {
7664 "p-limit": "^1.1.0"
7665 },
@@ -7182,6 +7671,7 @@
7671 "version": "1.0.0",
7672 "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
7673 "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
7674 + "dev": true,
7675 "engines": {
7676 "node": ">=4"
7677 }
@@ -7190,6 +7680,7 @@
7680 "version": "3.0.0",
7681 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
7682 "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
7683 + "dev": true,
7684 "engines": {
7685 "node": ">=4"
7686 }
@@ -7198,6 +7689,7 @@
7689 "version": "8.0.3",
7690 "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-8.0.3.tgz",
7691 "integrity": "sha512-dX8l6qUL6O+fYPtpNRideCFSpmWOUVx5QcaGLVqe/vlDiBSe4vYljDWDETwnyFzpl7By/WVIu6rcrniCgH9BqQ==",
7692 + "dev": true,
7693 "dependencies": {
7694 "lodash": "^4.17.21",
7695 "string-natural-compare": "^3.0.1"
@@ -7215,6 +7707,7 @@
7707 "version": "2.25.4",
7708 "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz",
7709 "integrity": "sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA==",
7710 + "dev": true,
7711 "dependencies": {
7712 "array-includes": "^3.1.4",
7713 "array.prototype.flat": "^1.2.5",
@@ -7241,6 +7734,7 @@
7734 "version": "2.6.9",
7735 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
7736 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
7737 + "dev": true,
7738 "dependencies": {
7739 "ms": "2.0.0"
7740 }
@@ -7249,6 +7743,7 @@
7743 "version": "2.1.0",
7744 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
7745 "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
7746 + "dev": true,
7747 "dependencies": {
7748 "esutils": "^2.0.2"
7749 },
@@ -7259,12 +7754,14 @@
7754 "node_modules/eslint-plugin-import/node_modules/ms": {
7755 "version": "2.0.0",
7756 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
7262 - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
7757 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
7758 + "dev": true
7759 },
7760 "node_modules/eslint-plugin-jest": {
7761 "version": "25.7.0",
7762 "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz",
7763 "integrity": "sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==",
7764 + "dev": true,
7765 "dependencies": {
7766 "@typescript-eslint/experimental-utils": "^5.0.0"
7767 },
@@ -7288,6 +7785,7 @@
7785 "version": "6.5.1",
7786 "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz",
7787 "integrity": "sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g==",
7788 + "dev": true,
7789 "dependencies": {
7790 "@babel/runtime": "^7.16.3",
7791 "aria-query": "^4.2.2",
@@ -7313,6 +7811,7 @@
7811 "version": "7.28.0",
7812 "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.28.0.tgz",
7813 "integrity": "sha512-IOlFIRHzWfEQQKcAD4iyYDndHwTQiCMcJVJjxempf203jnNLUnW34AXLrV33+nEXoifJE2ZEGmcjKPL8957eSw==",
7814 + "dev": true,
7815 "dependencies": {
7816 "array-includes": "^3.1.4",
7817 "array.prototype.flatmap": "^1.2.5",
@@ -7340,6 +7839,7 @@
7839 "version": "4.3.0",
7840 "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz",
7841 "integrity": "sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA==",
7842 + "dev": true,
7843 "engines": {
7844 "node": ">=10"
7845 },
@@ -7351,6 +7851,7 @@
7851 "version": "2.1.0",
7852 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
7853 "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
7854 + "dev": true,
7855 "dependencies": {
7856 "esutils": "^2.0.2"
7857 },
@@ -7362,6 +7863,7 @@
7863 "version": "2.0.0-next.3",
7864 "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz",
7865 "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==",
7866 + "dev": true,
7867 "dependencies": {
7868 "is-core-module": "^2.2.0",
7869 "path-parse": "^1.0.6"
@@ -7374,6 +7876,7 @@
7876 "version": "6.3.0",
7877 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
7878 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
7879 + "dev": true,
7880 "bin": {
7881 "semver": "bin/semver.js"
7882 }
@@ -7382,6 +7885,7 @@
7885 "version": "5.0.4",
7886 "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.0.4.tgz",
7887 "integrity": "sha512-zA/NfAENCsJXujvwwiap5gsqLp2U6X7m2XA5nOksl4zzb6GpUmRNAleCll58rEP0brFVj7DZBprlIlMGIhoC7Q==",
7888 + "dev": true,
7889 "dependencies": {
7890 "@typescript-eslint/experimental-utils": "^5.9.0"
7891 },
@@ -7397,6 +7901,7 @@
7901 "version": "7.1.0",
7902 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz",
7903 "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==",
7904 + "dev": true,
7905 "dependencies": {
7906 "esrecurse": "^4.3.0",
7907 "estraverse": "^5.2.0"
@@ -7409,6 +7914,7 @@
7914 "version": "3.0.0",
7915 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
7916 "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
7917 + "dev": true,
7918 "dependencies": {
7919 "eslint-visitor-keys": "^2.0.0"
7920 },
@@ -7426,6 +7932,7 @@
7932 "version": "2.1.0",
7933 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
7934 "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
7935 + "dev": true,
7936 "engines": {
7937 "node": ">=10"
7938 }
@@ -7434,6 +7941,7 @@
7941 "version": "3.2.0",
7942 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz",
7943 "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==",
7944 + "dev": true,
7945 "engines": {
7946 "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7947 }
@@ -7442,6 +7950,7 @@
7950 "version": "3.1.1",
7951 "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.1.1.tgz",
7952 "integrity": "sha512-xSucskTN9tOkfW7so4EaiFIkulWLXwCB/15H917lR6pTv0Zot6/fetFucmENRb7J5whVSFKIvwnrnsa78SG2yg==",
7953 + "dev": true,
7954 "dependencies": {
7955 "@types/eslint": "^7.28.2",
7956 "jest-worker": "^27.3.1",
@@ -7465,6 +7974,7 @@
7974 "version": "4.3.0",
7975 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
7976 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
7977 + "dev": true,
7978 "dependencies": {
7979 "color-convert": "^2.0.1"
7980 },
@@ -7478,12 +7988,14 @@
7988 "node_modules/eslint/node_modules/argparse": {
7989 "version": "2.0.1",
7990 "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
7481 - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
7991 + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
7992 + "dev": true
7993 },
7994 "node_modules/eslint/node_modules/chalk": {
7995 "version": "4.1.2",
7996 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
7997 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
7998 + "dev": true,
7999 "dependencies": {
8000 "ansi-styles": "^4.1.0",
8001 "supports-color": "^7.1.0"
@@ -7499,6 +8011,7 @@
8011 "version": "2.0.1",
8012 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
8013 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
8014 + "dev": true,
8015 "dependencies": {
8016 "color-name": "~1.1.4"
8017 },
@@ -7509,12 +8022,14 @@
8022 "node_modules/eslint/node_modules/color-name": {
8023 "version": "1.1.4",
8024 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
7512 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
8025 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
8026 + "dev": true
8027 },
8028 "node_modules/eslint/node_modules/escape-string-regexp": {
8029 "version": "4.0.0",
8030 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
8031 "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
8032 + "dev": true,
8033 "engines": {
8034 "node": ">=10"
8035 },
@@ -7526,6 +8041,7 @@
8041 "version": "13.12.0",
8042 "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz",
8043 "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==",
8044 + "dev": true,
8045 "dependencies": {
8046 "type-fest": "^0.20.2"
8047 },
@@ -7540,6 +8056,7 @@
8056 "version": "4.0.0",
8057 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
8058 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
8059 + "dev": true,
8060 "engines": {
8061 "node": ">=8"
8062 }
@@ -7548,6 +8065,7 @@
8065 "version": "4.1.0",
8066 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
8067 "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
8068 + "dev": true,
8069 "dependencies": {
8070 "argparse": "^2.0.1"
8071 },
@@ -7559,6 +8077,7 @@
8077 "version": "7.2.0",
8078 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
8079 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
8080 + "dev": true,
8081 "dependencies": {
8082 "has-flag": "^4.0.0"
8083 },
@@ -7570,6 +8089,7 @@
8089 "version": "0.20.2",
8090 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
8091 "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
8092 + "dev": true,
8093 "engines": {
8094 "node": ">=10"
8095 },
@@ -7581,6 +8101,7 @@
8101 "version": "9.3.0",
8102 "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz",
8103 "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==",
8104 + "dev": true,
8105 "dependencies": {
8106 "acorn": "^8.7.0",
8107 "acorn-jsx": "^5.3.1",
@@ -7594,6 +8115,7 @@
8115 "version": "4.0.1",
8116 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
8117 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
8118 + "dev": true,
8119 "bin": {
8120 "esparse": "bin/esparse.js",
8121 "esvalidate": "bin/esvalidate.js"
@@ -7606,6 +8128,7 @@
8128 "version": "1.4.0",
8129 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
8130 "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
8131 + "dev": true,
8132 "dependencies": {
8133 "estraverse": "^5.1.0"
8134 },
@@ -7617,6 +8140,7 @@
8140 "version": "4.3.0",
8141 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
8142 "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
8143 + "dev": true,
8144 "dependencies": {
8145 "estraverse": "^5.2.0"
8146 },
@@ -7628,6 +8152,7 @@
8152 "version": "5.3.0",
8153 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
8154 "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
8155 + "dev": true,
8156 "engines": {
8157 "node": ">=4.0"
8158 }
@@ -7635,12 +8160,14 @@
8160 "node_modules/estree-walker": {
8161 "version": "1.0.1",
8162 "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz",
7638 - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg=="
8163 + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==",
8164 + "dev": true
8165 },
8166 "node_modules/esutils": {
8167 "version": "2.0.3",
8168 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
8169 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
8170 + "dev": true,
8171 "engines": {
8172 "node": ">=0.10.0"
8173 }
@@ -7649,6 +8176,7 @@
8176 "version": "1.8.1",
8177 "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
8178 "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
8179 + "dev": true,
8180 "engines": {
8181 "node": ">= 0.6"
8182 }
@@ -7656,12 +8184,14 @@
8184 "node_modules/eventemitter3": {
8185 "version": "4.0.7",
8186 "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
7659 - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="
8187 + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
8188 + "dev": true
8189 },
8190 "node_modules/events": {
8191 "version": "3.3.0",
8192 "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
8193 "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
8194 + "dev": true,
8195 "engines": {
8196 "node": ">=0.8.x"
8197 }
@@ -7670,6 +8200,7 @@
8200 "version": "5.1.1",
8201 "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
8202 "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
8203 + "dev": true,
8204 "dependencies": {
8205 "cross-spawn": "^7.0.3",
8206 "get-stream": "^6.0.0",
@@ -7692,6 +8223,7 @@
8223 "version": "0.1.2",
8224 "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
8225 "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
8226 + "dev": true,
8227 "engines": {
8228 "node": ">= 0.8.0"
8229 }
@@ -7700,6 +8232,7 @@
8232 "version": "27.4.6",
8233 "resolved": "https://registry.npmjs.org/expect/-/expect-27.4.6.tgz",
8234 "integrity": "sha512-1M/0kAALIaj5LaG66sFJTbRsWTADnylly82cu4bspI0nl+pgP4E6Bh/aqdHlTUjul06K7xQnnrAoqfxVU0+/ag==",
8235 + "dev": true,
8236 "dependencies": {
8237 "@jest/types": "^27.4.2",
8238 "jest-get-type": "^27.4.0",
@@ -7714,6 +8247,7 @@
8247 "version": "4.17.2",
8248 "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz",
8249 "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==",
8250 + "dev": true,
8251 "dependencies": {
8252 "accepts": "~1.3.7",
8253 "array-flatten": "1.1.1",
@@ -7753,12 +8287,14 @@
8287 "node_modules/express/node_modules/array-flatten": {
8288 "version": "1.1.1",
8289 "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
7756 - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
8290 + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
8291 + "dev": true
8292 },
8293 "node_modules/express/node_modules/debug": {
8294 "version": "2.6.9",
8295 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
8296 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
8297 + "dev": true,
8298 "dependencies": {
8299 "ms": "2.0.0"
8300 }
@@ -7766,12 +8302,14 @@
8302 "node_modules/express/node_modules/ms": {
8303 "version": "2.0.0",
8304 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
7769 - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
8305 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
8306 + "dev": true
8307 },
8308 "node_modules/express/node_modules/safe-buffer": {
8309 "version": "5.2.1",
8310 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
8311 "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
8312 + "dev": true,
8313 "funding": [
8314 {
8315 "type": "github",
@@ -7790,12 +8328,14 @@
8328 "node_modules/fast-deep-equal": {
8329 "version": "3.1.3",
8330 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
7793 - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
8331 + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
8332 + "dev": true
8333 },
8334 "node_modules/fast-glob": {
8335 "version": "3.2.11",
8336 "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
8337 "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
8338 + "dev": true,
8339 "dependencies": {
8340 "@nodelib/fs.stat": "^2.0.2",
8341 "@nodelib/fs.walk": "^1.2.3",
@@ -7811,6 +8351,7 @@
8351 "version": "5.1.2",
8352 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
8353 "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
8354 + "dev": true,
8355 "dependencies": {
8356 "is-glob": "^4.0.1"
8357 },
@@ -7821,17 +8362,20 @@
8362 "node_modules/fast-json-stable-stringify": {
8363 "version": "2.1.0",
8364 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
7824 - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
8365 + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
8366 + "dev": true
8367 },
8368 "node_modules/fast-levenshtein": {
8369 "version": "2.0.6",
8370 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
7829 - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
8371 + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
8372 + "dev": true
8373 },
8374 "node_modules/fastq": {
8375 "version": "1.13.0",
8376 "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
8377 "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
8378 + "dev": true,
8379 "dependencies": {
8380 "reusify": "^1.0.4"
8381 }
@@ -7840,6 +8384,7 @@
8384 "version": "0.11.4",
8385 "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz",
8386 "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==",
8387 + "dev": true,
8388 "dependencies": {
8389 "websocket-driver": ">=0.5.1"
8390 },
@@ -7851,6 +8396,7 @@
8396 "version": "2.0.1",
8397 "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz",
8398 "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==",
8399 + "dev": true,
8400 "dependencies": {
8401 "bser": "2.1.1"
8402 }
@@ -7859,6 +8405,7 @@
8405 "version": "6.0.1",
8406 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
8407 "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
8408 + "dev": true,
8409 "dependencies": {
8410 "flat-cache": "^3.0.4"
8411 },
@@ -7870,6 +8417,7 @@
8417 "version": "6.2.0",
8418 "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz",
8419 "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==",
8420 + "dev": true,
8421 "dependencies": {
8422 "loader-utils": "^2.0.0",
8423 "schema-utils": "^3.0.0"
@@ -7889,6 +8437,7 @@
8437 "version": "1.0.2",
8438 "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz",
8439 "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==",
8440 + "dev": true,
8441 "dependencies": {
8442 "minimatch": "^3.0.4"
8443 }
@@ -7897,6 +8446,7 @@
8446 "version": "8.0.7",
8447 "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz",
8448 "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==",
8449 + "dev": true,
8450 "engines": {
8451 "node": ">= 0.4.0"
8452 }
@@ -7905,6 +8455,7 @@
8455 "version": "7.0.1",
8456 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
8457 "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
8458 + "dev": true,
8459 "dependencies": {
8460 "to-regex-range": "^5.0.1"
8461 },
@@ -7916,6 +8467,7 @@
8467 "version": "1.1.2",
8468 "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
8469 "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
8470 + "dev": true,
8471 "dependencies": {
8472 "debug": "2.6.9",
8473 "encodeurl": "~1.0.2",
@@ -7933,6 +8485,7 @@
8485 "version": "2.6.9",
8486 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
8487 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
8488 + "dev": true,
8489 "dependencies": {
8490 "ms": "2.0.0"
8491 }
@@ -7940,12 +8493,14 @@
8493 "node_modules/finalhandler/node_modules/ms": {
8494 "version": "2.0.0",
8495 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
7943 - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
8496 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
8497 + "dev": true
8498 },
8499 "node_modules/find-cache-dir": {
8500 "version": "3.3.2",
8501 "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
8502 "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
8503 + "dev": true,
8504 "dependencies": {
8505 "commondir": "^1.0.1",
8506 "make-dir": "^3.0.2",
@@ -7967,6 +8522,7 @@
8522 "version": "5.0.0",
8523 "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
8524 "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
8525 + "dev": true,
8526 "dependencies": {
8527 "locate-path": "^6.0.0",
8528 "path-exists": "^4.0.0"
@@ -7982,6 +8538,7 @@
8538 "version": "3.0.4",
8539 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
8540 "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
8541 + "dev": true,
8542 "dependencies": {
8543 "flatted": "^3.1.0",
8544 "rimraf": "^3.0.2"
@@ -7993,12 +8550,14 @@
8550 "node_modules/flatted": {
8551 "version": "3.2.4",
8552 "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz",
7996 - "integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw=="
8553 + "integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==",
8554 + "dev": true
8555 },
8556 "node_modules/follow-redirects": {
8557 "version": "1.14.7",
8558 "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz",
8559 "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==",
8560 + "dev": true,
8561 "funding": [
8562 {
8563 "type": "individual",
@@ -8018,6 +8577,7 @@
8577 "version": "6.5.0",
8578 "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.0.tgz",
8579 "integrity": "sha512-cS178Y+xxtIjEUorcHddKS7yCMlrDPV31mt47blKKRfMd70Kxu5xruAFE2o9sDY6wVC5deuob/u/alD04YYHnw==",
8580 + "dev": true,
8581 "dependencies": {
8582 "@babel/code-frame": "^7.8.3",
8583 "@types/json-schema": "^7.0.5",
@@ -8056,6 +8616,7 @@
8616 "version": "4.3.0",
8617 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
8618 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
8619 + "dev": true,
8620 "dependencies": {
8621 "color-convert": "^2.0.1"
8622 },
@@ -8070,6 +8631,7 @@
8631 "version": "4.1.2",
8632 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
8633 "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
8634 + "dev": true,
8635 "dependencies": {
8636 "ansi-styles": "^4.1.0",
8637 "supports-color": "^7.1.0"
@@ -8085,6 +8647,7 @@
8647 "version": "2.0.1",
8648 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
8649 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
8650 + "dev": true,
8651 "dependencies": {
8652 "color-name": "~1.1.4"
8653 },
@@ -8095,12 +8658,14 @@
8658 "node_modules/fork-ts-checker-webpack-plugin/node_modules/color-name": {
8659 "version": "1.1.4",
8660 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
8098 - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
8661 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
8662 + "dev": true
8663 },
8664 "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": {
8665 "version": "6.0.0",
8666 "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
8667 "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
8668 + "dev": true,
8669 "dependencies": {
8670 "@types/parse-json": "^4.0.0",
8671 "import-fresh": "^3.1.0",
@@ -8116,6 +8681,7 @@
8681 "version": "9.1.0",
8682 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
8683 "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
8684 + "dev": true,
8685 "dependencies": {
8686 "at-least-node": "^1.0.0",
8687 "graceful-fs": "^4.2.0",
@@ -8130,6 +8696,7 @@
8696 "version": "4.0.0",
8697 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
8698 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
8699 + "dev": true,
8700 "engines": {
8701 "node": ">=8"
8702 }
@@ -8138,6 +8705,7 @@
8705 "version": "2.7.0",
8706 "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz",
8707 "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==",
8708 + "dev": true,
8709 "dependencies": {
8710 "@types/json-schema": "^7.0.4",
8711 "ajv": "^6.12.2",
@@ -8155,6 +8723,7 @@
8723 "version": "7.2.0",
8724 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
8725 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
8726 + "dev": true,
8727 "dependencies": {
8728 "has-flag": "^4.0.0"
8729 },
@@ -8166,6 +8735,7 @@
8735 "version": "1.1.3",
8736 "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz",
8737 "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==",
8738 + "dev": true,
8739 "engines": {
8740 "node": ">=6"
8741 }
@@ -8174,6 +8744,7 @@
8744 "version": "3.0.1",
8745 "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz",
8746 "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==",
8747 + "dev": true,
8748 "dependencies": {
8749 "asynckit": "^0.4.0",
8750 "combined-stream": "^1.0.8",
@@ -8187,6 +8758,7 @@
8758 "version": "0.2.0",
8759 "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
8760 "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
8761 + "dev": true,
8762 "engines": {
8763 "node": ">= 0.6"
8764 }
@@ -8195,6 +8767,7 @@
8767 "version": "4.1.2",
8768 "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.2.tgz",
8769 "integrity": "sha512-o2RiJQ6DZaR/5+Si0qJUIy637QMRudSi9kU/FFzx9EZazrIdnBgpU+3sEWCxAVhH2RtxW2Oz+T4p2o8uOPVcgA==",
8770 + "dev": true,
8771 "engines": {
8772 "node": "*"
8773 },
@@ -8207,6 +8780,7 @@
8780 "version": "0.5.2",
8781 "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
8782 "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
8783 + "dev": true,
8784 "engines": {
8785 "node": ">= 0.6"
8786 }
@@ -8215,6 +8789,7 @@
8789 "version": "10.0.0",
8790 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz",
8791 "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==",
8792 + "dev": true,
8793 "dependencies": {
8794 "graceful-fs": "^4.2.0",
8795 "jsonfile": "^6.0.1",
@@ -8227,17 +8802,20 @@
8802 "node_modules/fs-monkey": {
8803 "version": "1.0.3",
8804 "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz",
8230 - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q=="
8805 + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==",
8806 + "dev": true
8807 },
8808 "node_modules/fs.realpath": {
8809 "version": "1.0.0",
8810 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
8235 - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
8811 + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
8812 + "dev": true
8813 },
8814 "node_modules/fsevents": {
8815 "version": "2.3.2",
8816 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
8817 "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
8818 + "dev": true,
8819 "hasInstallScript": true,
8820 "optional": true,
8821 "os": [
@@ -8255,7 +8833,8 @@
8833 "node_modules/functional-red-black-tree": {
8834 "version": "1.0.1",
8835 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
8258 - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc="
8836 + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
8837 + "dev": true
8838 },
8839 "node_modules/gensync": {
8840 "version": "1.0.0-beta.2",
@@ -8269,6 +8848,7 @@
8848 "version": "2.0.5",
8849 "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
8850 "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
8851 + "dev": true,
8852 "engines": {
8853 "node": "6.* || 8.* || >= 10.*"
8854 }
@@ -8277,6 +8857,7 @@
8857 "version": "1.1.1",
8858 "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
8859 "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
8860 + "dev": true,
8861 "dependencies": {
8862 "function-bind": "^1.1.1",
8863 "has": "^1.0.3",
@@ -8289,12 +8870,14 @@
8870 "node_modules/get-own-enumerable-property-symbols": {
8871 "version": "3.0.2",
8872 "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz",
8292 - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g=="
8873 + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==",
8874 + "dev": true
8875 },
8876 "node_modules/get-package-type": {
8877 "version": "0.1.0",
8878 "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
8879 "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
8880 + "dev": true,
8881 "engines": {
8882 "node": ">=8.0.0"
8883 }
@@ -8303,6 +8886,7 @@
8886 "version": "6.0.1",
8887 "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
8888 "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
8889 + "dev": true,
8890 "engines": {
8891 "node": ">=10"
8892 },
@@ -8314,6 +8898,7 @@
8898 "version": "1.0.0",
8899 "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
8900 "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
8901 + "dev": true,
8902 "dependencies": {
8903 "call-bind": "^1.0.2",
8904 "get-intrinsic": "^1.1.1"
@@ -8329,6 +8914,7 @@
8914 "version": "7.2.0",
8915 "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
8916 "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
8917 + "dev": true,
8918 "dependencies": {
8919 "fs.realpath": "^1.0.0",
8920 "inflight": "^1.0.4",
@@ -8348,6 +8934,7 @@
8934 "version": "6.0.2",
8935 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
8936 "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
8937 + "dev": true,
8938 "dependencies": {
8939 "is-glob": "^4.0.3"
8940 },
@@ -8358,12 +8945,14 @@
8945 "node_modules/glob-to-regexp": {
8946 "version": "0.4.1",
8947 "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
8361 - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
8948 + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
8949 + "dev": true
8950 },
8951 "node_modules/global-modules": {
8952 "version": "2.0.0",
8953 "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
8954 "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
8955 + "dev": true,
8956 "dependencies": {
8957 "global-prefix": "^3.0.0"
8958 },
@@ -8375,6 +8964,7 @@
8964 "version": "3.0.0",
8965 "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
8966 "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
8967 + "dev": true,
8968 "dependencies": {
8969 "ini": "^1.3.5",
8970 "kind-of": "^6.0.2",
@@ -8388,6 +8978,7 @@
8978 "version": "1.3.1",
8979 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
8980 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
8981 + "dev": true,
8982 "dependencies": {
8983 "isexe": "^2.0.0"
8984 },
@@ -8407,6 +8998,7 @@
8998 "version": "11.1.0",
8999 "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
9000 "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
9001 + "dev": true,
9002 "dependencies": {
9003 "array-union": "^2.1.0",
9004 "dir-glob": "^3.0.1",
@@ -8425,12 +9017,14 @@
9017 "node_modules/graceful-fs": {
9018 "version": "4.2.9",
9019 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz",
8428 - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ=="
9020 + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==",
9021 + "dev": true
9022 },
9023 "node_modules/gzip-size": {
9024 "version": "6.0.0",
9025 "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz",
9026 "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==",
9027 + "dev": true,
9028 "dependencies": {
9029 "duplexer": "^0.1.2"
9030 },
@@ -8444,12 +9038,14 @@
9038 "node_modules/handle-thing": {
9039 "version": "2.0.1",
9040 "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz",
8447 - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg=="
9041 + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==",
9042 + "dev": true
9043 },
9044 "node_modules/harmony-reflect": {
9045 "version": "1.6.2",
9046 "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz",
8452 - "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g=="
9047 + "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==",
9048 + "dev": true
9049 },
9050 "node_modules/has": {
9051 "version": "1.0.3",
@@ -8466,6 +9062,7 @@
9062 "version": "1.0.1",
9063 "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
9064 "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==",
9065 + "dev": true,
9066 "funding": {
9067 "url": "https://github.com/sponsors/ljharb"
9068 }
@@ -8482,6 +9079,7 @@
9079 "version": "1.0.2",
9080 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
9081 "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==",
9082 + "dev": true,
9083 "engines": {
9084 "node": ">= 0.4"
9085 },
@@ -8493,6 +9091,7 @@
9091 "version": "1.0.0",
9092 "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
9093 "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
9094 + "dev": true,
9095 "dependencies": {
9096 "has-symbols": "^1.0.2"
9097 },
@@ -8507,6 +9106,7 @@
9106 "version": "1.2.0",
9107 "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
9108 "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
9109 + "dev": true,
9110 "bin": {
9111 "he": "bin/he"
9112 }
@@ -8536,6 +9136,7 @@
9136 "version": "0.1.4",
9137 "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
9138 "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==",
9139 + "dev": true,
9140 "engines": {
9141 "node": ">= 6.0.0"
9142 }
@@ -8544,6 +9145,7 @@
9145 "version": "2.1.6",
9146 "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
9147 "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=",
9148 + "dev": true,
9149 "dependencies": {
9150 "inherits": "^2.0.1",
9151 "obuf": "^1.0.0",
@@ -8555,6 +9157,7 @@
9157 "version": "2.3.7",
9158 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
9159 "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
9160 + "dev": true,
9161 "dependencies": {
9162 "core-util-is": "~1.0.0",
9163 "inherits": "~2.0.3",
@@ -8569,6 +9172,7 @@
9172 "version": "1.1.1",
9173 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
9174 "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
9175 + "dev": true,
9176 "dependencies": {
9177 "safe-buffer": "~5.1.0"
9178 }
@@ -8577,6 +9181,7 @@
9181 "version": "2.0.1",
9182 "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz",
9183 "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==",
9184 + "dev": true,
9185 "dependencies": {
9186 "whatwg-encoding": "^1.0.5"
9187 },
@@ -8587,17 +9192,20 @@
9192 "node_modules/html-entities": {
9193 "version": "2.3.2",
9194 "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz",
8590 - "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ=="
9195 + "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==",
9196 + "dev": true
9197 },
9198 "node_modules/html-escaper": {
9199 "version": "2.0.2",
9200 "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
8595 - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg=="
9201 + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
9202 + "dev": true
9203 },
9204 "node_modules/html-minifier-terser": {
9205 "version": "6.1.0",
9206 "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
9207 "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==",
9208 + "dev": true,
9209 "dependencies": {
9210 "camel-case": "^4.1.2",
9211 "clean-css": "^5.2.2",
@@ -8618,6 +9226,7 @@
9226 "version": "5.5.0",
9227 "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz",
9228 "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==",
9229 + "dev": true,
9230 "dependencies": {
9231 "@types/html-minifier-terser": "^6.0.0",
9232 "html-minifier-terser": "^6.0.2",
@@ -8640,6 +9249,7 @@
9249 "version": "6.1.0",
9250 "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
9251 "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==",
9252 + "dev": true,
9253 "funding": [
9254 "https://github.com/fb55/htmlparser2?sponsor=1",
9255 {
@@ -8657,12 +9267,14 @@
9267 "node_modules/http-deceiver": {
9268 "version": "1.2.7",
9269 "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz",
8660 - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc="
9270 + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=",
9271 + "dev": true
9272 },
9273 "node_modules/http-errors": {
9274 "version": "1.8.1",
9275 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz",
9276 "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==",
9277 + "dev": true,
9278 "dependencies": {
9279 "depd": "~1.1.2",
9280 "inherits": "2.0.4",
@@ -8677,12 +9289,14 @@
9289 "node_modules/http-parser-js": {
9290 "version": "0.5.5",
9291 "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.5.tgz",
8680 - "integrity": "sha512-x+JVEkO2PoM8qqpbPbOL3cqHPwerep7OwzK7Ay+sMQjKzaKCqWvjoXm5tqMP9tXWWTnTzAjIhXg+J99XYuPhPA=="
9292 + "integrity": "sha512-x+JVEkO2PoM8qqpbPbOL3cqHPwerep7OwzK7Ay+sMQjKzaKCqWvjoXm5tqMP9tXWWTnTzAjIhXg+J99XYuPhPA==",
9293 + "dev": true
9294 },
9295 "node_modules/http-proxy": {
9296 "version": "1.18.1",
9297 "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz",
9298 "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==",
9299 + "dev": true,
9300 "dependencies": {
9301 "eventemitter3": "^4.0.0",
9302 "follow-redirects": "^1.0.0",
@@ -8696,6 +9310,7 @@
9310 "version": "4.0.1",
9311 "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
9312 "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
9313 + "dev": true,
9314 "dependencies": {
9315 "@tootallnate/once": "1",
9316 "agent-base": "6",
@@ -8709,6 +9324,7 @@
9324 "version": "2.0.1",
9325 "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.1.tgz",
9326 "integrity": "sha512-cfaXRVoZxSed/BmkA7SwBVNI9Kj7HFltaE5rqYOub5kWzWZ+gofV2koVN1j2rMW7pEfSSlCHGJ31xmuyFyfLOg==",
9327 + "dev": true,
9328 "dependencies": {
9329 "@types/http-proxy": "^1.17.5",
9330 "http-proxy": "^1.18.1",
@@ -8724,6 +9340,7 @@
9340 "version": "5.0.0",
9341 "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz",
9342 "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
9343 + "dev": true,
9344 "dependencies": {
9345 "agent-base": "6",
9346 "debug": "4"
@@ -8736,6 +9353,7 @@
9353 "version": "2.1.0",
9354 "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
9355 "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
9356 + "dev": true,
9357 "engines": {
9358 "node": ">=10.17.0"
9359 }
@@ -8749,6 +9367,7 @@
9367 "version": "0.6.3",
9368 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
9369 "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
9370 + "dev": true,
9371 "dependencies": {
9372 "safer-buffer": ">= 2.1.2 < 3.0.0"
9373 },
@@ -8760,6 +9379,7 @@
9379 "version": "5.1.0",
9380 "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz",
9381 "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==",
9382 + "dev": true,
9383 "engines": {
9384 "node": "^10 || ^12 || >= 14"
9385 },
@@ -8770,12 +9390,14 @@
9390 "node_modules/idb": {
9391 "version": "6.1.5",
9392 "resolved": "https://registry.npmjs.org/idb/-/idb-6.1.5.tgz",
8773 - "integrity": "sha512-IJtugpKkiVXQn5Y+LteyBCNk1N8xpGV3wWZk9EVtZWH8DYkjBn0bX1XnGP9RkyZF0sAcywa6unHqSWKe7q4LGw=="
9393 + "integrity": "sha512-IJtugpKkiVXQn5Y+LteyBCNk1N8xpGV3wWZk9EVtZWH8DYkjBn0bX1XnGP9RkyZF0sAcywa6unHqSWKe7q4LGw==",
9394 + "dev": true
9395 },
9396 "node_modules/identity-obj-proxy": {
9397 "version": "3.0.0",
9398 "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz",
9399 "integrity": "sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ=",
9400 + "dev": true,
9401 "dependencies": {
9402 "harmony-reflect": "^1.4.6"
9403 },
@@ -8787,6 +9409,7 @@
9409 "version": "5.2.0",
9410 "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
9411 "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
9412 + "dev": true,
9413 "engines": {
9414 "node": ">= 4"
9415 }
@@ -8795,6 +9418,7 @@
9418 "version": "9.0.12",
9419 "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.12.tgz",

This file is too large to show in full.

admin/package.json
+9 -5
@@ -21,18 +21,22 @@
21 "@testing-library/jest-dom": "^5.16.1",
22 "@testing-library/react": "^12.1.2",
23 "@testing-library/user-event": "^13.5.0",
24 - "@types/jest": "^27.4.0",
25 - "@types/node": "^16.11.21",
26 - "@types/react": "^17.0.38",
27 - "@types/react-dom": "^17.0.11",
24 + "js-sha512": "^0.8.0",
25 + "tssrp6a": "^3.0.0",
26 "react": "^17.0.2",
27 "react-dom": "^17.0.2",
28 "react-router-dom": "^6.2.1",
31 - "react-scripts": "5.0.0",
29 "typescript": "^4.5.5",
30 "valtio": "^1.2.9",
31 "web-vitals": "^2.1.4"
32 },
33 + "devDependencies": {
34 + "@types/jest": "^27.4.0",
35 + "@types/node": "^16.11.21",
36 + "@types/react": "^17.0.38",
37 + "@types/react-dom": "^17.0.11",
38 + "react-scripts": "5.0.0"
39 + },
40 "eslintConfig": {
41 "extends": [
42 "react-app",
admin/src/AccountsPage.ts
+198 -6
@@ -1,11 +1,203 @@
1 -import { isValidElement, createElement as h } from "react"
2 -import { useApiComp } from './api'
1 +import { isValidElement, createElement as h, useState, useEffect, Fragment } from "react"
2 +import { apiCall, useApiComp } from './api'
3 +import { Box, Button, Card, CardContent, Grid, List, ListItem, ListItemText, Typography } from '@mui/material'
4 +import { Delete, Group, Person, PersonAdd, Refresh } from '@mui/icons-material'
5 +import { BoolField, Form, SelectField, StringField } from './Form'
6 +import { alertDialog, confirmDialog } from './dialog'
7 +import { isEqualLax, onlyTruthy } from './misc'
8 +import { TreeItem, TreeView } from '@mui/lab'
9 +import { makeStyles } from '@mui/styles'
10 +import { createVerifierAndSalt, SRPParameters, SRPRoutines } from 'tssrp6a'
11 +
12 +const useStyles = makeStyles({
13 + label: {
14 + display: 'flex',
15 + gap: '.5em',
16 + lineHeight: '2em',
17 + alignItems: 'center',
18 + }
19 +})
20 +
21 +interface Account {
22 + username: string
23 + hasPassword?: boolean
24 + ignore_limits?: boolean
25 + redirect?: string
26 +}
27
28 export default function AccountsPage() {
5 - const [res] = useApiComp('get_usernames')
29 + const [res, reload] = useApiComp('get_accounts')
30 + const [sel, setSel] = useState<string[]>([])
31 + const [add, setAdd] = useState(false)
32 + const styles = useStyles()
33 + useEffect(() => {
34 + if (isValidElement(res) || !Array.isArray(res?.list)) return
35 + setSel( sel.filter(u => res.list.find((e:any) => e?.username === u)) ) // remove elements that don't exist anymore
36 + }, [res])
37 if (isValidElement(res))
38 return res
8 - return h('ul', {},
9 - res.list.map((x: string) =>
10 - h('li', { key: x }, x)))
39 + const { list }: { list: Account[] } = res
40 + const account = add ? { username: '', hasPassword:true } : sel.length === 1 && list.find(x => x.username === sel[0])
41 + return h(Grid, { container: true, maxWidth: '50em' },
42 + h(Grid, { item: true, xs: 12 },
43 + h(Box, {
44 + display: 'flex',
45 + gap: 2,
46 + mb: 2,
47 + sx: {
48 + position: 'sticky',
49 + top: 0,
50 + zIndex: 2,
51 + backgroundColor: 'background.paper',
52 + width: 'fit-content',
53 + },
54 + },
55 + h(Button, {
56 + variant: 'contained',
57 + startIcon: h(PersonAdd),
58 + onClick(){ setAdd(true) }
59 + }, "Add"),
60 + h(Button, {
61 + disabled: !sel.length,
62 + startIcon: h(Delete),
63 + async onClick(){
64 + if (!await confirmDialog(`You are going to delete ${sel.length} accounts`))
65 + return
66 + const errors = onlyTruthy(await Promise.all(sel.map(username =>
67 + apiCall('del_account', { username }).then(() => null, () => username) )))
68 + if (errors.length)
69 + return alertDialog(errors.length === sel.length ? "Request failed" : hList("Some accounts were not deleted", errors), 'error')
70 + reload()
71 + }
72 + }, "Remove"),
73 + h(Button, { onClick: reload, startIcon: h(Refresh) }, "Reload"),
74 + h(Typography, { p: 1 }, `${list.length} account(s)`),
75 + ) ),
76 + h(Grid, { item: true, md: 6 },
77 + h(TreeView, {
78 + multiSelect: true,
79 + sx: { pr: 4, minWidth: '15em' },
80 + onNodeSelect(ev, ids) {
81 + setAdd(false)
82 + setSel(ids)
83 + }
84 + },
85 + list.map((ac: Account) =>
86 + h(TreeItem, {
87 + key: ac.username,
88 + nodeId: ac.username,
89 + label: h('div', { className: styles.label }, account2icon(ac), ac.username ),
90 + })
91 + )
92 + )
93 + ),
94 + (add || sel.length > 0) && h(Grid, { item: true, md: 6 },
95 + h(Card, {},
96 + h(CardContent, {},
97 + account ? h(AccountForm, {
98 + account,
99 + groups: list.filter(x => !x.hasPassword).map( x => x.username ),
100 + done(username) {
101 + setAdd(false)
102 + setSel([username])
103 + reload()
104 + }
105 + }) : h(Box, {},
106 + h(Typography, {}, sel.length + " selected"),
107 + h(List, {},
108 + sel.map(username =>
109 + h(ListItem, { key: username },
110 + h(ListItemText, {}, username))))
111 + )
112 + )))
113 + )
114 +}
115 +
116 +function hList(heading: string, list: any[]) {
117 + return h(Fragment, {},
118 + heading>'' && h(Typography, {}, heading),
119 + h(List, {},
120 + list.map((text,key) =>
121 + h(ListItem, { key },
122 + typeof text === 'string' ? h(ListItemText, {}, text) : text) ))
123 + )
124 +}
125 +
126 +function AccountForm({ account, done, groups }: { account: Account, groups: string[], done: (username: string)=>void }) {
127 + const [values, setValues] = useState<Account & { password?: string, password2?: string }>(account)
128 + const [belongsOptions, setBelongOptions] = useState<string[]>([])
129 + useEffect(() => {
130 + setValues(account)
131 + setBelongOptions(groups.filter(x => x !== account.username ))
132 + }, [JSON.stringify(account)]) //eslint-disable-line
133 + const add = !account.username
134 + const group = !values.hasPassword
135 + return h(Form, {
136 + values,
137 + set(v, { k }) {
138 + setValues({ ...values, [k]: v })
139 + },
140 + barSx: { width: 'initial', justifyContent: 'space-between' },
141 + addToBar: [ account2icon(values, { fontSize: 'large', sx: { p: 1 }}) ],
142 + fields: [
143 + add && { k: 'hasPassword', comp: SelectField, label: 'Account type', options: [{ value: true, label: 'Simple' }, { value: false, label: 'Group' }] },
144 + { k: 'username', label: group ? 'Group name' : undefined, autoComplete: 'off' },
145 + !group && { k: 'password', comp: StringField, md: 6, type: 'password', autoComplete: 'new-password', label: add ? 'Password' : 'Change password' },
146 + !group && { k: 'password2', comp: StringField, md: 6, type: 'password', autoComplete: 'off', label: 'Repeat password' },
147 + { k: 'ignore_limits', comp: BoolField },
148 + { k: 'redirect', comp: StringField },
149 + { k: 'belongs', comp: SelectField, multiple: true, label: "Inherits from", options: belongsOptions }
150 + ],
151 + save: {
152 + disabled: isEqualLax(values, account),
153 + async onClick() {
154 + const { username } = values
155 + if (!username)
156 + return alertDialog(`Username cannot be empty`, 'warning')
157 + const { hasPassword, password, password2, ...withoutPassword } = values
158 + if (password !== password2)
159 + return alertDialog("You entered 2 different passwords, please fix", 'error')
160 + try {
161 + if (add) {
162 + if (hasPassword && !password)
163 + return alertDialog("Please provide a password", 'warning')
164 + await apiCall('add_account', withoutPassword)
165 + if (password)
166 + try { await apiNewPassword(username, password) }
167 + catch(e) {
168 + apiCall('del_account', { username }).then() // best effort, don't wait
169 + throw e
170 + }
171 + done(username)
172 + return alertDialog("Account created")
173 + }
174 + await apiCall('set_account', {
175 + username: account.username,
176 + changes: withoutPassword,
177 + })
178 + if (password)
179 + await apiNewPassword(username, password)
180 + done(username)
181 + return alertDialog("Account modified")
182 + }
183 + catch (e) {
184 + return alertDialog(e as Error)
185 + }
186 + }
187 + }
188 + })
189 +}
190 +
191 +function account2icon(ac: Account, props={}) {
192 + return h(ac.hasPassword ? Person : Group, props)
193 +}
194 +
195 +async function apiNewPassword(username: string, password: string) {
196 + const srp6aNimbusRoutines = new SRPRoutines(new SRPParameters())
197 + const res = await createVerifierAndSalt(srp6aNimbusRoutines, username, password)
198 + return apiCall('change_srp', { username, salt: String(res.s), verifier: String(res.v) }).catch(e => {
199 + if (e.code !== 406) // 406 = server was configured to support clear text authentication
200 + throw e
201 + return apiCall('change_password', { username, newPassword: password }) // unencrypted version
202 + })
203 }
admin/src/FileCard.ts
+1 -7
@@ -4,7 +4,7 @@ import { Card, CardContent, List, ListItem, ListItemText } from '@mui/material'
4 import { BoolField, DisplayField, Form } from './Form'
5 import _ from 'lodash'
6 import { apiCall } from './api'
7 -import { formatBytes, objSameKeys } from './misc'
7 +import { formatBytes, isEqualLax, objSameKeys } from './misc'
8 import { reloadVfs } from './VfsPage'
9 import { alertDialog } from './dialog'
10 import PermField from './PermField'
@@ -67,9 +67,3 @@ function FileForm({ file }:any) {
67 ]
68 })
69 }
70 -
71 -function isEqualLax(a: any,b: any): boolean {
72 - return a == b //eslint-disable-line
73 - || (a && b && typeof a === 'object' && typeof b === 'object'
74 - && Object.entries(a).every(([k,v]) => isEqualLax(v, b[k])) )
75 -}
admin/src/Form.ts
+59 -18
@@ -1,5 +1,16 @@
1 import { createElement as h, isValidElement, ReactElement, useEffect, useState } from 'react'
2 -import { Box, Button, FormControlLabel, Grid, MenuItem, Switch, TextField } from '@mui/material'
2 +import {
3 + Box,
4 + Button,
5 + FormControl,
6 + FormControlLabel,
7 + FormLabel,
8 + Grid,
9 + MenuItem, Radio,
10 + RadioGroup,
11 + Switch,
12 + TextField
13 +} from '@mui/material'
14 import { Dict } from './misc'
15 import { Save } from '@mui/icons-material'
16 import _ from 'lodash'
@@ -14,14 +25,18 @@ interface FormProps {
25 save?: Dict
26 sticky?: boolean
27 addToBar?: ReactElement[]
28 + barSx?: Dict
29 [rest:string]: any,
30 }
19 -export function Form({ fields, values, set, defaults, save, sticky, addToBar=[], ...rest }: FormProps) {
31 +export function Form({ fields, values, set, defaults, save, sticky, addToBar=[], barSx, ...rest }: FormProps) {
32 return h(Box, rest,
33 save && h(Box, {
34 display: 'flex',
35 gap: 2,
24 - sx: Object.assign({ mb: 4 }, sticky && { zIndex: 2, backgroundColor: 'background.paper', position: 'sticky', top: 0 })
36 + alignItems: 'center',
37 + sx: Object.assign({ mb: 3, width: 'fit-content' },
38 + sticky && { zIndex: 2, backgroundColor: 'background.paper', position: 'sticky', top: 0 },
39 + barSx)
40 },
41 h(Button, {
42 variant: 'contained',
@@ -31,22 +46,26 @@ export function Form({ fields, values, set, defaults, save, sticky, addToBar=[],
46 ...addToBar,
47 ),
48 h(Grid, { container:true, rowSpacing:3, columnSpacing:1 },
34 - fields.map(row => {
35 - if (!row || isValidElement(row))
36 - return row
49 + fields.map((row, idx) => {
50 + if (!row)
51 + return
52 + if (isValidElement(row))
53 + return h(Grid, { key: idx, item: true, xs: 12 }, row)
54 let field = row
55 const { k } = field
39 - field = {
40 - value: values?.[k],
41 - onChange(v:any) { set(v, field) },
42 - ...field,
56 + if (k) {
57 + field = {
58 + value: values?.[k],
59 + onChange(v:any) { set(v, field) },
60 + ...field,
61 + }
62 + if (!field.label)
63 + field.label = _.capitalize(k.replaceAll('_', ' '))
64 + Object.assign(field, defaults?.(field))
65 }
44 - if (!field.label)
45 - field.label = _.capitalize(k.replaceAll('_', ' '))
46 - Object.assign(field, defaults?.(field))
66 const { xs=12, sm, md, lg, xl, comp=StringField, ...rest } = field
67 return h(Grid, { key: k, item: true, xs, sm, md, lg, xl },
49 - h(comp, rest) )
68 + isValidElement(comp) ? comp : h(comp, rest) )
69 })
70 )
71 )
@@ -101,12 +120,15 @@ export function DisplayField({ map, value, empty='-', ...props }: any) {
120 }
121
122 interface SelectPair<T> { label: string, value:T }
104 -export function SelectField<T>({ value, onChange, options, ...props }: FieldProps<T> & { options:SelectPair<T>[] }) {
105 - return h(TextField, { // using TextField because Select is not display label correctly
123 +export function SelectField<T>({ value, onChange, options, multiple, ...props }: FieldProps<T> & { options:SelectPair<T>[] }) {
124 + return h(TextField, { // using TextField because Select is not displaying label correctly
125 ...props,
126 select: true,
127 fullWidth: true,
109 - value: value === undefined ? '' : JSON.stringify(value),
128 + disabled: !options?.length || props.disabled,
129 + SelectProps: multiple && { multiple: true },
130 + value: multiple ? (!Array.isArray(value) ? [] : value.map(x => JSON.stringify(x)))
131 + : value === undefined ? '' : JSON.stringify(value),
132 children: options.map((o,i) => {
133 const obj = o && typeof o === 'object'
134 const value = obj && 'value' in o ? o.value : o
@@ -115,7 +137,9 @@ export function SelectField<T>({ value, onChange, options, ...props }: FieldProp
137 }),
138 onChange(event) {
139 try {
118 - onChange(JSON.parse(event.target.value as string) as T, { was: value, event })
140 + let newVal: any = event.target.value
141 + newVal = multiple && Array.isArray(newVal) ? newVal.map(x => JSON.parse(x)) : JSON.parse(newVal) as T
142 + onChange(newVal, { was: value, event })
143 }
144 catch {}
145 }
@@ -149,6 +173,23 @@ export function BoolField({ label, value, onChange, ...props }: FieldProps<boole
173 : control
174 }
175
176 +export function RadioField<T>({ label, options, value, onChange }: FieldProps<T> & { options:SelectPair<T>[] }) {
177 + return h(FormControl, {},
178 + label && h(FormLabel, {}, label),
179 + h(RadioGroup, {
180 + row: true,
181 + name: '',
182 + value: JSON.stringify(value),
183 + onChange(event, v){
184 + onChange(JSON.parse(v), { was: value, event })
185 + }
186 + },
187 + options.map(({ value, label }, idx) =>
188 + h(FormControlLabel, { key: idx, value, control: h(Radio), label }) )
189 + )
190 + )
191 +}
192 +
193 export function ServerPort({ label, value, onChange }: FieldProps<number | null>) {
194 return h(Box, { display:'flex' },
195 h(SelectField as Field<number>, {
admin/src/VfsPage.ts
+3 -2
@@ -5,6 +5,7 @@ import { state, useSnapState } from './state'
5 import FileCard from './FileCard'
6 import VfsMenuBar from './VfsMenuBar'
7 import VfsTree from './VfsTree'
8 +import { onlyTruthy } from './misc'
9
10 export default function VfsPage() {
11 const [id2node] = useState(() => new Map<string, Node>())
@@ -22,8 +23,8 @@ export default function VfsPage() {
23 state.vfs = root
24 // refresh objects of selectedFiles
25 const ids = state.selectedFiles.map(x => x.id)
25 - state.selectedFiles = ids.map(id =>
26 - id2node.get(id)).filter(Boolean) as Node[] // ts doesn't understand that filter(Boolean) removes undefined-s
26 + state.selectedFiles = onlyTruthy(ids.map(id =>
27 + id2node.get(id)))
28
29 // calculate id and parent fields, and builds the map id2node
30 function recur(node: Node, prefix='', parent: Node|undefined=undefined) {
admin/src/VfsTree.ts
+2 -2
@@ -12,7 +12,7 @@ import {
12 RemoveRedEye
13 } from '@mui/icons-material'
14 import { Node } from './VfsPage'
15 -import { isWindowsDrive } from './misc'
15 +import { isWindowsDrive, onlyTruthy } from './misc'
16
17 export const FolderIcon = Folder
18 export const FileIcon = InsertDriveFileOutlined
@@ -42,7 +42,7 @@ export default function VfsTree({ id2node }:{ id2node: Map<string, Node> }) {
42 multiSelect: true,
43 onNodeSelect(ev, ids) {
44 setSelected(ids)
45 - state.selectedFiles = ids.map(id => id2node.get(id)).filter(Boolean) as Node[] // ts doesn't understand that filter(Boolean) removes undefined-s
45 + state.selectedFiles = onlyTruthy(ids.map(id => id2node.get(id)))
46 }
47 }, recur(vfs as Readonly<Node>))
48
admin/src/addFiles.ts
+2 -1
@@ -5,6 +5,7 @@ import { Node, reloadVfs } from './VfsPage'
5 import { state } from './state'
6 import { apiCall } from './api'
7 import FilePicker from './FilePicker'
8 +import { onlyTruthy } from './misc'
9
10 export default function addFiles() {
11 const close = newDialog({
@@ -24,7 +25,7 @@ export default function addFiles() {
25 async onSelect(sel) {
26 let failed = await Promise.all(sel.map(source =>
27 apiCall('add_vfs', { under, source }).then(() => '', () => source) ))
27 - failed = failed.filter(Boolean)
28 + failed = onlyTruthy(failed)
29 if (failed.length)
30 await alertDialog('Some elements have been rejected: '+failed.join(', '), 'error')
31 reloadVfs()
admin/src/logo.svg
+1 -1
@@ -2,7 +2,7 @@
2 <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"
3 viewBox="600.1128 -63.9298 1359.7744 1727.8596"
4 xml:space="preserve">
5 -<path fill="#eee" d="M1478.6342,1600H794.2668c-31.2681,0-61.2729-12.3401-83.4937-34.3386l-55.3409-54.7876
5 +<path fill="#8882" d="M1478.6342,1600H794.2668c-31.2681,0-61.2729-12.3401-83.4937-34.3386l-55.3409-54.7876
6 c-10.6535-10.547-3.1848-28.7069,11.8064-28.7069h938.4237c14.9912,0,22.46,18.1599,11.8064,28.7069l-55.3408,54.7876
7 C1539.9071,1587.6599,1509.9023,1600,1478.6342,1600z M1909.5763,971.6779c0,118.3168-95.9146,214.2313-214.2313,214.2313
8 c-42.2141,0-81.5713-12.2167-114.7429-33.2972c-22.2216,172.3451-170.5161,306.636-348.6561,306.636h-190.991
admin/src/misc.ts
+16
@@ -82,3 +82,19 @@ export function useStateMounted<T>(init: T) {
82 }, [isMounted, set])
83 return [v, setIfMounted, isMounted] as [T, typeof setIfMounted, typeof isMounted]
84 }
85 +
86 +export function isEqualLax(a: any,b: any): boolean {
87 + return a == b //eslint-disable-line
88 + || (a && b && typeof a === 'object' && typeof b === 'object'
89 + && Object.entries(a).every(([k,v]) => isEqualLax(v, b[k])) )
90 +}
91 +
92 +type Truthy<T> = T extends false | '' | 0 | null | undefined ? never : T
93 +
94 +export function truthy<T>(value: T): value is Truthy<T> {
95 + return Boolean(value)
96 +}
97 +
98 +export function onlyTruthy<T>(arr: T[]) {
99 + return arr.filter(truthy)
100 +}
src/adminApis.ts
+2 -5
@@ -4,11 +4,12 @@ import { getStatus } from './listen'
4 import { HFS_STARTED } from './index'
5 import { Server } from 'http'
6 import vfsApis from './api.vfs'
7 -import { getAccounts } from './perm'
7 +import accountsApis from './api.accounts'
8
9 export const adminApis: ApiHandlers = {
10
11 ...vfsApis,
12 + ...accountsApis,
13
14 async set_config({ values }) {
15 if (values)
@@ -20,10 +21,6 @@ export const adminApis: ApiHandlers = {
21 return getWholeConfig(params)
22 },
23
23 - get_usernames() {
24 - return { list: Object.keys(getAccounts()) }
25 - },
26 -
24 async get_status() {
25 const st = getStatus()
26 return {
src/api.accounts.ts new
+50
@@ -0,0 +1,50 @@
1 +import { changePasswordHelper, changeSrpHelper } from './api.helpers'
2 +import { ApiError, ApiHandlers } from './apis'
3 +import { addAccount, delAccount, getAccount, getAccounts, setAccount } from './perm'
4 +
5 +const apis: ApiHandlers = {
6 +
7 + get_usernames() {
8 + return { list: Object.keys(getAccounts()) }
9 + },
10 +
11 + get_accounts() {
12 + return {
13 + list: Object.values(getAccounts()).map(ac => ({
14 + ...ac,
15 + username: ac.username, // it's hidden and won't be copied by the spread operator
16 + hasPassword: Boolean(ac.password || ac.hashed_password || ac.srp),
17 + password: undefined,
18 + hashed_password: undefined,
19 + srp: undefined,
20 + }))
21 + }
22 + },
23 +
24 + set_account({ username, changes }) {
25 + return setAccount(username, changes) ? {} : new ApiError(400)
26 + },
27 +
28 + add_account({ username, ...rest }) {
29 + if (getAccount(username))
30 + return new ApiError(403)
31 + if (!addAccount(username, rest))
32 + return new ApiError(400)
33 + return {}
34 + },
35 +
36 + del_account({ username }) {
37 + return delAccount(username) ? {} : new ApiError(400)
38 + },
39 +
40 + async change_password({ username, newPassword }) {
41 + return changePasswordHelper(getAccount(username), newPassword)
42 + },
43 +
44 + async change_srp({ username, salt, verifier }) {
45 + return changeSrpHelper(getAccount(username), salt, verifier)
46 + }
47 +
48 +}
49 +
50 +export default apis
src/api.auth.ts
+4 -22
@@ -1,11 +1,11 @@
1 -import { getAccount, getCurrentUsername, saveSrpInfo, updateAccount } from './perm'
1 +import { getAccount, getCurrentUsername } from './perm'
2 import { verifyPassword } from './crypt'
3 -import { CFG_ALLOW_CLEAR_TEXT_LOGIN, getConfig } from './config'
3 import { ApiError, ApiHandler } from './apis'
4 import { SRPParameters, SRPRoutines, SRPServerSession, SRPServerSessionStep1 } from 'tssrp6a'
5 import { SESSION_DURATION } from './index'
6 import { randomId } from './misc'
7 import Koa from 'koa'
8 +import { changeSrpHelper, changePasswordHelper } from './api.helpers'
9
10 const srp6aNimbusRoutines = new SRPRoutines(new SRPParameters())
11 const srpSession = new SRPServerSession(srp6aNimbusRoutines)
@@ -104,27 +104,9 @@ export const refresh_session: ApiHandler = async ({}, ctx) => {
104 }
105
106 export const change_password: ApiHandler = async ({ newPassword }, ctx) => {
107 - if (!newPassword) // clear text version
108 - return Error('missing parameters')
109 - if (!ctx.state.account)
110 - return new ApiError(401)
111 - await updateAccount(ctx.state.account, account => {
112 - account.password = newPassword
113 - })
114 - return {}
107 + return changePasswordHelper(ctx.state.account, newPassword)
108 }
109
110 export const change_srp: ApiHandler = async ({ salt, verifier }, ctx) => {
118 - if (getConfig(CFG_ALLOW_CLEAR_TEXT_LOGIN))
119 - return new ApiError(406)
120 - if (!salt || !verifier)
121 - return Error('missing parameters')
122 - if (!ctx.state.account)
123 - return new ApiError(401)
124 - await updateAccount(ctx.state.account, account => {
125 - saveSrpInfo(account, salt, verifier)
126 - delete account.hashed_password // remove leftovers
127 - })
128 - return {}
111 + return changeSrpHelper(ctx.state.account, salt, verifier)
112 }
130 -
src/api.helpers.ts new
+28
@@ -0,0 +1,28 @@
1 +import { Account, saveSrpInfo, updateAccount } from './perm'
2 +import { ApiError } from './apis'
3 +import { CFG_ALLOW_CLEAR_TEXT_LOGIN, getConfig } from './config'
4 +
5 +export async function changePasswordHelper(account: Account | undefined, newPassword: string) {
6 + if (!newPassword) // clear text version
7 + return Error('missing parameters')
8 + if (!account)
9 + return new ApiError(401)
10 + await updateAccount(account, account => {
11 + account.password = newPassword
12 + })
13 + return {}
14 +}
15 +
16 +export async function changeSrpHelper(account: Account | undefined, salt: string, verifier: string) {
17 + if (getConfig(CFG_ALLOW_CLEAR_TEXT_LOGIN))
18 + return new ApiError(406)
19 + if (!salt || !verifier)
20 + return Error('missing parameters')
21 + if (!account)
22 + return new ApiError(401)
23 + await updateAccount(account, account => {
24 + saveSrpInfo(account, salt, verifier)
25 + delete account.hashed_password // remove leftovers
26 + })
27 + return {}
28 +}
src/misc.ts
+10
@@ -108,3 +108,13 @@ export function pattern2filter(pattern: string){
108 export function isWindows() {
109 return process.platform === 'win32'
110 }
111 +
112 +type Truthy<T> = T extends false | '' | 0 | null | undefined ? never : T
113 +
114 +export function truthy<T>(value: T): value is Truthy<T> {
115 + return Boolean(value)
116 +}
117 +
118 +export function onlyTruthy<T>(arr: T[]) {
119 + return arr.filter(truthy)
120 +}
src/perm.ts
+50 -1
@@ -7,6 +7,7 @@ import { watchLoad } from './watchLoad'
7 import Koa from 'koa'
8 import { CFG_ALLOW_CLEAR_TEXT_LOGIN, getConfig, subscribeConfig } from './config'
9 import { createVerifierAndSalt, SRPParameters, SRPRoutines } from 'tssrp6a'
10 +import { vfs, VfsNode } from './vfs'
11
12 let path = ''
13
@@ -104,7 +105,7 @@ subscribeConfig({ k:'accounts', defaultValue:'accounts.yaml' }, v => {
105 })
106 })
107
107 -async function applyAccounts(newAccounts:Accounts) {
108 +async function applyAccounts(newAccounts: Accounts) {
109 // we should validate content here
110 accounts = newAccounts
111 await Promise.all(_.map(accounts, async (rec,k) => {
@@ -120,3 +121,51 @@ async function applyAccounts(newAccounts:Accounts) {
121 await updateAccount(rec)
122 }))
123 }
124 +
125 +export function renameAccount(from: string, to: string) {
126 + if (!to || !accounts[from] || accounts[to])
127 + return false
128 + if (to === from)
129 + return true
130 + accounts[to] = accounts[from]
131 + delete accounts[from]
132 + recur(vfs.root)
133 + return true
134 +
135 + function recur(n: VfsNode) {
136 + const p = n.perm
137 + if (p?.[from]) {
138 + p[to] = p[from]
139 + delete p[from]
140 + }
141 + if (n.children)
142 + for (const c of n.children)
143 + recur(c)
144 + }
145 +}
146 +
147 +const assignableProps = ['redirect','ignore_limits','belongs']
148 +
149 +export function addAccount(username: string, props: Partial<Account>) {
150 + if (!username || accounts[username])
151 + return
152 + const copy = { username, ..._.pick(props, assignableProps) }
153 + setHidden(copy, { username })
154 + accounts[username] = copy
155 + return copy
156 +}
157 +
158 +export function setAccount(username: string, changes: Partial<Account>) {
159 + const { username: newU, ...rest } = changes
160 + if (newU)
161 + renameAccount(username, newU)
162 + Object.assign(getAccount(newU || username), _.pick(rest, assignableProps))
163 + return true
164 +}
165 +
166 +export function delAccount(username: string) {
167 + if (!getAccount(username))
168 + return false
169 + delete accounts[username]
170 + return true
171 +}
src/vfs.ts
+2 -2
@@ -1,7 +1,7 @@
1 import fs from 'fs/promises'
2 import { basename } from 'path'
3 import { isMatch } from 'micromatch'
4 -import { enforceFinal, isDirectory, isWindows, prefix } from './misc'
4 +import { enforceFinal, isDirectory, isWindows, onlyTruthy, prefix } from './misc'
5 import Koa from 'koa'
6 import glob from 'fast-glob'
7 import _ from 'lodash'
@@ -121,7 +121,7 @@ export async function* walkNode(parent:VfsNode, ctx: Koa.Context, depth:number=0
121 cwd: source,
122 suppressErrors: true,
123 caseSensitiveMatch: !isWindows(),
124 - ignore: [parent.hide, parent.remove].filter(Boolean) as string[],
124 + ignore: onlyTruthy([parent.hide, parent.remove]),
125 })
126 const base = enforceFinal('/', source)
127 for await (let path of dirStream) {