├── .gitignore
├── 01-starter
├── dist
│ ├── index.html
│ ├── main.css
│ └── main.js
├── package-lock.json
├── package.json
├── src
│ └── index.js
└── webpack.config.js
├── 02-finished-reference
├── dist
│ ├── index.html
│ ├── main.css
│ └── main.js
├── package-lock.json
├── package.json
├── src
│ └── index.js
└── webpack.config.js
├── 03-separate-files-starter
├── dist
│ ├── index.html
│ ├── main.css
│ └── main.js
├── package-lock.json
├── package.json
├── src
│ ├── components
│ │ ├── Footer.js
│ │ ├── MainArea.js
│ │ └── Sidebar.js
│ └── index.js
└── webpack.config.js
├── 04-separate-files-finished-reference
├── dist
│ ├── index.html
│ ├── main.css
│ └── main.js
├── package-lock.json
├── package.json
├── src
│ ├── components
│ │ ├── Footer.js
│ │ ├── MainArea.js
│ │ └── Sidebar.js
│ └── index.js
└── webpack.config.js
├── 05-context
├── dist
│ ├── index.html
│ ├── main.css
│ └── main.js
├── package-lock.json
├── package.json
├── src
│ ├── OurContext.js
│ ├── components
│ │ ├── Footer.js
│ │ ├── MainArea.js
│ │ └── Sidebar.js
│ └── index.js
└── webpack.config.js
└── 06-reducer
├── dist
├── index.html
├── main.css
└── main.js
├── package-lock.json
├── package.json
├── src
├── DispatchContext.js
├── OurContext.js
├── components
│ ├── Footer.js
│ ├── MainArea.js
│ └── Sidebar.js
└── index.js
└── webpack.config.js
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
--------------------------------------------------------------------------------
/01-starter/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | State in React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/01-starter/dist/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: sans-serif;
3 | color: #333;
4 | padding: 30px;
5 | margin: 0;
6 | background-color: #dedede;
7 | line-height: 1.65;
8 | }
9 |
10 | h1,
11 | p {
12 | margin: 0;
13 | }
14 |
15 | .grid-parent {
16 | display: grid;
17 | gap: 30px;
18 | }
19 |
20 | @media screen and (min-width: 768px) {
21 | .grid-parent {
22 | display: grid;
23 | grid-template-columns: 300px 1fr;
24 | }
25 |
26 | .header,
27 | .footer {
28 | grid-column: 1 / 3;
29 | }
30 | }
31 |
32 | .header,
33 | .sidebar,
34 | .main-area {
35 | background-color: #fff;
36 | padding: 30px;
37 | border-radius: 4px;
38 | }
39 |
40 | .footer {
41 | background-color: #333;
42 | color: #fff;
43 | padding: 30px;
44 | border-radius: 4px;
45 | }
46 |
--------------------------------------------------------------------------------
/01-starter/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "simple-starter",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "webpack.config.js",
6 | "scripts": {
7 | "start": "webpack --watch",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "keywords": [],
11 | "author": "",
12 | "license": "ISC",
13 | "dependencies": {
14 | "@babel/core": "^7.17.10",
15 | "@babel/preset-react": "^7.16.7",
16 | "babel-loader": "^8.2.5",
17 | "react": "^18.1.0",
18 | "react-dom": "^18.1.0",
19 | "webpack": "^5.72.0",
20 | "webpack-cli": "^4.9.2"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/01-starter/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import { createRoot } from "react-dom/client"
3 |
4 | function App() {
5 | return (
6 |
7 |
8 |
Welcome To Our App
9 |
The current size is x and the current color is x.
10 |
11 | This page has been liked 0 times.
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
Lorem ipsum dolor sit amet consectetur adipisicing elit. Autem, quod obcaecati dolore debitis amet aut, excepturi voluptas ratione quibusdam laboriosam, optio pariatur provident doloremque consequatur animi? Consequuntur, officiis. Explicabo, vel.
21 |
22 |
30 |
31 | )
32 | }
33 |
34 | const root = createRoot(document.querySelector("#app"))
35 | root.render()
36 |
--------------------------------------------------------------------------------
/01-starter/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mode: "development",
3 | module: {
4 | rules: [
5 | {
6 | test: /\.js$/,
7 | exclude: /(node_modules)/,
8 | use: {
9 | loader: "babel-loader",
10 | options: {
11 | presets: ["@babel/preset-react"]
12 | }
13 | }
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/02-finished-reference/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | State in React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/02-finished-reference/dist/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: sans-serif;
3 | color: #333;
4 | padding: 30px;
5 | margin: 0;
6 | background-color: #dedede;
7 | line-height: 1.65;
8 | }
9 |
10 | h1,
11 | p {
12 | margin: 0;
13 | }
14 |
15 | .grid-parent {
16 | display: grid;
17 | gap: 30px;
18 | }
19 |
20 | @media screen and (min-width: 768px) {
21 | .grid-parent {
22 | display: grid;
23 | grid-template-columns: 300px 1fr;
24 | }
25 |
26 | .header,
27 | .footer {
28 | grid-column: 1 / 3;
29 | }
30 | }
31 |
32 | .header,
33 | .sidebar,
34 | .main-area {
35 | background-color: #fff;
36 | padding: 30px;
37 | border-radius: 4px;
38 | }
39 |
40 | .footer {
41 | background-color: #333;
42 | color: #fff;
43 | padding: 30px;
44 | border-radius: 4px;
45 | }
46 |
--------------------------------------------------------------------------------
/02-finished-reference/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "simple-starter",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "webpack.config.js",
6 | "scripts": {
7 | "start": "webpack --watch",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "keywords": [],
11 | "author": "",
12 | "license": "ISC",
13 | "dependencies": {
14 | "@babel/core": "^7.17.10",
15 | "@babel/preset-react": "^7.16.7",
16 | "babel-loader": "^8.2.5",
17 | "react": "^18.1.0",
18 | "react-dom": "^18.1.0",
19 | "webpack": "^5.72.0",
20 | "webpack-cli": "^4.9.2"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/02-finished-reference/src/index.js:
--------------------------------------------------------------------------------
1 | import React, { useState } from "react"
2 | import { createRoot } from "react-dom/client"
3 |
4 | function App() {
5 | const [size, setSize] = useState(25)
6 | const [color, setColor] = useState("skyblue")
7 | const [likeCount, setLikeCount] = useState(0)
8 |
9 | function handleSizeChange(e) {
10 | setSize(e.target.value)
11 | }
12 |
13 | function ourButtonHandler() {
14 | setSize(20)
15 | setColor("pink")
16 | }
17 |
18 | return (
19 |
20 |
21 |
Welcome To Our App!!!
22 |
23 | The current size is {size} and the current color is {color}.
24 |
25 |
26 | This page has been liked {likeCount} times.
27 |
28 |
29 |
30 |
31 | setColor(e.target.value)} />
32 |
33 |
34 |
35 |
Lorem ipsum dolor sit amet consectetur adipisicing elit. Autem, quod obcaecati dolore debitis amet aut, excepturi voluptas ratione quibusdam laboriosam, optio pariatur provident doloremque consequatur animi? Consequuntur, officiis. Explicabo, vel.
36 |
37 |
45 |
46 | )
47 | }
48 |
49 | const root = createRoot(document.querySelector("#app"))
50 | root.render()
51 |
--------------------------------------------------------------------------------
/02-finished-reference/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mode: "development",
3 | module: {
4 | rules: [
5 | {
6 | test: /\.js$/,
7 | exclude: /(node_modules)/,
8 | use: {
9 | loader: "babel-loader",
10 | options: {
11 | presets: ["@babel/preset-react"]
12 | }
13 | }
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/03-separate-files-starter/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | State in React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/03-separate-files-starter/dist/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: sans-serif;
3 | color: #333;
4 | padding: 30px;
5 | margin: 0;
6 | background-color: #dedede;
7 | line-height: 1.65;
8 | }
9 |
10 | h1,
11 | p {
12 | margin: 0;
13 | }
14 |
15 | .grid-parent {
16 | display: grid;
17 | gap: 30px;
18 | }
19 |
20 | @media screen and (min-width: 768px) {
21 | .grid-parent {
22 | display: grid;
23 | grid-template-columns: 300px 1fr;
24 | }
25 |
26 | .header,
27 | .footer {
28 | grid-column: 1 / 3;
29 | }
30 | }
31 |
32 | .header,
33 | .sidebar,
34 | .main-area {
35 | background-color: #fff;
36 | padding: 30px;
37 | border-radius: 4px;
38 | }
39 |
40 | .footer {
41 | background-color: #333;
42 | color: #fff;
43 | padding: 30px;
44 | border-radius: 4px;
45 | }
46 |
--------------------------------------------------------------------------------
/03-separate-files-starter/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "starter",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "start": "webpack --watch",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "keywords": [],
11 | "author": "",
12 | "license": "ISC",
13 | "dependencies": {
14 | "@babel/core": "^7.17.10",
15 | "@babel/preset-react": "^7.16.7",
16 | "babel-loader": "^8.2.5",
17 | "react": "^18.1.0",
18 | "react-dom": "^18.1.0",
19 | "webpack": "^5.72.0",
20 | "webpack-cli": "^4.9.2"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/03-separate-files-starter/src/components/Footer.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 |
3 | function Footer() {
4 | return (
5 |
13 | )
14 | }
15 |
16 | export default Footer
17 |
--------------------------------------------------------------------------------
/03-separate-files-starter/src/components/MainArea.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 |
3 | function MainArea() {
4 | return (
5 |
6 |
Lorem ipsum dolor sit amet consectetur adipisicing elit. Autem, quod obcaecati dolore debitis amet aut, excepturi voluptas ratione quibusdam laboriosam, optio pariatur provident doloremque consequatur animi? Consequuntur, officiis. Explicabo, vel.
7 |
8 | )
9 | }
10 |
11 | export default MainArea
12 |
--------------------------------------------------------------------------------
/03-separate-files-starter/src/components/Sidebar.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 |
3 | function Sidebar() {
4 | return (
5 |
6 |
7 |
8 |
9 |
10 | )
11 | }
12 |
13 | export default Sidebar
14 |
--------------------------------------------------------------------------------
/03-separate-files-starter/src/index.js:
--------------------------------------------------------------------------------
1 | import React, { useState } from "react"
2 | import { createRoot } from "react-dom/client"
3 |
4 | import Sidebar from "./components/Sidebar"
5 | import MainArea from "./components/MainArea"
6 | import Footer from "./components/Footer"
7 |
8 | function App() {
9 | const [size, setSize] = useState(25)
10 | const [color, setColor] = useState("skyblue")
11 | const [likeCount, setLikeCount] = useState(0)
12 |
13 | return (
14 |
15 |
16 |
Welcome To Our App
17 |
The current size is x and the current color is x.
18 |
19 | This page has been liked 0 times.
20 |
21 |
22 |
23 |
24 |
25 |
26 | )
27 | }
28 |
29 | const root = createRoot(document.querySelector("#app"))
30 | root.render()
31 |
--------------------------------------------------------------------------------
/03-separate-files-starter/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mode: "development",
3 | module: {
4 | rules: [
5 | {
6 | test: /\.js$/,
7 | exclude: /(node_modules)/,
8 | use: {
9 | loader: "babel-loader",
10 | options: {
11 | presets: ["@babel/preset-react"]
12 | }
13 | }
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | State in React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/dist/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: sans-serif;
3 | color: #333;
4 | padding: 30px;
5 | margin: 0;
6 | background-color: #dedede;
7 | line-height: 1.65;
8 | }
9 |
10 | h1,
11 | p {
12 | margin: 0;
13 | }
14 |
15 | .grid-parent {
16 | display: grid;
17 | gap: 30px;
18 | }
19 |
20 | @media screen and (min-width: 768px) {
21 | .grid-parent {
22 | display: grid;
23 | grid-template-columns: 300px 1fr;
24 | }
25 |
26 | .header,
27 | .footer {
28 | grid-column: 1 / 3;
29 | }
30 | }
31 |
32 | .header,
33 | .sidebar,
34 | .main-area {
35 | background-color: #fff;
36 | padding: 30px;
37 | border-radius: 4px;
38 | }
39 |
40 | .footer {
41 | background-color: #333;
42 | color: #fff;
43 | padding: 30px;
44 | border-radius: 4px;
45 | }
46 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "starter",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "start": "webpack --watch",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "keywords": [],
11 | "author": "",
12 | "license": "ISC",
13 | "dependencies": {
14 | "@babel/core": "^7.17.10",
15 | "@babel/preset-react": "^7.16.7",
16 | "babel-loader": "^8.2.5",
17 | "react": "^18.1.0",
18 | "react-dom": "^18.1.0",
19 | "webpack": "^5.72.0",
20 | "webpack-cli": "^4.9.2"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/src/components/Footer.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 |
3 | function Footer(props) {
4 | return (
5 |
13 | )
14 | }
15 |
16 | export default Footer
17 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/src/components/MainArea.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 |
3 | function MainArea(props) {
4 | return (
5 |
6 |
Lorem ipsum dolor sit amet consectetur adipisicing elit. Autem, quod obcaecati dolore debitis amet aut, excepturi voluptas ratione quibusdam laboriosam, optio pariatur provident doloremque consequatur animi? Consequuntur, officiis. Explicabo, vel.
7 |
8 | )
9 | }
10 |
11 | export default MainArea
12 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/src/components/Sidebar.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 |
3 | function Sidebar(props) {
4 | return (
5 |
6 | props.setSize(e.target.value)} />
7 | props.setColor(e.target.value)} />
8 |
16 |
17 | )
18 | }
19 |
20 | export default Sidebar
21 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/src/index.js:
--------------------------------------------------------------------------------
1 | import React, { useState } from "react"
2 | import { createRoot } from "react-dom/client"
3 |
4 | import Sidebar from "./components/Sidebar"
5 | import MainArea from "./components/MainArea"
6 | import Footer from "./components/Footer"
7 |
8 | function App() {
9 | const [size, setSize] = useState(25)
10 | const [color, setColor] = useState("skyblue")
11 | const [likeCount, setLikeCount] = useState(0)
12 |
13 | return (
14 |
15 |
16 |
Welcome To Our App
17 |
18 | The current size is {size} and the current color is {color}.
19 |
20 |
21 | This page has been liked {likeCount} times.
22 |
23 |
24 |
25 |
26 |
27 |
28 | )
29 | }
30 |
31 | const root = createRoot(document.querySelector("#app"))
32 | root.render()
33 |
--------------------------------------------------------------------------------
/04-separate-files-finished-reference/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mode: "development",
3 | module: {
4 | rules: [
5 | {
6 | test: /\.js$/,
7 | exclude: /(node_modules)/,
8 | use: {
9 | loader: "babel-loader",
10 | options: {
11 | presets: ["@babel/preset-react"]
12 | }
13 | }
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/05-context/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | State in React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/05-context/dist/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: sans-serif;
3 | color: #333;
4 | padding: 30px;
5 | margin: 0;
6 | background-color: #dedede;
7 | line-height: 1.65;
8 | }
9 |
10 | h1,
11 | p {
12 | margin: 0;
13 | }
14 |
15 | .grid-parent {
16 | display: grid;
17 | gap: 30px;
18 | }
19 |
20 | @media screen and (min-width: 768px) {
21 | .grid-parent {
22 | display: grid;
23 | grid-template-columns: 300px 1fr;
24 | }
25 |
26 | .header,
27 | .footer {
28 | grid-column: 1 / 3;
29 | }
30 | }
31 |
32 | .header,
33 | .sidebar,
34 | .main-area {
35 | background-color: #fff;
36 | padding: 30px;
37 | border-radius: 4px;
38 | }
39 |
40 | .footer {
41 | background-color: #333;
42 | color: #fff;
43 | padding: 30px;
44 | border-radius: 4px;
45 | }
46 |
--------------------------------------------------------------------------------
/05-context/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "starter",
3 | "version": "1.0.0",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "starter",
9 | "version": "1.0.0",
10 | "license": "ISC",
11 | "dependencies": {
12 | "@babel/core": "^7.17.10",
13 | "@babel/preset-react": "^7.16.7",
14 | "babel-loader": "^8.2.5",
15 | "react": "^18.1.0",
16 | "react-dom": "^18.1.0",
17 | "webpack": "^5.72.0",
18 | "webpack-cli": "^4.9.2"
19 | }
20 | },
21 | "node_modules/@ampproject/remapping": {
22 | "version": "2.2.0",
23 | "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
24 | "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
25 | "dependencies": {
26 | "@jridgewell/gen-mapping": "^0.1.0",
27 | "@jridgewell/trace-mapping": "^0.3.9"
28 | },
29 | "engines": {
30 | "node": ">=6.0.0"
31 | }
32 | },
33 | "node_modules/@babel/code-frame": {
34 | "version": "7.16.7",
35 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
36 | "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
37 | "dependencies": {
38 | "@babel/highlight": "^7.16.7"
39 | },
40 | "engines": {
41 | "node": ">=6.9.0"
42 | }
43 | },
44 | "node_modules/@babel/compat-data": {
45 | "version": "7.17.10",
46 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz",
47 | "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==",
48 | "engines": {
49 | "node": ">=6.9.0"
50 | }
51 | },
52 | "node_modules/@babel/core": {
53 | "version": "7.17.10",
54 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.10.tgz",
55 | "integrity": "sha512-liKoppandF3ZcBnIYFjfSDHZLKdLHGJRkoWtG8zQyGJBQfIYobpnVGI5+pLBNtS6psFLDzyq8+h5HiVljW9PNA==",
56 | "dependencies": {
57 | "@ampproject/remapping": "^2.1.0",
58 | "@babel/code-frame": "^7.16.7",
59 | "@babel/generator": "^7.17.10",
60 | "@babel/helper-compilation-targets": "^7.17.10",
61 | "@babel/helper-module-transforms": "^7.17.7",
62 | "@babel/helpers": "^7.17.9",
63 | "@babel/parser": "^7.17.10",
64 | "@babel/template": "^7.16.7",
65 | "@babel/traverse": "^7.17.10",
66 | "@babel/types": "^7.17.10",
67 | "convert-source-map": "^1.7.0",
68 | "debug": "^4.1.0",
69 | "gensync": "^1.0.0-beta.2",
70 | "json5": "^2.2.1",
71 | "semver": "^6.3.0"
72 | },
73 | "engines": {
74 | "node": ">=6.9.0"
75 | },
76 | "funding": {
77 | "type": "opencollective",
78 | "url": "https://opencollective.com/babel"
79 | }
80 | },
81 | "node_modules/@babel/generator": {
82 | "version": "7.17.10",
83 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.10.tgz",
84 | "integrity": "sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==",
85 | "dependencies": {
86 | "@babel/types": "^7.17.10",
87 | "@jridgewell/gen-mapping": "^0.1.0",
88 | "jsesc": "^2.5.1"
89 | },
90 | "engines": {
91 | "node": ">=6.9.0"
92 | }
93 | },
94 | "node_modules/@babel/helper-annotate-as-pure": {
95 | "version": "7.16.7",
96 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz",
97 | "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==",
98 | "dependencies": {
99 | "@babel/types": "^7.16.7"
100 | },
101 | "engines": {
102 | "node": ">=6.9.0"
103 | }
104 | },
105 | "node_modules/@babel/helper-compilation-targets": {
106 | "version": "7.17.10",
107 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz",
108 | "integrity": "sha512-gh3RxjWbauw/dFiU/7whjd0qN9K6nPJMqe6+Er7rOavFh0CQUSwhAE3IcTho2rywPJFxej6TUUHDkWcYI6gGqQ==",
109 | "dependencies": {
110 | "@babel/compat-data": "^7.17.10",
111 | "@babel/helper-validator-option": "^7.16.7",
112 | "browserslist": "^4.20.2",
113 | "semver": "^6.3.0"
114 | },
115 | "engines": {
116 | "node": ">=6.9.0"
117 | },
118 | "peerDependencies": {
119 | "@babel/core": "^7.0.0"
120 | }
121 | },
122 | "node_modules/@babel/helper-environment-visitor": {
123 | "version": "7.16.7",
124 | "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz",
125 | "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==",
126 | "dependencies": {
127 | "@babel/types": "^7.16.7"
128 | },
129 | "engines": {
130 | "node": ">=6.9.0"
131 | }
132 | },
133 | "node_modules/@babel/helper-function-name": {
134 | "version": "7.17.9",
135 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
136 | "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
137 | "dependencies": {
138 | "@babel/template": "^7.16.7",
139 | "@babel/types": "^7.17.0"
140 | },
141 | "engines": {
142 | "node": ">=6.9.0"
143 | }
144 | },
145 | "node_modules/@babel/helper-hoist-variables": {
146 | "version": "7.16.7",
147 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
148 | "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
149 | "dependencies": {
150 | "@babel/types": "^7.16.7"
151 | },
152 | "engines": {
153 | "node": ">=6.9.0"
154 | }
155 | },
156 | "node_modules/@babel/helper-module-imports": {
157 | "version": "7.16.7",
158 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz",
159 | "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==",
160 | "dependencies": {
161 | "@babel/types": "^7.16.7"
162 | },
163 | "engines": {
164 | "node": ">=6.9.0"
165 | }
166 | },
167 | "node_modules/@babel/helper-module-transforms": {
168 | "version": "7.17.7",
169 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz",
170 | "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==",
171 | "dependencies": {
172 | "@babel/helper-environment-visitor": "^7.16.7",
173 | "@babel/helper-module-imports": "^7.16.7",
174 | "@babel/helper-simple-access": "^7.17.7",
175 | "@babel/helper-split-export-declaration": "^7.16.7",
176 | "@babel/helper-validator-identifier": "^7.16.7",
177 | "@babel/template": "^7.16.7",
178 | "@babel/traverse": "^7.17.3",
179 | "@babel/types": "^7.17.0"
180 | },
181 | "engines": {
182 | "node": ">=6.9.0"
183 | }
184 | },
185 | "node_modules/@babel/helper-plugin-utils": {
186 | "version": "7.16.7",
187 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz",
188 | "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==",
189 | "engines": {
190 | "node": ">=6.9.0"
191 | }
192 | },
193 | "node_modules/@babel/helper-simple-access": {
194 | "version": "7.17.7",
195 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz",
196 | "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==",
197 | "dependencies": {
198 | "@babel/types": "^7.17.0"
199 | },
200 | "engines": {
201 | "node": ">=6.9.0"
202 | }
203 | },
204 | "node_modules/@babel/helper-split-export-declaration": {
205 | "version": "7.16.7",
206 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
207 | "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
208 | "dependencies": {
209 | "@babel/types": "^7.16.7"
210 | },
211 | "engines": {
212 | "node": ">=6.9.0"
213 | }
214 | },
215 | "node_modules/@babel/helper-validator-identifier": {
216 | "version": "7.16.7",
217 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
218 | "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
219 | "engines": {
220 | "node": ">=6.9.0"
221 | }
222 | },
223 | "node_modules/@babel/helper-validator-option": {
224 | "version": "7.16.7",
225 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz",
226 | "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==",
227 | "engines": {
228 | "node": ">=6.9.0"
229 | }
230 | },
231 | "node_modules/@babel/helpers": {
232 | "version": "7.17.9",
233 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz",
234 | "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==",
235 | "dependencies": {
236 | "@babel/template": "^7.16.7",
237 | "@babel/traverse": "^7.17.9",
238 | "@babel/types": "^7.17.0"
239 | },
240 | "engines": {
241 | "node": ">=6.9.0"
242 | }
243 | },
244 | "node_modules/@babel/highlight": {
245 | "version": "7.17.9",
246 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz",
247 | "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==",
248 | "dependencies": {
249 | "@babel/helper-validator-identifier": "^7.16.7",
250 | "chalk": "^2.0.0",
251 | "js-tokens": "^4.0.0"
252 | },
253 | "engines": {
254 | "node": ">=6.9.0"
255 | }
256 | },
257 | "node_modules/@babel/parser": {
258 | "version": "7.17.10",
259 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.10.tgz",
260 | "integrity": "sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==",
261 | "bin": {
262 | "parser": "bin/babel-parser.js"
263 | },
264 | "engines": {
265 | "node": ">=6.0.0"
266 | }
267 | },
268 | "node_modules/@babel/plugin-syntax-jsx": {
269 | "version": "7.16.7",
270 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz",
271 | "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==",
272 | "dependencies": {
273 | "@babel/helper-plugin-utils": "^7.16.7"
274 | },
275 | "engines": {
276 | "node": ">=6.9.0"
277 | },
278 | "peerDependencies": {
279 | "@babel/core": "^7.0.0-0"
280 | }
281 | },
282 | "node_modules/@babel/plugin-transform-react-display-name": {
283 | "version": "7.16.7",
284 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz",
285 | "integrity": "sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==",
286 | "dependencies": {
287 | "@babel/helper-plugin-utils": "^7.16.7"
288 | },
289 | "engines": {
290 | "node": ">=6.9.0"
291 | },
292 | "peerDependencies": {
293 | "@babel/core": "^7.0.0-0"
294 | }
295 | },
296 | "node_modules/@babel/plugin-transform-react-jsx": {
297 | "version": "7.17.3",
298 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.3.tgz",
299 | "integrity": "sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ==",
300 | "dependencies": {
301 | "@babel/helper-annotate-as-pure": "^7.16.7",
302 | "@babel/helper-module-imports": "^7.16.7",
303 | "@babel/helper-plugin-utils": "^7.16.7",
304 | "@babel/plugin-syntax-jsx": "^7.16.7",
305 | "@babel/types": "^7.17.0"
306 | },
307 | "engines": {
308 | "node": ">=6.9.0"
309 | },
310 | "peerDependencies": {
311 | "@babel/core": "^7.0.0-0"
312 | }
313 | },
314 | "node_modules/@babel/plugin-transform-react-jsx-development": {
315 | "version": "7.16.7",
316 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz",
317 | "integrity": "sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==",
318 | "dependencies": {
319 | "@babel/plugin-transform-react-jsx": "^7.16.7"
320 | },
321 | "engines": {
322 | "node": ">=6.9.0"
323 | },
324 | "peerDependencies": {
325 | "@babel/core": "^7.0.0-0"
326 | }
327 | },
328 | "node_modules/@babel/plugin-transform-react-pure-annotations": {
329 | "version": "7.16.7",
330 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.7.tgz",
331 | "integrity": "sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==",
332 | "dependencies": {
333 | "@babel/helper-annotate-as-pure": "^7.16.7",
334 | "@babel/helper-plugin-utils": "^7.16.7"
335 | },
336 | "engines": {
337 | "node": ">=6.9.0"
338 | },
339 | "peerDependencies": {
340 | "@babel/core": "^7.0.0-0"
341 | }
342 | },
343 | "node_modules/@babel/preset-react": {
344 | "version": "7.16.7",
345 | "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.16.7.tgz",
346 | "integrity": "sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==",
347 | "dependencies": {
348 | "@babel/helper-plugin-utils": "^7.16.7",
349 | "@babel/helper-validator-option": "^7.16.7",
350 | "@babel/plugin-transform-react-display-name": "^7.16.7",
351 | "@babel/plugin-transform-react-jsx": "^7.16.7",
352 | "@babel/plugin-transform-react-jsx-development": "^7.16.7",
353 | "@babel/plugin-transform-react-pure-annotations": "^7.16.7"
354 | },
355 | "engines": {
356 | "node": ">=6.9.0"
357 | },
358 | "peerDependencies": {
359 | "@babel/core": "^7.0.0-0"
360 | }
361 | },
362 | "node_modules/@babel/template": {
363 | "version": "7.16.7",
364 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
365 | "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
366 | "dependencies": {
367 | "@babel/code-frame": "^7.16.7",
368 | "@babel/parser": "^7.16.7",
369 | "@babel/types": "^7.16.7"
370 | },
371 | "engines": {
372 | "node": ">=6.9.0"
373 | }
374 | },
375 | "node_modules/@babel/traverse": {
376 | "version": "7.17.10",
377 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.10.tgz",
378 | "integrity": "sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==",
379 | "dependencies": {
380 | "@babel/code-frame": "^7.16.7",
381 | "@babel/generator": "^7.17.10",
382 | "@babel/helper-environment-visitor": "^7.16.7",
383 | "@babel/helper-function-name": "^7.17.9",
384 | "@babel/helper-hoist-variables": "^7.16.7",
385 | "@babel/helper-split-export-declaration": "^7.16.7",
386 | "@babel/parser": "^7.17.10",
387 | "@babel/types": "^7.17.10",
388 | "debug": "^4.1.0",
389 | "globals": "^11.1.0"
390 | },
391 | "engines": {
392 | "node": ">=6.9.0"
393 | }
394 | },
395 | "node_modules/@babel/types": {
396 | "version": "7.17.10",
397 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.10.tgz",
398 | "integrity": "sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==",
399 | "dependencies": {
400 | "@babel/helper-validator-identifier": "^7.16.7",
401 | "to-fast-properties": "^2.0.0"
402 | },
403 | "engines": {
404 | "node": ">=6.9.0"
405 | }
406 | },
407 | "node_modules/@discoveryjs/json-ext": {
408 | "version": "0.5.7",
409 | "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
410 | "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
411 | "engines": {
412 | "node": ">=10.0.0"
413 | }
414 | },
415 | "node_modules/@jridgewell/gen-mapping": {
416 | "version": "0.1.1",
417 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
418 | "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
419 | "dependencies": {
420 | "@jridgewell/set-array": "^1.0.0",
421 | "@jridgewell/sourcemap-codec": "^1.4.10"
422 | },
423 | "engines": {
424 | "node": ">=6.0.0"
425 | }
426 | },
427 | "node_modules/@jridgewell/resolve-uri": {
428 | "version": "3.0.6",
429 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz",
430 | "integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==",
431 | "engines": {
432 | "node": ">=6.0.0"
433 | }
434 | },
435 | "node_modules/@jridgewell/set-array": {
436 | "version": "1.1.0",
437 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.0.tgz",
438 | "integrity": "sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==",
439 | "engines": {
440 | "node": ">=6.0.0"
441 | }
442 | },
443 | "node_modules/@jridgewell/sourcemap-codec": {
444 | "version": "1.4.12",
445 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.12.tgz",
446 | "integrity": "sha512-az/NhpIwP3K33ILr0T2bso+k2E/SLf8Yidd8mHl0n6sCQ4YdyC8qDhZA6kOPDNDBA56ZnIjngVl0U3jREA0BUA=="
447 | },
448 | "node_modules/@jridgewell/trace-mapping": {
449 | "version": "0.3.9",
450 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
451 | "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
452 | "dependencies": {
453 | "@jridgewell/resolve-uri": "^3.0.3",
454 | "@jridgewell/sourcemap-codec": "^1.4.10"
455 | }
456 | },
457 | "node_modules/@types/eslint": {
458 | "version": "8.4.2",
459 | "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz",
460 | "integrity": "sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA==",
461 | "dependencies": {
462 | "@types/estree": "*",
463 | "@types/json-schema": "*"
464 | }
465 | },
466 | "node_modules/@types/eslint-scope": {
467 | "version": "3.7.3",
468 | "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz",
469 | "integrity": "sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==",
470 | "dependencies": {
471 | "@types/eslint": "*",
472 | "@types/estree": "*"
473 | }
474 | },
475 | "node_modules/@types/estree": {
476 | "version": "0.0.51",
477 | "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz",
478 | "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ=="
479 | },
480 | "node_modules/@types/json-schema": {
481 | "version": "7.0.11",
482 | "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
483 | "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ=="
484 | },
485 | "node_modules/@types/node": {
486 | "version": "17.0.31",
487 | "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz",
488 | "integrity": "sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q=="
489 | },
490 | "node_modules/@webassemblyjs/ast": {
491 | "version": "1.11.1",
492 | "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
493 | "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
494 | "dependencies": {
495 | "@webassemblyjs/helper-numbers": "1.11.1",
496 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
497 | }
498 | },
499 | "node_modules/@webassemblyjs/floating-point-hex-parser": {
500 | "version": "1.11.1",
501 | "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
502 | "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ=="
503 | },
504 | "node_modules/@webassemblyjs/helper-api-error": {
505 | "version": "1.11.1",
506 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
507 | "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg=="
508 | },
509 | "node_modules/@webassemblyjs/helper-buffer": {
510 | "version": "1.11.1",
511 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
512 | "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA=="
513 | },
514 | "node_modules/@webassemblyjs/helper-numbers": {
515 | "version": "1.11.1",
516 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
517 | "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
518 | "dependencies": {
519 | "@webassemblyjs/floating-point-hex-parser": "1.11.1",
520 | "@webassemblyjs/helper-api-error": "1.11.1",
521 | "@xtuc/long": "4.2.2"
522 | }
523 | },
524 | "node_modules/@webassemblyjs/helper-wasm-bytecode": {
525 | "version": "1.11.1",
526 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
527 | "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q=="
528 | },
529 | "node_modules/@webassemblyjs/helper-wasm-section": {
530 | "version": "1.11.1",
531 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
532 | "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
533 | "dependencies": {
534 | "@webassemblyjs/ast": "1.11.1",
535 | "@webassemblyjs/helper-buffer": "1.11.1",
536 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
537 | "@webassemblyjs/wasm-gen": "1.11.1"
538 | }
539 | },
540 | "node_modules/@webassemblyjs/ieee754": {
541 | "version": "1.11.1",
542 | "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
543 | "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
544 | "dependencies": {
545 | "@xtuc/ieee754": "^1.2.0"
546 | }
547 | },
548 | "node_modules/@webassemblyjs/leb128": {
549 | "version": "1.11.1",
550 | "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
551 | "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
552 | "dependencies": {
553 | "@xtuc/long": "4.2.2"
554 | }
555 | },
556 | "node_modules/@webassemblyjs/utf8": {
557 | "version": "1.11.1",
558 | "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
559 | "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ=="
560 | },
561 | "node_modules/@webassemblyjs/wasm-edit": {
562 | "version": "1.11.1",
563 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
564 | "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
565 | "dependencies": {
566 | "@webassemblyjs/ast": "1.11.1",
567 | "@webassemblyjs/helper-buffer": "1.11.1",
568 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
569 | "@webassemblyjs/helper-wasm-section": "1.11.1",
570 | "@webassemblyjs/wasm-gen": "1.11.1",
571 | "@webassemblyjs/wasm-opt": "1.11.1",
572 | "@webassemblyjs/wasm-parser": "1.11.1",
573 | "@webassemblyjs/wast-printer": "1.11.1"
574 | }
575 | },
576 | "node_modules/@webassemblyjs/wasm-gen": {
577 | "version": "1.11.1",
578 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
579 | "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
580 | "dependencies": {
581 | "@webassemblyjs/ast": "1.11.1",
582 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
583 | "@webassemblyjs/ieee754": "1.11.1",
584 | "@webassemblyjs/leb128": "1.11.1",
585 | "@webassemblyjs/utf8": "1.11.1"
586 | }
587 | },
588 | "node_modules/@webassemblyjs/wasm-opt": {
589 | "version": "1.11.1",
590 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
591 | "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
592 | "dependencies": {
593 | "@webassemblyjs/ast": "1.11.1",
594 | "@webassemblyjs/helper-buffer": "1.11.1",
595 | "@webassemblyjs/wasm-gen": "1.11.1",
596 | "@webassemblyjs/wasm-parser": "1.11.1"
597 | }
598 | },
599 | "node_modules/@webassemblyjs/wasm-parser": {
600 | "version": "1.11.1",
601 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
602 | "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
603 | "dependencies": {
604 | "@webassemblyjs/ast": "1.11.1",
605 | "@webassemblyjs/helper-api-error": "1.11.1",
606 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
607 | "@webassemblyjs/ieee754": "1.11.1",
608 | "@webassemblyjs/leb128": "1.11.1",
609 | "@webassemblyjs/utf8": "1.11.1"
610 | }
611 | },
612 | "node_modules/@webassemblyjs/wast-printer": {
613 | "version": "1.11.1",
614 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
615 | "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
616 | "dependencies": {
617 | "@webassemblyjs/ast": "1.11.1",
618 | "@xtuc/long": "4.2.2"
619 | }
620 | },
621 | "node_modules/@webpack-cli/configtest": {
622 | "version": "1.1.1",
623 | "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.1.tgz",
624 | "integrity": "sha512-1FBc1f9G4P/AxMqIgfZgeOTuRnwZMten8E7zap5zgpPInnCrP8D4Q81+4CWIch8i/Nf7nXjP0v6CjjbHOrXhKg==",
625 | "peerDependencies": {
626 | "webpack": "4.x.x || 5.x.x",
627 | "webpack-cli": "4.x.x"
628 | }
629 | },
630 | "node_modules/@webpack-cli/info": {
631 | "version": "1.4.1",
632 | "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.1.tgz",
633 | "integrity": "sha512-PKVGmazEq3oAo46Q63tpMr4HipI3OPfP7LiNOEJg963RMgT0rqheag28NCML0o3GIzA3DmxP1ZIAv9oTX1CUIA==",
634 | "dependencies": {
635 | "envinfo": "^7.7.3"
636 | },
637 | "peerDependencies": {
638 | "webpack-cli": "4.x.x"
639 | }
640 | },
641 | "node_modules/@webpack-cli/serve": {
642 | "version": "1.6.1",
643 | "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.1.tgz",
644 | "integrity": "sha512-gNGTiTrjEVQ0OcVnzsRSqTxaBSr+dmTfm+qJsCDluky8uhdLWep7Gcr62QsAKHTMxjCS/8nEITsmFAhfIx+QSw==",
645 | "peerDependencies": {
646 | "webpack-cli": "4.x.x"
647 | },
648 | "peerDependenciesMeta": {
649 | "webpack-dev-server": {
650 | "optional": true
651 | }
652 | }
653 | },
654 | "node_modules/@xtuc/ieee754": {
655 | "version": "1.2.0",
656 | "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
657 | "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA=="
658 | },
659 | "node_modules/@xtuc/long": {
660 | "version": "4.2.2",
661 | "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
662 | "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="
663 | },
664 | "node_modules/acorn": {
665 | "version": "8.7.1",
666 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz",
667 | "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==",
668 | "bin": {
669 | "acorn": "bin/acorn"
670 | },
671 | "engines": {
672 | "node": ">=0.4.0"
673 | }
674 | },
675 | "node_modules/acorn-import-assertions": {
676 | "version": "1.8.0",
677 | "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz",
678 | "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
679 | "peerDependencies": {
680 | "acorn": "^8"
681 | }
682 | },
683 | "node_modules/ajv": {
684 | "version": "6.12.6",
685 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
686 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
687 | "dependencies": {
688 | "fast-deep-equal": "^3.1.1",
689 | "fast-json-stable-stringify": "^2.0.0",
690 | "json-schema-traverse": "^0.4.1",
691 | "uri-js": "^4.2.2"
692 | },
693 | "funding": {
694 | "type": "github",
695 | "url": "https://github.com/sponsors/epoberezkin"
696 | }
697 | },
698 | "node_modules/ajv-keywords": {
699 | "version": "3.5.2",
700 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
701 | "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
702 | "peerDependencies": {
703 | "ajv": "^6.9.1"
704 | }
705 | },
706 | "node_modules/ansi-styles": {
707 | "version": "3.2.1",
708 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
709 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
710 | "dependencies": {
711 | "color-convert": "^1.9.0"
712 | },
713 | "engines": {
714 | "node": ">=4"
715 | }
716 | },
717 | "node_modules/babel-loader": {
718 | "version": "8.2.5",
719 | "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz",
720 | "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==",
721 | "dependencies": {
722 | "find-cache-dir": "^3.3.1",
723 | "loader-utils": "^2.0.0",
724 | "make-dir": "^3.1.0",
725 | "schema-utils": "^2.6.5"
726 | },
727 | "engines": {
728 | "node": ">= 8.9"
729 | },
730 | "peerDependencies": {
731 | "@babel/core": "^7.0.0",
732 | "webpack": ">=2"
733 | }
734 | },
735 | "node_modules/big.js": {
736 | "version": "5.2.2",
737 | "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
738 | "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
739 | "engines": {
740 | "node": "*"
741 | }
742 | },
743 | "node_modules/browserslist": {
744 | "version": "4.20.3",
745 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
746 | "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
747 | "funding": [
748 | {
749 | "type": "opencollective",
750 | "url": "https://opencollective.com/browserslist"
751 | },
752 | {
753 | "type": "tidelift",
754 | "url": "https://tidelift.com/funding/github/npm/browserslist"
755 | }
756 | ],
757 | "dependencies": {
758 | "caniuse-lite": "^1.0.30001332",
759 | "electron-to-chromium": "^1.4.118",
760 | "escalade": "^3.1.1",
761 | "node-releases": "^2.0.3",
762 | "picocolors": "^1.0.0"
763 | },
764 | "bin": {
765 | "browserslist": "cli.js"
766 | },
767 | "engines": {
768 | "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
769 | }
770 | },
771 | "node_modules/buffer-from": {
772 | "version": "1.1.2",
773 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
774 | "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
775 | },
776 | "node_modules/caniuse-lite": {
777 | "version": "1.0.30001336",
778 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001336.tgz",
779 | "integrity": "sha512-/YxSlBmL7iKXTbIJ48IQTnAOBk7XmWsxhBF1PZLOko5Dt9qc4Pl+84lfqG3Tc4EuavurRn1QLoVJGxY2iSycfw==",
780 | "funding": [
781 | {
782 | "type": "opencollective",
783 | "url": "https://opencollective.com/browserslist"
784 | },
785 | {
786 | "type": "tidelift",
787 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
788 | }
789 | ]
790 | },
791 | "node_modules/chalk": {
792 | "version": "2.4.2",
793 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
794 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
795 | "dependencies": {
796 | "ansi-styles": "^3.2.1",
797 | "escape-string-regexp": "^1.0.5",
798 | "supports-color": "^5.3.0"
799 | },
800 | "engines": {
801 | "node": ">=4"
802 | }
803 | },
804 | "node_modules/chrome-trace-event": {
805 | "version": "1.0.3",
806 | "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
807 | "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
808 | "engines": {
809 | "node": ">=6.0"
810 | }
811 | },
812 | "node_modules/clone-deep": {
813 | "version": "4.0.1",
814 | "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
815 | "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
816 | "dependencies": {
817 | "is-plain-object": "^2.0.4",
818 | "kind-of": "^6.0.2",
819 | "shallow-clone": "^3.0.0"
820 | },
821 | "engines": {
822 | "node": ">=6"
823 | }
824 | },
825 | "node_modules/color-convert": {
826 | "version": "1.9.3",
827 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
828 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
829 | "dependencies": {
830 | "color-name": "1.1.3"
831 | }
832 | },
833 | "node_modules/color-name": {
834 | "version": "1.1.3",
835 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
836 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
837 | },
838 | "node_modules/colorette": {
839 | "version": "2.0.16",
840 | "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz",
841 | "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g=="
842 | },
843 | "node_modules/commander": {
844 | "version": "2.20.3",
845 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
846 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
847 | },
848 | "node_modules/commondir": {
849 | "version": "1.0.1",
850 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
851 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs="
852 | },
853 | "node_modules/convert-source-map": {
854 | "version": "1.8.0",
855 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
856 | "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
857 | "dependencies": {
858 | "safe-buffer": "~5.1.1"
859 | }
860 | },
861 | "node_modules/cross-spawn": {
862 | "version": "7.0.3",
863 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
864 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
865 | "dependencies": {
866 | "path-key": "^3.1.0",
867 | "shebang-command": "^2.0.0",
868 | "which": "^2.0.1"
869 | },
870 | "engines": {
871 | "node": ">= 8"
872 | }
873 | },
874 | "node_modules/debug": {
875 | "version": "4.3.4",
876 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
877 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
878 | "dependencies": {
879 | "ms": "2.1.2"
880 | },
881 | "engines": {
882 | "node": ">=6.0"
883 | },
884 | "peerDependenciesMeta": {
885 | "supports-color": {
886 | "optional": true
887 | }
888 | }
889 | },
890 | "node_modules/electron-to-chromium": {
891 | "version": "1.4.134",
892 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.134.tgz",
893 | "integrity": "sha512-OdD7M2no4Mi8PopfvoOuNcwYDJ2mNFxaBfurA6okG3fLBaMcFah9S+si84FhX+FIWLKkdaiHfl4A+5ep/gOVrg=="
894 | },
895 | "node_modules/emojis-list": {
896 | "version": "3.0.0",
897 | "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
898 | "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
899 | "engines": {
900 | "node": ">= 4"
901 | }
902 | },
903 | "node_modules/enhanced-resolve": {
904 | "version": "5.9.3",
905 | "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz",
906 | "integrity": "sha512-Bq9VSor+kjvW3f9/MiiR4eE3XYgOl7/rS8lnSxbRbF3kS0B2r+Y9w5krBWxZgDxASVZbdYrn5wT4j/Wb0J9qow==",
907 | "dependencies": {
908 | "graceful-fs": "^4.2.4",
909 | "tapable": "^2.2.0"
910 | },
911 | "engines": {
912 | "node": ">=10.13.0"
913 | }
914 | },
915 | "node_modules/envinfo": {
916 | "version": "7.8.1",
917 | "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz",
918 | "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==",
919 | "bin": {
920 | "envinfo": "dist/cli.js"
921 | },
922 | "engines": {
923 | "node": ">=4"
924 | }
925 | },
926 | "node_modules/es-module-lexer": {
927 | "version": "0.9.3",
928 | "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz",
929 | "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ=="
930 | },
931 | "node_modules/escalade": {
932 | "version": "3.1.1",
933 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
934 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
935 | "engines": {
936 | "node": ">=6"
937 | }
938 | },
939 | "node_modules/escape-string-regexp": {
940 | "version": "1.0.5",
941 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
942 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
943 | "engines": {
944 | "node": ">=0.8.0"
945 | }
946 | },
947 | "node_modules/eslint-scope": {
948 | "version": "5.1.1",
949 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
950 | "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
951 | "dependencies": {
952 | "esrecurse": "^4.3.0",
953 | "estraverse": "^4.1.1"
954 | },
955 | "engines": {
956 | "node": ">=8.0.0"
957 | }
958 | },
959 | "node_modules/esrecurse": {
960 | "version": "4.3.0",
961 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
962 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
963 | "dependencies": {
964 | "estraverse": "^5.2.0"
965 | },
966 | "engines": {
967 | "node": ">=4.0"
968 | }
969 | },
970 | "node_modules/esrecurse/node_modules/estraverse": {
971 | "version": "5.3.0",
972 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
973 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
974 | "engines": {
975 | "node": ">=4.0"
976 | }
977 | },
978 | "node_modules/estraverse": {
979 | "version": "4.3.0",
980 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
981 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
982 | "engines": {
983 | "node": ">=4.0"
984 | }
985 | },
986 | "node_modules/events": {
987 | "version": "3.3.0",
988 | "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
989 | "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
990 | "engines": {
991 | "node": ">=0.8.x"
992 | }
993 | },
994 | "node_modules/execa": {
995 | "version": "5.1.1",
996 | "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
997 | "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
998 | "dependencies": {
999 | "cross-spawn": "^7.0.3",
1000 | "get-stream": "^6.0.0",
1001 | "human-signals": "^2.1.0",
1002 | "is-stream": "^2.0.0",
1003 | "merge-stream": "^2.0.0",
1004 | "npm-run-path": "^4.0.1",
1005 | "onetime": "^5.1.2",
1006 | "signal-exit": "^3.0.3",
1007 | "strip-final-newline": "^2.0.0"
1008 | },
1009 | "engines": {
1010 | "node": ">=10"
1011 | },
1012 | "funding": {
1013 | "url": "https://github.com/sindresorhus/execa?sponsor=1"
1014 | }
1015 | },
1016 | "node_modules/fast-deep-equal": {
1017 | "version": "3.1.3",
1018 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
1019 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
1020 | },
1021 | "node_modules/fast-json-stable-stringify": {
1022 | "version": "2.1.0",
1023 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1024 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
1025 | },
1026 | "node_modules/fastest-levenshtein": {
1027 | "version": "1.0.12",
1028 | "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz",
1029 | "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow=="
1030 | },
1031 | "node_modules/find-cache-dir": {
1032 | "version": "3.3.2",
1033 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
1034 | "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
1035 | "dependencies": {
1036 | "commondir": "^1.0.1",
1037 | "make-dir": "^3.0.2",
1038 | "pkg-dir": "^4.1.0"
1039 | },
1040 | "engines": {
1041 | "node": ">=8"
1042 | },
1043 | "funding": {
1044 | "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
1045 | }
1046 | },
1047 | "node_modules/find-up": {
1048 | "version": "4.1.0",
1049 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
1050 | "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
1051 | "dependencies": {
1052 | "locate-path": "^5.0.0",
1053 | "path-exists": "^4.0.0"
1054 | },
1055 | "engines": {
1056 | "node": ">=8"
1057 | }
1058 | },
1059 | "node_modules/function-bind": {
1060 | "version": "1.1.1",
1061 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1062 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
1063 | },
1064 | "node_modules/gensync": {
1065 | "version": "1.0.0-beta.2",
1066 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
1067 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
1068 | "engines": {
1069 | "node": ">=6.9.0"
1070 | }
1071 | },
1072 | "node_modules/get-stream": {
1073 | "version": "6.0.1",
1074 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
1075 | "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
1076 | "engines": {
1077 | "node": ">=10"
1078 | },
1079 | "funding": {
1080 | "url": "https://github.com/sponsors/sindresorhus"
1081 | }
1082 | },
1083 | "node_modules/glob-to-regexp": {
1084 | "version": "0.4.1",
1085 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
1086 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
1087 | },
1088 | "node_modules/globals": {
1089 | "version": "11.12.0",
1090 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
1091 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
1092 | "engines": {
1093 | "node": ">=4"
1094 | }
1095 | },
1096 | "node_modules/graceful-fs": {
1097 | "version": "4.2.10",
1098 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
1099 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA=="
1100 | },
1101 | "node_modules/has": {
1102 | "version": "1.0.3",
1103 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1104 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1105 | "dependencies": {
1106 | "function-bind": "^1.1.1"
1107 | },
1108 | "engines": {
1109 | "node": ">= 0.4.0"
1110 | }
1111 | },
1112 | "node_modules/has-flag": {
1113 | "version": "3.0.0",
1114 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1115 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1116 | "engines": {
1117 | "node": ">=4"
1118 | }
1119 | },
1120 | "node_modules/human-signals": {
1121 | "version": "2.1.0",
1122 | "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
1123 | "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
1124 | "engines": {
1125 | "node": ">=10.17.0"
1126 | }
1127 | },
1128 | "node_modules/import-local": {
1129 | "version": "3.1.0",
1130 | "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
1131 | "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
1132 | "dependencies": {
1133 | "pkg-dir": "^4.2.0",
1134 | "resolve-cwd": "^3.0.0"
1135 | },
1136 | "bin": {
1137 | "import-local-fixture": "fixtures/cli.js"
1138 | },
1139 | "engines": {
1140 | "node": ">=8"
1141 | },
1142 | "funding": {
1143 | "url": "https://github.com/sponsors/sindresorhus"
1144 | }
1145 | },
1146 | "node_modules/interpret": {
1147 | "version": "2.2.0",
1148 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
1149 | "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
1150 | "engines": {
1151 | "node": ">= 0.10"
1152 | }
1153 | },
1154 | "node_modules/is-core-module": {
1155 | "version": "2.9.0",
1156 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
1157 | "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
1158 | "dependencies": {
1159 | "has": "^1.0.3"
1160 | },
1161 | "funding": {
1162 | "url": "https://github.com/sponsors/ljharb"
1163 | }
1164 | },
1165 | "node_modules/is-plain-object": {
1166 | "version": "2.0.4",
1167 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
1168 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
1169 | "dependencies": {
1170 | "isobject": "^3.0.1"
1171 | },
1172 | "engines": {
1173 | "node": ">=0.10.0"
1174 | }
1175 | },
1176 | "node_modules/is-stream": {
1177 | "version": "2.0.1",
1178 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
1179 | "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
1180 | "engines": {
1181 | "node": ">=8"
1182 | },
1183 | "funding": {
1184 | "url": "https://github.com/sponsors/sindresorhus"
1185 | }
1186 | },
1187 | "node_modules/isexe": {
1188 | "version": "2.0.0",
1189 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1190 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
1191 | },
1192 | "node_modules/isobject": {
1193 | "version": "3.0.1",
1194 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
1195 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
1196 | "engines": {
1197 | "node": ">=0.10.0"
1198 | }
1199 | },
1200 | "node_modules/jest-worker": {
1201 | "version": "27.5.1",
1202 | "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz",
1203 | "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==",
1204 | "dependencies": {
1205 | "@types/node": "*",
1206 | "merge-stream": "^2.0.0",
1207 | "supports-color": "^8.0.0"
1208 | },
1209 | "engines": {
1210 | "node": ">= 10.13.0"
1211 | }
1212 | },
1213 | "node_modules/jest-worker/node_modules/has-flag": {
1214 | "version": "4.0.0",
1215 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1216 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1217 | "engines": {
1218 | "node": ">=8"
1219 | }
1220 | },
1221 | "node_modules/jest-worker/node_modules/supports-color": {
1222 | "version": "8.1.1",
1223 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
1224 | "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
1225 | "dependencies": {
1226 | "has-flag": "^4.0.0"
1227 | },
1228 | "engines": {
1229 | "node": ">=10"
1230 | },
1231 | "funding": {
1232 | "url": "https://github.com/chalk/supports-color?sponsor=1"
1233 | }
1234 | },
1235 | "node_modules/js-tokens": {
1236 | "version": "4.0.0",
1237 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1238 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
1239 | },
1240 | "node_modules/jsesc": {
1241 | "version": "2.5.2",
1242 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
1243 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
1244 | "bin": {
1245 | "jsesc": "bin/jsesc"
1246 | },
1247 | "engines": {
1248 | "node": ">=4"
1249 | }
1250 | },
1251 | "node_modules/json-parse-better-errors": {
1252 | "version": "1.0.2",
1253 | "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
1254 | "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw=="
1255 | },
1256 | "node_modules/json-schema-traverse": {
1257 | "version": "0.4.1",
1258 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1259 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
1260 | },
1261 | "node_modules/json5": {
1262 | "version": "2.2.1",
1263 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
1264 | "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
1265 | "bin": {
1266 | "json5": "lib/cli.js"
1267 | },
1268 | "engines": {
1269 | "node": ">=6"
1270 | }
1271 | },
1272 | "node_modules/kind-of": {
1273 | "version": "6.0.3",
1274 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
1275 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
1276 | "engines": {
1277 | "node": ">=0.10.0"
1278 | }
1279 | },
1280 | "node_modules/loader-runner": {
1281 | "version": "4.3.0",
1282 | "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz",
1283 | "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==",
1284 | "engines": {
1285 | "node": ">=6.11.5"
1286 | }
1287 | },
1288 | "node_modules/loader-utils": {
1289 | "version": "2.0.2",
1290 | "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz",
1291 | "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
1292 | "dependencies": {
1293 | "big.js": "^5.2.2",
1294 | "emojis-list": "^3.0.0",
1295 | "json5": "^2.1.2"
1296 | },
1297 | "engines": {
1298 | "node": ">=8.9.0"
1299 | }
1300 | },
1301 | "node_modules/locate-path": {
1302 | "version": "5.0.0",
1303 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
1304 | "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
1305 | "dependencies": {
1306 | "p-locate": "^4.1.0"
1307 | },
1308 | "engines": {
1309 | "node": ">=8"
1310 | }
1311 | },
1312 | "node_modules/lodash.sortby": {
1313 | "version": "4.7.0",
1314 | "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
1315 | "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg="
1316 | },
1317 | "node_modules/loose-envify": {
1318 | "version": "1.4.0",
1319 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
1320 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1321 | "dependencies": {
1322 | "js-tokens": "^3.0.0 || ^4.0.0"
1323 | },
1324 | "bin": {
1325 | "loose-envify": "cli.js"
1326 | }
1327 | },
1328 | "node_modules/make-dir": {
1329 | "version": "3.1.0",
1330 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
1331 | "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
1332 | "dependencies": {
1333 | "semver": "^6.0.0"
1334 | },
1335 | "engines": {
1336 | "node": ">=8"
1337 | },
1338 | "funding": {
1339 | "url": "https://github.com/sponsors/sindresorhus"
1340 | }
1341 | },
1342 | "node_modules/merge-stream": {
1343 | "version": "2.0.0",
1344 | "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
1345 | "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
1346 | },
1347 | "node_modules/mime-db": {
1348 | "version": "1.52.0",
1349 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
1350 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
1351 | "engines": {
1352 | "node": ">= 0.6"
1353 | }
1354 | },
1355 | "node_modules/mime-types": {
1356 | "version": "2.1.35",
1357 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
1358 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
1359 | "dependencies": {
1360 | "mime-db": "1.52.0"
1361 | },
1362 | "engines": {
1363 | "node": ">= 0.6"
1364 | }
1365 | },
1366 | "node_modules/mimic-fn": {
1367 | "version": "2.1.0",
1368 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
1369 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
1370 | "engines": {
1371 | "node": ">=6"
1372 | }
1373 | },
1374 | "node_modules/ms": {
1375 | "version": "2.1.2",
1376 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1377 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
1378 | },
1379 | "node_modules/neo-async": {
1380 | "version": "2.6.2",
1381 | "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
1382 | "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
1383 | },
1384 | "node_modules/node-releases": {
1385 | "version": "2.0.4",
1386 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
1387 | "integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ=="
1388 | },
1389 | "node_modules/npm-run-path": {
1390 | "version": "4.0.1",
1391 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
1392 | "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
1393 | "dependencies": {
1394 | "path-key": "^3.0.0"
1395 | },
1396 | "engines": {
1397 | "node": ">=8"
1398 | }
1399 | },
1400 | "node_modules/onetime": {
1401 | "version": "5.1.2",
1402 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
1403 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
1404 | "dependencies": {
1405 | "mimic-fn": "^2.1.0"
1406 | },
1407 | "engines": {
1408 | "node": ">=6"
1409 | },
1410 | "funding": {
1411 | "url": "https://github.com/sponsors/sindresorhus"
1412 | }
1413 | },
1414 | "node_modules/p-limit": {
1415 | "version": "2.3.0",
1416 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
1417 | "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
1418 | "dependencies": {
1419 | "p-try": "^2.0.0"
1420 | },
1421 | "engines": {
1422 | "node": ">=6"
1423 | },
1424 | "funding": {
1425 | "url": "https://github.com/sponsors/sindresorhus"
1426 | }
1427 | },
1428 | "node_modules/p-locate": {
1429 | "version": "4.1.0",
1430 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
1431 | "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
1432 | "dependencies": {
1433 | "p-limit": "^2.2.0"
1434 | },
1435 | "engines": {
1436 | "node": ">=8"
1437 | }
1438 | },
1439 | "node_modules/p-try": {
1440 | "version": "2.2.0",
1441 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
1442 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
1443 | "engines": {
1444 | "node": ">=6"
1445 | }
1446 | },
1447 | "node_modules/path-exists": {
1448 | "version": "4.0.0",
1449 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
1450 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
1451 | "engines": {
1452 | "node": ">=8"
1453 | }
1454 | },
1455 | "node_modules/path-key": {
1456 | "version": "3.1.1",
1457 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1458 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1459 | "engines": {
1460 | "node": ">=8"
1461 | }
1462 | },
1463 | "node_modules/path-parse": {
1464 | "version": "1.0.7",
1465 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1466 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
1467 | },
1468 | "node_modules/picocolors": {
1469 | "version": "1.0.0",
1470 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1471 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
1472 | },
1473 | "node_modules/pkg-dir": {
1474 | "version": "4.2.0",
1475 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
1476 | "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
1477 | "dependencies": {
1478 | "find-up": "^4.0.0"
1479 | },
1480 | "engines": {
1481 | "node": ">=8"
1482 | }
1483 | },
1484 | "node_modules/punycode": {
1485 | "version": "2.1.1",
1486 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
1487 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
1488 | "engines": {
1489 | "node": ">=6"
1490 | }
1491 | },
1492 | "node_modules/randombytes": {
1493 | "version": "2.1.0",
1494 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
1495 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
1496 | "dependencies": {
1497 | "safe-buffer": "^5.1.0"
1498 | }
1499 | },
1500 | "node_modules/react": {
1501 | "version": "18.1.0",
1502 | "resolved": "https://registry.npmjs.org/react/-/react-18.1.0.tgz",
1503 | "integrity": "sha512-4oL8ivCz5ZEPyclFQXaNksK3adutVS8l2xzZU0cqEFrE9Sb7fC0EFK5uEk74wIreL1DERyjvsU915j1pcT2uEQ==",
1504 | "dependencies": {
1505 | "loose-envify": "^1.1.0"
1506 | },
1507 | "engines": {
1508 | "node": ">=0.10.0"
1509 | }
1510 | },
1511 | "node_modules/react-dom": {
1512 | "version": "18.1.0",
1513 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.1.0.tgz",
1514 | "integrity": "sha512-fU1Txz7Budmvamp7bshe4Zi32d0ll7ect+ccxNu9FlObT605GOEB8BfO4tmRJ39R5Zj831VCpvQ05QPBW5yb+w==",
1515 | "dependencies": {
1516 | "loose-envify": "^1.1.0",
1517 | "scheduler": "^0.22.0"
1518 | },
1519 | "peerDependencies": {
1520 | "react": "^18.1.0"
1521 | }
1522 | },
1523 | "node_modules/rechoir": {
1524 | "version": "0.7.1",
1525 | "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
1526 | "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
1527 | "dependencies": {
1528 | "resolve": "^1.9.0"
1529 | },
1530 | "engines": {
1531 | "node": ">= 0.10"
1532 | }
1533 | },
1534 | "node_modules/resolve": {
1535 | "version": "1.22.0",
1536 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz",
1537 | "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==",
1538 | "dependencies": {
1539 | "is-core-module": "^2.8.1",
1540 | "path-parse": "^1.0.7",
1541 | "supports-preserve-symlinks-flag": "^1.0.0"
1542 | },
1543 | "bin": {
1544 | "resolve": "bin/resolve"
1545 | },
1546 | "funding": {
1547 | "url": "https://github.com/sponsors/ljharb"
1548 | }
1549 | },
1550 | "node_modules/resolve-cwd": {
1551 | "version": "3.0.0",
1552 | "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
1553 | "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
1554 | "dependencies": {
1555 | "resolve-from": "^5.0.0"
1556 | },
1557 | "engines": {
1558 | "node": ">=8"
1559 | }
1560 | },
1561 | "node_modules/resolve-from": {
1562 | "version": "5.0.0",
1563 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
1564 | "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
1565 | "engines": {
1566 | "node": ">=8"
1567 | }
1568 | },
1569 | "node_modules/safe-buffer": {
1570 | "version": "5.1.2",
1571 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
1572 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
1573 | },
1574 | "node_modules/scheduler": {
1575 | "version": "0.22.0",
1576 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.22.0.tgz",
1577 | "integrity": "sha512-6QAm1BgQI88NPYymgGQLCZgvep4FyePDWFpXVK+zNSUgHwlqpJy8VEh8Et0KxTACS4VWwMousBElAZOH9nkkoQ==",
1578 | "dependencies": {
1579 | "loose-envify": "^1.1.0"
1580 | }
1581 | },
1582 | "node_modules/schema-utils": {
1583 | "version": "2.7.1",
1584 | "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
1585 | "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
1586 | "dependencies": {
1587 | "@types/json-schema": "^7.0.5",
1588 | "ajv": "^6.12.4",
1589 | "ajv-keywords": "^3.5.2"
1590 | },
1591 | "engines": {
1592 | "node": ">= 8.9.0"
1593 | },
1594 | "funding": {
1595 | "type": "opencollective",
1596 | "url": "https://opencollective.com/webpack"
1597 | }
1598 | },
1599 | "node_modules/semver": {
1600 | "version": "6.3.0",
1601 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1602 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1603 | "bin": {
1604 | "semver": "bin/semver.js"
1605 | }
1606 | },
1607 | "node_modules/serialize-javascript": {
1608 | "version": "6.0.0",
1609 | "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
1610 | "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
1611 | "dependencies": {
1612 | "randombytes": "^2.1.0"
1613 | }
1614 | },
1615 | "node_modules/shallow-clone": {
1616 | "version": "3.0.1",
1617 | "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
1618 | "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
1619 | "dependencies": {
1620 | "kind-of": "^6.0.2"
1621 | },
1622 | "engines": {
1623 | "node": ">=8"
1624 | }
1625 | },
1626 | "node_modules/shebang-command": {
1627 | "version": "2.0.0",
1628 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1629 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1630 | "dependencies": {
1631 | "shebang-regex": "^3.0.0"
1632 | },
1633 | "engines": {
1634 | "node": ">=8"
1635 | }
1636 | },
1637 | "node_modules/shebang-regex": {
1638 | "version": "3.0.0",
1639 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1640 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1641 | "engines": {
1642 | "node": ">=8"
1643 | }
1644 | },
1645 | "node_modules/signal-exit": {
1646 | "version": "3.0.7",
1647 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1648 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
1649 | },
1650 | "node_modules/source-map": {
1651 | "version": "0.6.1",
1652 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
1653 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
1654 | "engines": {
1655 | "node": ">=0.10.0"
1656 | }
1657 | },
1658 | "node_modules/source-map-support": {
1659 | "version": "0.5.21",
1660 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
1661 | "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
1662 | "dependencies": {
1663 | "buffer-from": "^1.0.0",
1664 | "source-map": "^0.6.0"
1665 | }
1666 | },
1667 | "node_modules/strip-final-newline": {
1668 | "version": "2.0.0",
1669 | "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
1670 | "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
1671 | "engines": {
1672 | "node": ">=6"
1673 | }
1674 | },
1675 | "node_modules/supports-color": {
1676 | "version": "5.5.0",
1677 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
1678 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
1679 | "dependencies": {
1680 | "has-flag": "^3.0.0"
1681 | },
1682 | "engines": {
1683 | "node": ">=4"
1684 | }
1685 | },
1686 | "node_modules/supports-preserve-symlinks-flag": {
1687 | "version": "1.0.0",
1688 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
1689 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
1690 | "engines": {
1691 | "node": ">= 0.4"
1692 | },
1693 | "funding": {
1694 | "url": "https://github.com/sponsors/ljharb"
1695 | }
1696 | },
1697 | "node_modules/tapable": {
1698 | "version": "2.2.1",
1699 | "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
1700 | "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
1701 | "engines": {
1702 | "node": ">=6"
1703 | }
1704 | },
1705 | "node_modules/terser": {
1706 | "version": "5.13.1",
1707 | "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz",
1708 | "integrity": "sha512-hn4WKOfwnwbYfe48NgrQjqNOH9jzLqRcIfbYytOXCOv46LBfWr9bDS17MQqOi+BWGD0sJK3Sj5NC/gJjiojaoA==",
1709 | "dependencies": {
1710 | "acorn": "^8.5.0",
1711 | "commander": "^2.20.0",
1712 | "source-map": "~0.8.0-beta.0",
1713 | "source-map-support": "~0.5.20"
1714 | },
1715 | "bin": {
1716 | "terser": "bin/terser"
1717 | },
1718 | "engines": {
1719 | "node": ">=10"
1720 | }
1721 | },
1722 | "node_modules/terser-webpack-plugin": {
1723 | "version": "5.3.1",
1724 | "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz",
1725 | "integrity": "sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g==",
1726 | "dependencies": {
1727 | "jest-worker": "^27.4.5",
1728 | "schema-utils": "^3.1.1",
1729 | "serialize-javascript": "^6.0.0",
1730 | "source-map": "^0.6.1",
1731 | "terser": "^5.7.2"
1732 | },
1733 | "engines": {
1734 | "node": ">= 10.13.0"
1735 | },
1736 | "funding": {
1737 | "type": "opencollective",
1738 | "url": "https://opencollective.com/webpack"
1739 | },
1740 | "peerDependencies": {
1741 | "webpack": "^5.1.0"
1742 | },
1743 | "peerDependenciesMeta": {
1744 | "@swc/core": {
1745 | "optional": true
1746 | },
1747 | "esbuild": {
1748 | "optional": true
1749 | },
1750 | "uglify-js": {
1751 | "optional": true
1752 | }
1753 | }
1754 | },
1755 | "node_modules/terser-webpack-plugin/node_modules/schema-utils": {
1756 | "version": "3.1.1",
1757 | "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
1758 | "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
1759 | "dependencies": {
1760 | "@types/json-schema": "^7.0.8",
1761 | "ajv": "^6.12.5",
1762 | "ajv-keywords": "^3.5.2"
1763 | },
1764 | "engines": {
1765 | "node": ">= 10.13.0"
1766 | },
1767 | "funding": {
1768 | "type": "opencollective",
1769 | "url": "https://opencollective.com/webpack"
1770 | }
1771 | },
1772 | "node_modules/terser/node_modules/source-map": {
1773 | "version": "0.8.0-beta.0",
1774 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz",
1775 | "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==",
1776 | "dependencies": {
1777 | "whatwg-url": "^7.0.0"
1778 | },
1779 | "engines": {
1780 | "node": ">= 8"
1781 | }
1782 | },
1783 | "node_modules/to-fast-properties": {
1784 | "version": "2.0.0",
1785 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
1786 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
1787 | "engines": {
1788 | "node": ">=4"
1789 | }
1790 | },
1791 | "node_modules/tr46": {
1792 | "version": "1.0.1",
1793 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
1794 | "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=",
1795 | "dependencies": {
1796 | "punycode": "^2.1.0"
1797 | }
1798 | },
1799 | "node_modules/uri-js": {
1800 | "version": "4.4.1",
1801 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
1802 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
1803 | "dependencies": {
1804 | "punycode": "^2.1.0"
1805 | }
1806 | },
1807 | "node_modules/watchpack": {
1808 | "version": "2.3.1",
1809 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz",
1810 | "integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==",
1811 | "dependencies": {
1812 | "glob-to-regexp": "^0.4.1",
1813 | "graceful-fs": "^4.1.2"
1814 | },
1815 | "engines": {
1816 | "node": ">=10.13.0"
1817 | }
1818 | },
1819 | "node_modules/webidl-conversions": {
1820 | "version": "4.0.2",
1821 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
1822 | "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="
1823 | },
1824 | "node_modules/webpack": {
1825 | "version": "5.72.0",
1826 | "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.72.0.tgz",
1827 | "integrity": "sha512-qmSmbspI0Qo5ld49htys8GY9XhS9CGqFoHTsOVAnjBdg0Zn79y135R+k4IR4rKK6+eKaabMhJwiVB7xw0SJu5w==",
1828 | "dependencies": {
1829 | "@types/eslint-scope": "^3.7.3",
1830 | "@types/estree": "^0.0.51",
1831 | "@webassemblyjs/ast": "1.11.1",
1832 | "@webassemblyjs/wasm-edit": "1.11.1",
1833 | "@webassemblyjs/wasm-parser": "1.11.1",
1834 | "acorn": "^8.4.1",
1835 | "acorn-import-assertions": "^1.7.6",
1836 | "browserslist": "^4.14.5",
1837 | "chrome-trace-event": "^1.0.2",
1838 | "enhanced-resolve": "^5.9.2",
1839 | "es-module-lexer": "^0.9.0",
1840 | "eslint-scope": "5.1.1",
1841 | "events": "^3.2.0",
1842 | "glob-to-regexp": "^0.4.1",
1843 | "graceful-fs": "^4.2.9",
1844 | "json-parse-better-errors": "^1.0.2",
1845 | "loader-runner": "^4.2.0",
1846 | "mime-types": "^2.1.27",
1847 | "neo-async": "^2.6.2",
1848 | "schema-utils": "^3.1.0",
1849 | "tapable": "^2.1.1",
1850 | "terser-webpack-plugin": "^5.1.3",
1851 | "watchpack": "^2.3.1",
1852 | "webpack-sources": "^3.2.3"
1853 | },
1854 | "bin": {
1855 | "webpack": "bin/webpack.js"
1856 | },
1857 | "engines": {
1858 | "node": ">=10.13.0"
1859 | },
1860 | "funding": {
1861 | "type": "opencollective",
1862 | "url": "https://opencollective.com/webpack"
1863 | },
1864 | "peerDependenciesMeta": {
1865 | "webpack-cli": {
1866 | "optional": true
1867 | }
1868 | }
1869 | },
1870 | "node_modules/webpack-cli": {
1871 | "version": "4.9.2",
1872 | "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.2.tgz",
1873 | "integrity": "sha512-m3/AACnBBzK/kMTcxWHcZFPrw/eQuY4Df1TxvIWfWM2x7mRqBQCqKEd96oCUa9jkapLBaFfRce33eGDb4Pr7YQ==",
1874 | "dependencies": {
1875 | "@discoveryjs/json-ext": "^0.5.0",
1876 | "@webpack-cli/configtest": "^1.1.1",
1877 | "@webpack-cli/info": "^1.4.1",
1878 | "@webpack-cli/serve": "^1.6.1",
1879 | "colorette": "^2.0.14",
1880 | "commander": "^7.0.0",
1881 | "execa": "^5.0.0",
1882 | "fastest-levenshtein": "^1.0.12",
1883 | "import-local": "^3.0.2",
1884 | "interpret": "^2.2.0",
1885 | "rechoir": "^0.7.0",
1886 | "webpack-merge": "^5.7.3"
1887 | },
1888 | "bin": {
1889 | "webpack-cli": "bin/cli.js"
1890 | },
1891 | "engines": {
1892 | "node": ">=10.13.0"
1893 | },
1894 | "peerDependencies": {
1895 | "webpack": "4.x.x || 5.x.x"
1896 | },
1897 | "peerDependenciesMeta": {
1898 | "@webpack-cli/generators": {
1899 | "optional": true
1900 | },
1901 | "@webpack-cli/migrate": {
1902 | "optional": true
1903 | },
1904 | "webpack-bundle-analyzer": {
1905 | "optional": true
1906 | },
1907 | "webpack-dev-server": {
1908 | "optional": true
1909 | }
1910 | }
1911 | },
1912 | "node_modules/webpack-cli/node_modules/commander": {
1913 | "version": "7.2.0",
1914 | "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
1915 | "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
1916 | "engines": {
1917 | "node": ">= 10"
1918 | }
1919 | },
1920 | "node_modules/webpack-merge": {
1921 | "version": "5.8.0",
1922 | "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz",
1923 | "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==",
1924 | "dependencies": {
1925 | "clone-deep": "^4.0.1",
1926 | "wildcard": "^2.0.0"
1927 | },
1928 | "engines": {
1929 | "node": ">=10.0.0"
1930 | }
1931 | },
1932 | "node_modules/webpack-sources": {
1933 | "version": "3.2.3",
1934 | "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
1935 | "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==",
1936 | "engines": {
1937 | "node": ">=10.13.0"
1938 | }
1939 | },
1940 | "node_modules/webpack/node_modules/schema-utils": {
1941 | "version": "3.1.1",
1942 | "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
1943 | "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
1944 | "dependencies": {
1945 | "@types/json-schema": "^7.0.8",
1946 | "ajv": "^6.12.5",
1947 | "ajv-keywords": "^3.5.2"
1948 | },
1949 | "engines": {
1950 | "node": ">= 10.13.0"
1951 | },
1952 | "funding": {
1953 | "type": "opencollective",
1954 | "url": "https://opencollective.com/webpack"
1955 | }
1956 | },
1957 | "node_modules/whatwg-url": {
1958 | "version": "7.1.0",
1959 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
1960 | "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==",
1961 | "dependencies": {
1962 | "lodash.sortby": "^4.7.0",
1963 | "tr46": "^1.0.1",
1964 | "webidl-conversions": "^4.0.2"
1965 | }
1966 | },
1967 | "node_modules/which": {
1968 | "version": "2.0.2",
1969 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1970 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1971 | "dependencies": {
1972 | "isexe": "^2.0.0"
1973 | },
1974 | "bin": {
1975 | "node-which": "bin/node-which"
1976 | },
1977 | "engines": {
1978 | "node": ">= 8"
1979 | }
1980 | },
1981 | "node_modules/wildcard": {
1982 | "version": "2.0.0",
1983 | "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
1984 | "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw=="
1985 | }
1986 | },
1987 | "dependencies": {
1988 | "@ampproject/remapping": {
1989 | "version": "2.2.0",
1990 | "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
1991 | "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
1992 | "requires": {
1993 | "@jridgewell/gen-mapping": "^0.1.0",
1994 | "@jridgewell/trace-mapping": "^0.3.9"
1995 | }
1996 | },
1997 | "@babel/code-frame": {
1998 | "version": "7.16.7",
1999 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
2000 | "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
2001 | "requires": {
2002 | "@babel/highlight": "^7.16.7"
2003 | }
2004 | },
2005 | "@babel/compat-data": {
2006 | "version": "7.17.10",
2007 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz",
2008 | "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw=="
2009 | },
2010 | "@babel/core": {
2011 | "version": "7.17.10",
2012 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.10.tgz",
2013 | "integrity": "sha512-liKoppandF3ZcBnIYFjfSDHZLKdLHGJRkoWtG8zQyGJBQfIYobpnVGI5+pLBNtS6psFLDzyq8+h5HiVljW9PNA==",
2014 | "requires": {
2015 | "@ampproject/remapping": "^2.1.0",
2016 | "@babel/code-frame": "^7.16.7",
2017 | "@babel/generator": "^7.17.10",
2018 | "@babel/helper-compilation-targets": "^7.17.10",
2019 | "@babel/helper-module-transforms": "^7.17.7",
2020 | "@babel/helpers": "^7.17.9",
2021 | "@babel/parser": "^7.17.10",
2022 | "@babel/template": "^7.16.7",
2023 | "@babel/traverse": "^7.17.10",
2024 | "@babel/types": "^7.17.10",
2025 | "convert-source-map": "^1.7.0",
2026 | "debug": "^4.1.0",
2027 | "gensync": "^1.0.0-beta.2",
2028 | "json5": "^2.2.1",
2029 | "semver": "^6.3.0"
2030 | }
2031 | },
2032 | "@babel/generator": {
2033 | "version": "7.17.10",
2034 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.10.tgz",
2035 | "integrity": "sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==",
2036 | "requires": {
2037 | "@babel/types": "^7.17.10",
2038 | "@jridgewell/gen-mapping": "^0.1.0",
2039 | "jsesc": "^2.5.1"
2040 | }
2041 | },
2042 | "@babel/helper-annotate-as-pure": {
2043 | "version": "7.16.7",
2044 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz",
2045 | "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==",
2046 | "requires": {
2047 | "@babel/types": "^7.16.7"
2048 | }
2049 | },
2050 | "@babel/helper-compilation-targets": {
2051 | "version": "7.17.10",
2052 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz",
2053 | "integrity": "sha512-gh3RxjWbauw/dFiU/7whjd0qN9K6nPJMqe6+Er7rOavFh0CQUSwhAE3IcTho2rywPJFxej6TUUHDkWcYI6gGqQ==",
2054 | "requires": {
2055 | "@babel/compat-data": "^7.17.10",
2056 | "@babel/helper-validator-option": "^7.16.7",
2057 | "browserslist": "^4.20.2",
2058 | "semver": "^6.3.0"
2059 | }
2060 | },
2061 | "@babel/helper-environment-visitor": {
2062 | "version": "7.16.7",
2063 | "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz",
2064 | "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==",
2065 | "requires": {
2066 | "@babel/types": "^7.16.7"
2067 | }
2068 | },
2069 | "@babel/helper-function-name": {
2070 | "version": "7.17.9",
2071 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
2072 | "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
2073 | "requires": {
2074 | "@babel/template": "^7.16.7",
2075 | "@babel/types": "^7.17.0"
2076 | }
2077 | },
2078 | "@babel/helper-hoist-variables": {
2079 | "version": "7.16.7",
2080 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
2081 | "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
2082 | "requires": {
2083 | "@babel/types": "^7.16.7"
2084 | }
2085 | },
2086 | "@babel/helper-module-imports": {
2087 | "version": "7.16.7",
2088 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz",
2089 | "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==",
2090 | "requires": {
2091 | "@babel/types": "^7.16.7"
2092 | }
2093 | },
2094 | "@babel/helper-module-transforms": {
2095 | "version": "7.17.7",
2096 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz",
2097 | "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==",
2098 | "requires": {
2099 | "@babel/helper-environment-visitor": "^7.16.7",
2100 | "@babel/helper-module-imports": "^7.16.7",
2101 | "@babel/helper-simple-access": "^7.17.7",
2102 | "@babel/helper-split-export-declaration": "^7.16.7",
2103 | "@babel/helper-validator-identifier": "^7.16.7",
2104 | "@babel/template": "^7.16.7",
2105 | "@babel/traverse": "^7.17.3",
2106 | "@babel/types": "^7.17.0"
2107 | }
2108 | },
2109 | "@babel/helper-plugin-utils": {
2110 | "version": "7.16.7",
2111 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz",
2112 | "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA=="
2113 | },
2114 | "@babel/helper-simple-access": {
2115 | "version": "7.17.7",
2116 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz",
2117 | "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==",
2118 | "requires": {
2119 | "@babel/types": "^7.17.0"
2120 | }
2121 | },
2122 | "@babel/helper-split-export-declaration": {
2123 | "version": "7.16.7",
2124 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
2125 | "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
2126 | "requires": {
2127 | "@babel/types": "^7.16.7"
2128 | }
2129 | },
2130 | "@babel/helper-validator-identifier": {
2131 | "version": "7.16.7",
2132 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
2133 | "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw=="
2134 | },
2135 | "@babel/helper-validator-option": {
2136 | "version": "7.16.7",
2137 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz",
2138 | "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ=="
2139 | },
2140 | "@babel/helpers": {
2141 | "version": "7.17.9",
2142 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz",
2143 | "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==",
2144 | "requires": {
2145 | "@babel/template": "^7.16.7",
2146 | "@babel/traverse": "^7.17.9",
2147 | "@babel/types": "^7.17.0"
2148 | }
2149 | },
2150 | "@babel/highlight": {
2151 | "version": "7.17.9",
2152 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz",
2153 | "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==",
2154 | "requires": {
2155 | "@babel/helper-validator-identifier": "^7.16.7",
2156 | "chalk": "^2.0.0",
2157 | "js-tokens": "^4.0.0"
2158 | }
2159 | },
2160 | "@babel/parser": {
2161 | "version": "7.17.10",
2162 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.10.tgz",
2163 | "integrity": "sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ=="
2164 | },
2165 | "@babel/plugin-syntax-jsx": {
2166 | "version": "7.16.7",
2167 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz",
2168 | "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==",
2169 | "requires": {
2170 | "@babel/helper-plugin-utils": "^7.16.7"
2171 | }
2172 | },
2173 | "@babel/plugin-transform-react-display-name": {
2174 | "version": "7.16.7",
2175 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz",
2176 | "integrity": "sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==",
2177 | "requires": {
2178 | "@babel/helper-plugin-utils": "^7.16.7"
2179 | }
2180 | },
2181 | "@babel/plugin-transform-react-jsx": {
2182 | "version": "7.17.3",
2183 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.3.tgz",
2184 | "integrity": "sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ==",
2185 | "requires": {
2186 | "@babel/helper-annotate-as-pure": "^7.16.7",
2187 | "@babel/helper-module-imports": "^7.16.7",
2188 | "@babel/helper-plugin-utils": "^7.16.7",
2189 | "@babel/plugin-syntax-jsx": "^7.16.7",
2190 | "@babel/types": "^7.17.0"
2191 | }
2192 | },
2193 | "@babel/plugin-transform-react-jsx-development": {
2194 | "version": "7.16.7",
2195 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz",
2196 | "integrity": "sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==",
2197 | "requires": {
2198 | "@babel/plugin-transform-react-jsx": "^7.16.7"
2199 | }
2200 | },
2201 | "@babel/plugin-transform-react-pure-annotations": {
2202 | "version": "7.16.7",
2203 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.7.tgz",
2204 | "integrity": "sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==",
2205 | "requires": {
2206 | "@babel/helper-annotate-as-pure": "^7.16.7",
2207 | "@babel/helper-plugin-utils": "^7.16.7"
2208 | }
2209 | },
2210 | "@babel/preset-react": {
2211 | "version": "7.16.7",
2212 | "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.16.7.tgz",
2213 | "integrity": "sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==",
2214 | "requires": {
2215 | "@babel/helper-plugin-utils": "^7.16.7",
2216 | "@babel/helper-validator-option": "^7.16.7",
2217 | "@babel/plugin-transform-react-display-name": "^7.16.7",
2218 | "@babel/plugin-transform-react-jsx": "^7.16.7",
2219 | "@babel/plugin-transform-react-jsx-development": "^7.16.7",
2220 | "@babel/plugin-transform-react-pure-annotations": "^7.16.7"
2221 | }
2222 | },
2223 | "@babel/template": {
2224 | "version": "7.16.7",
2225 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
2226 | "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
2227 | "requires": {
2228 | "@babel/code-frame": "^7.16.7",
2229 | "@babel/parser": "^7.16.7",
2230 | "@babel/types": "^7.16.7"
2231 | }
2232 | },
2233 | "@babel/traverse": {
2234 | "version": "7.17.10",
2235 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.10.tgz",
2236 | "integrity": "sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==",
2237 | "requires": {
2238 | "@babel/code-frame": "^7.16.7",
2239 | "@babel/generator": "^7.17.10",
2240 | "@babel/helper-environment-visitor": "^7.16.7",
2241 | "@babel/helper-function-name": "^7.17.9",
2242 | "@babel/helper-hoist-variables": "^7.16.7",
2243 | "@babel/helper-split-export-declaration": "^7.16.7",
2244 | "@babel/parser": "^7.17.10",
2245 | "@babel/types": "^7.17.10",
2246 | "debug": "^4.1.0",
2247 | "globals": "^11.1.0"
2248 | }
2249 | },
2250 | "@babel/types": {
2251 | "version": "7.17.10",
2252 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.10.tgz",
2253 | "integrity": "sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==",
2254 | "requires": {
2255 | "@babel/helper-validator-identifier": "^7.16.7",
2256 | "to-fast-properties": "^2.0.0"
2257 | }
2258 | },
2259 | "@discoveryjs/json-ext": {
2260 | "version": "0.5.7",
2261 | "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
2262 | "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw=="
2263 | },
2264 | "@jridgewell/gen-mapping": {
2265 | "version": "0.1.1",
2266 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
2267 | "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
2268 | "requires": {
2269 | "@jridgewell/set-array": "^1.0.0",
2270 | "@jridgewell/sourcemap-codec": "^1.4.10"
2271 | }
2272 | },
2273 | "@jridgewell/resolve-uri": {
2274 | "version": "3.0.6",
2275 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz",
2276 | "integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw=="
2277 | },
2278 | "@jridgewell/set-array": {
2279 | "version": "1.1.0",
2280 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.0.tgz",
2281 | "integrity": "sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg=="
2282 | },
2283 | "@jridgewell/sourcemap-codec": {
2284 | "version": "1.4.12",
2285 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.12.tgz",
2286 | "integrity": "sha512-az/NhpIwP3K33ILr0T2bso+k2E/SLf8Yidd8mHl0n6sCQ4YdyC8qDhZA6kOPDNDBA56ZnIjngVl0U3jREA0BUA=="
2287 | },
2288 | "@jridgewell/trace-mapping": {
2289 | "version": "0.3.9",
2290 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
2291 | "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
2292 | "requires": {
2293 | "@jridgewell/resolve-uri": "^3.0.3",
2294 | "@jridgewell/sourcemap-codec": "^1.4.10"
2295 | }
2296 | },
2297 | "@types/eslint": {
2298 | "version": "8.4.2",
2299 | "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz",
2300 | "integrity": "sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA==",
2301 | "requires": {
2302 | "@types/estree": "*",
2303 | "@types/json-schema": "*"
2304 | }
2305 | },
2306 | "@types/eslint-scope": {
2307 | "version": "3.7.3",
2308 | "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz",
2309 | "integrity": "sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==",
2310 | "requires": {
2311 | "@types/eslint": "*",
2312 | "@types/estree": "*"
2313 | }
2314 | },
2315 | "@types/estree": {
2316 | "version": "0.0.51",
2317 | "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz",
2318 | "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ=="
2319 | },
2320 | "@types/json-schema": {
2321 | "version": "7.0.11",
2322 | "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
2323 | "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ=="
2324 | },
2325 | "@types/node": {
2326 | "version": "17.0.31",
2327 | "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz",
2328 | "integrity": "sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q=="
2329 | },
2330 | "@webassemblyjs/ast": {
2331 | "version": "1.11.1",
2332 | "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
2333 | "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
2334 | "requires": {
2335 | "@webassemblyjs/helper-numbers": "1.11.1",
2336 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
2337 | }
2338 | },
2339 | "@webassemblyjs/floating-point-hex-parser": {
2340 | "version": "1.11.1",
2341 | "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
2342 | "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ=="
2343 | },
2344 | "@webassemblyjs/helper-api-error": {
2345 | "version": "1.11.1",
2346 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
2347 | "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg=="
2348 | },
2349 | "@webassemblyjs/helper-buffer": {
2350 | "version": "1.11.1",
2351 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
2352 | "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA=="
2353 | },
2354 | "@webassemblyjs/helper-numbers": {
2355 | "version": "1.11.1",
2356 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
2357 | "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
2358 | "requires": {
2359 | "@webassemblyjs/floating-point-hex-parser": "1.11.1",
2360 | "@webassemblyjs/helper-api-error": "1.11.1",
2361 | "@xtuc/long": "4.2.2"
2362 | }
2363 | },
2364 | "@webassemblyjs/helper-wasm-bytecode": {
2365 | "version": "1.11.1",
2366 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
2367 | "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q=="
2368 | },
2369 | "@webassemblyjs/helper-wasm-section": {
2370 | "version": "1.11.1",
2371 | "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
2372 | "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
2373 | "requires": {
2374 | "@webassemblyjs/ast": "1.11.1",
2375 | "@webassemblyjs/helper-buffer": "1.11.1",
2376 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
2377 | "@webassemblyjs/wasm-gen": "1.11.1"
2378 | }
2379 | },
2380 | "@webassemblyjs/ieee754": {
2381 | "version": "1.11.1",
2382 | "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
2383 | "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
2384 | "requires": {
2385 | "@xtuc/ieee754": "^1.2.0"
2386 | }
2387 | },
2388 | "@webassemblyjs/leb128": {
2389 | "version": "1.11.1",
2390 | "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
2391 | "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
2392 | "requires": {
2393 | "@xtuc/long": "4.2.2"
2394 | }
2395 | },
2396 | "@webassemblyjs/utf8": {
2397 | "version": "1.11.1",
2398 | "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
2399 | "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ=="
2400 | },
2401 | "@webassemblyjs/wasm-edit": {
2402 | "version": "1.11.1",
2403 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
2404 | "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
2405 | "requires": {
2406 | "@webassemblyjs/ast": "1.11.1",
2407 | "@webassemblyjs/helper-buffer": "1.11.1",
2408 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
2409 | "@webassemblyjs/helper-wasm-section": "1.11.1",
2410 | "@webassemblyjs/wasm-gen": "1.11.1",
2411 | "@webassemblyjs/wasm-opt": "1.11.1",
2412 | "@webassemblyjs/wasm-parser": "1.11.1",
2413 | "@webassemblyjs/wast-printer": "1.11.1"
2414 | }
2415 | },
2416 | "@webassemblyjs/wasm-gen": {
2417 | "version": "1.11.1",
2418 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
2419 | "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
2420 | "requires": {
2421 | "@webassemblyjs/ast": "1.11.1",
2422 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
2423 | "@webassemblyjs/ieee754": "1.11.1",
2424 | "@webassemblyjs/leb128": "1.11.1",
2425 | "@webassemblyjs/utf8": "1.11.1"
2426 | }
2427 | },
2428 | "@webassemblyjs/wasm-opt": {
2429 | "version": "1.11.1",
2430 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
2431 | "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
2432 | "requires": {
2433 | "@webassemblyjs/ast": "1.11.1",
2434 | "@webassemblyjs/helper-buffer": "1.11.1",
2435 | "@webassemblyjs/wasm-gen": "1.11.1",
2436 | "@webassemblyjs/wasm-parser": "1.11.1"
2437 | }
2438 | },
2439 | "@webassemblyjs/wasm-parser": {
2440 | "version": "1.11.1",
2441 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
2442 | "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
2443 | "requires": {
2444 | "@webassemblyjs/ast": "1.11.1",
2445 | "@webassemblyjs/helper-api-error": "1.11.1",
2446 | "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
2447 | "@webassemblyjs/ieee754": "1.11.1",
2448 | "@webassemblyjs/leb128": "1.11.1",
2449 | "@webassemblyjs/utf8": "1.11.1"
2450 | }
2451 | },
2452 | "@webassemblyjs/wast-printer": {
2453 | "version": "1.11.1",
2454 | "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
2455 | "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
2456 | "requires": {
2457 | "@webassemblyjs/ast": "1.11.1",
2458 | "@xtuc/long": "4.2.2"
2459 | }
2460 | },
2461 | "@webpack-cli/configtest": {
2462 | "version": "1.1.1",
2463 | "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.1.tgz",
2464 | "integrity": "sha512-1FBc1f9G4P/AxMqIgfZgeOTuRnwZMten8E7zap5zgpPInnCrP8D4Q81+4CWIch8i/Nf7nXjP0v6CjjbHOrXhKg==",
2465 | "requires": {}
2466 | },
2467 | "@webpack-cli/info": {
2468 | "version": "1.4.1",
2469 | "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.1.tgz",
2470 | "integrity": "sha512-PKVGmazEq3oAo46Q63tpMr4HipI3OPfP7LiNOEJg963RMgT0rqheag28NCML0o3GIzA3DmxP1ZIAv9oTX1CUIA==",
2471 | "requires": {
2472 | "envinfo": "^7.7.3"
2473 | }
2474 | },
2475 | "@webpack-cli/serve": {
2476 | "version": "1.6.1",
2477 | "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.1.tgz",
2478 | "integrity": "sha512-gNGTiTrjEVQ0OcVnzsRSqTxaBSr+dmTfm+qJsCDluky8uhdLWep7Gcr62QsAKHTMxjCS/8nEITsmFAhfIx+QSw==",
2479 | "requires": {}
2480 | },
2481 | "@xtuc/ieee754": {
2482 | "version": "1.2.0",
2483 | "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
2484 | "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA=="
2485 | },
2486 | "@xtuc/long": {
2487 | "version": "4.2.2",
2488 | "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
2489 | "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="
2490 | },
2491 | "acorn": {
2492 | "version": "8.7.1",
2493 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz",
2494 | "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A=="
2495 | },
2496 | "acorn-import-assertions": {
2497 | "version": "1.8.0",
2498 | "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz",
2499 | "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
2500 | "requires": {}
2501 | },
2502 | "ajv": {
2503 | "version": "6.12.6",
2504 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
2505 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
2506 | "requires": {
2507 | "fast-deep-equal": "^3.1.1",
2508 | "fast-json-stable-stringify": "^2.0.0",
2509 | "json-schema-traverse": "^0.4.1",
2510 | "uri-js": "^4.2.2"
2511 | }
2512 | },
2513 | "ajv-keywords": {
2514 | "version": "3.5.2",
2515 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
2516 | "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
2517 | "requires": {}
2518 | },
2519 | "ansi-styles": {
2520 | "version": "3.2.1",
2521 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
2522 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
2523 | "requires": {
2524 | "color-convert": "^1.9.0"
2525 | }
2526 | },
2527 | "babel-loader": {
2528 | "version": "8.2.5",
2529 | "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz",
2530 | "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==",
2531 | "requires": {
2532 | "find-cache-dir": "^3.3.1",
2533 | "loader-utils": "^2.0.0",
2534 | "make-dir": "^3.1.0",
2535 | "schema-utils": "^2.6.5"
2536 | }
2537 | },
2538 | "big.js": {
2539 | "version": "5.2.2",
2540 | "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
2541 | "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ=="
2542 | },
2543 | "browserslist": {
2544 | "version": "4.20.3",
2545 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
2546 | "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
2547 | "requires": {
2548 | "caniuse-lite": "^1.0.30001332",
2549 | "electron-to-chromium": "^1.4.118",
2550 | "escalade": "^3.1.1",
2551 | "node-releases": "^2.0.3",
2552 | "picocolors": "^1.0.0"
2553 | }
2554 | },
2555 | "buffer-from": {
2556 | "version": "1.1.2",
2557 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
2558 | "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
2559 | },
2560 | "caniuse-lite": {
2561 | "version": "1.0.30001336",
2562 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001336.tgz",
2563 | "integrity": "sha512-/YxSlBmL7iKXTbIJ48IQTnAOBk7XmWsxhBF1PZLOko5Dt9qc4Pl+84lfqG3Tc4EuavurRn1QLoVJGxY2iSycfw=="
2564 | },
2565 | "chalk": {
2566 | "version": "2.4.2",
2567 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
2568 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
2569 | "requires": {
2570 | "ansi-styles": "^3.2.1",
2571 | "escape-string-regexp": "^1.0.5",
2572 | "supports-color": "^5.3.0"
2573 | }
2574 | },
2575 | "chrome-trace-event": {
2576 | "version": "1.0.3",
2577 | "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
2578 | "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg=="
2579 | },
2580 | "clone-deep": {
2581 | "version": "4.0.1",
2582 | "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
2583 | "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
2584 | "requires": {
2585 | "is-plain-object": "^2.0.4",
2586 | "kind-of": "^6.0.2",
2587 | "shallow-clone": "^3.0.0"
2588 | }
2589 | },
2590 | "color-convert": {
2591 | "version": "1.9.3",
2592 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
2593 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
2594 | "requires": {
2595 | "color-name": "1.1.3"
2596 | }
2597 | },
2598 | "color-name": {
2599 | "version": "1.1.3",
2600 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
2601 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
2602 | },
2603 | "colorette": {
2604 | "version": "2.0.16",
2605 | "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz",
2606 | "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g=="
2607 | },
2608 | "commander": {
2609 | "version": "2.20.3",
2610 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
2611 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
2612 | },
2613 | "commondir": {
2614 | "version": "1.0.1",
2615 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
2616 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs="
2617 | },
2618 | "convert-source-map": {
2619 | "version": "1.8.0",
2620 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
2621 | "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
2622 | "requires": {
2623 | "safe-buffer": "~5.1.1"
2624 | }
2625 | },
2626 | "cross-spawn": {
2627 | "version": "7.0.3",
2628 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
2629 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
2630 | "requires": {
2631 | "path-key": "^3.1.0",
2632 | "shebang-command": "^2.0.0",
2633 | "which": "^2.0.1"
2634 | }
2635 | },
2636 | "debug": {
2637 | "version": "4.3.4",
2638 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
2639 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
2640 | "requires": {
2641 | "ms": "2.1.2"
2642 | }
2643 | },
2644 | "electron-to-chromium": {
2645 | "version": "1.4.134",
2646 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.134.tgz",
2647 | "integrity": "sha512-OdD7M2no4Mi8PopfvoOuNcwYDJ2mNFxaBfurA6okG3fLBaMcFah9S+si84FhX+FIWLKkdaiHfl4A+5ep/gOVrg=="
2648 | },
2649 | "emojis-list": {
2650 | "version": "3.0.0",
2651 | "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
2652 | "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q=="
2653 | },
2654 | "enhanced-resolve": {
2655 | "version": "5.9.3",
2656 | "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz",
2657 | "integrity": "sha512-Bq9VSor+kjvW3f9/MiiR4eE3XYgOl7/rS8lnSxbRbF3kS0B2r+Y9w5krBWxZgDxASVZbdYrn5wT4j/Wb0J9qow==",
2658 | "requires": {
2659 | "graceful-fs": "^4.2.4",
2660 | "tapable": "^2.2.0"
2661 | }
2662 | },
2663 | "envinfo": {
2664 | "version": "7.8.1",
2665 | "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz",
2666 | "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw=="
2667 | },
2668 | "es-module-lexer": {
2669 | "version": "0.9.3",
2670 | "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz",
2671 | "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ=="
2672 | },
2673 | "escalade": {
2674 | "version": "3.1.1",
2675 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
2676 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
2677 | },
2678 | "escape-string-regexp": {
2679 | "version": "1.0.5",
2680 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
2681 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
2682 | },
2683 | "eslint-scope": {
2684 | "version": "5.1.1",
2685 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
2686 | "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
2687 | "requires": {
2688 | "esrecurse": "^4.3.0",
2689 | "estraverse": "^4.1.1"
2690 | }
2691 | },
2692 | "esrecurse": {
2693 | "version": "4.3.0",
2694 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
2695 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
2696 | "requires": {
2697 | "estraverse": "^5.2.0"
2698 | },
2699 | "dependencies": {
2700 | "estraverse": {
2701 | "version": "5.3.0",
2702 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
2703 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
2704 | }
2705 | }
2706 | },
2707 | "estraverse": {
2708 | "version": "4.3.0",
2709 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
2710 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="
2711 | },
2712 | "events": {
2713 | "version": "3.3.0",
2714 | "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
2715 | "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
2716 | },
2717 | "execa": {
2718 | "version": "5.1.1",
2719 | "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
2720 | "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
2721 | "requires": {
2722 | "cross-spawn": "^7.0.3",
2723 | "get-stream": "^6.0.0",
2724 | "human-signals": "^2.1.0",
2725 | "is-stream": "^2.0.0",
2726 | "merge-stream": "^2.0.0",
2727 | "npm-run-path": "^4.0.1",
2728 | "onetime": "^5.1.2",
2729 | "signal-exit": "^3.0.3",
2730 | "strip-final-newline": "^2.0.0"
2731 | }
2732 | },
2733 | "fast-deep-equal": {
2734 | "version": "3.1.3",
2735 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
2736 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
2737 | },
2738 | "fast-json-stable-stringify": {
2739 | "version": "2.1.0",
2740 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
2741 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
2742 | },
2743 | "fastest-levenshtein": {
2744 | "version": "1.0.12",
2745 | "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz",
2746 | "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow=="
2747 | },
2748 | "find-cache-dir": {
2749 | "version": "3.3.2",
2750 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
2751 | "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
2752 | "requires": {
2753 | "commondir": "^1.0.1",
2754 | "make-dir": "^3.0.2",
2755 | "pkg-dir": "^4.1.0"
2756 | }
2757 | },
2758 | "find-up": {
2759 | "version": "4.1.0",
2760 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
2761 | "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
2762 | "requires": {
2763 | "locate-path": "^5.0.0",
2764 | "path-exists": "^4.0.0"
2765 | }
2766 | },
2767 | "function-bind": {
2768 | "version": "1.1.1",
2769 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2770 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
2771 | },
2772 | "gensync": {
2773 | "version": "1.0.0-beta.2",
2774 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
2775 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="
2776 | },
2777 | "get-stream": {
2778 | "version": "6.0.1",
2779 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
2780 | "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg=="
2781 | },
2782 | "glob-to-regexp": {
2783 | "version": "0.4.1",
2784 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
2785 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
2786 | },
2787 | "globals": {
2788 | "version": "11.12.0",
2789 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
2790 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
2791 | },
2792 | "graceful-fs": {
2793 | "version": "4.2.10",
2794 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
2795 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA=="
2796 | },
2797 | "has": {
2798 | "version": "1.0.3",
2799 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
2800 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
2801 | "requires": {
2802 | "function-bind": "^1.1.1"
2803 | }
2804 | },
2805 | "has-flag": {
2806 | "version": "3.0.0",
2807 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
2808 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
2809 | },
2810 | "human-signals": {
2811 | "version": "2.1.0",
2812 | "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
2813 | "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw=="
2814 | },
2815 | "import-local": {
2816 | "version": "3.1.0",
2817 | "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
2818 | "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
2819 | "requires": {
2820 | "pkg-dir": "^4.2.0",
2821 | "resolve-cwd": "^3.0.0"
2822 | }
2823 | },
2824 | "interpret": {
2825 | "version": "2.2.0",
2826 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
2827 | "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw=="
2828 | },
2829 | "is-core-module": {
2830 | "version": "2.9.0",
2831 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
2832 | "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
2833 | "requires": {
2834 | "has": "^1.0.3"
2835 | }
2836 | },
2837 | "is-plain-object": {
2838 | "version": "2.0.4",
2839 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
2840 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
2841 | "requires": {
2842 | "isobject": "^3.0.1"
2843 | }
2844 | },
2845 | "is-stream": {
2846 | "version": "2.0.1",
2847 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
2848 | "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
2849 | },
2850 | "isexe": {
2851 | "version": "2.0.0",
2852 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
2853 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
2854 | },
2855 | "isobject": {
2856 | "version": "3.0.1",
2857 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
2858 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
2859 | },
2860 | "jest-worker": {
2861 | "version": "27.5.1",
2862 | "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz",
2863 | "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==",
2864 | "requires": {
2865 | "@types/node": "*",
2866 | "merge-stream": "^2.0.0",
2867 | "supports-color": "^8.0.0"
2868 | },
2869 | "dependencies": {
2870 | "has-flag": {
2871 | "version": "4.0.0",
2872 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2873 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
2874 | },
2875 | "supports-color": {
2876 | "version": "8.1.1",
2877 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
2878 | "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
2879 | "requires": {
2880 | "has-flag": "^4.0.0"
2881 | }
2882 | }
2883 | }
2884 | },
2885 | "js-tokens": {
2886 | "version": "4.0.0",
2887 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
2888 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
2889 | },
2890 | "jsesc": {
2891 | "version": "2.5.2",
2892 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
2893 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="
2894 | },
2895 | "json-parse-better-errors": {
2896 | "version": "1.0.2",
2897 | "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
2898 | "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw=="
2899 | },
2900 | "json-schema-traverse": {
2901 | "version": "0.4.1",
2902 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
2903 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
2904 | },
2905 | "json5": {
2906 | "version": "2.2.1",
2907 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
2908 | "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA=="
2909 | },
2910 | "kind-of": {
2911 | "version": "6.0.3",
2912 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
2913 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="
2914 | },
2915 | "loader-runner": {
2916 | "version": "4.3.0",
2917 | "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz",
2918 | "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg=="
2919 | },
2920 | "loader-utils": {
2921 | "version": "2.0.2",
2922 | "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz",
2923 | "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
2924 | "requires": {
2925 | "big.js": "^5.2.2",
2926 | "emojis-list": "^3.0.0",
2927 | "json5": "^2.1.2"
2928 | }
2929 | },
2930 | "locate-path": {
2931 | "version": "5.0.0",
2932 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
2933 | "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
2934 | "requires": {
2935 | "p-locate": "^4.1.0"
2936 | }
2937 | },
2938 | "lodash.sortby": {
2939 | "version": "4.7.0",
2940 | "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
2941 | "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg="
2942 | },
2943 | "loose-envify": {
2944 | "version": "1.4.0",
2945 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
2946 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
2947 | "requires": {
2948 | "js-tokens": "^3.0.0 || ^4.0.0"
2949 | }
2950 | },
2951 | "make-dir": {
2952 | "version": "3.1.0",
2953 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
2954 | "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
2955 | "requires": {
2956 | "semver": "^6.0.0"
2957 | }
2958 | },
2959 | "merge-stream": {
2960 | "version": "2.0.0",
2961 | "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
2962 | "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
2963 | },
2964 | "mime-db": {
2965 | "version": "1.52.0",
2966 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
2967 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
2968 | },
2969 | "mime-types": {
2970 | "version": "2.1.35",
2971 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
2972 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
2973 | "requires": {
2974 | "mime-db": "1.52.0"
2975 | }
2976 | },
2977 | "mimic-fn": {
2978 | "version": "2.1.0",
2979 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
2980 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
2981 | },
2982 | "ms": {
2983 | "version": "2.1.2",
2984 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2985 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
2986 | },
2987 | "neo-async": {
2988 | "version": "2.6.2",
2989 | "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
2990 | "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
2991 | },
2992 | "node-releases": {
2993 | "version": "2.0.4",
2994 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
2995 | "integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ=="
2996 | },
2997 | "npm-run-path": {
2998 | "version": "4.0.1",
2999 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
3000 | "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
3001 | "requires": {
3002 | "path-key": "^3.0.0"
3003 | }
3004 | },
3005 | "onetime": {
3006 | "version": "5.1.2",
3007 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
3008 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
3009 | "requires": {
3010 | "mimic-fn": "^2.1.0"
3011 | }
3012 | },
3013 | "p-limit": {
3014 | "version": "2.3.0",
3015 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
3016 | "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
3017 | "requires": {
3018 | "p-try": "^2.0.0"
3019 | }
3020 | },
3021 | "p-locate": {
3022 | "version": "4.1.0",
3023 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
3024 | "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
3025 | "requires": {
3026 | "p-limit": "^2.2.0"
3027 | }
3028 | },
3029 | "p-try": {
3030 | "version": "2.2.0",
3031 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
3032 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
3033 | },
3034 | "path-exists": {
3035 | "version": "4.0.0",
3036 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
3037 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
3038 | },
3039 | "path-key": {
3040 | "version": "3.1.1",
3041 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
3042 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
3043 | },
3044 | "path-parse": {
3045 | "version": "1.0.7",
3046 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
3047 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
3048 | },
3049 | "picocolors": {
3050 | "version": "1.0.0",
3051 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
3052 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
3053 | },
3054 | "pkg-dir": {
3055 | "version": "4.2.0",
3056 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
3057 | "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
3058 | "requires": {
3059 | "find-up": "^4.0.0"
3060 | }
3061 | },
3062 | "punycode": {
3063 | "version": "2.1.1",
3064 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
3065 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
3066 | },
3067 | "randombytes": {
3068 | "version": "2.1.0",
3069 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
3070 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
3071 | "requires": {
3072 | "safe-buffer": "^5.1.0"
3073 | }
3074 | },
3075 | "react": {
3076 | "version": "18.1.0",
3077 | "resolved": "https://registry.npmjs.org/react/-/react-18.1.0.tgz",
3078 | "integrity": "sha512-4oL8ivCz5ZEPyclFQXaNksK3adutVS8l2xzZU0cqEFrE9Sb7fC0EFK5uEk74wIreL1DERyjvsU915j1pcT2uEQ==",
3079 | "requires": {
3080 | "loose-envify": "^1.1.0"
3081 | }
3082 | },
3083 | "react-dom": {
3084 | "version": "18.1.0",
3085 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.1.0.tgz",
3086 | "integrity": "sha512-fU1Txz7Budmvamp7bshe4Zi32d0ll7ect+ccxNu9FlObT605GOEB8BfO4tmRJ39R5Zj831VCpvQ05QPBW5yb+w==",
3087 | "requires": {
3088 | "loose-envify": "^1.1.0",
3089 | "scheduler": "^0.22.0"
3090 | }
3091 | },
3092 | "rechoir": {
3093 | "version": "0.7.1",
3094 | "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
3095 | "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
3096 | "requires": {
3097 | "resolve": "^1.9.0"
3098 | }
3099 | },
3100 | "resolve": {
3101 | "version": "1.22.0",
3102 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz",
3103 | "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==",
3104 | "requires": {
3105 | "is-core-module": "^2.8.1",
3106 | "path-parse": "^1.0.7",
3107 | "supports-preserve-symlinks-flag": "^1.0.0"
3108 | }
3109 | },
3110 | "resolve-cwd": {
3111 | "version": "3.0.0",
3112 | "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
3113 | "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
3114 | "requires": {
3115 | "resolve-from": "^5.0.0"
3116 | }
3117 | },
3118 | "resolve-from": {
3119 | "version": "5.0.0",
3120 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
3121 | "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw=="
3122 | },
3123 | "safe-buffer": {
3124 | "version": "5.1.2",
3125 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
3126 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
3127 | },
3128 | "scheduler": {
3129 | "version": "0.22.0",
3130 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.22.0.tgz",
3131 | "integrity": "sha512-6QAm1BgQI88NPYymgGQLCZgvep4FyePDWFpXVK+zNSUgHwlqpJy8VEh8Et0KxTACS4VWwMousBElAZOH9nkkoQ==",
3132 | "requires": {
3133 | "loose-envify": "^1.1.0"
3134 | }
3135 | },
3136 | "schema-utils": {
3137 | "version": "2.7.1",
3138 | "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
3139 | "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
3140 | "requires": {
3141 | "@types/json-schema": "^7.0.5",
3142 | "ajv": "^6.12.4",
3143 | "ajv-keywords": "^3.5.2"
3144 | }
3145 | },
3146 | "semver": {
3147 | "version": "6.3.0",
3148 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
3149 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
3150 | },
3151 | "serialize-javascript": {
3152 | "version": "6.0.0",
3153 | "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
3154 | "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
3155 | "requires": {
3156 | "randombytes": "^2.1.0"
3157 | }
3158 | },
3159 | "shallow-clone": {
3160 | "version": "3.0.1",
3161 | "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
3162 | "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
3163 | "requires": {
3164 | "kind-of": "^6.0.2"
3165 | }
3166 | },
3167 | "shebang-command": {
3168 | "version": "2.0.0",
3169 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
3170 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
3171 | "requires": {
3172 | "shebang-regex": "^3.0.0"
3173 | }
3174 | },
3175 | "shebang-regex": {
3176 | "version": "3.0.0",
3177 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
3178 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
3179 | },
3180 | "signal-exit": {
3181 | "version": "3.0.7",
3182 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
3183 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
3184 | },
3185 | "source-map": {
3186 | "version": "0.6.1",
3187 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
3188 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
3189 | },
3190 | "source-map-support": {
3191 | "version": "0.5.21",
3192 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
3193 | "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
3194 | "requires": {
3195 | "buffer-from": "^1.0.0",
3196 | "source-map": "^0.6.0"
3197 | }
3198 | },
3199 | "strip-final-newline": {
3200 | "version": "2.0.0",
3201 | "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
3202 | "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="
3203 | },
3204 | "supports-color": {
3205 | "version": "5.5.0",
3206 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
3207 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
3208 | "requires": {
3209 | "has-flag": "^3.0.0"
3210 | }
3211 | },
3212 | "supports-preserve-symlinks-flag": {
3213 | "version": "1.0.0",
3214 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
3215 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
3216 | },
3217 | "tapable": {
3218 | "version": "2.2.1",
3219 | "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
3220 | "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="
3221 | },
3222 | "terser": {
3223 | "version": "5.13.1",
3224 | "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz",
3225 | "integrity": "sha512-hn4WKOfwnwbYfe48NgrQjqNOH9jzLqRcIfbYytOXCOv46LBfWr9bDS17MQqOi+BWGD0sJK3Sj5NC/gJjiojaoA==",
3226 | "requires": {
3227 | "acorn": "^8.5.0",
3228 | "commander": "^2.20.0",
3229 | "source-map": "~0.8.0-beta.0",
3230 | "source-map-support": "~0.5.20"
3231 | },
3232 | "dependencies": {
3233 | "source-map": {
3234 | "version": "0.8.0-beta.0",
3235 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz",
3236 | "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==",
3237 | "requires": {
3238 | "whatwg-url": "^7.0.0"
3239 | }
3240 | }
3241 | }
3242 | },
3243 | "terser-webpack-plugin": {
3244 | "version": "5.3.1",
3245 | "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz",
3246 | "integrity": "sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g==",
3247 | "requires": {
3248 | "jest-worker": "^27.4.5",
3249 | "schema-utils": "^3.1.1",
3250 | "serialize-javascript": "^6.0.0",
3251 | "source-map": "^0.6.1",
3252 | "terser": "^5.7.2"
3253 | },
3254 | "dependencies": {
3255 | "schema-utils": {
3256 | "version": "3.1.1",
3257 | "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
3258 | "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
3259 | "requires": {
3260 | "@types/json-schema": "^7.0.8",
3261 | "ajv": "^6.12.5",
3262 | "ajv-keywords": "^3.5.2"
3263 | }
3264 | }
3265 | }
3266 | },
3267 | "to-fast-properties": {
3268 | "version": "2.0.0",
3269 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
3270 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4="
3271 | },
3272 | "tr46": {
3273 | "version": "1.0.1",
3274 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
3275 | "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=",
3276 | "requires": {
3277 | "punycode": "^2.1.0"
3278 | }
3279 | },
3280 | "uri-js": {
3281 | "version": "4.4.1",
3282 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
3283 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
3284 | "requires": {
3285 | "punycode": "^2.1.0"
3286 | }
3287 | },
3288 | "watchpack": {
3289 | "version": "2.3.1",
3290 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz",
3291 | "integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==",
3292 | "requires": {
3293 | "glob-to-regexp": "^0.4.1",
3294 | "graceful-fs": "^4.1.2"
3295 | }
3296 | },
3297 | "webidl-conversions": {
3298 | "version": "4.0.2",
3299 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
3300 | "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="
3301 | },
3302 | "webpack": {
3303 | "version": "5.72.0",
3304 | "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.72.0.tgz",
3305 | "integrity": "sha512-qmSmbspI0Qo5ld49htys8GY9XhS9CGqFoHTsOVAnjBdg0Zn79y135R+k4IR4rKK6+eKaabMhJwiVB7xw0SJu5w==",
3306 | "requires": {
3307 | "@types/eslint-scope": "^3.7.3",
3308 | "@types/estree": "^0.0.51",
3309 | "@webassemblyjs/ast": "1.11.1",
3310 | "@webassemblyjs/wasm-edit": "1.11.1",
3311 | "@webassemblyjs/wasm-parser": "1.11.1",
3312 | "acorn": "^8.4.1",
3313 | "acorn-import-assertions": "^1.7.6",
3314 | "browserslist": "^4.14.5",
3315 | "chrome-trace-event": "^1.0.2",
3316 | "enhanced-resolve": "^5.9.2",
3317 | "es-module-lexer": "^0.9.0",
3318 | "eslint-scope": "5.1.1",
3319 | "events": "^3.2.0",
3320 | "glob-to-regexp": "^0.4.1",
3321 | "graceful-fs": "^4.2.9",
3322 | "json-parse-better-errors": "^1.0.2",
3323 | "loader-runner": "^4.2.0",
3324 | "mime-types": "^2.1.27",
3325 | "neo-async": "^2.6.2",
3326 | "schema-utils": "^3.1.0",
3327 | "tapable": "^2.1.1",
3328 | "terser-webpack-plugin": "^5.1.3",
3329 | "watchpack": "^2.3.1",
3330 | "webpack-sources": "^3.2.3"
3331 | },
3332 | "dependencies": {
3333 | "schema-utils": {
3334 | "version": "3.1.1",
3335 | "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
3336 | "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
3337 | "requires": {
3338 | "@types/json-schema": "^7.0.8",
3339 | "ajv": "^6.12.5",
3340 | "ajv-keywords": "^3.5.2"
3341 | }
3342 | }
3343 | }
3344 | },
3345 | "webpack-cli": {
3346 | "version": "4.9.2",
3347 | "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.2.tgz",
3348 | "integrity": "sha512-m3/AACnBBzK/kMTcxWHcZFPrw/eQuY4Df1TxvIWfWM2x7mRqBQCqKEd96oCUa9jkapLBaFfRce33eGDb4Pr7YQ==",
3349 | "requires": {
3350 | "@discoveryjs/json-ext": "^0.5.0",
3351 | "@webpack-cli/configtest": "^1.1.1",
3352 | "@webpack-cli/info": "^1.4.1",
3353 | "@webpack-cli/serve": "^1.6.1",
3354 | "colorette": "^2.0.14",
3355 | "commander": "^7.0.0",
3356 | "execa": "^5.0.0",
3357 | "fastest-levenshtein": "^1.0.12",
3358 | "import-local": "^3.0.2",
3359 | "interpret": "^2.2.0",
3360 | "rechoir": "^0.7.0",
3361 | "webpack-merge": "^5.7.3"
3362 | },
3363 | "dependencies": {
3364 | "commander": {
3365 | "version": "7.2.0",
3366 | "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
3367 | "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="
3368 | }
3369 | }
3370 | },
3371 | "webpack-merge": {
3372 | "version": "5.8.0",
3373 | "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz",
3374 | "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==",
3375 | "requires": {
3376 | "clone-deep": "^4.0.1",
3377 | "wildcard": "^2.0.0"
3378 | }
3379 | },
3380 | "webpack-sources": {
3381 | "version": "3.2.3",
3382 | "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
3383 | "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w=="
3384 | },
3385 | "whatwg-url": {
3386 | "version": "7.1.0",
3387 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
3388 | "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==",
3389 | "requires": {
3390 | "lodash.sortby": "^4.7.0",
3391 | "tr46": "^1.0.1",
3392 | "webidl-conversions": "^4.0.2"
3393 | }
3394 | },
3395 | "which": {
3396 | "version": "2.0.2",
3397 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
3398 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
3399 | "requires": {
3400 | "isexe": "^2.0.0"
3401 | }
3402 | },
3403 | "wildcard": {
3404 | "version": "2.0.0",
3405 | "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
3406 | "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw=="
3407 | }
3408 | }
3409 | }
3410 |
--------------------------------------------------------------------------------
/05-context/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "starter",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "start": "webpack --watch",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "keywords": [],
11 | "author": "",
12 | "license": "ISC",
13 | "dependencies": {
14 | "@babel/core": "^7.17.10",
15 | "@babel/preset-react": "^7.16.7",
16 | "babel-loader": "^8.2.5",
17 | "react": "^18.1.0",
18 | "react-dom": "^18.1.0",
19 | "webpack": "^5.72.0",
20 | "webpack-cli": "^4.9.2"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/05-context/src/OurContext.js:
--------------------------------------------------------------------------------
1 | import { createContext } from "react"
2 | const OurContext = createContext()
3 | export default OurContext
4 |
--------------------------------------------------------------------------------
/05-context/src/components/Footer.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import OurContext from "../OurContext"
3 |
4 | function Footer(props) {
5 | const state = React.useContext(OurContext)
6 |
7 | return (
8 |
16 | )
17 | }
18 |
19 | export default Footer
20 |
--------------------------------------------------------------------------------
/05-context/src/components/MainArea.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import OurContext from "../OurContext"
3 |
4 | function MainArea(props) {
5 | const state = React.useContext(OurContext)
6 |
7 | return (
8 |
9 |
Lorem ipsum dolor sit amet consectetur adipisicing elit. Autem, quod obcaecati dolore debitis amet aut, excepturi voluptas ratione quibusdam laboriosam, optio pariatur provident doloremque consequatur animi? Consequuntur, officiis. Explicabo, vel.
10 |
11 | )
12 | }
13 |
14 | export default MainArea
15 |
--------------------------------------------------------------------------------
/05-context/src/components/Sidebar.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import OurContext from "../OurContext"
3 |
4 | function Sidebar(props) {
5 | const state = React.useContext(OurContext)
6 |
7 | return (
8 |
9 | state.setSize(e.target.value)} />
10 | state.setColor(e.target.value)} />
11 |
19 |
20 | )
21 | }
22 |
23 | export default Sidebar
24 |
--------------------------------------------------------------------------------
/05-context/src/index.js:
--------------------------------------------------------------------------------
1 | import React, { useState, createContext } from "react"
2 | import { createRoot } from "react-dom/client"
3 |
4 | import Sidebar from "./components/Sidebar"
5 | import MainArea from "./components/MainArea"
6 | import Footer from "./components/Footer"
7 |
8 | import OurContext from "./OurContext"
9 |
10 | const AnimalNamesContext = createContext()
11 |
12 | function App() {
13 | const [size, setSize] = useState(25)
14 | const [color, setColor] = useState("skyblue")
15 | const [likeCount, setLikeCount] = useState(0)
16 | const [names, setNames] = useState({ catName: "Meowsalot", dogName: "Barksalot" })
17 |
18 | return (
19 |
20 |
21 |
22 |
23 |
Welcome To Our App
24 |
25 | The current size is {size} and the current color is {color}.
26 |
27 |
28 | This page has been liked {likeCount} times.
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 | )
39 | }
40 |
41 | const MemoizedExtraFooter = React.memo(ExtraFooter)
42 |
43 | function ExtraFooter() {
44 | const names = React.useContext(AnimalNamesContext)
45 | console.log("Imagine this function is slow or expensive to run.")
46 |
47 | return (
48 |
49 |
Cat name: {names.catName}
50 |
Dog name: {names.dogName}
51 |
52 | )
53 | }
54 |
55 | const root = createRoot(document.querySelector("#app"))
56 | root.render()
57 |
--------------------------------------------------------------------------------
/05-context/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mode: "development",
3 | module: {
4 | rules: [
5 | {
6 | test: /\.js$/,
7 | exclude: /(node_modules)/,
8 | use: {
9 | loader: "babel-loader",
10 | options: {
11 | presets: ["@babel/preset-react"]
12 | }
13 | }
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/06-reducer/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | State in React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/06-reducer/dist/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: sans-serif;
3 | color: #333;
4 | padding: 30px;
5 | margin: 0;
6 | background-color: #dedede;
7 | line-height: 1.65;
8 | }
9 |
10 | h1,
11 | p {
12 | margin: 0;
13 | }
14 |
15 | .grid-parent {
16 | display: grid;
17 | gap: 30px;
18 | }
19 |
20 | @media screen and (min-width: 768px) {
21 | .grid-parent {
22 | display: grid;
23 | grid-template-columns: 300px 1fr;
24 | }
25 |
26 | .header,
27 | .footer {
28 | grid-column: 1 / 3;
29 | }
30 | }
31 |
32 | .header,
33 | .sidebar,
34 | .main-area {
35 | background-color: #fff;
36 | padding: 30px;
37 | border-radius: 4px;
38 | }
39 |
40 | .footer {
41 | background-color: #333;
42 | color: #fff;
43 | padding: 30px;
44 | border-radius: 4px;
45 | }
46 |
--------------------------------------------------------------------------------
/06-reducer/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "starter",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "start": "webpack --watch",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "keywords": [],
11 | "author": "",
12 | "license": "ISC",
13 | "dependencies": {
14 | "@babel/core": "^7.17.10",
15 | "@babel/preset-react": "^7.16.7",
16 | "babel-loader": "^8.2.5",
17 | "react": "^18.1.0",
18 | "react-dom": "^18.1.0",
19 | "webpack": "^5.72.0",
20 | "webpack-cli": "^4.9.2"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/06-reducer/src/DispatchContext.js:
--------------------------------------------------------------------------------
1 | import { createContext } from "react"
2 | const DispatchContext = createContext()
3 | export default DispatchContext
4 |
--------------------------------------------------------------------------------
/06-reducer/src/OurContext.js:
--------------------------------------------------------------------------------
1 | import { createContext } from "react"
2 | const OurContext = createContext()
3 | export default OurContext
4 |
--------------------------------------------------------------------------------
/06-reducer/src/components/Footer.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import DispatchContext from "../DispatchContext"
3 |
4 | function Footer(props) {
5 | console.log("Imagine our footer is slow.")
6 | const dispatch = React.useContext(DispatchContext)
7 |
8 | return (
9 |
17 | )
18 | }
19 |
20 | export default React.memo(Footer)
21 |
--------------------------------------------------------------------------------
/06-reducer/src/components/MainArea.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import OurContext from "../OurContext"
3 |
4 | function MainArea(props) {
5 | const state = React.useContext(OurContext)
6 |
7 | return (
8 |
9 |
Lorem ipsum dolor sit amet consectetur adipisicing elit. Autem, quod obcaecati dolore debitis amet aut, excepturi voluptas ratione quibusdam laboriosam, optio pariatur provident doloremque consequatur animi? Consequuntur, officiis. Explicabo, vel.
10 |
11 | )
12 | }
13 |
14 | export default MainArea
15 |
--------------------------------------------------------------------------------
/06-reducer/src/components/Sidebar.js:
--------------------------------------------------------------------------------
1 | import React from "react"
2 | import OurContext from "../OurContext"
3 | import DispatchContext from "../DispatchContext"
4 |
5 | function Sidebar(props) {
6 | const state = React.useContext(OurContext)
7 | const dispatch = React.useContext(DispatchContext)
8 |
9 | return (
10 |
11 | dispatch({ type: "changeSize", value: e.target.value })} />
12 | dispatch({ type: "changeColor", value: e.target.value })} />
13 |
20 |
21 | )
22 | }
23 |
24 | export default Sidebar
25 |
--------------------------------------------------------------------------------
/06-reducer/src/index.js:
--------------------------------------------------------------------------------
1 | import React, { useReducer, useState, createContext } from "react"
2 | import { createRoot } from "react-dom/client"
3 |
4 | import Sidebar from "./components/Sidebar"
5 | import MainArea from "./components/MainArea"
6 | import Footer from "./components/Footer"
7 |
8 | import OurContext from "./OurContext"
9 | import DispatchContext from "./DispatchContext"
10 |
11 | const AnimalNamesContext = createContext()
12 |
13 | function ourReducerFunction(state, action) {
14 | switch (action.type) {
15 | case "incrementLikes":
16 | return { ...state, likeCount: state.likeCount + 1 }
17 | case "changeSize":
18 | return { ...state, size: action.value }
19 | case "changeColor":
20 | return { ...state, color: action.value }
21 | case "changeColorAndSize":
22 | return { ...state, color: action.value.color, size: action.value.size }
23 | }
24 | }
25 |
26 | const initialState = {
27 | size: 25,
28 | color: "skyblue",
29 | likeCount: 0
30 | }
31 |
32 | function App() {
33 | const [state, dispatch] = useReducer(ourReducerFunction, initialState)
34 | const [names, setNames] = useState({ catName: "Meowsalot", dogName: "Barksalot" })
35 |
36 | return (
37 |
38 |
39 |
40 |
41 |
42 |
Welcome To Our App
43 |
44 | The current size is {state.size} and the current color is {state.color}.
45 |
46 |
47 | This page has been liked {state.likeCount} times.
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 | )
59 | }
60 |
61 | const MemoizedExtraFooter = React.memo(ExtraFooter)
62 |
63 | function ExtraFooter() {
64 | const names = React.useContext(AnimalNamesContext)
65 | console.log("Imagine this function is slow or expensive to run.")
66 |
67 | return (
68 |
69 |
Cat name: {names.catName}
70 |
Dog name: {names.dogName}
71 |
72 | )
73 | }
74 |
75 | const root = createRoot(document.querySelector("#app"))
76 | root.render()
77 |
--------------------------------------------------------------------------------
/06-reducer/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mode: "development",
3 | module: {
4 | rules: [
5 | {
6 | test: /\.js$/,
7 | exclude: /(node_modules)/,
8 | use: {
9 | loader: "babel-loader",
10 | options: {
11 | presets: ["@babel/preset-react"]
12 | }
13 | }
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------