diff --git a/packages/strapi-admin/admin/src/app.js b/packages/strapi-admin/admin/src/app.js index 2da40b6ce6..51be6b89b6 100644 --- a/packages/strapi-admin/admin/src/app.js +++ b/packages/strapi-admin/admin/src/app.js @@ -130,6 +130,15 @@ const unlockApp = () => { dispatch(unfreezeApp()); }; +const lockAppWithOverlay = () => { + const overlayblockerParams = { + children:
, + noGradient: true, + }; + + lockApp(overlayblockerParams); +}; + window.strapi = Object.assign(window.strapi || {}, { node: MODE || 'host', env: NODE_ENV, @@ -165,6 +174,7 @@ window.strapi = Object.assign(window.strapi || {}, { window.navigator.userLanguage || 'en', lockApp, + lockAppWithOverlay, unlockApp, injectReducer, injectSaga, diff --git a/packages/strapi-admin/admin/src/containers/App/index.js b/packages/strapi-admin/admin/src/containers/App/index.js index b9f7fd6829..7524cfd197 100644 --- a/packages/strapi-admin/admin/src/containers/App/index.js +++ b/packages/strapi-admin/admin/src/containers/App/index.js @@ -14,11 +14,9 @@ import React, { useEffect, useRef, useState } 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, request } from 'strapi-helper-plugin'; - +import { LoadingIndicatorPage, auth, request } from 'strapi-helper-plugin'; import GlobalStyle from '../../components/GlobalStyle'; import Admin from '../Admin'; import AuthPage from '../AuthPage'; @@ -27,9 +25,7 @@ import NotFoundPage from '../NotFoundPage'; import NotificationProvider from '../NotificationProvider'; import PrivateRoute from '../PrivateRoute'; import Theme from '../Theme'; - import { Content, Wrapper } from './components'; - import { getDataSucceeded } from './actions'; function App(props) { @@ -39,6 +35,24 @@ function App(props) { useEffect(() => { const getData = async () => { + const currentToken = auth.getToken(); + + if (currentToken) { + try { + const { + data: { token }, + } = await request('/admin/renew-token', { + method: 'POST', + body: { token: currentToken }, + }); + auth.updateToken(token); + } catch (err) { + // Refresh app + auth.clearAppStorage(); + window.location.reload(); + } + } + try { const requestURL = '/users-permissions/init'; diff --git a/packages/strapi-admin/admin/src/containers/AuthPage/CustomLabel.js b/packages/strapi-admin/admin/src/containers/AuthPage/CustomLabel.js index c6d77192dd..8dcbdfe1b8 100644 --- a/packages/strapi-admin/admin/src/containers/AuthPage/CustomLabel.js +++ b/packages/strapi-admin/admin/src/containers/AuthPage/CustomLabel.js @@ -1,10 +1,9 @@ +// TODO DELETE THIS FILE WHEN AUTH FINISHED import React, { memo } from 'react'; import PropTypes from 'prop-types'; import { FormattedMessage } from 'react-intl'; -const CustomLabel = ({ id, values }) => ( -