Backend of public sharing at root (#6103)

This commit is contained in:
Tom Moor
2023-11-01 22:10:00 -04:00
committed by GitHub
parent 1d6ef2e1b3
commit 2838503273
11 changed files with 153 additions and 29 deletions

View File

@@ -4,6 +4,7 @@ import DesktopRedirect from "~/scenes/DesktopRedirect";
import DelayedMount from "~/components/DelayedMount";
import FullscreenLoading from "~/components/FullscreenLoading";
import Route from "~/components/ProfiledRoute";
import env from "~/env";
import useQueryNotices from "~/hooks/useQueryNotices";
import lazyWithRetry from "~/utils/lazyWithRetry";
import { matchDocumentSlug as slug } from "~/utils/routeHelpers";
@@ -25,30 +26,37 @@ export default function Routes() {
</DelayedMount>
}
>
<Switch>
<Route exact path="/" component={Login} />
<Route exact path="/create" component={Login} />
<Route exact path="/logout" component={Logout} />
<Route exact path="/desktop-redirect" component={DesktopRedirect} />
{env.ROOT_SHARE_ID ? (
<Switch>
<Route exact path="/" component={SharedDocument} />
<Route exact path={`/doc/${slug}`} component={SharedDocument} />
</Switch>
) : (
<Switch>
<Route exact path="/" component={Login} />
<Route exact path="/create" component={Login} />
<Route exact path="/logout" component={Logout} />
<Route exact path="/desktop-redirect" component={DesktopRedirect} />
<Redirect exact from="/share/:shareId" to="/s/:shareId" />
<Route exact path="/s/:shareId" component={SharedDocument} />
<Redirect exact from="/share/:shareId" to="/s/:shareId" />
<Route exact path="/s/:shareId" component={SharedDocument} />
<Redirect
exact
from={`/share/:shareId/doc/${slug}`}
to={`/s/:shareId/doc/${slug}`}
/>
<Route
exact
path={`/s/:shareId/doc/${slug}`}
component={SharedDocument}
/>
<Redirect
exact
from={`/share/:shareId/doc/${slug}`}
to={`/s/:shareId/doc/${slug}`}
/>
<Route
exact
path={`/s/:shareId/doc/${slug}`}
component={SharedDocument}
/>
<Authenticated>
<AuthenticatedRoutes />
</Authenticated>
</Switch>
<Authenticated>
<AuthenticatedRoutes />
</Authenticated>
</Switch>
)}
</React.Suspense>
);
}