RomanR 4 years ago
parent
commit
186b27effd

+ 96 - 0
PROECT/proect/package-lock.json

@@ -6306,6 +6306,19 @@
       "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz",
       "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ=="
     },
+    "history": {
+      "version": "4.10.1",
+      "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz",
+      "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==",
+      "requires": {
+        "@babel/runtime": "^7.1.2",
+        "loose-envify": "^1.2.0",
+        "resolve-pathname": "^3.0.0",
+        "tiny-invariant": "^1.0.2",
+        "tiny-warning": "^1.0.0",
+        "value-equal": "^1.0.1"
+      }
+    },
     "hmac-drbg": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@@ -6316,6 +6329,14 @@
         "minimalistic-crypto-utils": "^1.0.1"
       }
     },
+    "hoist-non-react-statics": {
+      "version": "3.3.2",
+      "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
+      "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
+      "requires": {
+        "react-is": "^16.7.0"
+      }
+    },
     "hosted-git-info": {
       "version": "2.8.8",
       "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
@@ -8188,6 +8209,15 @@
       "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
       "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg=="
     },
+    "mini-create-react-context": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/mini-create-react-context/-/mini-create-react-context-0.4.0.tgz",
+      "integrity": "sha512-b0TytUgFSbgFJGzJqXPKCFCBWigAjpjo+Fl7Vf7ZbKRDptszpppKxXH6DRXEABZ/gcEQczeb0iZ7JvL8e8jjCA==",
+      "requires": {
+        "@babel/runtime": "^7.5.5",
+        "tiny-warning": "^1.0.3"
+      }
+    },
     "mini-css-extract-plugin": {
       "version": "0.9.0",
       "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz",
@@ -10561,6 +10591,52 @@
       "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
       "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
     },
+    "react-router": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.2.0.tgz",
+      "integrity": "sha512-smz1DUuFHRKdcJC0jobGo8cVbhO3x50tCL4icacOlcwDOEQPq4TMqwx3sY1TP+DvtTgz4nm3thuo7A+BK2U0Dw==",
+      "requires": {
+        "@babel/runtime": "^7.1.2",
+        "history": "^4.9.0",
+        "hoist-non-react-statics": "^3.1.0",
+        "loose-envify": "^1.3.1",
+        "mini-create-react-context": "^0.4.0",
+        "path-to-regexp": "^1.7.0",
+        "prop-types": "^15.6.2",
+        "react-is": "^16.6.0",
+        "tiny-invariant": "^1.0.2",
+        "tiny-warning": "^1.0.0"
+      },
+      "dependencies": {
+        "isarray": {
+          "version": "0.0.1",
+          "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+          "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
+        },
+        "path-to-regexp": {
+          "version": "1.8.0",
+          "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
+          "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
+          "requires": {
+            "isarray": "0.0.1"
+          }
+        }
+      }
+    },
+    "react-router-dom": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.2.0.tgz",
+      "integrity": "sha512-gxAmfylo2QUjcwxI63RhQ5G85Qqt4voZpUXSEqCwykV0baaOTQDR1f0PmY8AELqIyVc0NEZUj0Gov5lNGcXgsA==",
+      "requires": {
+        "@babel/runtime": "^7.1.2",
+        "history": "^4.9.0",
+        "loose-envify": "^1.3.1",
+        "prop-types": "^15.6.2",
+        "react-router": "5.2.0",
+        "tiny-invariant": "^1.0.2",
+        "tiny-warning": "^1.0.0"
+      }
+    },
     "react-scripts": {
       "version": "3.4.3",
       "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-3.4.3.tgz",
@@ -10923,6 +10999,11 @@
       "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
       "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g="
     },
+    "resolve-pathname": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
+      "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng=="
+    },
     "resolve-url": {
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
@@ -12382,6 +12463,16 @@
       "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz",
       "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q="
     },
+    "tiny-invariant": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz",
+      "integrity": "sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw=="
+    },
+    "tiny-warning": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
+      "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA=="
+    },
     "tmp": {
       "version": "0.0.33",
       "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
@@ -12753,6 +12844,11 @@
         "spdx-expression-parse": "^3.0.0"
       }
     },
+    "value-equal": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
+      "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw=="
+    },
     "vary": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",

+ 1 - 0
PROECT/proect/package.json

@@ -8,6 +8,7 @@
     "@testing-library/user-event": "^7.2.1",
     "react": "^16.13.1",
     "react-dom": "^16.13.1",
+    "react-router-dom": "^5.2.0",
     "react-scripts": "3.4.3"
   },
   "scripts": {

+ 137 - 25
PROECT/proect/src/App.js

@@ -1,31 +1,126 @@
-import React, { useState } from 'react';
-import logo from './logo.svg';
-import './App.css';
+import React, { useState, useEffect } from "react";
+import logo from "./logo.svg";
+import "./App.css";
+import Registration from "./components/App.js";
+import LoginForm from "./components/App.js";
+// import {Router, Route, Link} from 'react-router-dom';
+// import createHistory from "history/createBrowserHistory";
 
+// const Registration = ({ login, password, confirmPassword }) => {
+//   const [log, setLog] = useState("login");
+//   const [pass, setPass] = useState("password");
+//   const [confPass, setConfPass] = useState("Confirm password");
 
-const Registration = ({ login, password, confirmPassword }) => {
-  const [log, setLog] = useState('login')
-  const [pass, setPass] = useState('password')
-  const [confPass, setConfPass] = useState('Confirm password')
+//   return (
+//     <div id="registration">
+//       <h2>Registration</h2>
+//       <label>
+//         Login
+//         <input
+//           type="text"
+//           value={log}
+//           placeholder="Login"
+//           style={{
+//             backgroundColor: log.length <= 2 || log.length >= 10 ? "#FAA" : "",
+//           }}
+//           onChange={(e) => setLog(e.target.value)}
+//         />
+//       </label>
+//       <label style={{ margin: 10 }}>
+//         Password
+//         <input
+//           type="text"
+//           placeholder="Password"
+//           value={pass}
+//           style={{
+//             backgroundColor:
+//               pass.length <= 2 || pass !== confPass || pass.match(/[0-9]+/gi)
+//                 ? "#FAA"
+//                 : "",
+//           }}
+//           onChange={(e) => setPass(e.target.value)}
+//         />
+//       </label>
+//       <label style={{ margin: 10 }}>
+//         Confirm password
+//         <input
+//           type="text"
+//           placeholder="Confirm password"
+//           value={confPass}
+//           style={{
+//             backgroundColor:
+//               confPass.length <= 2 ||
+//               confPass !== pass ||
+//               confPass.match(/[0-9]+/gi)
+//                 ? "#FAA"
+//                 : "",
+//           }}
+//           onChange={(e) => setConfPass(e.target.value)}
+//         />
+//       </label>
+//     </div>
+//   );
+// };
 
-  return (
-    <div id='registration'>
-      <h2>Registration</h2>
-      <label>Login<input type='text' value={log} placeholder='Login'
-        style={{ backgroundColor: log.length <= 2 || log.length >= 10 ? '#FAA' : '' }}
-        onChange={(e) => setLog(e.target.value)}
-      /></label>
-      <label style={{ margin: 10 }}>Password<input type='text' placeholder='Password'
-        value={pass} style={{ backgroundColor: pass.length <= 2 || pass !== confPass || pass.match(/[0-9]+/gi) ? '#FAA' : '' }}
-        onChange={(e) => setPass(e.target.value)}
-      /></label>
-      <label style={{ margin: 10 }}>Confirm password<input type='text' placeholder='Confirm password'
-        value={confPass} style={{ backgroundColor: confPass.length <= 2 || confPass !== pass || confPass.match(/[0-9]+/gi) ? '#FAA' : '' }}
-        onChange={(e) => setConfPass(e.target.value)}
-      /></label>
-    </div>
-  )
-}
+// const getGQL = (url, headers = {}) => (query = "", variables = {}) =>
+//   fetch(url, {
+//     method: "POST",
+//     headers: {
+//       Accept: "application/json",
+//       "Content-Type": "application/json",
+//       ...headers,
+//     },
+//     body: JSON.stringify({ query, variables }),
+//   }).then((res) => res.json());
+
+// const CategoryItem = ({ category: { _id, name } }) => (
+//   <li>
+//     <a href={`/category/${_id}`}>{name}</a>
+//   </li>
+// );
+
+// const Aside = () => {
+//   const [categories, setCategories] = useState([]);
+//   console.log(categories);
+//   useEffect(async () => {
+//     let data = await getGQL(
+//       "http://shop-roles.asmer.fs.a-level.com.ua/graphql"
+//     )(`query MainCategories{
+//                   CategoryFind(query: "[{\\"parent\\":null}]"){
+//                     _id name 
+//                   }
+//                 }`);
+//     setCategories(data.data.CategoryFind);
+//   }, []);
+
+//   return (
+//     <aside>
+//       <ul>
+//         {categories.map((category) => (
+//           <CategoryItem category={category} />
+//         ))}
+//       </ul>
+//     </aside>
+//   );
+// };
+// class ChatPage extends Component {
+//   render() {
+//     console.log(this.props)
+//     return (
+//         <div className="App">
+//             {this.props.match.params.param1} <br/>
+//             {this.props.match.params.param2}
+//         </div>
+//     )
+//   }
+// }
+
+
+// const History = createHistory(){
+//  return(
+//   {console.log("start")}
+//  ) 
+// }
 
 function App() {
   return (
@@ -33,9 +128,26 @@ function App() {
       <header className="App-header">
         <img src={logo} className="App-logo" alt="logo" />
         <Registration />
+        <LoginForm onLogin={(l, p) => console.log(l, p)} />
       </header>
+      {/* <Aside/> */}
+      {/* <Router history = {createHistory()}>
+    <div>
+        <Route path="/chat/:param1/:param2" component = { ChatPage } />
+        <Route path="/" component = { MainPage } exact />
+    </div> */}
+{/* </Router> */}
     </div>
   );
 }
 
 export default App;
+
+// const App 
+
+// export default () => 
+// <Router history = {createHistory()}>
+//   <App/>
+// </Router>
+
+

+ 255 - 53
my-project/package-lock.json

@@ -2322,9 +2322,9 @@
       }
     },
     "antd": {
-      "version": "4.6.3",
-      "resolved": "https://registry.npmjs.org/antd/-/antd-4.6.3.tgz",
-      "integrity": "sha512-3wYzzXK5juew1OO2BKQVesgEWkWhf2P1xjNtyjDJqxACmtUGr7kL3v/6DCAqMDt8P5gLzDvZgsSMpes1sSfS8A==",
+      "version": "4.6.4",
+      "resolved": "https://registry.npmjs.org/antd/-/antd-4.6.4.tgz",
+      "integrity": "sha512-fzrxyXc93fq+h0A0Rduw+7we1qyZEIgwIefXJmZg7ft81M/nQcdJ1l37sbaJWcg120f+kjeuWIbrmCVUqTpgXw==",
       "requires": {
         "@ant-design/colors": "^4.0.5",
         "@ant-design/css-animation": "^1.7.2",
@@ -2346,11 +2346,11 @@
         "rc-drawer": "~4.1.0",
         "rc-dropdown": "~3.1.2",
         "rc-field-form": "~1.10.0",
-        "rc-image": "~3.0.2",
+        "rc-image": "~3.0.6",
         "rc-input-number": "~6.0.0",
         "rc-mentions": "~1.4.0",
-        "rc-menu": "~8.5.2",
-        "rc-motion": "^1.1.1",
+        "rc-menu": "~8.6.1",
+        "rc-motion": "^2.0.0",
         "rc-notification": "~4.4.0",
         "rc-pagination": "~3.0.3",
         "rc-picker": "~2.0.6",
@@ -2364,11 +2364,11 @@
         "rc-table": "~7.9.2",
         "rc-tabs": "~11.6.0",
         "rc-textarea": "~0.3.0",
-        "rc-tooltip": "~4.2.0",
+        "rc-tooltip": "~5.0.0",
         "rc-tree": "~3.9.0",
         "rc-tree-select": "~4.1.1",
-        "rc-trigger": "~4.4.0",
-        "rc-upload": "~3.3.0",
+        "rc-trigger": "~5.0.3",
+        "rc-upload": "~3.3.1",
         "rc-util": "^5.1.0",
         "scroll-into-view-if-needed": "^2.2.25",
         "warning": "^4.0.3"
@@ -8567,9 +8567,9 @@
       }
     },
     "moment": {
-      "version": "2.27.0",
-      "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz",
-      "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ=="
+      "version": "2.28.0",
+      "resolved": "https://registry.npmjs.org/moment/-/moment-2.28.0.tgz",
+      "integrity": "sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw=="
     },
     "move-concurrently": {
       "version": "1.0.1",
@@ -10698,6 +10698,32 @@
         "rc-trigger": "^4.0.0",
         "rc-util": "^5.0.1",
         "warning": "^4.0.1"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-checkbox": {
@@ -10742,13 +10768,39 @@
       }
     },
     "rc-dropdown": {
-      "version": "3.1.2",
-      "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.1.2.tgz",
-      "integrity": "sha512-s2W5jqvjTid5DxotGO5FlTBaQWeB+Bu7McQgjB8Ot3Wbl72AIKwLf11+lgbV4mA2vWC1H8DKyn6SW9TKLTi0xg==",
+      "version": "3.1.3",
+      "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.1.3.tgz",
+      "integrity": "sha512-sqVMDZcyV32y2YIEUBfxzgRzOLXqi/v5JB1GPe0CMyGMadPvbi+YIRF8toKdQf26tcHZobZUOyFk8OOV2BRusw==",
       "requires": {
         "@babel/runtime": "^7.10.1",
         "classnames": "^2.2.6",
         "rc-trigger": "^4.0.0"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-field-form": {
@@ -10774,9 +10826,9 @@
       }
     },
     "rc-input-number": {
-      "version": "6.0.0",
-      "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-6.0.0.tgz",
-      "integrity": "sha512-vbe+g7HvR/joknSnvLkBTi9N9I+LsV4kljfuog8WNiS7OAF3aEN0QcHSOQ4+xk6+Hx9P1tU63z2+TyEx8W/j2Q==",
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-6.0.1.tgz",
+      "integrity": "sha512-cS1k6IB/V84VUQd5qWzGFrLHvZjWGHGmYbrvR0QP/C1Ju1SlBqlhqhOBTc6w+dpPs84PCH5caZtNzsHeWZ1zYA==",
       "requires": {
         "@babel/runtime": "^7.10.1",
         "classnames": "^2.2.5",
@@ -10794,12 +10846,38 @@
         "rc-textarea": "^0.3.0",
         "rc-trigger": "^4.3.0",
         "rc-util": "^5.0.1"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-menu": {
-      "version": "8.5.3",
-      "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-8.5.3.tgz",
-      "integrity": "sha512-OLdN+jwhabgyRZDvWYjYpO7RP7wLybhNuAulgGqx1oUPBJrtgVlG/X4HtPb7nypRx/n+eicj6H8CtbCs0L4m/Q==",
+      "version": "8.6.1",
+      "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-8.6.1.tgz",
+      "integrity": "sha512-/PzdoOLmhjOi5RqXKrmUGbhKFzM22eZgL3HyYpa2fym1wUfEFXqp8U8b69mbGmY16+YzU7f15nYTxJkbTdgdTA==",
       "requires": {
         "@babel/runtime": "^7.10.1",
         "classnames": "2.x",
@@ -10810,17 +10888,42 @@
         "rc-util": "^5.0.1",
         "resize-observer-polyfill": "^1.5.0",
         "shallowequal": "^1.1.0"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-motion": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
-      "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.0.1.tgz",
+      "integrity": "sha512-spiBod/mQhbAt4ynq0P7TYa8OXAgg/nEloU0jrTO2X4wVkVTI8ynadyjgq7Tr55pegTsuCbYlysEsIdsSrcU0g==",
       "requires": {
         "@babel/runtime": "^7.11.1",
         "classnames": "^2.2.1",
-        "raf": "^3.4.1",
-        "rc-util": "^5.0.6"
+        "rc-util": "^5.2.1"
       }
     },
     "rc-notification": {
@@ -10856,6 +10959,32 @@
         "rc-trigger": "^4.0.0",
         "rc-util": "^5.0.1",
         "shallowequal": "^1.1.0"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-progress": {
@@ -10889,9 +11018,9 @@
       }
     },
     "rc-select": {
-      "version": "11.2.0",
-      "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-11.2.0.tgz",
-      "integrity": "sha512-rw9XH2ALt/lpXDM/gULWiPDkEh5UndLDMqZo5FRiZji7MYLg+CbmcFpvJ6iYN5KpKosyLsCWrwvzeWZOCL6q0Q==",
+      "version": "11.2.2",
+      "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-11.2.2.tgz",
+      "integrity": "sha512-pfQu3CoW6cYXi4tsCYnoCVEf/1ze8t1vvK9X8NbBtOxL4l9VIAAGf8oAMvotPKNTHrrAouxbORtL8ZZ3uw5lTA==",
       "requires": {
         "@babel/runtime": "^7.10.1",
         "classnames": "2.x",
@@ -10900,6 +11029,32 @@
         "rc-util": "^5.0.1",
         "rc-virtual-list": "^3.0.3",
         "warning": "^4.0.3"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-slider": {
@@ -10912,6 +11067,41 @@
         "rc-tooltip": "^4.0.0",
         "rc-util": "^5.0.0",
         "shallowequal": "^1.1.0"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        },
+        "rc-tooltip": {
+          "version": "4.2.3",
+          "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-4.2.3.tgz",
+          "integrity": "sha512-7ySkaPGeqLLM4a/QYrKQ280aDthPxyvjJqQMstWX/AWX7/b1p23HIdHXdjBkziuvcnvXkW4lgZdFTVsylDiX1w==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "rc-trigger": "^4.2.1"
+          }
+        },
+        "rc-trigger": {
+          "version": "4.4.3",
+          "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.3.tgz",
+          "integrity": "sha512-yq/WyuiPwxd2q6jy+VPyy0GUCRFJ2eFqAaCwPE27AOftXeIupOcJ/2t1wakSq63cfk7qtzev5DKHUAjb8LOJCw==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "^2.2.6",
+            "raf": "^3.4.1",
+            "rc-align": "^4.0.0",
+            "rc-motion": "^1.0.0",
+            "rc-util": "^5.0.1"
+          }
+        }
       }
     },
     "rc-steps": {
@@ -10935,9 +11125,9 @@
       }
     },
     "rc-table": {
-      "version": "7.9.7",
-      "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.9.7.tgz",
-      "integrity": "sha512-S/46pdU7fKBoL7N8JDu+KpkGSB3fJkiGoxvMCLBrR4p7/BJEYr1X4MFKb5BpkE7ZpEK4n44ILiVZZT7I7EiGVA==",
+      "version": "7.9.9",
+      "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.9.9.tgz",
+      "integrity": "sha512-DlOlHtXDo/ypHV9XCY3IBKsyTfdkMyz9ZmSZFZq4qXGG3HbdKfsGlUb8COhjTDUl7QxZETiQG5c9isds25TU9A==",
       "requires": {
         "@babel/runtime": "^7.10.1",
         "classnames": "^2.2.5",
@@ -10948,17 +11138,16 @@
       }
     },
     "rc-tabs": {
-      "version": "11.6.1",
-      "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.6.1.tgz",
-      "integrity": "sha512-fJZUOmwBo2E4WTbucCSZO/N1ZK+d9K/QchgDeycTIqxl5D/xtX0Dw/vC2DFi140OFjAy2JL7H0EmsSeOFfCgzw==",
+      "version": "11.6.2",
+      "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.6.2.tgz",
+      "integrity": "sha512-7Z5Lg+nP/H4V7dIlewrOC0+aogRVH3ASjTy4VIletYOeStGPWYSfwBnUTBdcCXcUuWuyyKnNkYrUD0yaRqUCIA==",
       "requires": {
-        "@babel/runtime": "^7.10.1",
+        "@babel/runtime": "^7.11.2",
         "classnames": "2.x",
         "raf": "^3.4.1",
-        "rc-dropdown": "^3.1.0",
-        "rc-menu": "^8.2.1",
+        "rc-dropdown": "^3.1.3",
+        "rc-menu": "^8.6.1",
         "rc-resize-observer": "^0.2.1",
-        "rc-trigger": "^4.2.1",
         "rc-util": "^5.0.0"
       }
     },
@@ -10974,11 +11163,12 @@
       }
     },
     "rc-tooltip": {
-      "version": "4.2.2",
-      "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-4.2.2.tgz",
-      "integrity": "sha512-mAs+gAngUyHVA6HdFXsELoJOHgfjAACLLc8SGtnVhovJdyqs5ZGSL9p5i+ApNaVpwjswqShw7L4DRtMl7cXCQg==",
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-5.0.1.tgz",
+      "integrity": "sha512-3AnxhUS0j74xAV3khrKw8o6rg+Ima3nw09DJBezMPnX3ImQUAnayWsPSlN1mEnihjA43rcFkGM1emiKE+CXyMQ==",
       "requires": {
-        "rc-trigger": "^4.2.1"
+        "@babel/runtime": "^7.11.2",
+        "rc-trigger": "^5.0.0"
       }
     },
     "rc-tree": {
@@ -10991,6 +11181,19 @@
         "rc-motion": "^1.0.0",
         "rc-util": "^5.0.0",
         "rc-virtual-list": "^3.0.1"
+      },
+      "dependencies": {
+        "rc-motion": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-1.1.2.tgz",
+          "integrity": "sha512-YC/E7SSWKBFakYg4PENhSRWD4ZLDqkI7FKmutJcrMewZ91/ZIWfoZSDvPaBdKO0hsFrrzWepFhXQIq0FNnCMWA==",
+          "requires": {
+            "@babel/runtime": "^7.11.1",
+            "classnames": "^2.2.1",
+            "raf": "^3.4.1",
+            "rc-util": "^5.0.6"
+          }
+        }
       }
     },
     "rc-tree-select": {
@@ -11006,16 +11209,15 @@
       }
     },
     "rc-trigger": {
-      "version": "4.4.2",
-      "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.4.2.tgz",
-      "integrity": "sha512-uw2/s7j1b/RXyixa4omPuxZWv/3ln+H+p0v3trIUBxseolbdj8TTFpXYjXMZdGtMpAEAIbN1yo/K+r7wRB+xtQ==",
+      "version": "5.0.4",
+      "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.0.4.tgz",
+      "integrity": "sha512-cFTuV73YpfC8ujknycSjEvIDX7VtspEgFhibk/evf415Q0roHazs9dEbajKRgionpC/88OKLRR6G81eA4BvLTQ==",
       "requires": {
-        "@babel/runtime": "^7.10.1",
+        "@babel/runtime": "^7.11.2",
         "classnames": "^2.2.6",
-        "raf": "^3.4.1",
         "rc-align": "^4.0.0",
-        "rc-motion": "^1.0.0",
-        "rc-util": "^5.0.1"
+        "rc-motion": "^2.0.0",
+        "rc-util": "^5.2.1"
       }
     },
     "rc-upload": {
@@ -11038,9 +11240,9 @@
       }
     },
     "rc-virtual-list": {
-      "version": "3.0.14",
-      "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.0.14.tgz",
-      "integrity": "sha512-sbiPmSaDmO+2IY91eHyFYVHH8mJH0QYS1t4I5EKbqeVFgY/RZIHkwezKX/nvxULQlZHdTU6l/wh7yBxfp4QUyg==",
+      "version": "3.0.16",
+      "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.0.16.tgz",
+      "integrity": "sha512-3lghwR6AbCsj5JIWlwJ4zK1cS/e7JLYKA+RnC6JrMz11dGgoM0jF4KkK3UzToG1APSSu42Oy4pe2OT42+nRJ2g==",
       "requires": {
         "classnames": "^2.2.6",
         "rc-resize-observer": "^0.2.3",

+ 1 - 1
my-project/package.json

@@ -7,7 +7,7 @@
     "@testing-library/jest-dom": "^4.2.4",
     "@testing-library/react": "^9.5.0",
     "@testing-library/user-event": "^7.2.1",
-    "antd": "^4.6.3",
+    "antd": "^4.6.4",
     "react": "^16.13.1",
     "react-dom": "^16.13.1",
     "react-scripts": "3.4.3"

+ 23 - 1
my-project/src/App.js

@@ -1,10 +1,32 @@
-import React from "react";
+// import React from "react";
 import RegisterForm from "./components/RegisterForm";
+import React, { useState } from "react";
+// import Registration from "./components/Reg";
+// import LoginForm from  "./components/Reg";
+
 import "./styles/App.css";
 
+
+
+
+const Header = () => {
+  return (
+    <div>
+      <ul class = "main-menu">
+        <li>gRomkoPlayer</li>
+        <li>Библиотека</li>
+        <li>Плайлист</li>
+        <li>Вход/Регистрация</li>
+      </ul>
+    </div>
+  );
+}
+
+
 function App() {
   return (
     <div className="App">
+      <Header/>
       <RegisterForm />
     </div>
   );