diff --git a/packages/desktop/src/components/ProtectedRoute/index.tsx b/packages/desktop/src/components/ProtectedRoute/index.tsx index 3aca4fd..2a26b00 100644 --- a/packages/desktop/src/components/ProtectedRoute/index.tsx +++ b/packages/desktop/src/components/ProtectedRoute/index.tsx @@ -19,11 +19,12 @@ export default function ProtectedRoute({ isError: serverFailure, isLoading: serverLoading, isSuccess: isServerHealthy, - error, + error: serverStatusError, } = useServerCheck(); - const { isLoading, isError, isFetching, isSuccess, refetch } = - useAuthCheck(isServerHealthy); + const { isLoading, isError, isFetching, isSuccess, refetch } = useAuthCheck( + !serverLoading + ); useEffect(() => { // on load of this, if we already have jwt tokens in store, diff --git a/packages/desktop/src/controller/lineDataProvider.tsx b/packages/desktop/src/controller/lineDataProvider.tsx index 4f26110..b8de2bd 100644 --- a/packages/desktop/src/controller/lineDataProvider.tsx +++ b/packages/desktop/src/controller/lineDataProvider.tsx @@ -5,6 +5,7 @@ import MasterLineData from "@nirvana/core/models/masterLineData.model"; import SocketChannels from "@nirvana/core/sockets/channels"; import { User } from "@nirvana/core/models"; import { io } from "socket.io-client"; +import { queryClient } from "../pages/nirvanaApp"; import toast from "react-hot-toast"; import { useEffect } from "react"; import { useRecoilValue } from "recoil"; @@ -33,10 +34,15 @@ export function LineDataProvider({ children }) { query: { token: jwtToken }, }); - // client-side + // client-side errors $ws.on("connect_error", (err) => { console.error(err.message); // prints the message associated with the error toast.error("sorry...this is our bad...please refresh with cmd + r"); + + // force refetch of server status as well as these generally go hand in hand + + // this should overall remount this component currently which is what we want for new data + queryClient.invalidateQueries("SERVER_CHECK"); }); }, []);