()
| 26 | const searchParams = useSearchParams() ?? new URLSearchParams() |
| 27 | |
| 28 | const handleSignIn = () => { |
| 29 | startTransition(async () => { |
| 30 | const searchParamsString = searchParams.toString() |
| 31 | let callbackUrl = |
| 32 | pathname + (searchParamsString ? `?${searchParamsString}` : '') |
| 33 | |
| 34 | const referrer = searchParams.get('referrer') |
| 35 | if (referrer) { |
| 36 | localStorage.setItem('freebuff_referrer', referrer) |
| 37 | } |
| 38 | |
| 39 | if (pathname === '/login') { |
| 40 | const authCode = searchParams.get('auth_code') |
| 41 | |
| 42 | if (authCode && isCliAuthCodeCandidate(authCode)) { |
| 43 | callbackUrl = getCliAuthOnboardPath(searchParams, authCode) |
| 44 | } else { |
| 45 | callbackUrl = '/' |
| 46 | } |
| 47 | } |
| 48 | |
| 49 | await signIn(providerName, { callbackUrl }) |
| 50 | }) |
| 51 | } |
| 52 | |
| 53 | const displayName = |
| 54 | providerName === 'github' |
nothing calls this directly
no test coverage detected