summaryrefslogtreecommitdiff
path: root/src/Erebos/Conversation.hs
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2026-06-02 21:10:39 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2026-06-02 21:10:39 +0200
commitcb71b9c56754abe739b889aeb9fd8bf80097c661 (patch)
treed9d1dad0620c819aeb2dca7d1586d12d87c2ab30 /src/Erebos/Conversation.hs
parentb2319c8084d34edb85e0fee4ca7edcdee0c8aeed (diff)
Command to mark messages as seen
Changelog: Added `/seen` command to mark messages as seen.
Diffstat (limited to 'src/Erebos/Conversation.hs')
-rw-r--r--src/Erebos/Conversation.hs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Erebos/Conversation.hs b/src/Erebos/Conversation.hs
index 1d72f41..472195c 100644
--- a/src/Erebos/Conversation.hs
+++ b/src/Erebos/Conversation.hs
@@ -26,6 +26,7 @@ module Erebos.Conversation (
sendMessage,
deleteConversation,
+ markAllSeen,
) where
import Control.Monad.Except
@@ -141,3 +142,6 @@ sendMessage (ChatroomConversation rstate) text = sendChatroomMessage rstate text
deleteConversation :: (MonadHead LocalState m, MonadError e m, FromErebosError e) => Conversation -> m ()
deleteConversation (DirectMessageConversation _) = throwOtherError "deleting direct message conversation is not supported"
deleteConversation (ChatroomConversation rstate) = deleteChatroomByStateData (head $ roomStateData rstate)
+
+markAllSeen :: (MonadHead LocalState m, MonadError e m, FromErebosError e) => Conversation -> m ()
+markAllSeen = withConversation convMarkAllSeen