From 25ce18b91169b5cb813399f6d47f196cff3003df Mon Sep 17 00:00:00 2001 From: Katalina Okano Date: Mon, 21 Dec 2020 05:09:02 -0500 Subject: [PATCH] feat(UI): new-session machinery will redirect to known URL if given in sessionStorage Signed-off-by: Katalina Okano --- src/pages/machinery/new-session.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/pages/machinery/new-session.tsx b/src/pages/machinery/new-session.tsx index 95e4d89..3591f4a 100644 --- a/src/pages/machinery/new-session.tsx +++ b/src/pages/machinery/new-session.tsx @@ -1,5 +1,6 @@ import { NextPageContext } from 'next'; import getConfig from 'next/config'; +import { useRouter } from 'next/router'; import nookies from 'nookies'; import * as React from 'react'; import { Hero } from 'roleypoly/design-system/atoms/hero'; @@ -13,12 +14,15 @@ type Props = { const NewSession = (props: Props) => { const { sessionID, apiURI } = props; + const router = useRouter(); React.useEffect(() => { sessionStorage.setItem('session_key', sessionID); - localStorage.setItem('api_uri', apiURI); // TODO: set better + localStorage.setItem('api_uri', apiURI); - location.href = '/'; + const nextURL = sessionStorage.getItem('redirectAfterNewSession') || '/servers'; + sessionStorage.removeItem('redirectAfterNewSession'); + void router.replace(nextURL); }, [sessionID, apiURI]); return (