@@ -88,6 +88,10 @@ export const ChannelPreview = (props: ChannelPreviewProps) => {
8888 const [ lastMessage , setLastMessage ] = useState < LocalMessage > (
8989 channel . state . messages [ channel . state . messages . length - 1 ] ,
9090 ) ;
91+ const [ latestMessagePreview , setLatestMessagePreview ] = useState < ReactNode > ( ( ) =>
92+ getLatestMessagePreview ( channel , t , userLanguage , isMessageAIGenerated ) ,
93+ ) ;
94+
9195 const [ unread , setUnread ] = useState ( 0 ) ;
9296 const { messageDeliveryStatus } = useMessageDeliveryStatus ( {
9397 channel,
@@ -134,6 +138,9 @@ export const ChannelPreview = (props: ChannelPreviewProps) => {
134138
135139 useEffect ( ( ) => {
136140 refreshUnreadCount ( ) ;
141+ setLatestMessagePreview (
142+ getLatestMessagePreview ( channel , t , userLanguage , isMessageAIGenerated ) ,
143+ ) ;
137144
138145 const handleEvent = ( event : Event ) => {
139146 const deletedMessagesInAnotherChannel =
@@ -144,6 +151,9 @@ export const ChannelPreview = (props: ChannelPreviewProps) => {
144151 setLastMessage (
145152 channel . state . latestMessages [ channel . state . latestMessages . length - 1 ] ,
146153 ) ;
154+ setLatestMessagePreview (
155+ getLatestMessagePreview ( channel , t , userLanguage , isMessageAIGenerated ) ,
156+ ) ;
147157 refreshUnreadCount ( ) ;
148158 } ;
149159
@@ -162,16 +172,18 @@ export const ChannelPreview = (props: ChannelPreviewProps) => {
162172 channel . off ( 'message.undeleted' , handleEvent ) ;
163173 channel . off ( 'channel.truncated' , handleEvent ) ;
164174 } ;
165- } , [ channel , client , refreshUnreadCount , channelUpdateCount ] ) ;
166-
167- if ( ! Preview ) return null ;
168-
169- const latestMessagePreview = getLatestMessagePreview (
175+ } , [
170176 channel ,
177+ client ,
178+ refreshUnreadCount ,
179+ channelUpdateCount ,
180+ getLatestMessagePreview ,
171181 t ,
172182 userLanguage ,
173183 isMessageAIGenerated ,
174- ) ;
184+ ] ) ;
185+
186+ if ( ! Preview ) return null ;
175187
176188 return (
177189 < Preview
0 commit comments