diff --git a/packages/core/admin/admin/src/components/PrivateRoute/index.js b/packages/core/admin/admin/src/components/PrivateRoute/index.js
index 677ba35cf0..02cecaf0d9 100644
--- a/packages/core/admin/admin/src/components/PrivateRoute/index.js
+++ b/packages/core/admin/admin/src/components/PrivateRoute/index.js
@@ -32,7 +32,7 @@ const PrivateRoute = ({ component: Component, path, ...rest }) => (
);
PrivateRoute.propTypes = {
- component: PropTypes.oneOfType([PropTypes.node, PropTypes.func, PropTypes.element]).isRequired,
+ component: PropTypes.any.isRequired,
path: PropTypes.string.isRequired,
};
diff --git a/packages/core/admin/admin/src/pages/App/index.js b/packages/core/admin/admin/src/pages/App/index.js
index 6f223b4afb..ee544cb911 100644
--- a/packages/core/admin/admin/src/pages/App/index.js
+++ b/packages/core/admin/admin/src/pages/App/index.js
@@ -4,13 +4,12 @@
*
*/
-import React, { useEffect, useRef, useState, useMemo } from 'react';
+import React, { useEffect, useRef, useState, useMemo, lazy, Suspense } from 'react';
import PropTypes from 'prop-types';
import { Switch, Route } from 'react-router-dom';
import { connect } from 'react-redux';
import { bindActionCreators, compose } from 'redux';
import { LoadingIndicatorPage, auth, request, useNotification } from '@strapi/helper-plugin';
-import AuthenticatedApp from '../../components/AuthenticatedApp';
import PrivateRoute from '../../components/PrivateRoute';
import AuthPage from '../AuthPage';
import NotFoundPage from '../NotFoundPage';
@@ -20,6 +19,7 @@ import { getDataSucceeded } from './actions';
import routes from './utils/routes';
import { makeUniqueRoutes, createRoute } from '../SettingsPage/utils';
+const AuthenticatedApp = lazy(() => import('../../components/AuthenticatedApp'));
function App(props) {
const toggleNotification = useNotification();
const getDataRef = useRef();
@@ -103,22 +103,24 @@ function App(props) {
}
return (
-
-
-
- {authRoutes}
- (
-
- )}
- exact
- />
-
-
-
-
-
+ }>
+
+
+
+ {authRoutes}
+ (
+
+ )}
+ exact
+ />
+
+
+
+
+
+
);
}
diff --git a/packages/core/admin/admin/src/tests/StrapiApp.test.js b/packages/core/admin/admin/src/tests/StrapiApp.test.js
index 7d8906a59d..083fcf8791 100644
--- a/packages/core/admin/admin/src/tests/StrapiApp.test.js
+++ b/packages/core/admin/admin/src/tests/StrapiApp.test.js
@@ -84,7 +84,7 @@ describe('ADMIN | StrapiApp', () => {