Web: change Redirect to Navigate

This commit is contained in:
Timofey Boyko 2023-04-06 17:02:10 +03:00
parent 6ab66f3849
commit e8f6026dfb
6 changed files with 28 additions and 23 deletions

View File

@ -1,5 +1,5 @@
import React, { useEffect } from "react";
import { Router, Routes, Route, Redirect } from "react-router-dom";
import { Router, Routes, Route, Navigate } from "react-router-dom";
import { inject, observer } from "mobx-react";
import NavMenu from "./components/NavMenu";
import Main from "./components/Main";
@ -432,7 +432,7 @@ const Shell = ({ items = [], page = "home", ...rest }) => {
exact
sensitive
path="/Products/Files/"
render={() => <Redirect to="/rooms/shared" />}
render={() => <Navigate to="/rooms/shared" replace />}
/>
<Route

View File

@ -1,6 +1,6 @@
import React, { useEffect } from "react";
import { inject, observer } from "mobx-react";
import { Redirect, Routes, Route } from "react-router-dom";
import { Navigate, Routes, Route } from "react-router-dom";
import ErrorBoundary from "@docspace/common/components/ErrorBoundary";
import toastr from "@docspace/components/toast/toastr";
import PrivateRoute from "@docspace/common/components/PrivateRoute";
@ -26,7 +26,7 @@ const Error404Route = (props) => (
const HomeRedirectToFilter = () => {
const filter = Filter.getDefault();
const urlFilter = filter.toUrlParams();
return <Redirect to={`/accounts/filter?${urlFilter}`} />;
return <Navigate replace to={`/accounts/filter?${urlFilter}`} />;
};
const PeopleSection = React.memo(() => {

View File

@ -1,7 +1,7 @@
import React from "react";
//import { Provider as FilesProvider } from "mobx-react";
import { inject, observer } from "mobx-react";
import { Routes, withRouter, Redirect, Route } from "react-router-dom";
import { Routes, withRouter, Navigate, Route } from "react-router-dom";
//import config from "PACKAGE_FILE";
import PrivateRoute from "@docspace/common/components/PrivateRoute";
import AppLoader from "@docspace/common/components/AppLoader";
@ -89,7 +89,7 @@ const FilesSection = React.memo(({ withMainButton }) => {
path={"/settings"}
render={(location) => (
<PrivateRoute location={location}>
<Redirect to="/settings/common" />
<Navigate to="/settings/common" replace />
</PrivateRoute>
)}
/>
@ -99,7 +99,7 @@ const FilesSection = React.memo(({ withMainButton }) => {
path={["/", "/rooms"]}
render={(location) => (
<PrivateRoute location={location}>
<Redirect to="/rooms/shared" />
<Navigate to="/rooms/shared" replace />
</PrivateRoute>
)}
/>

View File

@ -1,5 +1,5 @@
import React, { lazy, Suspense, useEffect } from "react";
import { Route, Routes, Redirect } from "react-router-dom";
import { Route, Routes, Navigate } from "react-router-dom";
import Layout from "./Layout";
import { combineUrl } from "@docspace/common/utils";
import Panels from "../../components/FilesPanels";
@ -225,7 +225,7 @@ const Settings = () => {
<Route exact path={BACKUP_URLS} component={Backup} />
<Route exact path={DELETE_DATA_URLS} component={DeleteDataPage} />
<Route path={RESTORE_DATA_URL} component={RestoreBackup} />
<Redirect to={{ pathname: ERROR_404_URL }} />
<Navigate to={{ pathname: ERROR_404_URL }} replace />
</Routes>
</Suspense>
</Layout>

View File

@ -1,6 +1,6 @@
/* eslint-disable react/prop-types */
import React from "react";
import { Redirect, Route } from "react-router-dom";
import { Navigate, Route } from "react-router-dom";
import { inject, observer } from "mobx-react";
import AppLoader from "../AppLoader";
@ -50,7 +50,7 @@ const PrivateRoute = ({ children, ...rest }) => {
sessionStorage.setItem("referenceUrl", window.location.href);
}
return <Redirect to={redirectPath} />;
return <Navigate replace to={redirectPath} />;
}
if (
@ -58,7 +58,7 @@ const PrivateRoute = ({ children, ...rest }) => {
((!isNotPaidPeriod && isPortalUnavailableUrl) ||
(!user.isOwner && isPortalDeletionUrl))
) {
return <Redirect to={"/"} />;
return <Navigate replace to={"/"} />;
}
if (
@ -68,7 +68,8 @@ const PrivateRoute = ({ children, ...rest }) => {
!isPortalUrl
) {
return (
<Redirect
<Navigate
replace
to={combineUrl(
window.DocSpaceConfig?.proxy?.url,
"/preparation-portal"
@ -86,7 +87,8 @@ const PrivateRoute = ({ children, ...rest }) => {
!isPortalDeletionUrl
) {
return (
<Redirect
<Navigate
replace
to={combineUrl(
window.DocSpaceConfig?.proxy?.url,
"/portal-settings/payments/portal-payments"
@ -103,7 +105,8 @@ const PrivateRoute = ({ children, ...rest }) => {
!isPortalUnavailableUrl
) {
return (
<Redirect
<Navigate
replace
to={combineUrl(
window.DocSpaceConfig?.proxy?.url,
"/portal-unavailable"
@ -126,10 +129,10 @@ const PrivateRoute = ({ children, ...rest }) => {
}
if (restricted) {
return <Redirect to={"/error401"} />;
return <Navigate replace to={"/error401"} />;
}
return <Redirect to={"/error404"} />;
return <Navigate replace to={"/error404"} />;
};
const component = renderComponent();

View File

@ -1,6 +1,6 @@
/* eslint-disable react/prop-types */
import React from "react";
import { Redirect, Route } from "react-router-dom";
import { Navigate, Route } from "react-router-dom";
import AppLoader from "../AppLoader";
import { inject, observer } from "mobx-react";
import { TenantStatus } from "../../constants";
@ -17,12 +17,13 @@ export const PublicRoute = ({ children, ...rest }) => {
// }
if (isAuthenticated && !isPortalRestoring) {
return <Redirect to={"/"} />;
return <Navigate replace to={"/"} />;
}
if (isAuthenticated && isPortalRestoring && !isPreparationPortalUrl) {
return (
<Redirect
<Navigate
replace
to={combineUrl(
window.DocSpaceConfig?.proxy?.url,
"/preparation-portal"
@ -32,7 +33,7 @@ export const PublicRoute = ({ children, ...rest }) => {
}
if (!wizardCompleted && props.location.pathname !== "/wizard") {
return <Redirect to={"/wizard"} />;
return <Navigate replace to={"/wizard"} />;
}
if (
@ -42,7 +43,8 @@ export const PublicRoute = ({ children, ...rest }) => {
!isPreparationPortalUrl
) {
return (
<Redirect
<Navigate
replace
to={combineUrl(
window.DocSpaceConfig?.proxy?.url,
"/preparation-portal"
@ -52,7 +54,7 @@ export const PublicRoute = ({ children, ...rest }) => {
}
if (wizardCompleted && !isAuthenticated && !isPortalRestoring)
return <Redirect to={"/login"} />;
return <Navigate replace to={"/login"} />;
return children;
};