Web: Common: Show content after userLoaded

This commit is contained in:
Alexey Safronov 2020-09-21 19:27:39 +03:00
parent 86bcde60b1
commit 04b223d681

View File

@ -7,6 +7,7 @@ import PageLayout from "../PageLayout";
import { isAdmin, isMe } from "../../store/auth/selectors.js";
import { AUTH_KEY } from "../../constants";
import { Error401, Error404 } from "../../pages/errors";
import isEmpty from "lodash/isEmpty";
const PrivateRoute = ({ component: Component, ...rest }) => {
const {
@ -25,11 +26,13 @@ const PrivateRoute = ({ component: Component, ...rest }) => {
const renderComponent = useCallback(
props => {
if (!isLoaded) {
const userLoaded = !isEmpty(currentUser);
if (!userLoaded) {
return (
<PageLayout>
<PageLayout.SectionBody>
<Loader className="pageLoader" type="rombs" size='40px' />
<Loader className="pageLoader" type="rombs" size="40px" />
</PageLayout.SectionBody>
</PageLayout>
);
@ -51,7 +54,7 @@ const PrivateRoute = ({ component: Component, ...rest }) => {
isAdmin ||
(allowForMe && userId && isMe(currentUser, userId))
)
return <Component {...props} />;
return <Component {...props} />;
if (restricted) {
return <Error401 />;
@ -73,7 +76,7 @@ const PrivateRoute = ({ component: Component, ...rest }) => {
]
);
console.log("PrivateRoute render", rest);
console.log("PrivateRoute render", rest);
return <Route {...rest} render={renderComponent} />;
};