Skip to content

Commit 42adf55

Browse files
authored
Merge pull request #5 from kashvigarg/frontend-test
Toast Component + Timeline GET
2 parents c3682b6 + 5399e9f commit 42adf55

File tree

20 files changed

+337
-289
lines changed

20 files changed

+337
-289
lines changed

api/handler/timeline.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ func (cfg *Handler) Timeline(w http.ResponseWriter, r *http.Request) {
101101
Comments: int(k.Comments),
102102
},
103103
})
104+
104105
}
105106
respondWithJson(w, http.StatusOK, timeline)
106107

web2/app/api/[...path]/route.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,13 +93,14 @@ export async function GET(request: NextRequest, { params }: { params: { path: st
9393
},
9494
});
9595

96-
const text = await response.text(); // Read response as text
97-
98-
if (!text.trim()) {
99-
return NextResponse.json({ error: "Empty response from API" }, { status: 502 });
96+
const responseText = await response.text(); // Read response as text
97+
// console.log("problematic text")
98+
// console.log(responseText)
99+
if (responseText.trim() !== "") {
100+
// return NextResponse.json({ error: "Empty response from API" }, { status: 502 });
101+
return NextResponse.json(JSON.parse(responseText), { status: response.status });
100102
}
101103

102-
return NextResponse.json(JSON.parse(text), { status: response.status });
103104
} catch (error) {
104105
console.error("API error:", error);
105106
return NextResponse.json({ error: "Failed to fetch data" }, { status: 500 });

web2/app/api/sse/[...path]/route.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,13 @@ export async function GET(request: NextRequest) {
2121
);
2222

2323
// Proxy the backend SSE stream directly to the client
24-
return new Response(backendResponse.body, {
24+
console.log(backendResponse.body)
25+
let passedValue = await new Response(backendResponse.body).text();
26+
if (passedValue){
27+
let valueToJson = JSON.parse(passedValue);
28+
console.log("jsonval:", valueToJson)
29+
}
30+
return new Response("", {
2531
status: 200,
2632
headers: {
2733
"Content-Type": "text/event-stream",
@@ -32,7 +38,7 @@ export async function GET(request: NextRequest) {
3238
},
3339
});
3440
} catch (error) {
35-
console.error("SSE proxy error:", error);
41+
console.log("SSE proxy error:", error);
3642
return new Response("Failed to connect to SSE", { status: 502 });
3743
}
3844
}

web2/app/layout.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,22 @@ export default function RootLayout({
2929
children: React.ReactNode
3030
}>) {
3131
return (
32-
<html lang="en" suppressHydrationWarning>
33-
<body className={`${inter.variable} ${merriweather.variable} font-sans`}>
32+
<html lang="en">
33+
<body suppressHydrationWarning className={`${inter.variable} ${merriweather.variable} font-sans`}>
34+
<ToastProvider>
3435
<ThemeProvider attribute="class" defaultTheme="light" enableSystem disableTransitionOnChange>
3536
<AuthProvider>
3637
{children}
3738
<Toaster />
3839
</AuthProvider>
3940
</ThemeProvider>
41+
</ToastProvider>
4042
</body>
4143
</html>
4244
)
4345
}
4446

4547

4648

47-
import './globals.css'
49+
import './globals.css'
50+
import { ToastProvider } from "@radix-ui/react-toast"

web2/app/login/page.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { Button } from "@/components/ui/button"
1010
import { Input } from "@/components/ui/input"
1111
import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "@/components/ui/card"
1212
import { Label } from "@/components/ui/label"
13-
import { useToast } from "@/components/ui/use-toast"
13+
import { useToast } from "@/hooks/use-toast"
1414
import { Loader2, BookOpen } from "lucide-react"
1515

1616
export default function LoginPage() {
@@ -30,6 +30,7 @@ export default function LoginPage() {
3030
router.push("/")
3131
} catch (error) {
3232
toast({
33+
open: true,
3334
title: "Login failed",
3435
description: "Please check your credentials and try again.",
3536
variant: "destructive",

web2/app/signup/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { Button } from "@/components/ui/button"
1010
import { Input } from "@/components/ui/input"
1111
import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "@/components/ui/card"
1212
import { Label } from "@/components/ui/label"
13-
import { useToast } from "@/components/ui/use-toast"
13+
import { useToast } from "@/hooks/use-toast"
1414
import { Loader2, BookOpen } from "lucide-react"
1515

1616
export default function SignupPage() {

web2/components/comment-form.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { useState } from "react"
66
import { useAuth } from "@/lib/auth-hooks"
77
import { Button } from "@/components/ui/button"
88
import { Textarea } from "@/components/ui/textarea"
9-
import { useToast } from "@/components/ui/use-toast"
9+
import { useToast } from "@/hooks/use-toast"
1010
import { Loader2 } from "lucide-react"
1111

1212
export function CommentForm({ proseId }: { proseId: string }) {

web2/components/comments-list.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { Button } from "@/components/ui/button"
88
import { Card, CardContent, CardFooter, CardHeader } from "@/components/ui/card"
99
import { Skeleton } from "@/components/ui/skeleton"
1010
import { Heart } from "lucide-react"
11-
import { useToast } from "@/components/ui/use-toast"
11+
import { useToast } from "@/hooks/use-toast"
1212
import { useSSE } from "@/lib/use-sse"
1313
import Link from "next/link"
1414

web2/components/compose-prose-dialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import {
1515
DialogTitle,
1616
} from "@/components/ui/dialog"
1717
import { Textarea } from "@/components/ui/textarea"
18-
import { useToast } from "@/components/ui/use-toast"
18+
import { useToast } from "@/hooks/use-toast"
1919
import { Loader2 } from "lucide-react"
2020

2121
type ComposeProseDialogProps = {

web2/components/notifications-list.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { useAuth } from "@/lib/auth-hooks"
77
import { Button } from "@/components/ui/button"
88
import { Card, CardHeader } from "@/components/ui/card"
99
import { Skeleton } from "@/components/ui/skeleton"
10-
import { useToast } from "@/components/ui/use-toast"
10+
import { useToast } from "@/hooks/use-toast"
1111
import { useSSE } from "@/lib/use-sse"
1212
import { Heart, MessageCircle, UserPlus, RefreshCw } from "lucide-react"
1313

0 commit comments

Comments
 (0)