diff --git a/package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts b/package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts index 685ba613b0..8d8103a7b0 100644 --- a/package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +++ b/package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts @@ -41,12 +41,7 @@ export const useMessageDetailsForState = < ) => { const [fileUploads, setFileUploads] = useState([]); const [imageUploads, setImageUploads] = useState([]); - const [mentionedUsers, setMentionedUsers] = useState( - (!isEditingBoolean(message) && - Array.isArray(message?.mentioned_users) && - message.mentioned_users.map((user) => user.id)) || - [], - ); + const [mentionedUsers, setMentionedUsers] = useState([]); const [numberOfUploads, setNumberOfUploads] = useState(0); const [showMoreOptions, setShowMoreOptions] = useState(true); const initialTextValue = initialValue || ''; @@ -60,6 +55,17 @@ export const useMessageDetailsForState = < const messageValue = typeof message === 'boolean' ? '' : `${message.id}${message.text}${message.updated_at}`; + + useEffect(() => { + if ( + !isEditingBoolean(message) && + Array.isArray(message?.mentioned_users) + ) { + const mentionedUsers = message.mentioned_users.map((user) => user.id); + setMentionedUsers(mentionedUsers); + } + }, [messageValue]); + useEffect(() => { if (message && !isEditingBoolean(message)) { setText(message?.text || '');