@@ -477,6 +477,15 @@ export const AgentSheet = ({
477477 }
478478 } , [ ] ) ;
479479
480+ // Cleanup effect to reset pointer events when component unmounts
481+ useEffect ( ( ) => {
482+ return ( ) => {
483+ document . body . style . pointerEvents = 'auto' ;
484+ document . body . style . cursor = 'auto' ;
485+ document . body . style . overflow = 'visible' ;
486+ } ;
487+ } , [ ] ) ;
488+
480489 function showPreview ( e : React . ChangeEvent < HTMLInputElement > ) {
481490 const file = e . target . files ?. [ 0 ] ;
482491 if ( file ) {
@@ -496,6 +505,7 @@ export const AgentSheet = ({
496505 open = { openEditSheet }
497506 onOpenChange = { open => {
498507 setOpenEditSheet ( open ) ;
508+
499509 // Reset form state when sheet closes
500510 if ( ! open ) {
501511 setToolState ( null ) ;
@@ -506,6 +516,11 @@ export const AgentSheet = ({
506516 setIcon ( null ) ;
507517 setAllowDelegation ( false ) ;
508518 setVerbose ( false ) ;
519+
520+ // Reset body styles when sheet closes
521+ document . body . style . pointerEvents = 'auto' ;
522+ document . body . style . overflow = 'visible' ;
523+ document . body . style . cursor = 'auto' ;
509524 }
510525 } } >
511526 { modal }
@@ -527,7 +542,18 @@ export const AgentSheet = ({
527542 </ SheetTrigger >
528543 ) }
529544
530- < SheetContent size = 'md' className = 'text-foreground overflow-y-auto' >
545+ < SheetContent
546+ size = 'md'
547+ className = 'text-foreground overflow-y-auto max-h-screen'
548+ style = { {
549+ pointerEvents : 'auto'
550+ } }
551+ onPointerDownOutside = { ( ) => {
552+ document . body . style . pointerEvents = 'auto' ;
553+ } }
554+ onEscapeKeyDown = { ( ) => {
555+ document . body . style . pointerEvents = 'auto' ;
556+ } } >
531557 < SheetHeader >
532558 < SheetTitle >
533559 < div className = 'flex items-center gap-2' >
@@ -537,7 +563,7 @@ export const AgentSheet = ({
537563 </ p >
538564 </ div >
539565 </ SheetTitle >
540- < SheetDescription className = 'border-t border-gray-200 py-3 px-1' >
566+ < div className = 'border-t border-gray-200 py-3 px-1' >
541567 < form onSubmit = { agentPost } >
542568 < section className = 'pb-3 flex flex-col gap-4' >
543569 < div className = 'flex justify-between gap-2' >
@@ -639,9 +665,8 @@ export const AgentSheet = ({
639665 className = 'bg-gray-50 border border-gray-300'
640666 id = 'role'
641667 placeholder = 'e.g. Data Analyst'
642- defaultValue = { selectedAgent ?. role || role }
643668 rows = { 3 }
644- value = { autocompleteRole . text || selectedAgent ?. role }
669+ value = { autocompleteRole . text || selectedAgent ?. role || role }
645670 onChange = { autocompleteRole . handleChange }
646671 onKeyDown = { autocompleteRole . handleKeyDown }
647672 />
@@ -687,8 +712,7 @@ export const AgentSheet = ({
687712 id = 'goal'
688713 className = 'resize-none h-20 bg-gray-50 border-gray-300'
689714 placeholder = 'Extract actionable insights'
690- defaultValue = { selectedAgent ?. goal || goal }
691- value = { autocompleteGoal . text || selectedAgent ?. goal }
715+ value = { autocompleteGoal . text || selectedAgent ?. goal || goal }
692716 onChange = { autocompleteGoal . handleChange }
693717 onKeyDown = { autocompleteGoal . handleKeyDown }
694718 />
@@ -713,8 +737,7 @@ export const AgentSheet = ({
713737 id = 'backstory'
714738 className = 'resize-none h-28 bg-gray-50 border-gray-300'
715739 placeholder = "e.g. You're a data analyst at a large company. You're responsible for analyzing data and providing insights to the business. You're currently working on a project to analyze the performance of our marketing campaigns."
716- defaultValue = { selectedAgent ?. backstory || backstory }
717- value = { autocompleteBackstory . text || selectedAgent ?. backstory }
740+ value = { autocompleteBackstory . text || selectedAgent ?. backstory || backstory }
718741 onChange = { autocompleteBackstory . handleChange }
719742 onKeyDown = { autocompleteBackstory . handleKeyDown }
720743 />
@@ -731,6 +754,9 @@ export const AgentSheet = ({
731754 </ div >
732755
733756 < div className = 'grid w-full items-center gap-1.5' >
757+ < Label className = 'text-gray-900 font-medium' htmlFor = 'model' >
758+ Model
759+ </ Label >
734760 < DropdownMenu >
735761 < DropdownMenuTrigger className = 'bg-background border border-gray-300 flex items-center justify-between bg-gray-50 px-4 py-2 rounded-lg' >
736762 < div className = 'flex items-center gap-2' >
@@ -772,7 +798,7 @@ export const AgentSheet = ({
772798 </ Button >
773799 </ section >
774800 </ form >
775- </ SheetDescription >
801+ </ div >
776802 </ SheetHeader >
777803 </ SheetContent >
778804 </ Sheet >
0 commit comments