integrate ai gateway and improve ui components (#1145)
This commit is contained in:
parent
7315ced92f
commit
dff2191611
29 changed files with 235 additions and 217 deletions
|
|
@ -4,7 +4,6 @@ import Link from 'next/link';
|
|||
import { useRouter } from 'next/navigation';
|
||||
import { useWindowSize } from 'usehooks-ts';
|
||||
|
||||
import { ModelSelector } from '@/components/model-selector';
|
||||
import { SidebarToggle } from '@/components/sidebar-toggle';
|
||||
import { Button } from '@/components/ui/button';
|
||||
import { PlusIcon, VercelIcon } from './icons';
|
||||
|
|
@ -16,13 +15,11 @@ import type { Session } from 'next-auth';
|
|||
|
||||
function PureChatHeader({
|
||||
chatId,
|
||||
selectedModelId,
|
||||
selectedVisibilityType,
|
||||
isReadonly,
|
||||
session,
|
||||
}: {
|
||||
chatId: string;
|
||||
selectedModelId: string;
|
||||
selectedVisibilityType: VisibilityType;
|
||||
isReadonly: boolean;
|
||||
session: Session;
|
||||
|
|
@ -56,23 +53,15 @@ function PureChatHeader({
|
|||
)}
|
||||
|
||||
{!isReadonly && (
|
||||
<ModelSelector
|
||||
session={session}
|
||||
selectedModelId={selectedModelId}
|
||||
<VisibilitySelector
|
||||
chatId={chatId}
|
||||
selectedVisibilityType={selectedVisibilityType}
|
||||
className="order-1 md:order-2"
|
||||
/>
|
||||
)}
|
||||
|
||||
{!isReadonly && (
|
||||
<VisibilitySelector
|
||||
chatId={chatId}
|
||||
selectedVisibilityType={selectedVisibilityType}
|
||||
className="order-1 md:order-3"
|
||||
/>
|
||||
)}
|
||||
|
||||
<Button
|
||||
className="bg-zinc-900 dark:bg-zinc-100 hover:bg-zinc-800 dark:hover:bg-zinc-200 text-zinc-50 dark:text-zinc-900 hidden md:flex py-1.5 px-2 h-fit md:h-[34px] order-4 md:ml-auto"
|
||||
className="bg-zinc-900 dark:bg-zinc-100 hover:bg-zinc-800 dark:hover:bg-zinc-200 text-zinc-50 dark:text-zinc-900 hidden md:flex py-1.5 px-2 h-fit md:h-[34px] order-3 md:ml-auto"
|
||||
asChild
|
||||
>
|
||||
<Link
|
||||
|
|
@ -88,5 +77,9 @@ function PureChatHeader({
|
|||
}
|
||||
|
||||
export const ChatHeader = memo(PureChatHeader, (prevProps, nextProps) => {
|
||||
return prevProps.selectedModelId === nextProps.selectedModelId;
|
||||
return (
|
||||
prevProps.chatId === nextProps.chatId &&
|
||||
prevProps.selectedVisibilityType === nextProps.selectedVisibilityType &&
|
||||
prevProps.isReadonly === nextProps.isReadonly
|
||||
);
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue