From 76346fe835fc96951795b674a631cc1ffe82645b Mon Sep 17 00:00:00 2001 From: Stavros Date: Thu, 15 May 2025 16:05:21 +0300 Subject: [PATCH] fix: fix hook rendering --- frontend/src/pages/continue-page.tsx | 13 +++++++------ frontend/src/pages/login-page.tsx | 16 ++++++++-------- frontend/src/pages/logout-page.tsx | 5 +++-- frontend/src/pages/totp-page.tsx | 8 ++++---- frontend/src/pages/unauthorized-page.tsx | 4 ++-- 5 files changed, 24 insertions(+), 22 deletions(-) diff --git a/frontend/src/pages/continue-page.tsx b/frontend/src/pages/continue-page.tsx index ecc7ab2..8b932db 100644 --- a/frontend/src/pages/continue-page.tsx +++ b/frontend/src/pages/continue-page.tsx @@ -14,18 +14,18 @@ import { Navigate, useLocation, useNavigate } from "react-router"; import DOMPurify from "dompurify"; export const ContinuePage = () => { - const { search } = useLocation(); - const searchParams = new URLSearchParams(search); - const redirectURI = searchParams.get("redirect_uri"); - const { isLoggedIn } = useUserContext(); - const { domain, disableContinue } = useAppContext(); - const { t } = useTranslation(); if (!isLoggedIn) { return ; } + const { domain, disableContinue } = useAppContext(); + const { search } = useLocation(); + + const searchParams = new URLSearchParams(search); + const redirectURI = searchParams.get("redirect_uri"); + if (!redirectURI) { return ; } @@ -38,6 +38,7 @@ export const ContinuePage = () => { window.location.href = DOMPurify.sanitize(redirectURI); } + const { t } = useTranslation(); const navigate = useNavigate(); const url = new URL(redirectURI); diff --git a/frontend/src/pages/login-page.tsx b/frontend/src/pages/login-page.tsx index be38a97..3cf1a03 100644 --- a/frontend/src/pages/login-page.tsx +++ b/frontend/src/pages/login-page.tsx @@ -23,25 +23,25 @@ import { Navigate, useLocation } from "react-router"; import { toast } from "sonner"; export const LoginPage = () => { - const { search } = useLocation(); - const searchParams = new URLSearchParams(search); - const redirectUri = searchParams.get("redirect_uri"); - const { isLoggedIn } = useUserContext(); - const { configuredProviders, title, oauthAutoRedirect } = useAppContext(); - const { t } = useTranslation(); if (isLoggedIn) { return ; } + const { configuredProviders, title, oauthAutoRedirect } = useAppContext(); + const { search } = useLocation(); + const { t } = useTranslation(); + const isMounted = useIsMounted(); + + const searchParams = new URLSearchParams(search); + const redirectUri = searchParams.get("redirect_uri"); + const oauthConfigured = configuredProviders.filter((provider) => provider !== "username").length > 0; const userAuthConfigured = configuredProviders.includes("username"); - const isMounted = useIsMounted(); - const oauthMutation = useMutation({ mutationFn: (provider: string) => axios.get( diff --git a/frontend/src/pages/logout-page.tsx b/frontend/src/pages/logout-page.tsx index e0ac2e2..8c28500 100644 --- a/frontend/src/pages/logout-page.tsx +++ b/frontend/src/pages/logout-page.tsx @@ -17,13 +17,14 @@ import { toast } from "sonner"; export const LogoutPage = () => { const { provider, username, isLoggedIn, email } = useUserContext(); - const { genericName } = useAppContext(); - const { t } = useTranslation(); if (!isLoggedIn) { return ; } + const { genericName } = useAppContext(); + const { t } = useTranslation(); + const logoutMutation = useMutation({ mutationFn: () => axios.post("/api/logout"), mutationKey: ["logout"], diff --git a/frontend/src/pages/totp-page.tsx b/frontend/src/pages/totp-page.tsx index db427df..09a16ee 100644 --- a/frontend/src/pages/totp-page.tsx +++ b/frontend/src/pages/totp-page.tsx @@ -17,14 +17,14 @@ import { useLocation, useNavigate } from "react-router"; import { toast } from "sonner"; export const TotpPage = () => { + const { t } = useTranslation(); const { search } = useLocation(); + const navigate = useNavigate(); + const formId = useId(); + const searchParams = new URLSearchParams(search); const redirectUri = searchParams.get("redirect_uri"); - const { t } = useTranslation(); - const formId = useId(); - const navigate = useNavigate(); - const totpMutation = useMutation({ mutationFn: (values: TotpSchema) => axios.post("/api/totp", values), mutationKey: ["totp"], diff --git a/frontend/src/pages/unauthorized-page.tsx b/frontend/src/pages/unauthorized-page.tsx index 506c681..1dbbd66 100644 --- a/frontend/src/pages/unauthorized-page.tsx +++ b/frontend/src/pages/unauthorized-page.tsx @@ -11,17 +11,17 @@ import { Navigate, useLocation, useNavigate } from "react-router"; export const UnauthorizedPage = () => { const { search } = useLocation(); + const searchParams = new URLSearchParams(search); const username = searchParams.get("username"); const resource = searchParams.get("resource"); const groupErr = searchParams.get("groupErr"); - const { t } = useTranslation(); - if (!username) { return ; } + const { t } = useTranslation(); const navigate = useNavigate(); let i18nKey = "unauthorizedLoginSubtitle";