@@ -8,10 +8,11 @@ import {
88 useImperativeHandle ,
99 useState ,
1010} from 'react'
11- import { ArrowUp , AtSign , Loader2 , Paperclip , X } from 'lucide-react'
11+ import { ArrowUp , AtSign , Image , Loader2 , X } from 'lucide-react'
1212import { useParams } from 'next/navigation'
1313import { createPortal } from 'react-dom'
14- import { Button , Textarea } from '@/components/ui'
14+ import { Badge , Button } from '@/components/emcn'
15+ import { Button as ShadCNButton , Textarea } from '@/components/ui'
1516import { useSession } from '@/lib/auth-client'
1617import { createLogger } from '@/lib/logs/console/logger'
1718import { cn } from '@/lib/utils'
@@ -118,8 +119,7 @@ const UserInput = forwardRef<UserInputRef, UserInputProps>(
118119
119120 // Effective placeholder
120121 const effectivePlaceholder =
121- placeholder ||
122- ( mode === 'ask' ? 'Ask, plan, understand workflows' : 'Build, edit, debug workflows' )
122+ placeholder || ( mode === 'ask' ? 'Ask about your workflow' : 'Plan, search, build anything' )
123123
124124 // Custom hooks - order matters for ref sharing
125125 const mentionMenu = useMentionMenu ( {
@@ -905,16 +905,17 @@ const UserInput = forwardRef<UserInputRef, UserInputProps>(
905905 >
906906 { /* Top Row: @ Button + Context Usage Pill */ }
907907 < div className = 'mb-[6px] flex items-center justify-between' >
908- < Button
909- variant = 'ghost'
910- size = 'icon'
908+ < Badge
911909 onClick = { handleOpenMentionMenuWithAt }
912- disabled = { disabled || isLoading }
913- className = '!h-3 !w-3 text-muted-foreground hover:text-foreground'
914910 title = 'Insert @'
911+ className = { cn (
912+ 'radius-[6px] cursor-pointer border border-[#575757] bg-transparent dark:border-[#575757] dark:bg-transparent' ,
913+ ( disabled || isLoading ) && 'cursor-not-allowed' ,
914+ 'rounded-[6px] p-[4.5px]'
915+ ) }
915916 >
916- < AtSign className = '!h-[14px] !w-[14px] ' strokeWidth = { 1.25 } />
917- </ Button >
917+ < AtSign className = 'h-3 w-3 ' strokeWidth = { 1.25 } />
918+ </ Badge >
918919
919920 { /* Context Usage Pill */ }
920921 { ! hideContextUsage && contextUsage && contextUsage . percentage > 0 && (
@@ -1037,20 +1038,20 @@ const UserInput = forwardRef<UserInputRef, UserInputProps>(
10371038 </ div >
10381039
10391040 { /* Right side: Attach Button + Send Button */ }
1040- < div className = 'flex flex-shrink-0 items-center gap-1.5' >
1041- < Button
1042- variant = 'ghost'
1043- size = 'icon'
1041+ < div className = 'flex flex-shrink-0 items-center gap-[10px]' >
1042+ < Badge
10441043 onClick = { fileAttachments . handleFileSelect }
1045- disabled = { disabled || isLoading }
1046- className = 'h-6 w-6 text-muted-foreground hover:text-foreground'
10471044 title = 'Attach file'
1045+ className = { cn (
1046+ 'cursor-pointer rounded-[6px] bg-transparent p-[0px] dark:bg-transparent' ,
1047+ ( disabled || isLoading ) && 'cursor-not-allowed opacity-50'
1048+ ) }
10481049 >
1049- < Paperclip className = 'h-3 w-3' />
1050- </ Button >
1050+ < Image className = '! h-3.5 ! w-3.5 scale-x-110 ' />
1051+ </ Badge >
10511052
10521053 { showAbortButton ? (
1053- < Button
1054+ < ShadCNButton
10541055 onClick = { handleAbort }
10551056 disabled = { isAborting }
10561057 size = 'icon'
@@ -1062,18 +1063,22 @@ const UserInput = forwardRef<UserInputRef, UserInputProps>(
10621063 ) : (
10631064 < X className = 'h-3 w-3' />
10641065 ) }
1065- </ Button >
1066+ </ ShadCNButton >
10661067 ) : (
10671068 < Button
1069+ variant = 'primary'
10681070 onClick = { handleSubmit }
10691071 disabled = { ! canSubmit }
1070- size = 'icon'
1071- className = 'h-6 w-6 rounded-full bg-[var(--brand-primary-hover-hex)] text-white shadow-[0_0_0_0_var(--brand-primary-hover-hex)] transition-all duration-200 hover:bg-[var(--brand-primary-hover-hex)] hover:shadow-[0_0_0_4px_rgba(127,47,255,0.15)]'
1072+ className = { cn (
1073+ 'h-[22px] w-[22px] rounded-full p-0' ,
1074+ canSubmit &&
1075+ 'ring-2 ring-[#8E4CFB] ring-offset-2 ring-offset-[#282828] dark:ring-offset-[#353535]'
1076+ ) }
10721077 >
10731078 { isLoading ? (
1074- < Loader2 className = 'h-3 w-3 animate-spin' />
1079+ < Loader2 className = 'h-3.5 w-3.5 animate-spin' />
10751080 ) : (
1076- < ArrowUp className = 'h-3 w-3' />
1081+ < ArrowUp className = 'h-3.5 w-3.5 ' />
10771082 ) }
10781083 </ Button >
10791084 ) }
0 commit comments