import React, { useEffect, useState } from 'react'; import { useSearchParams } from 'react-router-dom'; import { useLocalize } from '~/hooks'; export default function OAuthSuccess() { const localize = useLocalize(); const [searchParams] = useSearchParams(); const [secondsLeft, setSecondsLeft] = useState(3); const serverName = searchParams.get('serverName'); useEffect(() => { const countdown = setInterval(() => { setSecondsLeft((prev) => { if (prev <= 1) { clearInterval(countdown); window.close(); return 0; } return prev - 1; }); }, 1000); return () => clearInterval(countdown); }, []); return (

{localize('com_ui_oauth_success_title') || 'Authentication Successful'}

{localize('com_ui_oauth_success_description') || 'Your authentication was successful. This window will close in'}{' '} {secondsLeft}{' '} {localize('com_ui_seconds') || 'seconds'}.

{serverName && (

{localize('com_ui_oauth_connected_to') || 'Connected to'}:{' '} {serverName}

)}
); }