Merge branch 'main' into sevka
This commit is contained in:
		
							
								
								
									
										214
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										214
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -17,7 +17,6 @@ | |||||||
|         "axios": "^1.6.2", |         "axios": "^1.6.2", | ||||||
|         "react": "^18.2.0", |         "react": "^18.2.0", | ||||||
|         "react-dom": "^18.2.0", |         "react-dom": "^18.2.0", | ||||||
|         "react-router-dom": "^6.21.1", |  | ||||||
|         "styled-components": "^6.1.2" |         "styled-components": "^6.1.2" | ||||||
|       }, |       }, | ||||||
|       "devDependencies": { |       "devDependencies": { | ||||||
| @@ -28,7 +27,6 @@ | |||||||
|         "eslint-plugin-react": "^7.33.2", |         "eslint-plugin-react": "^7.33.2", | ||||||
|         "eslint-plugin-react-hooks": "^4.6.0", |         "eslint-plugin-react-hooks": "^4.6.0", | ||||||
|         "eslint-plugin-react-refresh": "^0.4.5", |         "eslint-plugin-react-refresh": "^0.4.5", | ||||||
|         "sass": "^1.69.5", |  | ||||||
|         "vite": "^5.0.8" |         "vite": "^5.0.8" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
| @@ -1414,14 +1412,6 @@ | |||||||
|         "url": "https://opencollective.com/popperjs" |         "url": "https://opencollective.com/popperjs" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@remix-run/router": { |  | ||||||
|       "version": "1.14.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.14.1.tgz", |  | ||||||
|       "integrity": "sha512-Qg4DMQsfPNAs88rb2xkdk03N3bjK4jgX5fR24eHCTR9q6PrhZQZ4UJBPzCHJkIpTRN1UKxx2DzjZmnC+7Lj0Ow==", |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=14.0.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@rollup/rollup-android-arm-eabi": { |     "node_modules/@rollup/rollup-android-arm-eabi": { | ||||||
|       "version": "4.9.1", |       "version": "4.9.1", | ||||||
|       "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.1.tgz", |       "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.1.tgz", | ||||||
| @@ -1761,19 +1751,6 @@ | |||||||
|         "node": ">=4" |         "node": ">=4" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/anymatch": { |  | ||||||
|       "version": "3.1.3", |  | ||||||
|       "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", |  | ||||||
|       "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "normalize-path": "^3.0.0", |  | ||||||
|         "picomatch": "^2.0.4" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">= 8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/argparse": { |     "node_modules/argparse": { | ||||||
|       "version": "2.0.1", |       "version": "2.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", |       "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", | ||||||
| @@ -1954,15 +1931,6 @@ | |||||||
|       "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", |       "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/binary-extensions": { |  | ||||||
|       "version": "2.2.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", |  | ||||||
|       "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", |  | ||||||
|       "dev": true, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/brace-expansion": { |     "node_modules/brace-expansion": { | ||||||
|       "version": "1.1.11", |       "version": "1.1.11", | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
| @@ -1973,18 +1941,6 @@ | |||||||
|         "concat-map": "0.0.1" |         "concat-map": "0.0.1" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/braces": { |  | ||||||
|       "version": "3.0.2", |  | ||||||
|       "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", |  | ||||||
|       "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "fill-range": "^7.0.1" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/browserslist": { |     "node_modules/browserslist": { | ||||||
|       "version": "4.22.2", |       "version": "4.22.2", | ||||||
|       "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", |       "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", | ||||||
| @@ -2080,45 +2036,6 @@ | |||||||
|         "node": ">=4" |         "node": ">=4" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/chokidar": { |  | ||||||
|       "version": "3.5.3", |  | ||||||
|       "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", |  | ||||||
|       "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", |  | ||||||
|       "dev": true, |  | ||||||
|       "funding": [ |  | ||||||
|         { |  | ||||||
|           "type": "individual", |  | ||||||
|           "url": "https://paulmillr.com/funding/" |  | ||||||
|         } |  | ||||||
|       ], |  | ||||||
|       "dependencies": { |  | ||||||
|         "anymatch": "~3.1.2", |  | ||||||
|         "braces": "~3.0.2", |  | ||||||
|         "glob-parent": "~5.1.2", |  | ||||||
|         "is-binary-path": "~2.1.0", |  | ||||||
|         "is-glob": "~4.0.1", |  | ||||||
|         "normalize-path": "~3.0.0", |  | ||||||
|         "readdirp": "~3.6.0" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">= 8.10.0" |  | ||||||
|       }, |  | ||||||
|       "optionalDependencies": { |  | ||||||
|         "fsevents": "~2.3.2" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/chokidar/node_modules/glob-parent": { |  | ||||||
|       "version": "5.1.2", |  | ||||||
|       "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", |  | ||||||
|       "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "is-glob": "^4.0.1" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">= 6" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/clsx": { |     "node_modules/clsx": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", |       "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", | ||||||
| @@ -2823,18 +2740,6 @@ | |||||||
|         "node": "^10.12.0 || >=12.0.0" |         "node": "^10.12.0 || >=12.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/fill-range": { |  | ||||||
|       "version": "7.0.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", |  | ||||||
|       "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "to-regex-range": "^5.0.1" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/find-root": { |     "node_modules/find-root": { | ||||||
|       "version": "1.1.0", |       "version": "1.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", |       "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", | ||||||
| @@ -3182,12 +3087,6 @@ | |||||||
|         "node": ">= 4" |         "node": ">= 4" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/immutable": { |  | ||||||
|       "version": "4.3.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", |  | ||||||
|       "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", |  | ||||||
|       "dev": true |  | ||||||
|     }, |  | ||||||
|     "node_modules/import-fresh": { |     "node_modules/import-fresh": { | ||||||
|       "version": "3.3.0", |       "version": "3.3.0", | ||||||
|       "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", |       "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", | ||||||
| @@ -3288,18 +3187,6 @@ | |||||||
|         "url": "https://github.com/sponsors/ljharb" |         "url": "https://github.com/sponsors/ljharb" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/is-binary-path": { |  | ||||||
|       "version": "2.1.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", |  | ||||||
|       "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "binary-extensions": "^2.0.0" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/is-boolean-object": { |     "node_modules/is-boolean-object": { | ||||||
|       "version": "1.1.2", |       "version": "1.1.2", | ||||||
|       "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", |       "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", | ||||||
| @@ -3423,15 +3310,6 @@ | |||||||
|         "url": "https://github.com/sponsors/ljharb" |         "url": "https://github.com/sponsors/ljharb" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/is-number": { |  | ||||||
|       "version": "7.0.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", |  | ||||||
|       "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", |  | ||||||
|       "dev": true, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=0.12.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/is-number-object": { |     "node_modules/is-number-object": { | ||||||
|       "version": "1.0.7", |       "version": "1.0.7", | ||||||
|       "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", |       "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", | ||||||
| @@ -3810,15 +3688,6 @@ | |||||||
|       "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", |       "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/normalize-path": { |  | ||||||
|       "version": "3.0.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", |  | ||||||
|       "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", |  | ||||||
|       "dev": true, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=0.10.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/object-assign": { |     "node_modules/object-assign": { | ||||||
|       "version": "4.1.1", |       "version": "4.1.1", | ||||||
|       "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", |       "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", | ||||||
| @@ -4053,18 +3922,6 @@ | |||||||
|       "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", |       "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", | ||||||
|       "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" |       "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/picomatch": { |  | ||||||
|       "version": "2.3.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", |  | ||||||
|       "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", |  | ||||||
|       "dev": true, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8.6" |  | ||||||
|       }, |  | ||||||
|       "funding": { |  | ||||||
|         "url": "https://github.com/sponsors/jonschlinkert" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/postcss": { |     "node_modules/postcss": { | ||||||
|       "version": "8.4.32", |       "version": "8.4.32", | ||||||
|       "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", |       "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", | ||||||
| @@ -4187,36 +4044,6 @@ | |||||||
|         "node": ">=0.10.0" |         "node": ">=0.10.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/react-router": { |  | ||||||
|       "version": "6.21.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.21.1.tgz", |  | ||||||
|       "integrity": "sha512-W0l13YlMTm1YrpVIOpjCADJqEUpz1vm+CMo47RuFX4Ftegwm6KOYsL5G3eiE52jnJpKvzm6uB/vTKTPKM8dmkA==", |  | ||||||
|       "dependencies": { |  | ||||||
|         "@remix-run/router": "1.14.1" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=14.0.0" |  | ||||||
|       }, |  | ||||||
|       "peerDependencies": { |  | ||||||
|         "react": ">=16.8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/react-router-dom": { |  | ||||||
|       "version": "6.21.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.21.1.tgz", |  | ||||||
|       "integrity": "sha512-QCNrtjtDPwHDO+AO21MJd7yIcr41UetYt5jzaB9Y1UYaPTCnVuJq6S748g1dE11OQlCFIQg+RtAA1SEZIyiBeA==", |  | ||||||
|       "dependencies": { |  | ||||||
|         "@remix-run/router": "1.14.1", |  | ||||||
|         "react-router": "6.21.1" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=14.0.0" |  | ||||||
|       }, |  | ||||||
|       "peerDependencies": { |  | ||||||
|         "react": ">=16.8", |  | ||||||
|         "react-dom": ">=16.8" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/react-transition-group": { |     "node_modules/react-transition-group": { | ||||||
|       "version": "4.4.5", |       "version": "4.4.5", | ||||||
|       "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", |       "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", | ||||||
| @@ -4232,18 +4059,6 @@ | |||||||
|         "react-dom": ">=16.6.0" |         "react-dom": ">=16.6.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/readdirp": { |  | ||||||
|       "version": "3.6.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", |  | ||||||
|       "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "picomatch": "^2.2.1" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8.10.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/reflect.getprototypeof": { |     "node_modules/reflect.getprototypeof": { | ||||||
|       "version": "1.0.4", |       "version": "1.0.4", | ||||||
|       "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", |       "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", | ||||||
| @@ -4420,23 +4235,6 @@ | |||||||
|         "url": "https://github.com/sponsors/ljharb" |         "url": "https://github.com/sponsors/ljharb" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/sass": { |  | ||||||
|       "version": "1.69.5", |  | ||||||
|       "resolved": "https://registry.npmjs.org/sass/-/sass-1.69.5.tgz", |  | ||||||
|       "integrity": "sha512-qg2+UCJibLr2LCVOt3OlPhr/dqVHWOa9XtZf2OjbLs/T4VPSJ00udtgJxH3neXZm+QqX8B+3cU7RaLqp1iVfcQ==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "chokidar": ">=3.0.0 <4.0.0", |  | ||||||
|         "immutable": "^4.0.0", |  | ||||||
|         "source-map-js": ">=0.6.2 <2.0.0" |  | ||||||
|       }, |  | ||||||
|       "bin": { |  | ||||||
|         "sass": "sass.js" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=14.0.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/scheduler": { |     "node_modules/scheduler": { | ||||||
|       "version": "0.23.0", |       "version": "0.23.0", | ||||||
|       "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", |       "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", | ||||||
| @@ -4701,18 +4499,6 @@ | |||||||
|         "node": ">=4" |         "node": ">=4" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/to-regex-range": { |  | ||||||
|       "version": "5.0.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", |  | ||||||
|       "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", |  | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |  | ||||||
|         "is-number": "^7.0.0" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=8.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/tslib": { |     "node_modules/tslib": { | ||||||
|       "version": "2.6.2", |       "version": "2.6.2", | ||||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", |       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", | ||||||
|   | |||||||
| @@ -19,7 +19,6 @@ | |||||||
|     "axios": "^1.6.2", |     "axios": "^1.6.2", | ||||||
|     "react": "^18.2.0", |     "react": "^18.2.0", | ||||||
|     "react-dom": "^18.2.0", |     "react-dom": "^18.2.0", | ||||||
|     "react-router-dom": "^6.21.1", |  | ||||||
|     "styled-components": "^6.1.2" |     "styled-components": "^6.1.2" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
| @@ -30,7 +29,6 @@ | |||||||
|     "eslint-plugin-react": "^7.33.2", |     "eslint-plugin-react": "^7.33.2", | ||||||
|     "eslint-plugin-react-hooks": "^4.6.0", |     "eslint-plugin-react-hooks": "^4.6.0", | ||||||
|     "eslint-plugin-react-refresh": "^0.4.5", |     "eslint-plugin-react-refresh": "^0.4.5", | ||||||
|     "sass": "^1.69.5", |  | ||||||
|     "vite": "^5.0.8" |     "vite": "^5.0.8" | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
							
								
								
									
										47
									
								
								src/App.jsx
									
									
									
									
									
								
							
							
						
						
									
										47
									
								
								src/App.jsx
									
									
									
									
									
								
							| @@ -1,22 +1,43 @@ | |||||||
|  | import { useState } from 'react' | ||||||
| import { BrowserRouter, Routes, Route } from "react-router-dom"; | import reactLogo from './assets/react.svg' | ||||||
| import BeingPage from "./Components/BeingPage/index.jsx"; | import viteLogo from '/vite.svg' | ||||||
| import HomePage from "./Components/HomePage/index.jsx"; |  | ||||||
| import './App.css' | import './App.css' | ||||||
|  | import FetchUtils from './components/fetchUtils/FetchUtils' | ||||||
|  | import TableMeets from './components/TableMeets' | ||||||
|  |  | ||||||
|  | const events = [ | ||||||
|  |   { | ||||||
|  |     id: 1, | ||||||
|  |     date: '10.10.2022', | ||||||
|  |     time: '14:00', | ||||||
|  |     title: 'Мероприятие 1', | ||||||
|  |     speaker: 'Спикер 1', | ||||||
|  |     avatar: 'speaker1.jpg', | ||||||
|  |     description: 'Описание мероприятия 1', | ||||||
|  |     isExpanded: true, | ||||||
|  |   }, | ||||||
|  |   { | ||||||
|  |     id: 2, | ||||||
|  |     date: '11.10.2022', | ||||||
|  |     time: '15:30', | ||||||
|  |     title: 'Мероприятие 2', | ||||||
|  |     speaker: 'Спикер 2', | ||||||
|  |     avatar: 'speaker2.jpg', | ||||||
|  |     description: 'Описание мероприятия 2', | ||||||
|  |     isExpanded: true, | ||||||
|  |   }, | ||||||
|  |   // Добавьте другие мероприятия сюда | ||||||
|  | ]; | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| function App() { | function App() { | ||||||
|  |   const [count, setCount] = useState(0) | ||||||
|  |  | ||||||
|   return ( |   return ( | ||||||
|     <> |     <> | ||||||
|       <BrowserRouter> |       {/* <FetchUtils /> */} | ||||||
|         <Routes> |       <TableMeets  events={ events } /> | ||||||
|           <Route path="/being" element={<BeingPage />}/> |  | ||||||
|           <Route path="/" element={<HomePage />}/> |  | ||||||
|         </Routes> |  | ||||||
|       </BrowserRouter> |  | ||||||
|        |  | ||||||
|  |  | ||||||
|     </> |     </> | ||||||
|   ) |   ) | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,10 +0,0 @@ | |||||||
| import React from "react" |  | ||||||
| import styles from "./style.module.scss"; |  | ||||||
|  |  | ||||||
| const BeingPage = () => { |  | ||||||
|     return ( |  | ||||||
|         <div>Hello world</div> |  | ||||||
|     ) |  | ||||||
| } |  | ||||||
|  |  | ||||||
| export default BeingPage |  | ||||||
| @@ -1,22 +0,0 @@ | |||||||
|  |  | ||||||
| import styles from './style.module.scss'; |  | ||||||
| import logo from '../../img/headerImg/OgettoLogo.png'; |  | ||||||
| import { useNavigate } from "react-router-dom"; |  | ||||||
|  |  | ||||||
| const Header = () => { |  | ||||||
|     const navigate = useNavigate(); |  | ||||||
|     const handleHome = () => { |  | ||||||
|         navigate('/'); |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     return ( |  | ||||||
|         <div className={styles.header__container}> |  | ||||||
|             <header className={styles.header}> |  | ||||||
|                 <div className={styles.header__logo} onClick={handleHome} ><img onClick={handleHome} src={logo} alt="logo"></img></div> |  | ||||||
|                 <button className={styles.header__button}>Вход</button> |  | ||||||
|             </header> |  | ||||||
|         </div> |  | ||||||
|     ) |  | ||||||
|  |  | ||||||
| } |  | ||||||
| export default Header; |  | ||||||
| @@ -1,37 +0,0 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| .header { |  | ||||||
|     height: 75px; |  | ||||||
|     width: 80%; |  | ||||||
|     display: flex; |  | ||||||
|     align-items: center; |  | ||||||
|     justify-content: space-between; |  | ||||||
|     &__container { |  | ||||||
|         display: flex; |  | ||||||
|         align-items: center; |  | ||||||
|         justify-content: center; |  | ||||||
|         width: 100%; |  | ||||||
|         height: 150px; |  | ||||||
|         position: absolute; |  | ||||||
|         top: 0px; |  | ||||||
|         left: 0px; |  | ||||||
|     } |  | ||||||
|     &__logo { |  | ||||||
|         cursor: pointer; |  | ||||||
|     } |  | ||||||
|     &__button { |  | ||||||
|         display: flex; |  | ||||||
|         align-items: center; |  | ||||||
|         justify-content: center; |  | ||||||
|         border-radius: 100px; |  | ||||||
|         background: #FFED00; |  | ||||||
|         width: 200px; |  | ||||||
|         height: 42px; |  | ||||||
|         color: #000; |  | ||||||
|         font-family: Montserrat; |  | ||||||
|         font-size: 25px; |  | ||||||
|         font-style: normal; |  | ||||||
|         font-weight: 400; |  | ||||||
|         line-height: normal; |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| @@ -1,6 +0,0 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| .title { |  | ||||||
|     font-size: 100px; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| @@ -1 +0,0 @@ | |||||||
| .title{font-size:100px}/*# sourceMappingURL=module.style.css.map */ |  | ||||||
| @@ -1 +0,0 @@ | |||||||
| {"version":3,"sources":["../HomePage/module.style.scss"],"names":[],"mappings":"AAEA,OACI,eAAA","file":"module.style.css"} |  | ||||||
| @@ -1 +0,0 @@ | |||||||
| .header{height:75px;width:80%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.header__container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;height:150px;position:absolute;top:0px;left:0px}.header__logo{cursor:pointer}.header__button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:100px;background:#ffed00;width:200px;height:42px;color:#000;font-family:Montserrat;font-size:25px;font-style:normal;font-weight:400;line-height:normal}/*# sourceMappingURL=style.module.css.map */ |  | ||||||
| @@ -1 +0,0 @@ | |||||||
| {"version":3,"sources":["../Header/style.module.scss"],"names":[],"mappings":"AAEA,QACI,WAAA,CACA,SAAA,CACA,mBAAA,CAAA,mBAAA,CAAA,YAAA,CACA,wBAAA,CAAA,qBAAA,CAAA,kBAAA,CACA,wBAAA,CAAA,qBAAA,CAAA,6BAAA,CACA,mBACI,mBAAA,CAAA,mBAAA,CAAA,YAAA,CACA,wBAAA,CAAA,qBAAA,CAAA,kBAAA,CACA,uBAAA,CAAA,oBAAA,CAAA,sBAAA,CACA,UAAA,CACA,YAAA,CACA,iBAAA,CACA,OAAA,CACA,QAAA,CAEJ,cACI,cAAA,CAEJ,gBACI,mBAAA,CAAA,mBAAA,CAAA,YAAA,CACA,wBAAA,CAAA,qBAAA,CAAA,kBAAA,CACA,uBAAA,CAAA,oBAAA,CAAA,sBAAA,CACA,mBAAA,CACA,kBAAA,CACA,WAAA,CACA,WAAA,CACA,UAAA,CACA,sBAAA,CACA,cAAA,CACA,iBAAA,CACA,eAAA,CACA,kBAAA","file":"style.module.css"} |  | ||||||
							
								
								
									
										61
									
								
								src/components/TableMeets.jsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								src/components/TableMeets.jsx
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,61 @@ | |||||||
|  | import React, { useState } from 'react'; | ||||||
|  | import styled from 'styled-components'; | ||||||
|  |  | ||||||
|  | let Table = styled.div({ | ||||||
|  |   width: 1520, | ||||||
|  |   border: '1px solid black' | ||||||
|  | }); | ||||||
|  |  | ||||||
|  | let List = styled.div({ | ||||||
|  |   display: 'flex', | ||||||
|  |   // justifyContent: 'center' | ||||||
|  | }); | ||||||
|  |  | ||||||
|  | let Date = styled.span({ | ||||||
|  |   marginRight: 100 | ||||||
|  | }); | ||||||
|  | let Time = styled.span({ | ||||||
|  |   marginRight: 100 | ||||||
|  | }); | ||||||
|  | let Name = styled.span({ | ||||||
|  |     marginRight: 100 | ||||||
|  |   }); | ||||||
|  |  | ||||||
|  | const TableMeets = ({ events }) => { | ||||||
|  |   const [isOpenMap, setIsOpenMap] = useState({}); | ||||||
|  |  | ||||||
|  |   const toggleDropdown = (eventId) => { | ||||||
|  |     setIsOpenMap((prevIsOpenMap) => ({ | ||||||
|  |       ...prevIsOpenMap, | ||||||
|  |       [eventId]: !prevIsOpenMap[eventId] | ||||||
|  |     })); | ||||||
|  |   }; | ||||||
|  |  | ||||||
|  |   return ( | ||||||
|  |     <Table> | ||||||
|  |       <ul> | ||||||
|  |         {events.map((event) => ( | ||||||
|  |           <li key={event.id}> | ||||||
|  |             <div> | ||||||
|  |               <Date>{event.date}</Date> | ||||||
|  |               <Time>{event.time}</Time> | ||||||
|  |               <Name>{event.title}</Name> | ||||||
|  |               <span> | ||||||
|  |                 <button onClick={() => toggleDropdown(event.id)}>Показать список мероприятий</button> | ||||||
|  |               </span> | ||||||
|  |               {isOpenMap[event.id] && ( | ||||||
|  |                 <div> | ||||||
|  |                   <span>{event.speaker}</span> | ||||||
|  |                   <img src={event.avatar} alt={event.speaker} /> | ||||||
|  |                   <p>{event.description}</p> | ||||||
|  |                 </div> | ||||||
|  |               )} | ||||||
|  |             </div> | ||||||
|  |           </li> | ||||||
|  |         ))} | ||||||
|  |       </ul> | ||||||
|  |     </Table> | ||||||
|  |   ); | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | export default TableMeets; | ||||||
							
								
								
									
										68
									
								
								src/components/fetchUtils/FetchUtils.jsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								src/components/fetchUtils/FetchUtils.jsx
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,68 @@ | |||||||
|  | /* eslint-disable no-unused-vars */ | ||||||
|  | import axios from "axios" | ||||||
|  | import { useState } from "react" | ||||||
|  | import './style.css' | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | const FetchUtils = () => { | ||||||
|  |     // default value of data is object or array/nums/string | ||||||
|  |     // const [rata, setRata] = useState([]) | ||||||
|  |     const [user, setUser] = useState([]) | ||||||
|  |     // single axios feetching | ||||||
|  |  | ||||||
|  |     // useEffect( | ||||||
|  |     //     () => { | ||||||
|  |     //         async function getData() { | ||||||
|  |     //             const response = await axios.get('http://localhost:5000/weatherforecast') | ||||||
|  |     //             console.log(response.data) | ||||||
|  |     //             setRata(response.data) | ||||||
|  |     //         } | ||||||
|  |     //         getData() | ||||||
|  |     //     }, [] | ||||||
|  |     // ) | ||||||
|  |     // useEffect( | ||||||
|  |     //     () => { | ||||||
|  |             async function getData() { | ||||||
|  |                 const response = await axios.get('https://jsonplaceholder.typicode.com/users') | ||||||
|  |                 console.log(response.data) | ||||||
|  |                 setUser(response.data) | ||||||
|  |             } | ||||||
|  |     //         getData() | ||||||
|  |     //     }, [] | ||||||
|  |     // ) | ||||||
|  |     // Loop of axios fetching \\ | ||||||
|  |  | ||||||
|  |     // async function getData() { | ||||||
|  |     //     const response = await axios.get('http://localhost:5000/weatherforecast') | ||||||
|  |     //     console.log(response.data) | ||||||
|  |     //     setRata(response.data) | ||||||
|  |     // } | ||||||
|  |     // getData() | ||||||
|  |     const removeList = () => { | ||||||
|  |         setUser([]) | ||||||
|  |     } | ||||||
|  |     return ( | ||||||
|  |         <> | ||||||
|  |           <button onClick={getData}>Click to Get Data</button> | ||||||
|  |           <button onClick={removeList}>Click to Remove Data Listing</button> | ||||||
|  |           {/* Mapping of data */} | ||||||
|  |           <div> | ||||||
|  |             {Array.isArray(user) ? ( | ||||||
|  |               <ul> | ||||||
|  |                 {user.map((item) => ( | ||||||
|  |                   <ol key={item.id}> | ||||||
|  |                     <li>{item.name}</li> | ||||||
|  |                     <li>{item.username}</li> | ||||||
|  |                     <li>{item.email}</li> | ||||||
|  |                   </ol> | ||||||
|  |                 ))} | ||||||
|  |               </ul> | ||||||
|  |             ) : ( | ||||||
|  |               <p>Bad data type from server!</p> | ||||||
|  |             )} | ||||||
|  |           </div> | ||||||
|  |         </> | ||||||
|  |       ); | ||||||
|  | } | ||||||
|  | export default FetchUtils; | ||||||
							
								
								
									
										18
									
								
								src/components/fetchUtils/style.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								src/components/fetchUtils/style.css
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | |||||||
|  | ul { | ||||||
|  |     display: flex; | ||||||
|  |     /* justify-content: center; */ | ||||||
|  |     flex-direction: column; | ||||||
|  |     list-style: none; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ol { | ||||||
|  |     display: flex; | ||||||
|  |     /* justify-content: center; */ | ||||||
|  |     /* align-items: center; */ | ||||||
|  |     /* text-align: left; */ | ||||||
|  |     list-style: none; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | li { | ||||||
|  |     margin-right: 30px; | ||||||
|  | } | ||||||
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 5.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/img/homePage/downArrow.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/img/homePage/downArrow.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 760 B | 
		Reference in New Issue
	
	Block a user