'use client'; 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'; import { useSidebar } from './ui/sidebar'; import { memo } from 'react'; import { Tooltip, TooltipContent, TooltipTrigger } from './ui/tooltip'; function PureChatHeader({ selectedModelId }: { selectedModelId: string }) { const router = useRouter(); const { open } = useSidebar(); const { width: windowWidth } = useWindowSize(); return (
{(!open || windowWidth < 768) && ( New Chat )}
); } export const ChatHeader = memo(PureChatHeader, (prevProps, nextProps) => { return prevProps.selectedModelId === nextProps.selectedModelId; });