rebrand ai-chatbot to openchat across app and api (#1418)

This commit is contained in:
dancer 2026-02-20 15:28:40 -08:00 committed by GitHub
parent 9d5d8a3ea7
commit f7b6b55a8b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
17 changed files with 90 additions and 90 deletions

View file

@ -30,7 +30,7 @@ import {
updateMessage,
} from "@/lib/db/queries";
import type { DBMessage } from "@/lib/db/schema";
import { ChatSDKError } from "@/lib/errors";
import { OpenChatError } from "@/lib/errors";
import type { ChatMessage } from "@/lib/types";
import { convertToUIMessages, generateUUID } from "@/lib/utils";
import { generateTitleFromUserMessage } from "../../actions";
@ -55,7 +55,7 @@ export async function POST(request: Request) {
const json = await request.json();
requestBody = postRequestBodySchema.parse(json);
} catch (_) {
return new ChatSDKError("bad_request:api").toResponse();
return new OpenChatError("bad_request:api").toResponse();
}
try {
@ -65,7 +65,7 @@ export async function POST(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:chat").toResponse();
return new OpenChatError("unauthorized:chat").toResponse();
}
const userType: UserType = session.user.type;
@ -76,7 +76,7 @@ export async function POST(request: Request) {
});
if (messageCount > entitlementsByUserType[userType].maxMessagesPerDay) {
return new ChatSDKError("rate_limit:chat").toResponse();
return new OpenChatError("rate_limit:chat").toResponse();
}
const isToolApprovalFlow = Boolean(messages);
@ -87,7 +87,7 @@ export async function POST(request: Request) {
if (chat) {
if (chat.userId !== session.user.id) {
return new ChatSDKError("forbidden:chat").toResponse();
return new OpenChatError("forbidden:chat").toResponse();
}
if (!isToolApprovalFlow) {
messagesFromDb = await getMessagesByChatId({ id });
@ -244,7 +244,7 @@ export async function POST(request: Request) {
} catch (error) {
const vercelId = request.headers.get("x-vercel-id");
if (error instanceof ChatSDKError) {
if (error instanceof OpenChatError) {
return error.toResponse();
}
@ -254,11 +254,11 @@ export async function POST(request: Request) {
"AI Gateway requires a valid credit card on file to service requests"
)
) {
return new ChatSDKError("bad_request:activate_gateway").toResponse();
return new OpenChatError("bad_request:activate_gateway").toResponse();
}
console.error("Unhandled error in chat API:", error, { vercelId });
return new ChatSDKError("offline:chat").toResponse();
return new OpenChatError("offline:chat").toResponse();
}
}
@ -267,19 +267,19 @@ export async function DELETE(request: Request) {
const id = searchParams.get("id");
if (!id) {
return new ChatSDKError("bad_request:api").toResponse();
return new OpenChatError("bad_request:api").toResponse();
}
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:chat").toResponse();
return new OpenChatError("unauthorized:chat").toResponse();
}
const chat = await getChatById({ id });
if (chat?.userId !== session.user.id) {
return new ChatSDKError("forbidden:chat").toResponse();
return new OpenChatError("forbidden:chat").toResponse();
}
const deletedChat = await deleteChatById({ id });

View file

@ -5,14 +5,14 @@ import {
getDocumentsById,
saveDocument,
} from "@/lib/db/queries";
import { ChatSDKError } from "@/lib/errors";
import { OpenChatError } from "@/lib/errors";
export async function GET(request: Request) {
const { searchParams } = new URL(request.url);
const id = searchParams.get("id");
if (!id) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameter id is missing"
).toResponse();
@ -21,7 +21,7 @@ export async function GET(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:document").toResponse();
return new OpenChatError("unauthorized:document").toResponse();
}
const documents = await getDocumentsById({ id });
@ -29,11 +29,11 @@ export async function GET(request: Request) {
const [document] = documents;
if (!document) {
return new ChatSDKError("not_found:document").toResponse();
return new OpenChatError("not_found:document").toResponse();
}
if (document.userId !== session.user.id) {
return new ChatSDKError("forbidden:document").toResponse();
return new OpenChatError("forbidden:document").toResponse();
}
return Response.json(documents, { status: 200 });
@ -44,7 +44,7 @@ export async function POST(request: Request) {
const id = searchParams.get("id");
if (!id) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameter id is required."
).toResponse();
@ -53,7 +53,7 @@ export async function POST(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("not_found:document").toResponse();
return new OpenChatError("not_found:document").toResponse();
}
const {
@ -69,7 +69,7 @@ export async function POST(request: Request) {
const [doc] = documents;
if (doc.userId !== session.user.id) {
return new ChatSDKError("forbidden:document").toResponse();
return new OpenChatError("forbidden:document").toResponse();
}
}
@ -90,14 +90,14 @@ export async function DELETE(request: Request) {
const timestamp = searchParams.get("timestamp");
if (!id) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameter id is required."
).toResponse();
}
if (!timestamp) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameter timestamp is required."
).toResponse();
@ -106,7 +106,7 @@ export async function DELETE(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:document").toResponse();
return new OpenChatError("unauthorized:document").toResponse();
}
const documents = await getDocumentsById({ id });
@ -114,7 +114,7 @@ export async function DELETE(request: Request) {
const [document] = documents;
if (document.userId !== session.user.id) {
return new ChatSDKError("forbidden:document").toResponse();
return new OpenChatError("forbidden:document").toResponse();
}
const documentsDeleted = await deleteDocumentsByIdAfterTimestamp({

View file

@ -1,7 +1,7 @@
import type { NextRequest } from "next/server";
import { auth } from "@/app/(auth)/auth";
import { deleteAllChatsByUserId, getChatsByUserId } from "@/lib/db/queries";
import { ChatSDKError } from "@/lib/errors";
import { OpenChatError } from "@/lib/errors";
export async function GET(request: NextRequest) {
const { searchParams } = request.nextUrl;
@ -11,7 +11,7 @@ export async function GET(request: NextRequest) {
const endingBefore = searchParams.get("ending_before");
if (startingAfter && endingBefore) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Only one of starting_after or ending_before can be provided."
).toResponse();
@ -20,7 +20,7 @@ export async function GET(request: NextRequest) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:chat").toResponse();
return new OpenChatError("unauthorized:chat").toResponse();
}
const chats = await getChatsByUserId({
@ -37,7 +37,7 @@ export async function DELETE() {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:chat").toResponse();
return new OpenChatError("unauthorized:chat").toResponse();
}
const result = await deleteAllChatsByUserId({ userId: session.user.id });

View file

@ -1,13 +1,13 @@
import { auth } from "@/app/(auth)/auth";
import { getSuggestionsByDocumentId } from "@/lib/db/queries";
import { ChatSDKError } from "@/lib/errors";
import { OpenChatError } from "@/lib/errors";
export async function GET(request: Request) {
const { searchParams } = new URL(request.url);
const documentId = searchParams.get("documentId");
if (!documentId) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameter documentId is required."
).toResponse();
@ -16,7 +16,7 @@ export async function GET(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:suggestions").toResponse();
return new OpenChatError("unauthorized:suggestions").toResponse();
}
const suggestions = await getSuggestionsByDocumentId({
@ -30,7 +30,7 @@ export async function GET(request: Request) {
}
if (suggestion.userId !== session.user.id) {
return new ChatSDKError("forbidden:api").toResponse();
return new OpenChatError("forbidden:api").toResponse();
}
return Response.json(suggestions, { status: 200 });

View file

@ -1,13 +1,13 @@
import { auth } from "@/app/(auth)/auth";
import { getChatById, getVotesByChatId, voteMessage } from "@/lib/db/queries";
import { ChatSDKError } from "@/lib/errors";
import { OpenChatError } from "@/lib/errors";
export async function GET(request: Request) {
const { searchParams } = new URL(request.url);
const chatId = searchParams.get("chatId");
if (!chatId) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameter chatId is required."
).toResponse();
@ -16,17 +16,17 @@ export async function GET(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:vote").toResponse();
return new OpenChatError("unauthorized:vote").toResponse();
}
const chat = await getChatById({ id: chatId });
if (!chat) {
return new ChatSDKError("not_found:chat").toResponse();
return new OpenChatError("not_found:chat").toResponse();
}
if (chat.userId !== session.user.id) {
return new ChatSDKError("forbidden:vote").toResponse();
return new OpenChatError("forbidden:vote").toResponse();
}
const votes = await getVotesByChatId({ id: chatId });
@ -43,7 +43,7 @@ export async function PATCH(request: Request) {
await request.json();
if (!chatId || !messageId || !type) {
return new ChatSDKError(
return new OpenChatError(
"bad_request:api",
"Parameters chatId, messageId, and type are required."
).toResponse();
@ -52,17 +52,17 @@ export async function PATCH(request: Request) {
const session = await auth();
if (!session?.user) {
return new ChatSDKError("unauthorized:vote").toResponse();
return new OpenChatError("unauthorized:vote").toResponse();
}
const chat = await getChatById({ id: chatId });
if (!chat) {
return new ChatSDKError("not_found:vote").toResponse();
return new OpenChatError("not_found:vote").toResponse();
}
if (chat.userId !== session.user.id) {
return new ChatSDKError("forbidden:vote").toResponse();
return new OpenChatError("forbidden:vote").toResponse();
}
await voteMessage({

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Before After
Before After