diff --git a/src/renderer/features/servers/components/add-server-form.tsx b/src/renderer/features/servers/components/add-server-form.tsx index 127d8deae..64ea4187f 100644 --- a/src/renderer/features/servers/components/add-server-form.tsx +++ b/src/renderer/features/servers/components/add-server-form.tsx @@ -238,6 +238,7 @@ export const AddServerForm = ({ onCancel }: AddServerFormProps) => { context: 'name', postProcess: 'titleCase', })} + required {...form.getInputProps('name')} /> { context: 'url', postProcess: 'titleCase', })} + required {...form.getInputProps('url')} /> @@ -254,6 +256,7 @@ export const AddServerForm = ({ onCancel }: AddServerFormProps) => { context: 'username', postProcess: 'titleCase', })} + required {...form.getInputProps('username')} /> { })} /> )} - + {onCancel && ( {t('common.cancel')} )} diff --git a/src/renderer/hooks/use-server-authenticated.ts b/src/renderer/hooks/use-server-authenticated.ts index 831cf1482..498390b2a 100644 --- a/src/renderer/hooks/use-server-authenticated.ts +++ b/src/renderer/hooks/use-server-authenticated.ts @@ -58,6 +58,11 @@ export const useServerAuthenticated = () => { }, 300); useEffect(() => { + if (!server) { + setReady(AuthState.INVALID); + return; + } + if (priorServerId.current !== server?.id) { const serverWithAuth = getServerById(server!.id); priorServerId.current = server?.id || ''; diff --git a/src/renderer/router/app-outlet.tsx b/src/renderer/router/app-outlet.tsx index 33a8f4d10..bd12b4463 100644 --- a/src/renderer/router/app-outlet.tsx +++ b/src/renderer/router/app-outlet.tsx @@ -1,6 +1,5 @@ import { NuqsAdapter } from '@offlegacy/nuqs-hash-router'; -import isElectron from 'is-electron'; -import { useEffect, useMemo } from 'react'; +import { useMemo } from 'react'; import { Navigate, Outlet } from 'react-router'; import { useServerAuthenticated } from '/@/renderer/hooks/use-server-authenticated'; @@ -8,16 +7,10 @@ import { AppRoute } from '/@/renderer/router/routes'; import { useCurrentServer } from '/@/renderer/store'; import { Center } from '/@/shared/components/center/center'; import { Spinner } from '/@/shared/components/spinner/spinner'; -import { toast } from '/@/shared/components/toast/toast'; import { AuthState } from '/@/shared/types/types'; -const ipc = isElectron() ? window.api.ipc : null; -const utils = isElectron() ? window.api.utils : null; -const mpvPlayerListener = isElectron() ? window.api.mpvPlayerListener : null; - export const AppOutlet = () => { const currentServer = useCurrentServer(); - // const setFallback = useSetPlayerFallback(); const authState = useServerAuthenticated(); const isActionsRequired = useMemo(() => { @@ -29,21 +22,6 @@ export const AppOutlet = () => { return isActionRequired; }, [currentServer]); - // useEffect(() => { - // utils?.mainMessageListener((_event, data) => { - // toast.show(data); - // }); - - // mpvPlayerListener?.rendererPlayerFallback((_event, data) => { - // setFallback(data); - // }); - - // return () => { - // ipc?.removeAllListeners('toast-from-main'); - // ipc?.removeAllListeners('renderer-player-fallback'); - // }; - // }, [setFallback]); - if (authState === AuthState.LOADING) { return (
diff --git a/src/renderer/store/auth.store.ts b/src/renderer/store/auth.store.ts index 246f772c9..35d1e67cd 100644 --- a/src/renderer/store/auth.store.ts +++ b/src/renderer/store/auth.store.ts @@ -116,6 +116,10 @@ export const useCurrentServerId = () => useAuthStore((state) => state.currentSer export const useCurrentServer = () => useAuthStore((state) => { + if (!state.currentServer) { + return null; + } + return { features: state.currentServer?.features, id: state.currentServer?.id,