diff --git a/components/message.tsx b/components/message.tsx index d43b31b..d9d7f17 100644 --- a/components/message.tsx +++ b/components/message.tsx @@ -2,29 +2,21 @@ import type { ChatRequestOptions, Message } from 'ai'; import cx from 'classnames'; +import equal from 'fast-deep-equal'; import { AnimatePresence, motion } from 'framer-motion'; -import { memo, useMemo, useState } from 'react'; +import { memo, useState } from 'react'; import type { Vote } from '@/lib/db/schema'; +import { cn } from '@/lib/utils'; import { DocumentToolCall, DocumentToolResult } from './document'; -import { - ChevronDownIcon, - LoaderIcon, - PencilEditIcon, - SparklesIcon, -} from './icons'; +import { DocumentPreview } from './document-preview'; +import { SparklesIcon } from './icons'; import { Markdown } from './markdown'; -import { MessageActions } from './message-actions'; -import { PreviewAttachment } from './preview-attachment'; -import { Weather } from './weather'; -import equal from 'fast-deep-equal'; -import { cn } from '@/lib/utils'; -import { Button } from './ui/button'; -import { Tooltip, TooltipContent, TooltipTrigger } from './ui/tooltip'; import { MessageEditor } from './message-editor'; -import { DocumentPreview } from './document-preview'; import { MessageReasoning } from './message-reasoning'; +import { PreviewAttachment } from './preview-attachment'; +import { Weather } from './weather'; const PurePreviewMessage = ({ chatId, @@ -95,23 +87,6 @@ const PurePreviewMessage = ({ {(message.content || message.reasoning) && mode === 'view' && (
- {message.role === 'user' && !isReadonly && ( - - - - - Edit message - - )} -
)} - - {!isReadonly && ( - - )}
diff --git a/components/multimodal-input.tsx b/components/multimodal-input.tsx index 1914705..6d37368 100644 --- a/components/multimodal-input.tsx +++ b/components/multimodal-input.tsx @@ -7,6 +7,7 @@ import type { Message, } from 'ai'; import cx from 'classnames'; +import equal from 'fast-deep-equal'; import type React from 'react'; import { useRef, @@ -25,10 +26,9 @@ import { sanitizeUIMessages } from '@/lib/utils'; import { ArrowUpIcon, PaperclipIcon, StopIcon } from './icons'; import { PreviewAttachment } from './preview-attachment'; +import { SuggestedActions } from './suggested-actions'; import { Button } from './ui/button'; import { Textarea } from './ui/textarea'; -import { SuggestedActions } from './suggested-actions'; -import equal from 'fast-deep-equal'; function PureMultimodalInput({ chatId, @@ -254,10 +254,6 @@ function PureMultimodalInput({ }} /> -
- -
-
{isLoading ? ( diff --git a/components/sidebar-history.tsx b/components/sidebar-history.tsx index 6aa18c0..99b89b2 100644 --- a/components/sidebar-history.tsx +++ b/components/sidebar-history.tsx @@ -1,19 +1,14 @@ 'use client'; import { isToday, isYesterday, subMonths, subWeeks } from 'date-fns'; +import type { User } from 'next-auth'; import Link from 'next/link'; import { useParams, usePathname, useRouter } from 'next/navigation'; -import type { User } from 'next-auth'; import { memo, useEffect, useState } from 'react'; import { toast } from 'sonner'; import useSWR from 'swr'; import { - CheckCircleFillIcon, - GlobeIcon, - LockIcon, - MoreHorizontalIcon, - ShareIcon, TrashIcon, } from '@/components/icons'; import { @@ -30,25 +25,18 @@ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, - DropdownMenuPortal, - DropdownMenuSeparator, - DropdownMenuSub, - DropdownMenuSubContent, - DropdownMenuSubTrigger, - DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { SidebarGroup, SidebarGroupContent, SidebarMenu, - SidebarMenuAction, SidebarMenuButton, SidebarMenuItem, useSidebar, } from '@/components/ui/sidebar'; +import { useChatVisibility } from '@/hooks/use-chat-visibility'; import type { Chat } from '@/lib/db/schema'; import { fetcher } from '@/lib/utils'; -import { useChatVisibility } from '@/hooks/use-chat-visibility'; type GroupedChats = { today: Chat[]; @@ -83,7 +71,12 @@ const PureChatItem = ({ - + {/* + TODO: Re-enable when conversation deletion is implemented + + https://github.com/pattern-tech/pattern-app/issues/33 + */} + {/* More - + */} - - - - Share - - - - { - setVisibilityType('private'); - }} - > -
- - Private -
- {visibilityType === 'private' ? ( - - ) : null} -
- { - setVisibilityType('public'); - }} - > -
- - Public -
- {visibilityType === 'public' ? : null} -
-
-
-
- onDelete(chat.id)} diff --git a/lib/ai/pattern-model.ts b/lib/ai/pattern-model.ts index 7ce066c..ccde7ea 100644 --- a/lib/ai/pattern-model.ts +++ b/lib/ai/pattern-model.ts @@ -92,11 +92,10 @@ export class PatternModel implements LanguageModelV1 { textDelta: event.data, }); } else if (event.type === 'tool_start') { - const text = this.getToolStartReasoningText(event); - controller.enqueue({ - type: 'reasoning', - textDelta: text, - }); + /** + * TODO: Re-enable reasoning when backend supports it + * https://github.com/pattern-tech/pattern-app/issues/27 + */ } else { controller.enqueue({ type: 'error',