diff --git a/apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx b/apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx index f971bf280..ac1b03dd3 100644 --- a/apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +++ b/apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx @@ -6,10 +6,10 @@ import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; import { flushSync } from 'react-dom'; import { useForm } from 'react-hook-form'; -import { useRevalidator } from 'react-router'; import { z } from 'zod'; import { authClient } from '@documenso/auth/client'; +import { useSession } from '@documenso/lib/client-only/providers/session'; import { Button } from '@documenso/ui/primitives/button'; import { Dialog, @@ -42,7 +42,7 @@ export type TDisable2FAForm = z.infer; export const DisableAuthenticatorAppDialog = () => { const { _ } = useLingui(); const { toast } = useToast(); - const { revalidate } = useRevalidator(); + const { refreshSession } = useSession(); const [isOpen, setIsOpen] = useState(false); const [twoFactorDisableMethod, setTwoFactorDisableMethod] = useState<'totp' | 'backup'>('totp'); @@ -92,7 +92,7 @@ export const DisableAuthenticatorAppDialog = () => { onCloseTwoFactorDisableDialog(); }); - await revalidate(); + await refreshSession(); } catch (_err) { toast({ title: _(msg`Unable to disable two-factor authentication`), diff --git a/apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx b/apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx index 7b72ecefc..d0a23aa32 100644 --- a/apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +++ b/apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx @@ -5,12 +5,12 @@ import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; import { useForm } from 'react-hook-form'; -import { useRevalidator } from 'react-router'; import { renderSVG } from 'uqr'; import { z } from 'zod'; import { authClient } from '@documenso/auth/client'; import { downloadFile } from '@documenso/lib/client-only/download-file'; +import { useSession } from '@documenso/lib/client-only/providers/session'; import { Button } from '@documenso/ui/primitives/button'; import { Dialog, @@ -48,7 +48,7 @@ export type EnableAuthenticatorAppDialogProps = { export const EnableAuthenticatorAppDialog = ({ onSuccess }: EnableAuthenticatorAppDialogProps) => { const { _ } = useLingui(); const { toast } = useToast(); - const { revalidate } = useRevalidator(); + const { refreshSession } = useSession(); const [isOpen, setIsOpen] = useState(false); const [recoveryCodes, setRecoveryCodes] = useState(null); @@ -74,6 +74,7 @@ export const EnableAuthenticatorAppDialog = ({ onSuccess }: EnableAuthenticatorA try { const data = await authClient.twoFactor.setup(); + await refreshSession(); setSetup2FAData(data); } catch (err) { @@ -92,6 +93,7 @@ export const EnableAuthenticatorAppDialog = ({ onSuccess }: EnableAuthenticatorA const onEnable2FAFormSubmit = async ({ token }: TEnable2FAForm) => { try { const data = await authClient.twoFactor.enable({ code: token }); + await refreshSession(); setRecoveryCodes(data.recoveryCodes); onSuccess?.(); @@ -139,7 +141,6 @@ export const EnableAuthenticatorAppDialog = ({ onSuccess }: EnableAuthenticatorA if (!isOpen && recoveryCodes && recoveryCodes.length > 0) { setRecoveryCodes(null); - void revalidate(); } // eslint-disable-next-line react-hooks/exhaustive-deps diff --git a/apps/remix/app/routes/_redirects+/ingest.$.tsx b/apps/remix/app/routes/_redirects+/ingest.$.tsx index ba6dd2971..6b84d4402 100644 --- a/apps/remix/app/routes/_redirects+/ingest.$.tsx +++ b/apps/remix/app/routes/_redirects+/ingest.$.tsx @@ -27,6 +27,7 @@ const posthogProxy = async (request: Request) => { if (!['GET', 'HEAD'].includes(request.method)) { fetchOptions.body = request.body; + // @ts-expect-error - It should exist fetchOptions.duplex = 'half'; }