Skip to content

Commit 86c9407

Browse files
committed
test
1 parent 6f51272 commit 86c9407

File tree

3 files changed

+14
-10
lines changed

3 files changed

+14
-10
lines changed

app/[projectName]/page.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@ import React from "react";
44
import ProjectDetailPage from "@/components/ProjectDetailPage";
55

66
interface ProjectPageProps {
7-
params: {
7+
params: Promise<{
88
projectName: string;
9-
};
9+
}>;
1010
}
1111

1212
export default function ProjectPage({ params }: ProjectPageProps) {
13-
// Unwrap params with React.use()
14-
const unwrappedParams = React.use(params);
13+
// Use React.use() for the Promise
14+
const resolvedParams = React.use(params);
1515

1616
// Decode URL parameter
17-
const decodedProjectName = decodeURIComponent(unwrappedParams.projectName);
17+
const decodedProjectName = decodeURIComponent(resolvedParams.projectName);
1818

1919
return <ProjectDetailPage projectName={decodedProjectName} />;
2020
}

app/context/AuthContext.tsx

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { useRouter } from "next/navigation";
1313
import { User } from "@supabase/supabase-js";
1414

1515
interface AuthUser {
16-
token: string;
16+
token?: string; // Make token optional since Supabase users don't always have tokens
1717
id: string;
1818
username: string;
1919
displayName: string;
@@ -143,7 +143,7 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
143143
// Non-critical error
144144
}
145145

146-
return {
146+
return {
147147
id: newUser.id,
148148
username: newUser.username,
149149
displayName: newUser.display_name,
@@ -153,12 +153,13 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
153153
badges: newUser.badges,
154154
avatarUrl: newUser.avatar_url,
155155
authProvider: 'github', // This is just for the front-end, not stored in DB
156+
token: undefined, // No token for Supabase users
156157
};
157158
}
158159

159160
// Return existing user data
160161
console.log("Found existing user:", userData.id);
161-
return {
162+
return {
162163
id: userData.id,
163164
username: userData.username,
164165
displayName: userData.display_name,
@@ -168,6 +169,7 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
168169
badges: userData.badges || [],
169170
avatarUrl: userData.avatar_url,
170171
authProvider: 'github', // Just set to 'github' for Supabase users
172+
token: undefined, // No token for Supabase users
171173
};
172174
} catch (error) {
173175
console.error("Error formatting user:", error);
@@ -206,7 +208,7 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
206208
const userData = await response.json();
207209

208210
// Create a formatted user object
209-
const formattedUser: AuthUser = {
211+
const formattedUser: AuthUser = {
210212
id: userData.id,
211213
username: userData.username,
212214
displayName: userData.display_name,
@@ -216,6 +218,7 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
216218
badges: userData.badges || [],
217219
avatarUrl: userData.avatar_url,
218220
authProvider: 'legacy',
221+
token: userData.token, // Include the token for legacy users
219222
};
220223

221224
setUser(formattedUser);

middleware.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ function getClientIP(request: NextRequest): string {
2424
if (forwarded) return forwarded.split(',')[0].trim();
2525
if (realIP) return realIP;
2626

27-
return request.ip || 'unknown';
27+
// Remove the request.ip fallback since it doesn't exist
28+
return 'unknown';
2829
}
2930

3031
function getRateLimitKey(request: NextRequest): string {

0 commit comments

Comments
 (0)