summaryrefslogtreecommitdiff
path: root/src/Erebos/Conversation/Class.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/Class.hs
parentb2319c8084d34edb85e0fee4ca7edcdee0c8aeed (diff)
Command to mark messages as seen
Changelog: Added `/seen` command to mark messages as seen.
Diffstat (limited to 'src/Erebos/Conversation/Class.hs')
-rw-r--r--src/Erebos/Conversation/Class.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Erebos/Conversation/Class.hs b/src/Erebos/Conversation/Class.hs
index 96a0e6a..d7bac5d 100644
--- a/src/Erebos/Conversation/Class.hs
+++ b/src/Erebos/Conversation/Class.hs
@@ -3,12 +3,16 @@ module Erebos.Conversation.Class (
RefDigest,
) where
+import Control.Monad.Except
+
import Data.Text (Text)
import Data.Time.LocalTime
import Data.Typeable
+import Erebos.Error
import Erebos.Identity
import Erebos.Object
+import Erebos.State
class (Typeable conv, Typeable msg) => ConversationType conv msg | conv -> msg, msg -> conv where
@@ -21,3 +25,5 @@ class (Typeable conv, Typeable msg) => ConversationType conv msg | conv -> msg,
:: Maybe conv -- ^ Original state to diff from
-> conv -- ^ Current state
-> ( Int, [ ( msg, Bool ) ] ) -- ^ Number of removed, list of added messages
+
+ convMarkAllSeen :: (MonadHead LocalState m, MonadError e m, FromErebosError e) => conv -> m ()