@@ -52,6 +52,7 @@ import { useSession } from "@/context/session"
5252import { StickyAccordionHeader } from "@/components/sticky-accordion-header"
5353import { SessionReview } from "@/components/session-review"
5454import { useLayout } from "@/context/layout"
55+ import { createSessionSeen } from "@/hooks/create-session-seen"
5556
5657export default function Page ( ) {
5758 const layout = useLayout ( )
@@ -451,7 +452,9 @@ export default function Page() {
451452 < For each = { session . messages . user ( ) } >
452453 { ( message ) => {
453454 const isActive = createMemo ( ( ) => session . messages . active ( ) ?. id === message . id )
454- const [ titled , setTitled ] = createSignal ( ! ! message . summary ?. title )
455+ const titleSeen = createSessionSeen ( `message-title-${ message . id } ` )
456+ const contentSeen = createSessionSeen ( `message-content-${ message . id } ` )
457+ const [ titled , setTitled ] = createSignal ( titleSeen ( ) )
455458 const assistantMessages = createMemo ( ( ) => {
456459 if ( ! session . id ) return [ ]
457460 return sync . data . message [ session . id ] ?. filter (
@@ -474,8 +477,9 @@ export default function Page() {
474477
475478 // allowing time for the animations to finish
476479 createEffect ( ( ) => {
480+ if ( titleSeen ( ) ) return
477481 const title = message . summary ?. title
478- setTimeout ( ( ) => setTitled ( ! ! title ) , 10_000 )
482+ if ( title ) setTimeout ( ( ) => setTitled ( true ) , 10_000 )
479483 } )
480484 createEffect ( ( ) => {
481485 const completed = ! working ( )
@@ -523,8 +527,7 @@ export default function Page() {
523527 < Markdown
524528 classList = { {
525529 "text-14-regular" : ! ! message . summary ?. diffs ?. length ,
526- "[&>*]:fade-up-text" :
527- ! message . summary ?. diffs ?. length && ! initialCompleted ,
530+ "[&>*]:fade-up-text" : ! message . summary ?. diffs ?. length && ! contentSeen ( ) ,
528531 } }
529532 text = { summary ( ) }
530533 />
0 commit comments