|
@@ -17,10 +17,17 @@
|
|
|
"@testing-library/user-event": "^13.5.0",
|
|
|
"react": "^18.0.0",
|
|
|
"react-dom": "^18.0.0",
|
|
|
+ "react-redux": "^8.0.1",
|
|
|
"react-router-dom": "^6.3.0",
|
|
|
"react-scripts": "5.0.1",
|
|
|
+ "redux": "^4.2.0",
|
|
|
+ "redux-thunk": "^2.4.1",
|
|
|
"styled-components": "^5.3.5",
|
|
|
"web-vitals": "^2.1.4"
|
|
|
+ },
|
|
|
+ "devDependencies": {
|
|
|
+ "eslint": "^8.14.0",
|
|
|
+ "eslint-plugin-react": "^7.29.4"
|
|
|
}
|
|
|
},
|
|
|
"node_modules/@ampproject/remapping": {
|
|
@@ -2154,9 +2161,9 @@
|
|
|
"integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
|
|
|
},
|
|
|
"node_modules/@eslint/eslintrc": {
|
|
|
- "version": "1.2.1",
|
|
|
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz",
|
|
|
- "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==",
|
|
|
+ "version": "1.2.2",
|
|
|
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.2.tgz",
|
|
|
+ "integrity": "sha512-lTVWHs7O2hjBFZunXTZYnYqtB9GakA1lnxIf+gKq2nY5gxkkNi/lQvveW6t8gFdOHTg6nG50Xs95PrLqVpcaLg==",
|
|
|
"dependencies": {
|
|
|
"ajv": "^6.12.4",
|
|
|
"debug": "^4.3.2",
|
|
@@ -3908,6 +3915,15 @@
|
|
|
"@types/node": "*"
|
|
|
}
|
|
|
},
|
|
|
+ "node_modules/@types/hoist-non-react-statics": {
|
|
|
+ "version": "3.3.1",
|
|
|
+ "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz",
|
|
|
+ "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==",
|
|
|
+ "dependencies": {
|
|
|
+ "@types/react": "*",
|
|
|
+ "hoist-non-react-statics": "^3.3.0"
|
|
|
+ }
|
|
|
+ },
|
|
|
"node_modules/@types/html-minifier-terser": {
|
|
|
"version": "6.1.0",
|
|
|
"resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
|
|
@@ -4096,6 +4112,11 @@
|
|
|
"resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz",
|
|
|
"integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg=="
|
|
|
},
|
|
|
+ "node_modules/@types/use-sync-external-store": {
|
|
|
+ "version": "0.0.3",
|
|
|
+ "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz",
|
|
|
+ "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA=="
|
|
|
+ },
|
|
|
"node_modules/@types/ws": {
|
|
|
"version": "8.5.3",
|
|
|
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz",
|
|
@@ -6926,11 +6947,11 @@
|
|
|
}
|
|
|
},
|
|
|
"node_modules/eslint": {
|
|
|
- "version": "8.13.0",
|
|
|
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz",
|
|
|
- "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==",
|
|
|
+ "version": "8.14.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.14.0.tgz",
|
|
|
+ "integrity": "sha512-3/CE4aJX7LNEiE3i6FeodHmI/38GZtWCsAtsymScmzYapx8q1nVVb+eLcLSzATmCPXw5pT4TqVs1E0OmxAd9tw==",
|
|
|
"dependencies": {
|
|
|
- "@eslint/eslintrc": "^1.2.1",
|
|
|
+ "@eslint/eslintrc": "^1.2.2",
|
|
|
"@humanwhocodes/config-array": "^0.9.2",
|
|
|
"ajv": "^6.10.0",
|
|
|
"chalk": "^4.0.0",
|
|
@@ -13696,6 +13717,49 @@
|
|
|
"resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
|
|
|
"integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
|
|
|
},
|
|
|
+ "node_modules/react-redux": {
|
|
|
+ "version": "8.0.1",
|
|
|
+ "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.1.tgz",
|
|
|
+ "integrity": "sha512-LMZMsPY4DYdZfLJgd7i79n5Kps5N9XVLCJJeWAaPYTV+Eah2zTuBjTxKtNEbjiyitbq80/eIkm55CYSLqAub3w==",
|
|
|
+ "dependencies": {
|
|
|
+ "@babel/runtime": "^7.12.1",
|
|
|
+ "@types/hoist-non-react-statics": "^3.3.1",
|
|
|
+ "@types/use-sync-external-store": "^0.0.3",
|
|
|
+ "hoist-non-react-statics": "^3.3.2",
|
|
|
+ "react-is": "^18.0.0",
|
|
|
+ "use-sync-external-store": "^1.0.0"
|
|
|
+ },
|
|
|
+ "peerDependencies": {
|
|
|
+ "@types/react": "^16.8 || ^17.0 || ^18.0",
|
|
|
+ "@types/react-dom": "^16.8 || ^17.0 || ^18.0",
|
|
|
+ "react": "^16.8 || ^17.0 || ^18.0",
|
|
|
+ "react-dom": "^16.8 || ^17.0 || ^18.0",
|
|
|
+ "react-native": ">=0.59",
|
|
|
+ "redux": "^4"
|
|
|
+ },
|
|
|
+ "peerDependenciesMeta": {
|
|
|
+ "@types/react": {
|
|
|
+ "optional": true
|
|
|
+ },
|
|
|
+ "@types/react-dom": {
|
|
|
+ "optional": true
|
|
|
+ },
|
|
|
+ "react-dom": {
|
|
|
+ "optional": true
|
|
|
+ },
|
|
|
+ "react-native": {
|
|
|
+ "optional": true
|
|
|
+ },
|
|
|
+ "redux": {
|
|
|
+ "optional": true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "node_modules/react-redux/node_modules/react-is": {
|
|
|
+ "version": "18.0.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.0.0.tgz",
|
|
|
+ "integrity": "sha512-yUcBYdBBbo3QiPsgYDcfQcIkGZHfxOaoE6HLSnr1sPzMhdyxusbfKOSUbSd/ocGi32dxcj366PsTj+5oggeKKw=="
|
|
|
+ },
|
|
|
"node_modules/react-refresh": {
|
|
|
"version": "0.11.0",
|
|
|
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz",
|
|
@@ -13873,6 +13937,22 @@
|
|
|
"node": ">=8"
|
|
|
}
|
|
|
},
|
|
|
+ "node_modules/redux": {
|
|
|
+ "version": "4.2.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.0.tgz",
|
|
|
+ "integrity": "sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==",
|
|
|
+ "dependencies": {
|
|
|
+ "@babel/runtime": "^7.9.2"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "node_modules/redux-thunk": {
|
|
|
+ "version": "2.4.1",
|
|
|
+ "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz",
|
|
|
+ "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==",
|
|
|
+ "peerDependencies": {
|
|
|
+ "redux": "^4"
|
|
|
+ }
|
|
|
+ },
|
|
|
"node_modules/regenerate": {
|
|
|
"version": "1.4.2",
|
|
|
"resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
|
|
@@ -15561,6 +15641,14 @@
|
|
|
"punycode": "^2.1.0"
|
|
|
}
|
|
|
},
|
|
|
+ "node_modules/use-sync-external-store": {
|
|
|
+ "version": "1.0.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.0.0.tgz",
|
|
|
+ "integrity": "sha512-AFVsxg5GkFg8GDcxnl+Z0lMAz9rE8DGJCc28qnBuQF7lac57B5smLcT37aXpXIIPz75rW4g3eXHPjhHwdGskOw==",
|
|
|
+ "peerDependencies": {
|
|
|
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0-rc"
|
|
|
+ }
|
|
|
+ },
|
|
|
"node_modules/util-deprecate": {
|
|
|
"version": "1.0.2",
|
|
|
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
|
@@ -17987,9 +18075,9 @@
|
|
|
"integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
|
|
|
},
|
|
|
"@eslint/eslintrc": {
|
|
|
- "version": "1.2.1",
|
|
|
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz",
|
|
|
- "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==",
|
|
|
+ "version": "1.2.2",
|
|
|
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.2.tgz",
|
|
|
+ "integrity": "sha512-lTVWHs7O2hjBFZunXTZYnYqtB9GakA1lnxIf+gKq2nY5gxkkNi/lQvveW6t8gFdOHTg6nG50Xs95PrLqVpcaLg==",
|
|
|
"requires": {
|
|
|
"ajv": "^6.12.4",
|
|
|
"debug": "^4.3.2",
|
|
@@ -19170,6 +19258,15 @@
|
|
|
"@types/node": "*"
|
|
|
}
|
|
|
},
|
|
|
+ "@types/hoist-non-react-statics": {
|
|
|
+ "version": "3.3.1",
|
|
|
+ "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz",
|
|
|
+ "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==",
|
|
|
+ "requires": {
|
|
|
+ "@types/react": "*",
|
|
|
+ "hoist-non-react-statics": "^3.3.0"
|
|
|
+ }
|
|
|
+ },
|
|
|
"@types/html-minifier-terser": {
|
|
|
"version": "6.1.0",
|
|
|
"resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
|
|
@@ -19358,6 +19455,11 @@
|
|
|
"resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz",
|
|
|
"integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg=="
|
|
|
},
|
|
|
+ "@types/use-sync-external-store": {
|
|
|
+ "version": "0.0.3",
|
|
|
+ "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz",
|
|
|
+ "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA=="
|
|
|
+ },
|
|
|
"@types/ws": {
|
|
|
"version": "8.5.3",
|
|
|
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz",
|
|
@@ -21436,11 +21538,11 @@
|
|
|
}
|
|
|
},
|
|
|
"eslint": {
|
|
|
- "version": "8.13.0",
|
|
|
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz",
|
|
|
- "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==",
|
|
|
+ "version": "8.14.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.14.0.tgz",
|
|
|
+ "integrity": "sha512-3/CE4aJX7LNEiE3i6FeodHmI/38GZtWCsAtsymScmzYapx8q1nVVb+eLcLSzATmCPXw5pT4TqVs1E0OmxAd9tw==",
|
|
|
"requires": {
|
|
|
- "@eslint/eslintrc": "^1.2.1",
|
|
|
+ "@eslint/eslintrc": "^1.2.2",
|
|
|
"@humanwhocodes/config-array": "^0.9.2",
|
|
|
"ajv": "^6.10.0",
|
|
|
"chalk": "^4.0.0",
|
|
@@ -26177,6 +26279,26 @@
|
|
|
"resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
|
|
|
"integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
|
|
|
},
|
|
|
+ "react-redux": {
|
|
|
+ "version": "8.0.1",
|
|
|
+ "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.1.tgz",
|
|
|
+ "integrity": "sha512-LMZMsPY4DYdZfLJgd7i79n5Kps5N9XVLCJJeWAaPYTV+Eah2zTuBjTxKtNEbjiyitbq80/eIkm55CYSLqAub3w==",
|
|
|
+ "requires": {
|
|
|
+ "@babel/runtime": "^7.12.1",
|
|
|
+ "@types/hoist-non-react-statics": "^3.3.1",
|
|
|
+ "@types/use-sync-external-store": "^0.0.3",
|
|
|
+ "hoist-non-react-statics": "^3.3.2",
|
|
|
+ "react-is": "^18.0.0",
|
|
|
+ "use-sync-external-store": "^1.0.0"
|
|
|
+ },
|
|
|
+ "dependencies": {
|
|
|
+ "react-is": {
|
|
|
+ "version": "18.0.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.0.0.tgz",
|
|
|
+ "integrity": "sha512-yUcBYdBBbo3QiPsgYDcfQcIkGZHfxOaoE6HLSnr1sPzMhdyxusbfKOSUbSd/ocGi32dxcj366PsTj+5oggeKKw=="
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
"react-refresh": {
|
|
|
"version": "0.11.0",
|
|
|
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz",
|
|
@@ -26310,6 +26432,20 @@
|
|
|
"strip-indent": "^3.0.0"
|
|
|
}
|
|
|
},
|
|
|
+ "redux": {
|
|
|
+ "version": "4.2.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.0.tgz",
|
|
|
+ "integrity": "sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==",
|
|
|
+ "requires": {
|
|
|
+ "@babel/runtime": "^7.9.2"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "redux-thunk": {
|
|
|
+ "version": "2.4.1",
|
|
|
+ "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz",
|
|
|
+ "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==",
|
|
|
+ "requires": {}
|
|
|
+ },
|
|
|
"regenerate": {
|
|
|
"version": "1.4.2",
|
|
|
"resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
|
|
@@ -27555,6 +27691,12 @@
|
|
|
"punycode": "^2.1.0"
|
|
|
}
|
|
|
},
|
|
|
+ "use-sync-external-store": {
|
|
|
+ "version": "1.0.0",
|
|
|
+ "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.0.0.tgz",
|
|
|
+ "integrity": "sha512-AFVsxg5GkFg8GDcxnl+Z0lMAz9rE8DGJCc28qnBuQF7lac57B5smLcT37aXpXIIPz75rW4g3eXHPjhHwdGskOw==",
|
|
|
+ "requires": {}
|
|
|
+ },
|
|
|
"util-deprecate": {
|
|
|
"version": "1.0.2",
|
|
|
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|