MCPcopy Index your code
hub / github.com/CodebuffAI/codebuff / LoginPage

Function LoginPage

freebuff/web/src/app/login/page.tsx:24–133  ·  view source on GitHub ↗
({
  searchParams,
}: {
  searchParams?: Promise<{ [key: string]: string | string[] | undefined }>
})

Source from the content-addressed store, hash-verified

22import { logger } from '@/util/logger'
23
24export default async function LoginPage({
25 searchParams,
26}: {
27 searchParams?: Promise<{ [key: string]: string | string[] | undefined }>
28}) {
29 const resolvedSearchParams = searchParams ? await searchParams : {}
30 const rawAuthCode = resolvedSearchParams?.auth_code
31 const authCode = Array.isArray(rawAuthCode) ? rawAuthCode[0] : rawAuthCode
32 const validAuthCode =
33 authCode && isCliAuthCodeCandidate(authCode) ? authCode : undefined
34 const searchParamKeys = Object.keys(resolvedSearchParams).sort()
35
36 if (authCode) {
37 if (!validAuthCode) {
38 const headerStore = await headers()
39 logger.warn(
40 {
41 authCodeLength: authCode.length,
42 authCodeTrimmedLength: authCode.trim().length,
43 authCodeHashPrefix: getCliAuthCodeHashPrefix(authCode),
44 authCodeParamCount: Array.isArray(rawAuthCode)
45 ? rawAuthCode.length
46 : 1,
47 searchParamKeys,
48 searchParamCount: searchParamKeys.length,
49 hasCallbackUrlParam: searchParamKeys.includes('callbackUrl'),
50 hasCodeParam: searchParamKeys.includes('code'),
51 hasRedirectParam: searchParamKeys.includes('redirect'),
52 dotCount: authCode.match(/\./g)?.length ?? 0,
53 hyphenCount: authCode.match(/-/g)?.length ?? 0,
54 requestHost: headerStore.get('host') ?? '',
55 forwardedHost: headerStore.get('x-forwarded-host') ?? '',
56 forwardedProto: headerStore.get('x-forwarded-proto') ?? '',
57 originHeader: headerStore.get('origin') ?? '',
58 referer: headerStore.get('referer') ?? '',
59 userAgent: headerStore.get('user-agent') ?? '',
60 referrerParam:
61 typeof resolvedSearchParams.referrer === 'string'
62 ? resolvedSearchParams.referrer
63 : '',
64 utmSource:
65 typeof resolvedSearchParams.utm_source === 'string'
66 ? resolvedSearchParams.utm_source
67 : '',
68 utmMedium:
69 typeof resolvedSearchParams.utm_medium === 'string'
70 ? resolvedSearchParams.utm_medium
71 : '',
72 utmCampaign:
73 typeof resolvedSearchParams.utm_campaign === 'string'
74 ? resolvedSearchParams.utm_campaign
75 : '',
76 utmContent:
77 typeof resolvedSearchParams.utm_content === 'string'
78 ? resolvedSearchParams.utm_content
79 : '',
80 },
81 'Freebuff login received non-CLI-shaped auth_code',

Callers

nothing calls this directly

Calls 5

getCliAuthCodeHashPrefixFunction · 0.90
parseAuthCodeFunction · 0.90
isAuthCodeExpiredFunction · 0.90
isCliAuthCodeCandidateFunction · 0.85
getMethod · 0.65

Tested by

no test coverage detected