Skip to content

Commit eec2630

Browse files
committed
Move chat to vetsai url, update auth
1 parent 2aefb6a commit eec2630

File tree

5 files changed

+70
-105
lines changed

5 files changed

+70
-105
lines changed
File renamed without changes.

src/app/layout.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ export const metadata = {
55
description: "Generated by Next.js",
66
};
77

8-
export default function RootLayout({ children }: { children: React.ReactNode }) {
8+
const RootLayout = ({ children }: { children: React.ReactNode }) => {
99
return (
1010
<html lang="en">
1111
<body>{children}</body>
1212
</html>
1313
);
14-
}
14+
};
15+
16+
export default RootLayout;

src/app/vetsai/assistant.tsx

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
"use client";
2+
3+
import { AssistantRuntimeProvider } from "@assistant-ui/react";
4+
import { useChatRuntime } from "@assistant-ui/react-ai-sdk";
5+
import { Thread } from "@/components/vetsai/assistant-ui/thread";
6+
import { SidebarInset, SidebarProvider, SidebarTrigger } from "@/components/vetsai/ui/sidebar";
7+
import { AppSidebar } from "@/components/vetsai/app-sidebar";
8+
import { Separator } from "@/components/vetsai/ui/separator";
9+
import {
10+
Breadcrumb,
11+
BreadcrumbItem,
12+
BreadcrumbLink,
13+
BreadcrumbList,
14+
BreadcrumbPage,
15+
BreadcrumbSeparator,
16+
} from "@/components/vetsai/ui/breadcrumb";
17+
import "@assets/css/vetsai.css";
18+
19+
const Assistant = () => {
20+
const runtime = useChatRuntime({
21+
api: "/api/chat",
22+
});
23+
24+
return (
25+
<AssistantRuntimeProvider runtime={runtime}>
26+
<SidebarProvider>
27+
<AppSidebar />
28+
<SidebarInset>
29+
<header className="tw-flex tw-h-16 tw-shrink-0 tw-items-center tw-gap-2 tw-border-b tw-px-4">
30+
<SidebarTrigger />
31+
<Separator orientation="vertical" className="tw-mr-2 tw-h-4" />
32+
<Breadcrumb>
33+
<BreadcrumbList>
34+
<BreadcrumbItem className="tw-hidden md:tw-block">
35+
<BreadcrumbLink href="#">
36+
Build Your Own ChatGPT UX
37+
</BreadcrumbLink>
38+
</BreadcrumbItem>
39+
<BreadcrumbSeparator className="tw-hidden md:tw-block" />
40+
<BreadcrumbItem>
41+
<BreadcrumbPage>Starter Template</BreadcrumbPage>
42+
</BreadcrumbItem>
43+
</BreadcrumbList>
44+
</Breadcrumb>
45+
</header>
46+
<Thread />
47+
</SidebarInset>
48+
</SidebarProvider>
49+
</AssistantRuntimeProvider>
50+
);
51+
};
52+
53+
export default Assistant;

src/app/vetsai/page.tsx

Lines changed: 13 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,16 @@
1-
"use client";
1+
import { redirect } from "next/navigation";
2+
import { getServerSession } from "next-auth";
3+
import { options } from "@/pages/api/auth/options";
4+
import Assistant from "./assistant";
25

3-
import { AssistantRuntimeProvider } from "@assistant-ui/react";
4-
import { useChatRuntime } from "@assistant-ui/react-ai-sdk";
5-
import { Thread } from "@/components/vetsai/assistant-ui/thread";
6-
import { SidebarInset, SidebarProvider, SidebarTrigger } from "@/components/vetsai/ui/sidebar";
7-
import { AppSidebar } from "@/components/vetsai/app-sidebar";
8-
import { Separator } from "@/components/vetsai/ui/separator";
9-
import {
10-
Breadcrumb,
11-
BreadcrumbItem,
12-
BreadcrumbLink,
13-
BreadcrumbList,
14-
BreadcrumbPage,
15-
BreadcrumbSeparator,
16-
} from "@/components/vetsai/ui/breadcrumb";
17-
import "@assets/css/vetsai.css";
6+
const VetsAI = async () => {
7+
const session = await getServerSession(options);
188

19-
export default function Assistant() {
20-
const runtime = useChatRuntime({
21-
api: "/api/chat",
22-
});
9+
if (!session) {
10+
redirect("/login");
11+
}
2312

24-
return (
25-
<AssistantRuntimeProvider runtime={runtime}>
26-
<SidebarProvider>
27-
<AppSidebar />
28-
<SidebarInset>
29-
<header className="tw-flex tw-h-16 tw-shrink-0 tw-items-center tw-gap-2 tw-border-b tw-px-4">
30-
<SidebarTrigger />
31-
<Separator orientation="vertical" className="tw-mr-2 tw-h-4" />
32-
<Breadcrumb>
33-
<BreadcrumbList>
34-
<BreadcrumbItem className="tw-hidden md:tw-block">
35-
<BreadcrumbLink href="#">
36-
Build Your Own ChatGPT UX
37-
</BreadcrumbLink>
38-
</BreadcrumbItem>
39-
<BreadcrumbSeparator className="tw-hidden md:tw-block" />
40-
<BreadcrumbItem>
41-
<BreadcrumbPage>Starter Template</BreadcrumbPage>
42-
</BreadcrumbItem>
43-
</BreadcrumbList>
44-
</Breadcrumb>
45-
</header>
46-
<Thread />
47-
</SidebarInset>
48-
</SidebarProvider>
49-
</AssistantRuntimeProvider>
50-
);
51-
}
13+
return <Assistant />;
14+
};
15+
16+
export default VetsAI;

src/pages/chat.tsx

Lines changed: 0 additions & 55 deletions
This file was deleted.

0 commit comments

Comments
 (0)