@@ -13,6 +13,9 @@ import { Avatar } from '@/components/ui/avatar';
13
13
import { Helmet } from 'react-helmet' ;
14
14
import { useTranslation } from 'react-i18next' ;
15
15
import { CreateConvo } from '@/components/create-convo' ;
16
+ import { StickyHeader } from '@/components/sticky-header' ;
17
+ import { Sidebar } from '@/components/navigation/sidebar' ;
18
+ import { FormattedText } from '@/components/ui/formatted-text' ;
16
19
17
20
function Conversation ( { convo } : { convo : BSkyConvo } ) {
18
21
const session = useBlueskyStore ( ( state ) => state . session ) ;
@@ -27,17 +30,19 @@ function Conversation({ convo }: { convo: BSkyConvo }) {
27
30
key = { member . did }
28
31
>
29
32
< Link to = "/profile/$handle" params = { { handle : member . handle ?? member . did } } className = "hover:no-underline" >
30
- < Avatar handle = { member . handle } avatar = { member . avatar } className = "size-16 " />
33
+ < Avatar handle = { member . handle } avatar = { member . avatar } className = "size-14 " />
31
34
</ Link >
32
35
< div className = "flex flex-col" >
33
- < div className = "flex flex-row gap-2" >
34
- < Handle handle = { member . handle ?? member . did } />
36
+ < div className = "flex flex-row gap-2 items-center " >
37
+ { member . displayName ?? < Handle handle = { member . handle ?? member . did } /> }
35
38
{ ' · ' }
36
- < TimeAgo date = { convo . lastMessage . sentAt } />
39
+ < div className = "text-xs text-gray-500 dark:text-gray-400" >
40
+ < TimeAgo date = { convo . lastMessage . sentAt } />
41
+ </ div >
37
42
</ div >
38
- < div >
43
+ < div className = "text-sm text-gray-500 dark:text-gray-400" >
39
44
{ convo . lastMessage . sender . did === session ?. did && 'You: ' }
40
- { convo . lastMessage . text }
45
+ < FormattedText text = { convo . lastMessage . text } />
41
46
</ div >
42
47
</ div >
43
48
</ div >
@@ -60,6 +65,10 @@ function Messages() {
60
65
< Helmet >
61
66
< title > { t ( 'messages' ) } </ title >
62
67
</ Helmet >
68
+ < StickyHeader backButton = { false } >
69
+ < Sidebar />
70
+ { t ( 'messages' ) }
71
+ </ StickyHeader >
63
72
< div className = "w-full border-x border-gray-200 dark:border-gray-800" >
64
73
< Virtuoso
65
74
useWindowScroll
@@ -75,7 +84,6 @@ function Messages() {
75
84
} ) ,
76
85
Footer : ( ) => < div className = "h-96 md:h-0" /> ,
77
86
} }
78
- followOutput
79
87
/>
80
88
< CreateConvo />
81
89
</ div >
0 commit comments