| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Simplex.Chat.Messages
Synopsis
- data ChatType
- data SChatType (c :: ChatType) where
- data AChatType = ChatTypeI c => ACT (SChatType c)
- class ChatTypeI (c :: ChatType) where
- toChatType :: forall (c :: ChatType). SChatType c -> ChatType
- aChatType :: ChatType -> AChatType
- checkChatType :: forall t (c :: ChatType) (c' :: ChatType). (ChatTypeI c, ChatTypeI c') => t c' -> Either String (t c)
- data GroupChatScope = GCSMemberSupport {
- groupMemberId_ :: Maybe GroupMemberId
- data GroupChatScopeTag = GCSTMemberSupport_
- data ChatName = ChatName {}
- data SendName
- = SNDirect ContactName
- | SNGroup GroupName (Maybe GroupScopeName)
- | SNLocal
- data GroupScopeName = GSNMemberSupport (Maybe ContactName)
- chatTypeStr :: ChatType -> Text
- chatNameStr :: ChatName -> String
- data ChatRef = ChatRef {
- chatType :: ChatType
- chatId :: Int64
- chatScope :: Maybe GroupChatScope
- data ChatInfo (c :: ChatType) where
- DirectChat :: Contact -> ChatInfo 'CTDirect
- GroupChat :: GroupInfo -> Maybe GroupChatScopeInfo -> ChatInfo 'CTGroup
- LocalChat :: NoteFolder -> ChatInfo 'CTLocal
- ContactRequest :: UserContactRequest -> ChatInfo 'CTContactRequest
- ContactConnection :: PendingContactConnection -> ChatInfo 'CTContactConnection
- CInfoInvalidJSON :: forall (c :: ChatType). SChatType c -> Object -> ChatInfo c
- data GroupChatScopeInfo = GCSIMemberSupport {
- groupMember_ :: Maybe GroupMember
- toChatScope :: GroupChatScopeInfo -> GroupChatScope
- toMsgScope :: GroupInfo -> GroupChatScopeInfo -> MsgScope
- chatInfoToRef :: forall (c :: ChatType). ChatInfo c -> Maybe ChatRef
- chatInfoMembership :: forall (c :: ChatType). ChatInfo c -> Maybe GroupMember
- data JSONChatInfo
- = JCInfoDirect { }
- | JCInfoGroup {
- groupInfo :: GroupInfo
- groupChatScope :: Maybe GroupChatScopeInfo
- | JCInfoLocal { }
- | JCInfoContactRequest { }
- | JCInfoContactConnection { }
- | JCInfoInvalidJSON { }
- jsonChatInfo :: forall (c :: ChatType). ChatInfo c -> JSONChatInfo
- data AChatInfo = ChatTypeI c => AChatInfo (SChatType c) (ChatInfo c)
- jsonAChatInfo :: JSONChatInfo -> AChatInfo
- data ChatItem (c :: ChatType) (d :: MsgDirection) = ChatItem {
- chatDir :: CIDirection c d
- meta :: CIMeta c d
- content :: CIContent d
- mentions :: Map MemberName CIMention
- formattedText :: Maybe MarkdownList
- quotedItem :: Maybe (CIQuote c)
- reactions :: [CIReactionCount]
- file :: Maybe (CIFile d)
- data CIMention = CIMention {
- memberId :: MemberId
- memberRef :: Maybe CIMentionMember
- data CIMentionMember = CIMentionMember {
- groupMemberId :: GroupMemberId
- displayName :: Text
- localAlias :: Maybe Text
- memberRole :: GroupMemberRole
- isACIUserMention :: AChatItem -> Bool
- isUserMention :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Bool
- data CIDirection (c :: ChatType) (d :: MsgDirection) where
- data CCIDirection (c :: ChatType) = MsgDirectionI d => CCID (SMsgDirection d) (CIDirection c d)
- data ACIDirection = (ChatTypeI c, MsgDirectionI d) => ACID (SChatType c) (SMsgDirection d) (CIDirection c d)
- data JSONCIDirection
- jsonCIDirection :: forall (c :: ChatType) (d :: MsgDirection). CIDirection c d -> JSONCIDirection
- jsonACIDirection :: JSONCIDirection -> ACIDirection
- data CIReactionCount = CIReactionCount {
- reaction :: MsgReaction
- userReacted :: Bool
- totalReacted :: Int
- data CChatItem (c :: ChatType) = MsgDirectionI d => CChatItem (SMsgDirection d) (ChatItem c d)
- cChatItemId :: forall (c :: ChatType). CChatItem c -> ChatItemId
- chatItemId' :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> ChatItemId
- chatItemTs :: forall (c :: ChatType). CChatItem c -> UTCTime
- chatItemTs' :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> UTCTime
- ciCreatedAt :: forall (c :: ChatType). CChatItem c -> UTCTime
- ciCreatedAt' :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> UTCTime
- chatItemTimed :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Maybe CITimed
- timedDeleteAt' :: CITimed -> Maybe UTCTime
- chatItemMember :: forall (d :: MsgDirection). GroupInfo -> ChatItem 'CTGroup d -> GroupMember
- chatItemRcvFromMember :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Maybe GroupMember
- chatItemIsRcvNew :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Bool
- ciReactionAllowed :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Bool
- data ChatDirection (c :: ChatType) (d :: MsgDirection) where
- CDDirectSnd :: Contact -> ChatDirection 'CTDirect 'MDSnd
- CDDirectRcv :: Contact -> ChatDirection 'CTDirect 'MDRcv
- CDGroupSnd :: GroupInfo -> Maybe GroupChatScopeInfo -> ChatDirection 'CTGroup 'MDSnd
- CDGroupRcv :: GroupInfo -> Maybe GroupChatScopeInfo -> GroupMember -> ChatDirection 'CTGroup 'MDRcv
- CDLocalSnd :: NoteFolder -> ChatDirection 'CTLocal 'MDSnd
- CDLocalRcv :: NoteFolder -> ChatDirection 'CTLocal 'MDRcv
- toCIDirection :: forall (c :: ChatType) (d :: MsgDirection). ChatDirection c d -> CIDirection c d
- toChatInfo :: forall (c :: ChatType) (d :: MsgDirection). ChatDirection c d -> ChatInfo c
- contactChatDeleted :: forall (c :: ChatType) (d :: MsgDirection). ChatDirection c d -> Bool
- data NewChatItem (d :: MsgDirection) = NewChatItem {
- createdByMsgId :: Maybe MessageId
- itemSent :: SMsgDirection d
- itemTs :: ChatItemTs
- itemContent :: CIContent d
- itemText :: Text
- itemStatus :: CIStatus d
- itemSharedMsgId :: Maybe SharedMsgId
- itemQuotedMsg :: Maybe QuotedMsg
- createdAt :: UTCTime
- data Chat (c :: ChatType) = Chat {}
- data AChat = ChatTypeI c => AChat (SChatType c) (Chat c)
- data ChatStats = ChatStats {
- unreadCount :: Int
- unreadMentions :: Int
- reportsCount :: Int
- minUnreadItemId :: ChatItemId
- unreadChat :: Bool
- emptyChatStats :: ChatStats
- data NavigationInfo = NavigationInfo {
- afterUnread :: Int
- afterTotal :: Int
- data AChatItem = (ChatTypeI c, MsgDirectionI d) => AChatItem (SChatType c) (SMsgDirection d) (ChatInfo c) (ChatItem c d)
- data JSONAnyChatItem (c :: ChatType) (d :: MsgDirection) = JSONAnyChatItem {}
- aChatItems :: AChat -> [AChatItem]
- aChatItemId :: AChatItem -> Int64
- aChatItemTs :: AChatItem -> UTCTime
- aChatItemDir :: AChatItem -> MsgDirection
- aChatItemRcvFromMember :: AChatItem -> Maybe GroupMember
- aChatItemIsRcvNew :: AChatItem -> Bool
- updateFileStatus :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> CIFileStatus d -> ChatItem c d
- data CIMeta (c :: ChatType) (d :: MsgDirection) = CIMeta {
- itemId :: ChatItemId
- itemTs :: ChatItemTs
- itemText :: Text
- itemStatus :: CIStatus d
- sentViaProxy :: Maybe Bool
- itemSharedMsgId :: Maybe SharedMsgId
- itemForwarded :: Maybe CIForwardedFrom
- itemDeleted :: Maybe (CIDeleted c)
- itemEdited :: Bool
- itemTimed :: Maybe CITimed
- itemLive :: Maybe Bool
- userMention :: Bool
- deletable :: Bool
- editable :: Bool
- forwardedByMember :: Maybe GroupMemberId
- showGroupAsSender :: ShowGroupAsSender
- createdAt :: UTCTime
- updatedAt :: UTCTime
- type ShowGroupAsSender = Bool
- mkCIMeta :: forall (c :: ChatType) (d :: MsgDirection). ChatTypeI c => ChatItemId -> CIContent d -> Text -> CIStatus d -> Maybe Bool -> Maybe SharedMsgId -> Maybe CIForwardedFrom -> Maybe (CIDeleted c) -> Bool -> Maybe CITimed -> Maybe Bool -> Bool -> UTCTime -> ChatItemTs -> Maybe GroupMemberId -> Bool -> UTCTime -> UTCTime -> CIMeta c d
- deletable' :: forall (c :: ChatType) (d :: MsgDirection). ChatTypeI c => CIContent d -> Maybe (CIDeleted c) -> UTCTime -> NominalDiffTime -> UTCTime -> Bool
- dummyMeta :: forall (c :: ChatType). ChatItemId -> UTCTime -> Text -> CIMeta c 'MDSnd
- data CITimed = CITimed {}
- ttl' :: CITimed -> Int
- contactTimedTTL :: Contact -> Maybe (Maybe Int)
- groupTimedTTL :: GroupInfo -> Maybe (Maybe Int)
- rcvContactCITimed :: Contact -> Maybe Int -> Maybe CITimed
- rcvGroupCITimed :: GroupInfo -> Maybe Int -> Maybe CITimed
- rcvCITimed_ :: Maybe (Maybe Int) -> Maybe Int -> Maybe CITimed
- data CIQuote (c :: ChatType) = CIQuote {
- chatDir :: CIQDirection c
- itemId :: Maybe ChatItemId
- sharedMsgId :: Maybe SharedMsgId
- sentAt :: UTCTime
- content :: MsgContent
- formattedText :: Maybe MarkdownList
- quoteItemId :: forall (c :: ChatType). CIQuote c -> Maybe ChatItemId
- data CIReaction (c :: ChatType) (d :: MsgDirection) = CIReaction {
- chatDir :: CIDirection c d
- chatItem :: CChatItem c
- sentAt :: UTCTime
- reaction :: MsgReaction
- data AnyCIReaction = ChatTypeI c => ACIR (SChatType c) (SMsgDirection d) (CIReaction c d)
- data ACIReaction = ChatTypeI c => ACIReaction (SChatType c) (SMsgDirection d) (ChatInfo c) (CIReaction c d)
- data JSONCIReaction (c :: ChatType) (d :: MsgDirection) = JSONCIReaction {
- chatInfo :: ChatInfo c
- chatReaction :: CIReaction c d
- data MemberReaction = MemberReaction {
- groupMember :: GroupMember
- reactionTs :: UTCTime
- type family ChatTypeQuotable (a :: ChatType) where ...
- data CIQDirection (c :: ChatType) where
- CIQDirectSnd :: CIQDirection 'CTDirect
- CIQDirectRcv :: CIQDirection 'CTDirect
- CIQGroupSnd :: CIQDirection 'CTGroup
- CIQGroupRcv :: Maybe GroupMember -> CIQDirection 'CTGroup
- data ACIQDirection = (ChatTypeI c, ChatTypeQuotable c) => ACIQDirection (SChatType c) (CIQDirection c)
- jsonCIQDirection :: forall (c :: ChatType). CIQDirection c -> Maybe JSONCIDirection
- jsonACIQDirection :: Maybe JSONCIDirection -> Either String ACIQDirection
- quoteMsgDirection :: forall (c :: ChatType). CIQDirection c -> MsgDirection
- data CIFile (d :: MsgDirection) = CIFile {
- fileId :: Int64
- fileName :: String
- fileSize :: Integer
- fileSource :: Maybe CryptoFile
- fileStatus :: CIFileStatus d
- fileProtocol :: FileProtocol
- data FileProtocol
- data CIFileStatus (d :: MsgDirection) where
- CIFSSndStored :: CIFileStatus 'MDSnd
- CIFSSndTransfer :: {..} -> CIFileStatus 'MDSnd
- CIFSSndCancelled :: CIFileStatus 'MDSnd
- CIFSSndComplete :: CIFileStatus 'MDSnd
- CIFSSndError :: {..} -> CIFileStatus 'MDSnd
- CIFSSndWarning :: {..} -> CIFileStatus 'MDSnd
- CIFSRcvInvitation :: CIFileStatus 'MDRcv
- CIFSRcvAccepted :: CIFileStatus 'MDRcv
- CIFSRcvTransfer :: {..} -> CIFileStatus 'MDRcv
- CIFSRcvAborted :: CIFileStatus 'MDRcv
- CIFSRcvComplete :: CIFileStatus 'MDRcv
- CIFSRcvCancelled :: CIFileStatus 'MDRcv
- CIFSRcvError :: {..} -> CIFileStatus 'MDRcv
- CIFSRcvWarning :: {..} -> CIFileStatus 'MDRcv
- CIFSInvalid :: {..} -> CIFileStatus 'MDSnd
- ciFileEnded :: forall (d :: MsgDirection). CIFileStatus d -> Bool
- ciFileLoaded :: forall (d :: MsgDirection). CIFileStatus d -> Bool
- data ForwardFileError
- ciFileForwardError :: forall (d :: MsgDirection). FileTransferId -> CIFileStatus d -> Maybe ForwardFileError
- data ACIFileStatus = MsgDirectionI d => AFS (SMsgDirection d) (CIFileStatus d)
- data JSONCIFileStatus
- = JCIFSSndStored
- | JCIFSSndTransfer {
- sndProgress :: Int64
- sndTotal :: Int64
- | JCIFSSndCancelled
- | JCIFSSndComplete
- | JCIFSSndError { }
- | JCIFSSndWarning { }
- | JCIFSRcvInvitation
- | JCIFSRcvAccepted
- | JCIFSRcvTransfer {
- rcvProgress :: Int64
- rcvTotal :: Int64
- | JCIFSRcvAborted
- | JCIFSRcvComplete
- | JCIFSRcvCancelled
- | JCIFSRcvError { }
- | JCIFSRcvWarning { }
- | JCIFSInvalid {
- text :: Text
- jsonCIFileStatus :: forall (d :: MsgDirection). CIFileStatus d -> JSONCIFileStatus
- aciFileStatusJSON :: JSONCIFileStatus -> ACIFileStatus
- data FileError
- = FileErrAuth
- | FileErrBlocked { }
- | FileErrNoFile
- | FileErrRelay { }
- | FileErrOther {
- fileError :: Text
- data CIFileInfo = CIFileInfo {
- fileId :: Int64
- fileStatus :: Maybe ACIFileStatus
- filePath :: Maybe FilePath
- mkCIFileInfo :: forall (d :: MsgDirection). MsgDirectionI d => CIFile d -> CIFileInfo
- data CIStatus (d :: MsgDirection) where
- CISSndNew :: CIStatus 'MDSnd
- CISSndSent :: SndCIStatusProgress -> CIStatus 'MDSnd
- CISSndRcvd :: MsgReceiptStatus -> SndCIStatusProgress -> CIStatus 'MDSnd
- CISSndErrorAuth :: CIStatus 'MDSnd
- CISSndError :: SndError -> CIStatus 'MDSnd
- CISSndWarning :: SndError -> CIStatus 'MDSnd
- CISRcvNew :: CIStatus 'MDRcv
- CISRcvRead :: CIStatus 'MDRcv
- CISInvalid :: Text -> CIStatus 'MDSnd
- data ACIStatus = MsgDirectionI d => ACIStatus (SMsgDirection d) (CIStatus d)
- data SndError
- = SndErrAuth
- | SndErrQuota
- | SndErrExpired
- | SndErrRelay { }
- | SndErrProxy {
- proxyServer :: String
- srvError :: SrvError
- | SndErrProxyRelay {
- proxyServer :: String
- srvError :: SrvError
- | SndErrOther {
- sndError :: Text
- data SrvError
- = SrvErrHost
- | SrvErrVersion
- | SrvErrOther {
- srvError :: Text
- data JSONCIStatus
- = JCISSndNew
- | JCISSndSent { }
- | JCISSndRcvd {
- msgRcptStatus :: MsgReceiptStatus
- sndProgress :: SndCIStatusProgress
- | JCISSndErrorAuth
- | JCISSndError { }
- | JCISSndWarning { }
- | JCISRcvNew
- | JCISRcvRead
- | JCISInvalid {
- text :: Text
- jsonCIStatus :: forall (d :: MsgDirection). CIStatus d -> JSONCIStatus
- jsonACIStatus :: JSONCIStatus -> ACIStatus
- ciStatusNew :: forall (d :: MsgDirection). MsgDirectionI d => CIStatus d
- ciCreateStatus :: forall (d :: MsgDirection). MsgDirectionI d => CIContent d -> CIStatus d
- membersGroupItemStatus :: [(GroupSndStatus, Int)] -> CIStatus 'MDSnd
- data SndCIStatusProgress
- data GroupSndStatus
- = GSSNew
- | GSSForwarded
- | GSSInactive
- | GSSSent
- | GSSRcvd {
- msgRcptStatus :: MsgReceiptStatus
- | GSSError { }
- | GSSWarning { }
- | GSSInvalid {
- text :: Text
- type ChatItemId = Int64
- type ChatItemTs = UTCTime
- data SndMessage = SndMessage {
- msgId :: MessageId
- sharedMsgId :: SharedMsgId
- msgBody :: MsgBody
- data NewRcvMessage (e :: MsgEncoding) = NewRcvMessage {
- chatMsgEvent :: ChatMsgEvent e
- msgBody :: MsgBody
- brokerTs :: UTCTime
- data RcvMessage = RcvMessage {
- msgId :: MessageId
- chatMsgEvent :: AChatMsgEvent
- sharedMsgId_ :: Maybe SharedMsgId
- msgBody :: MsgBody
- authorMember :: Maybe GroupMemberId
- forwardedByMember :: Maybe GroupMemberId
- type MessageId = Int64
- data ConnOrGroupId
- = ConnectionId Int64
- | GroupId Int64
- data SndMsgDelivery = SndMsgDelivery {
- connId :: Int64
- agentMsgId :: AgentMsgId
- data RcvMsgDelivery = RcvMsgDelivery {
- connId :: Int64
- agentMsgId :: AgentMsgId
- agentMsgMeta :: MsgMeta
- data RcvMsgInfo = RcvMsgInfo {
- msgId :: Int64
- msgDeliveryId :: Int64
- msgDeliveryStatus :: Text
- agentMsgId :: AgentMsgId
- agentMsgMeta :: Text
- data MsgMetaJSON = MsgMetaJSON {}
- msgMetaToJson :: MsgMeta -> MsgMetaJSON
- data MsgDeliveryStatus (d :: MsgDirection) where
- MDSRcvAgent :: MsgDeliveryStatus 'MDRcv
- MDSRcvAcknowledged :: MsgDeliveryStatus 'MDRcv
- MDSSndPending :: MsgDeliveryStatus 'MDSnd
- MDSSndAgent :: MsgDeliveryStatus 'MDSnd
- MDSSndSent :: MsgDeliveryStatus 'MDSnd
- MDSSndRcvd :: MsgReceiptStatus -> MsgDeliveryStatus 'MDSnd
- MDSSndRead :: MsgDeliveryStatus 'MDSnd
- data AMsgDeliveryStatus = AMDS (SMsgDirection d) (MsgDeliveryStatus d)
- serializeMsgDeliveryStatus :: forall (d :: MsgDirection). MsgDeliveryStatus d -> Text
- msgDeliveryStatusT :: Text -> Maybe AMsgDeliveryStatus
- msgDeliveryStatusT' :: forall (d :: MsgDirection). MsgDirectionI d => Text -> Maybe (MsgDeliveryStatus d)
- data CIDeleted (c :: ChatType) where
- CIDeleted :: forall (c :: ChatType). Maybe UTCTime -> CIDeleted c
- CIBlocked :: Maybe UTCTime -> CIDeleted 'CTGroup
- CIBlockedByAdmin :: Maybe UTCTime -> CIDeleted 'CTGroup
- CIModerated :: Maybe UTCTime -> GroupMember -> CIDeleted 'CTGroup
- data ACIDeleted = ChatTypeI c => ACIDeleted (SChatType c) (CIDeleted c)
- data JSONCIDeleted
- = JCIDDeleted { }
- | JCIDBlocked {
- deletedTs :: Maybe UTCTime
- | JCIDBlockedByAdmin {
- deletedTs :: Maybe UTCTime
- | JCIDModerated {
- deletedTs :: Maybe UTCTime
- byGroupMember :: GroupMember
- jsonCIDeleted :: forall (d :: ChatType). ChatTypeI d => CIDeleted d -> JSONCIDeleted
- jsonACIDeleted :: JSONCIDeleted -> ACIDeleted
- itemDeletedTs :: forall (d :: ChatType). CIDeleted d -> Maybe UTCTime
- data CIForwardedFrom
- = CIFFUnknown
- | CIFFContact {
- chatName :: Text
- msgDir :: MsgDirection
- contactId :: Maybe ContactId
- chatItemId :: Maybe ChatItemId
- | CIFFGroup {
- chatName :: Text
- msgDir :: MsgDirection
- groupId :: Maybe GroupId
- chatItemId :: Maybe ChatItemId
- cmForwardedFrom :: AChatMsgEvent -> Maybe CIForwardedFrom
- data CIForwardedFromTag
- data ChatItemInfo = ChatItemInfo {
- itemVersions :: [ChatItemVersion]
- memberDeliveryStatuses :: Maybe (NonEmpty MemberDeliveryStatus)
- forwardedFromChatItem :: Maybe AChatItem
- data ChatItemVersion = ChatItemVersion {
- chatItemVersionId :: Int64
- msgContent :: MsgContent
- formattedText :: Maybe MarkdownList
- itemVersionTs :: UTCTime
- createdAt :: UTCTime
- mkItemVersion :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Maybe ChatItemVersion
- data MemberDeliveryStatus = MemberDeliveryStatus {
- groupMemberId :: GroupMemberId
- memberDeliveryStatus :: GroupSndStatus
- sentViaProxy :: Maybe Bool
- data CIModeration = CIModeration {
- moderationId :: Int64
- moderatorMember :: GroupMember
- createdByMsgId :: MessageId
- moderatedAt :: UTCTime
- msgMetaJson :: MsgMeta -> Text
Documentation
Constructors
| CTDirect | |
| CTGroup | |
| CTLocal | |
| CTContactRequest | |
| CTContactConnection |
Instances
| FromJSON ChatType Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ChatType parseJSONList :: Value -> Parser [ChatType] omittedField :: Maybe ChatType | |
| ToJSON ChatType Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: ChatType -> Encoding toJSONList :: [ChatType] -> Value toEncodingList :: [ChatType] -> Encoding | |
| Show ChatType Source # | |
| Eq ChatType Source # | |
| Ord ChatType Source # | |
Defined in Simplex.Chat.Messages | |
| TestEquality SChatType Source # | |
Defined in Simplex.Chat.Messages Methods testEquality :: forall (a :: ChatType) (b :: ChatType). SChatType a -> SChatType b -> Maybe (a :~: b) | |
data SChatType (c :: ChatType) where Source #
Constructors
| SCTDirect :: SChatType 'CTDirect | |
| SCTGroup :: SChatType 'CTGroup | |
| SCTLocal :: SChatType 'CTLocal | |
| SCTContactRequest :: SChatType 'CTContactRequest | |
| SCTContactConnection :: SChatType 'CTContactConnection |
Instances
| TestEquality SChatType Source # | |
Defined in Simplex.Chat.Messages Methods testEquality :: forall (a :: ChatType) (b :: ChatType). SChatType a -> SChatType b -> Maybe (a :~: b) | |
| ChatTypeI c => FromJSON (SChatType c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (SChatType c) parseJSONList :: Value -> Parser [SChatType c] omittedField :: Maybe (SChatType c) | |
| ToJSON (SChatType c) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: SChatType c -> Value toEncoding :: SChatType c -> Encoding toJSONList :: [SChatType c] -> Value toEncodingList :: [SChatType c] -> Encoding | |
| Show (SChatType c) Source # | |
checkChatType :: forall t (c :: ChatType) (c' :: ChatType). (ChatTypeI c, ChatTypeI c') => t c' -> Either String (t c) Source #
data GroupChatScope Source #
Constructors
| GCSMemberSupport | |
Fields
| |
Instances
data GroupChatScopeTag Source #
Constructors
| GCSTMemberSupport_ |
Instances
| Show GroupChatScopeTag Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> GroupChatScopeTag -> ShowS show :: GroupChatScopeTag -> String showList :: [GroupChatScopeTag] -> ShowS | |
| Eq GroupChatScopeTag Source # | |
Defined in Simplex.Chat.Messages Methods (==) :: GroupChatScopeTag -> GroupChatScopeTag -> Bool (/=) :: GroupChatScopeTag -> GroupChatScopeTag -> Bool | |
| TextEncoding GroupChatScopeTag Source # | |
Defined in Simplex.Chat.Messages | |
| FromField GroupChatScopeTag Source # | |
Defined in Simplex.Chat.Messages Methods fromField :: FieldParser GroupChatScopeTag # | |
| ToField GroupChatScopeTag Source # | |
Defined in Simplex.Chat.Messages Methods toField :: GroupChatScopeTag -> SQLData # | |
Instances
| FromJSON ChatName Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ChatName parseJSONList :: Value -> Parser [ChatName] omittedField :: Maybe ChatName | |
| ToJSON ChatName Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: ChatName -> Encoding toJSONList :: [ChatName] -> Value toEncodingList :: [ChatName] -> Encoding | |
| Show ChatName Source # | |
Constructors
| SNDirect ContactName | |
| SNGroup GroupName (Maybe GroupScopeName) | |
| SNLocal |
data GroupScopeName Source #
Constructors
| GSNMemberSupport (Maybe ContactName) |
Instances
| Show GroupScopeName Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> GroupScopeName -> ShowS show :: GroupScopeName -> String showList :: [GroupScopeName] -> ShowS | |
chatTypeStr :: ChatType -> Text Source #
chatNameStr :: ChatName -> String Source #
data ChatInfo (c :: ChatType) where Source #
Constructors
| DirectChat :: Contact -> ChatInfo 'CTDirect | |
| GroupChat :: GroupInfo -> Maybe GroupChatScopeInfo -> ChatInfo 'CTGroup | |
| LocalChat :: NoteFolder -> ChatInfo 'CTLocal | |
| ContactRequest :: UserContactRequest -> ChatInfo 'CTContactRequest | |
| ContactConnection :: PendingContactConnection -> ChatInfo 'CTContactConnection | |
| CInfoInvalidJSON :: forall (c :: ChatType). SChatType c -> Object -> ChatInfo c |
Instances
| ChatTypeI c => FromJSON (ChatInfo c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (ChatInfo c) parseJSONList :: Value -> Parser [ChatInfo c] omittedField :: Maybe (ChatInfo c) | |
| ToJSON (ChatInfo c) Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: ChatInfo c -> Encoding toJSONList :: [ChatInfo c] -> Value toEncodingList :: [ChatInfo c] -> Encoding | |
| Show (ChatInfo c) Source # | |
data GroupChatScopeInfo Source #
Constructors
| GCSIMemberSupport | |
Fields
| |
Instances
| FromJSON GroupChatScopeInfo Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser GroupChatScopeInfo parseJSONList :: Value -> Parser [GroupChatScopeInfo] omittedField :: Maybe GroupChatScopeInfo | |
| ToJSON GroupChatScopeInfo Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: GroupChatScopeInfo -> Value toEncoding :: GroupChatScopeInfo -> Encoding toJSONList :: [GroupChatScopeInfo] -> Value toEncodingList :: [GroupChatScopeInfo] -> Encoding omitField :: GroupChatScopeInfo -> Bool | |
| Show GroupChatScopeInfo Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> GroupChatScopeInfo -> ShowS show :: GroupChatScopeInfo -> String showList :: [GroupChatScopeInfo] -> ShowS | |
toMsgScope :: GroupInfo -> GroupChatScopeInfo -> MsgScope Source #
chatInfoMembership :: forall (c :: ChatType). ChatInfo c -> Maybe GroupMember Source #
data JSONChatInfo Source #
Constructors
| JCInfoDirect | |
| JCInfoGroup | |
Fields
| |
| JCInfoLocal | |
Fields | |
| JCInfoContactRequest | |
Fields | |
| JCInfoContactConnection | |
| JCInfoInvalidJSON | |
Instances
| FromJSON JSONChatInfo Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser JSONChatInfo parseJSONList :: Value -> Parser [JSONChatInfo] omittedField :: Maybe JSONChatInfo | |
| ToJSON JSONChatInfo Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONChatInfo -> Value toEncoding :: JSONChatInfo -> Encoding toJSONList :: [JSONChatInfo] -> Value toEncodingList :: [JSONChatInfo] -> Encoding omitField :: JSONChatInfo -> Bool | |
jsonChatInfo :: forall (c :: ChatType). ChatInfo c -> JSONChatInfo Source #
Instances
| FromJSON AChatInfo Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser AChatInfo parseJSONList :: Value -> Parser [AChatInfo] omittedField :: Maybe AChatInfo | |
| ToJSON AChatInfo Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: AChatInfo -> Encoding toJSONList :: [AChatInfo] -> Value toEncodingList :: [AChatInfo] -> Encoding | |
| Show AChatInfo Source # | |
data ChatItem (c :: ChatType) (d :: MsgDirection) Source #
Constructors
| ChatItem | |
Fields
| |
Instances
| (ChatTypeI c, MsgDirectionI d) => FromJSON (ChatItem c d) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (ChatItem c d) parseJSONList :: Value -> Parser [ChatItem c d] omittedField :: Maybe (ChatItem c d) | |
| (ChatTypeI c, MsgDirectionI d) => ToJSON (ChatItem c d) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: ChatItem c d -> Value toEncoding :: ChatItem c d -> Encoding toJSONList :: [ChatItem c d] -> Value toEncodingList :: [ChatItem c d] -> Encoding | |
| Show (ChatItem c d) Source # | |
Constructors
| CIMention | |
Fields
| |
Instances
| FromJSON CIMention Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser CIMention parseJSONList :: Value -> Parser [CIMention] omittedField :: Maybe CIMention | |
| ToJSON CIMention Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: CIMention -> Encoding toJSONList :: [CIMention] -> Value toEncodingList :: [CIMention] -> Encoding | |
| Show CIMention Source # | |
| Eq CIMention Source # | |
data CIMentionMember Source #
Constructors
| CIMentionMember | |
Fields
| |
Instances
| FromJSON CIMentionMember Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser CIMentionMember parseJSONList :: Value -> Parser [CIMentionMember] omittedField :: Maybe CIMentionMember | |
| ToJSON CIMentionMember Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIMentionMember -> Value toEncoding :: CIMentionMember -> Encoding toJSONList :: [CIMentionMember] -> Value toEncodingList :: [CIMentionMember] -> Encoding omitField :: CIMentionMember -> Bool | |
| Show CIMentionMember Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIMentionMember -> ShowS show :: CIMentionMember -> String showList :: [CIMentionMember] -> ShowS | |
| Eq CIMentionMember Source # | |
Defined in Simplex.Chat.Messages Methods (==) :: CIMentionMember -> CIMentionMember -> Bool (/=) :: CIMentionMember -> CIMentionMember -> Bool | |
isACIUserMention :: AChatItem -> Bool Source #
isUserMention :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Bool Source #
data CIDirection (c :: ChatType) (d :: MsgDirection) where Source #
Constructors
| CIDirectSnd :: CIDirection 'CTDirect 'MDSnd | |
| CIDirectRcv :: CIDirection 'CTDirect 'MDRcv | |
| CIGroupSnd :: CIDirection 'CTGroup 'MDSnd | |
| CIGroupRcv :: GroupMember -> CIDirection 'CTGroup 'MDRcv | |
| CILocalSnd :: CIDirection 'CTLocal 'MDSnd | |
| CILocalRcv :: CIDirection 'CTLocal 'MDRcv |
Instances
| (ChatTypeI c, MsgDirectionI d) => FromJSON (CIDirection c d) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIDirection c d) parseJSONList :: Value -> Parser [CIDirection c d] omittedField :: Maybe (CIDirection c d) | |
| ToJSON (CIDirection c d) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIDirection c d -> Value toEncoding :: CIDirection c d -> Encoding toJSONList :: [CIDirection c d] -> Value toEncodingList :: [CIDirection c d] -> Encoding omitField :: CIDirection c d -> Bool | |
| Show (CIDirection c d) Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIDirection c d -> ShowS show :: CIDirection c d -> String showList :: [CIDirection c d] -> ShowS | |
data CCIDirection (c :: ChatType) Source #
Constructors
| MsgDirectionI d => CCID (SMsgDirection d) (CIDirection c d) |
Instances
| ChatTypeI c => FromJSON (CCIDirection c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CCIDirection c) parseJSONList :: Value -> Parser [CCIDirection c] omittedField :: Maybe (CCIDirection c) | |
data ACIDirection Source #
Constructors
| (ChatTypeI c, MsgDirectionI d) => ACID (SChatType c) (SMsgDirection d) (CIDirection c d) |
Instances
| FromJSON ACIDirection Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ACIDirection parseJSONList :: Value -> Parser [ACIDirection] omittedField :: Maybe ACIDirection | |
data JSONCIDirection Source #
Constructors
| JCIDirectSnd | |
| JCIDirectRcv | |
| JCIGroupSnd | |
| JCIGroupRcv | |
Fields | |
| JCILocalSnd | |
| JCILocalRcv | |
Instances
| FromJSON JSONCIDirection Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser JSONCIDirection parseJSONList :: Value -> Parser [JSONCIDirection] omittedField :: Maybe JSONCIDirection | |
| ToJSON JSONCIDirection Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONCIDirection -> Value toEncoding :: JSONCIDirection -> Encoding toJSONList :: [JSONCIDirection] -> Value toEncodingList :: [JSONCIDirection] -> Encoding omitField :: JSONCIDirection -> Bool | |
| Show JSONCIDirection Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> JSONCIDirection -> ShowS show :: JSONCIDirection -> String showList :: [JSONCIDirection] -> ShowS | |
jsonCIDirection :: forall (c :: ChatType) (d :: MsgDirection). CIDirection c d -> JSONCIDirection Source #
data CIReactionCount Source #
Constructors
| CIReactionCount | |
Fields
| |
Instances
| FromJSON CIReactionCount Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser CIReactionCount parseJSONList :: Value -> Parser [CIReactionCount] omittedField :: Maybe CIReactionCount | |
| ToJSON CIReactionCount Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIReactionCount -> Value toEncoding :: CIReactionCount -> Encoding toJSONList :: [CIReactionCount] -> Value toEncodingList :: [CIReactionCount] -> Encoding omitField :: CIReactionCount -> Bool | |
| Show CIReactionCount Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIReactionCount -> ShowS show :: CIReactionCount -> String showList :: [CIReactionCount] -> ShowS | |
data CChatItem (c :: ChatType) Source #
Constructors
| MsgDirectionI d => CChatItem (SMsgDirection d) (ChatItem c d) |
Instances
| ChatTypeI c => FromJSON (CChatItem c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CChatItem c) parseJSONList :: Value -> Parser [CChatItem c] omittedField :: Maybe (CChatItem c) | |
| ChatTypeI c => ToJSON (CChatItem c) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CChatItem c -> Value toEncoding :: CChatItem c -> Encoding toJSONList :: [CChatItem c] -> Value toEncodingList :: [CChatItem c] -> Encoding | |
| Show (CChatItem c) Source # | |
cChatItemId :: forall (c :: ChatType). CChatItem c -> ChatItemId Source #
chatItemId' :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> ChatItemId Source #
chatItemTs :: forall (c :: ChatType). CChatItem c -> UTCTime Source #
chatItemTs' :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> UTCTime Source #
ciCreatedAt :: forall (c :: ChatType). CChatItem c -> UTCTime Source #
ciCreatedAt' :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> UTCTime Source #
chatItemTimed :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Maybe CITimed Source #
timedDeleteAt' :: CITimed -> Maybe UTCTime Source #
chatItemMember :: forall (d :: MsgDirection). GroupInfo -> ChatItem 'CTGroup d -> GroupMember Source #
chatItemRcvFromMember :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Maybe GroupMember Source #
chatItemIsRcvNew :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Bool Source #
ciReactionAllowed :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Bool Source #
data ChatDirection (c :: ChatType) (d :: MsgDirection) where Source #
Constructors
| CDDirectSnd :: Contact -> ChatDirection 'CTDirect 'MDSnd | |
| CDDirectRcv :: Contact -> ChatDirection 'CTDirect 'MDRcv | |
| CDGroupSnd :: GroupInfo -> Maybe GroupChatScopeInfo -> ChatDirection 'CTGroup 'MDSnd | |
| CDGroupRcv :: GroupInfo -> Maybe GroupChatScopeInfo -> GroupMember -> ChatDirection 'CTGroup 'MDRcv | |
| CDLocalSnd :: NoteFolder -> ChatDirection 'CTLocal 'MDSnd | |
| CDLocalRcv :: NoteFolder -> ChatDirection 'CTLocal 'MDRcv |
toCIDirection :: forall (c :: ChatType) (d :: MsgDirection). ChatDirection c d -> CIDirection c d Source #
toChatInfo :: forall (c :: ChatType) (d :: MsgDirection). ChatDirection c d -> ChatInfo c Source #
contactChatDeleted :: forall (c :: ChatType) (d :: MsgDirection). ChatDirection c d -> Bool Source #
data NewChatItem (d :: MsgDirection) Source #
Constructors
| NewChatItem | |
Fields
| |
Instances
| Show (NewChatItem d) Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> NewChatItem d -> ShowS show :: NewChatItem d -> String showList :: [NewChatItem d] -> ShowS | |
data Chat (c :: ChatType) Source #
type to show one chat with messages
Instances
| ChatTypeI c => ToJSON (Chat c) Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: Chat c -> Encoding toJSONList :: [Chat c] -> Value toEncodingList :: [Chat c] -> Encoding | |
| Show (Chat c) Source # | |
Instances
| FromJSON AChat Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser AChat parseJSONList :: Value -> Parser [AChat] omittedField :: Maybe AChat | |
| ToJSON AChat Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: AChat -> Encoding toJSONList :: [AChat] -> Value toEncodingList :: [AChat] -> Encoding | |
| Show AChat Source # | |
Constructors
| ChatStats | |
Fields
| |
Instances
| FromJSON ChatStats Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ChatStats parseJSONList :: Value -> Parser [ChatStats] omittedField :: Maybe ChatStats | |
| ToJSON ChatStats Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: ChatStats -> Encoding toJSONList :: [ChatStats] -> Value toEncodingList :: [ChatStats] -> Encoding | |
| Show ChatStats Source # | |
data NavigationInfo Source #
Constructors
| NavigationInfo | |
Fields
| |
Instances
type to show a mix of messages from multiple chats
Constructors
| (ChatTypeI c, MsgDirectionI d) => AChatItem (SChatType c) (SMsgDirection d) (ChatInfo c) (ChatItem c d) |
Instances
| FromJSON AChatItem Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser AChatItem parseJSONList :: Value -> Parser [AChatItem] omittedField :: Maybe AChatItem | |
| ToJSON AChatItem Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: AChatItem -> Encoding toJSONList :: [AChatItem] -> Value toEncodingList :: [AChatItem] -> Encoding | |
| Show AChatItem Source # | |
data JSONAnyChatItem (c :: ChatType) (d :: MsgDirection) Source #
Constructors
| JSONAnyChatItem | |
Instances
| (ChatTypeI c, MsgDirectionI d) => ToJSON (JSONAnyChatItem c d) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONAnyChatItem c d -> Value toEncoding :: JSONAnyChatItem c d -> Encoding toJSONList :: [JSONAnyChatItem c d] -> Value toEncodingList :: [JSONAnyChatItem c d] -> Encoding omitField :: JSONAnyChatItem c d -> Bool | |
aChatItems :: AChat -> [AChatItem] Source #
aChatItemId :: AChatItem -> Int64 Source #
aChatItemTs :: AChatItem -> UTCTime Source #
aChatItemDir :: AChatItem -> MsgDirection Source #
aChatItemRcvFromMember :: AChatItem -> Maybe GroupMember Source #
aChatItemIsRcvNew :: AChatItem -> Bool Source #
updateFileStatus :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> CIFileStatus d -> ChatItem c d Source #
data CIMeta (c :: ChatType) (d :: MsgDirection) Source #
Constructors
| CIMeta | |
Fields
| |
Instances
| (ChatTypeI c, MsgDirectionI d) => FromJSON (CIMeta c d) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIMeta c d) parseJSONList :: Value -> Parser [CIMeta c d] omittedField :: Maybe (CIMeta c d) | |
| ChatTypeI c => ToJSON (CIMeta c d) Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: CIMeta c d -> Encoding toJSONList :: [CIMeta c d] -> Value toEncodingList :: [CIMeta c d] -> Encoding | |
| Show (CIMeta c d) Source # | |
type ShowGroupAsSender = Bool Source #
mkCIMeta :: forall (c :: ChatType) (d :: MsgDirection). ChatTypeI c => ChatItemId -> CIContent d -> Text -> CIStatus d -> Maybe Bool -> Maybe SharedMsgId -> Maybe CIForwardedFrom -> Maybe (CIDeleted c) -> Bool -> Maybe CITimed -> Maybe Bool -> Bool -> UTCTime -> ChatItemTs -> Maybe GroupMemberId -> Bool -> UTCTime -> UTCTime -> CIMeta c d Source #
deletable' :: forall (c :: ChatType) (d :: MsgDirection). ChatTypeI c => CIContent d -> Maybe (CIDeleted c) -> UTCTime -> NominalDiffTime -> UTCTime -> Bool Source #
Instances
| FromJSON CITimed Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser CITimed parseJSONList :: Value -> Parser [CITimed] omittedField :: Maybe CITimed | |
| ToJSON CITimed Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: CITimed -> Encoding toJSONList :: [CITimed] -> Value toEncodingList :: [CITimed] -> Encoding | |
| Show CITimed Source # | |
contactTimedTTL :: Contact -> Maybe (Maybe Int) Source #
groupTimedTTL :: GroupInfo -> Maybe (Maybe Int) Source #
rcvContactCITimed :: Contact -> Maybe Int -> Maybe CITimed Source #
rcvGroupCITimed :: GroupInfo -> Maybe Int -> Maybe CITimed Source #
rcvCITimed_ :: Maybe (Maybe Int) -> Maybe Int -> Maybe CITimed Source #
data CIQuote (c :: ChatType) Source #
Constructors
| CIQuote | |
Fields
| |
Instances
| ChatTypeI c => FromJSON (CIQuote c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIQuote c) parseJSONList :: Value -> Parser [CIQuote c] omittedField :: Maybe (CIQuote c) | |
| ToJSON (CIQuote c) Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: CIQuote c -> Encoding toJSONList :: [CIQuote c] -> Value toEncodingList :: [CIQuote c] -> Encoding | |
| Show (CIQuote c) Source # | |
quoteItemId :: forall (c :: ChatType). CIQuote c -> Maybe ChatItemId Source #
data CIReaction (c :: ChatType) (d :: MsgDirection) Source #
Constructors
| CIReaction | |
Fields
| |
Instances
| (ChatTypeI c, MsgDirectionI d) => FromJSON (CIReaction c d) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIReaction c d) parseJSONList :: Value -> Parser [CIReaction c d] omittedField :: Maybe (CIReaction c d) | |
| ChatTypeI c => ToJSON (CIReaction c d) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIReaction c d -> Value toEncoding :: CIReaction c d -> Encoding toJSONList :: [CIReaction c d] -> Value toEncodingList :: [CIReaction c d] -> Encoding omitField :: CIReaction c d -> Bool | |
| Show (CIReaction c d) Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIReaction c d -> ShowS show :: CIReaction c d -> String showList :: [CIReaction c d] -> ShowS | |
data AnyCIReaction Source #
Constructors
| ChatTypeI c => ACIR (SChatType c) (SMsgDirection d) (CIReaction c d) |
Instances
| FromJSON AnyCIReaction Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser AnyCIReaction parseJSONList :: Value -> Parser [AnyCIReaction] omittedField :: Maybe AnyCIReaction | |
data ACIReaction Source #
Constructors
| ChatTypeI c => ACIReaction (SChatType c) (SMsgDirection d) (ChatInfo c) (CIReaction c d) |
Instances
| FromJSON ACIReaction Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ACIReaction parseJSONList :: Value -> Parser [ACIReaction] omittedField :: Maybe ACIReaction | |
| ToJSON ACIReaction Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: ACIReaction -> Value toEncoding :: ACIReaction -> Encoding toJSONList :: [ACIReaction] -> Value toEncodingList :: [ACIReaction] -> Encoding omitField :: ACIReaction -> Bool | |
| Show ACIReaction Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> ACIReaction -> ShowS show :: ACIReaction -> String showList :: [ACIReaction] -> ShowS | |
data JSONCIReaction (c :: ChatType) (d :: MsgDirection) Source #
Constructors
| JSONCIReaction | |
Fields
| |
Instances
| ChatTypeI c => ToJSON (JSONCIReaction c d) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONCIReaction c d -> Value toEncoding :: JSONCIReaction c d -> Encoding toJSONList :: [JSONCIReaction c d] -> Value toEncodingList :: [JSONCIReaction c d] -> Encoding omitField :: JSONCIReaction c d -> Bool | |
data MemberReaction Source #
Constructors
| MemberReaction | |
Fields
| |
Instances
| FromJSON MemberReaction Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser MemberReaction parseJSONList :: Value -> Parser [MemberReaction] omittedField :: Maybe MemberReaction | |
| ToJSON MemberReaction Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: MemberReaction -> Value toEncoding :: MemberReaction -> Encoding toJSONList :: [MemberReaction] -> Value toEncodingList :: [MemberReaction] -> Encoding omitField :: MemberReaction -> Bool | |
| Show MemberReaction Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> MemberReaction -> ShowS show :: MemberReaction -> String showList :: [MemberReaction] -> ShowS | |
type family ChatTypeQuotable (a :: ChatType) where ... Source #
Equations
| ChatTypeQuotable 'CTDirect = () | |
| ChatTypeQuotable 'CTGroup = () | |
| ChatTypeQuotable a = (Int ~ Bool, TypeError (('Text "ChatType " ':<>: 'ShowType a) ':<>: 'Text " cannot be quoted") :: Constraint) |
data CIQDirection (c :: ChatType) where Source #
Constructors
| CIQDirectSnd :: CIQDirection 'CTDirect | |
| CIQDirectRcv :: CIQDirection 'CTDirect | |
| CIQGroupSnd :: CIQDirection 'CTGroup | |
| CIQGroupRcv :: Maybe GroupMember -> CIQDirection 'CTGroup |
Instances
| ChatTypeI c => FromJSON (CIQDirection c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIQDirection c) parseJSONList :: Value -> Parser [CIQDirection c] omittedField :: Maybe (CIQDirection c) | |
| ToJSON (CIQDirection c) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIQDirection c -> Value toEncoding :: CIQDirection c -> Encoding toJSONList :: [CIQDirection c] -> Value toEncodingList :: [CIQDirection c] -> Encoding omitField :: CIQDirection c -> Bool | |
| Show (CIQDirection c) Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIQDirection c -> ShowS show :: CIQDirection c -> String showList :: [CIQDirection c] -> ShowS | |
data ACIQDirection Source #
Constructors
| (ChatTypeI c, ChatTypeQuotable c) => ACIQDirection (SChatType c) (CIQDirection c) |
jsonCIQDirection :: forall (c :: ChatType). CIQDirection c -> Maybe JSONCIDirection Source #
jsonACIQDirection :: Maybe JSONCIDirection -> Either String ACIQDirection Source #
quoteMsgDirection :: forall (c :: ChatType). CIQDirection c -> MsgDirection Source #
data CIFile (d :: MsgDirection) Source #
Constructors
| CIFile | |
Fields
| |
Instances
| MsgDirectionI d => FromJSON (CIFile d) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIFile d) parseJSONList :: Value -> Parser [CIFile d] omittedField :: Maybe (CIFile d) | |
| MsgDirectionI d => ToJSON (CIFile d) Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: CIFile d -> Encoding toJSONList :: [CIFile d] -> Value toEncodingList :: [CIFile d] -> Encoding | |
| Show (CIFile d) Source # | |
data FileProtocol Source #
Instances
data CIFileStatus (d :: MsgDirection) where Source #
Constructors
| CIFSSndStored :: CIFileStatus 'MDSnd | |
| CIFSSndTransfer | |
Fields
| |
| CIFSSndCancelled :: CIFileStatus 'MDSnd | |
| CIFSSndComplete :: CIFileStatus 'MDSnd | |
| CIFSSndError | |
Fields
| |
| CIFSSndWarning | |
Fields
| |
| CIFSRcvInvitation :: CIFileStatus 'MDRcv | |
| CIFSRcvAccepted :: CIFileStatus 'MDRcv | |
| CIFSRcvTransfer | |
Fields
| |
| CIFSRcvAborted :: CIFileStatus 'MDRcv | |
| CIFSRcvComplete :: CIFileStatus 'MDRcv | |
| CIFSRcvCancelled :: CIFileStatus 'MDRcv | |
| CIFSRcvError | |
Fields
| |
| CIFSRcvWarning | |
Fields
| |
| CIFSInvalid | |
Fields
| |
Instances
ciFileEnded :: forall (d :: MsgDirection). CIFileStatus d -> Bool Source #
ciFileLoaded :: forall (d :: MsgDirection). CIFileStatus d -> Bool Source #
data ForwardFileError Source #
Constructors
| FFENotAccepted FileTransferId | |
| FFEInProgress | |
| FFEFailed | |
| FFEMissing |
Instances
| Eq ForwardFileError Source # | |
Defined in Simplex.Chat.Messages Methods (==) :: ForwardFileError -> ForwardFileError -> Bool (/=) :: ForwardFileError -> ForwardFileError -> Bool | |
| Ord ForwardFileError Source # | |
Defined in Simplex.Chat.Messages Methods compare :: ForwardFileError -> ForwardFileError -> Ordering (<) :: ForwardFileError -> ForwardFileError -> Bool (<=) :: ForwardFileError -> ForwardFileError -> Bool (>) :: ForwardFileError -> ForwardFileError -> Bool (>=) :: ForwardFileError -> ForwardFileError -> Bool max :: ForwardFileError -> ForwardFileError -> ForwardFileError min :: ForwardFileError -> ForwardFileError -> ForwardFileError | |
ciFileForwardError :: forall (d :: MsgDirection). FileTransferId -> CIFileStatus d -> Maybe ForwardFileError Source #
data ACIFileStatus Source #
Constructors
| MsgDirectionI d => AFS (SMsgDirection d) (CIFileStatus d) |
Instances
| Show ACIFileStatus Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> ACIFileStatus -> ShowS show :: ACIFileStatus -> String showList :: [ACIFileStatus] -> ShowS | |
| StrEncoding ACIFileStatus Source # | |
Defined in Simplex.Chat.Messages Methods strEncode :: ACIFileStatus -> ByteString strDecode :: ByteString -> Either String ACIFileStatus strP :: Parser ACIFileStatus | |
| FromField ACIFileStatus Source # | |
Defined in Simplex.Chat.Messages Methods fromField :: FieldParser ACIFileStatus # | |
data JSONCIFileStatus Source #
Constructors
| JCIFSSndStored | |
| JCIFSSndTransfer | |
Fields
| |
| JCIFSSndCancelled | |
| JCIFSSndComplete | |
| JCIFSSndError | |
Fields | |
| JCIFSSndWarning | |
Fields | |
| JCIFSRcvInvitation | |
| JCIFSRcvAccepted | |
| JCIFSRcvTransfer | |
Fields
| |
| JCIFSRcvAborted | |
| JCIFSRcvComplete | |
| JCIFSRcvCancelled | |
| JCIFSRcvError | |
Fields | |
| JCIFSRcvWarning | |
Fields | |
| JCIFSInvalid | |
Fields
| |
Instances
| FromJSON JSONCIFileStatus Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser JSONCIFileStatus parseJSONList :: Value -> Parser [JSONCIFileStatus] omittedField :: Maybe JSONCIFileStatus | |
| ToJSON JSONCIFileStatus Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONCIFileStatus -> Value toEncoding :: JSONCIFileStatus -> Encoding toJSONList :: [JSONCIFileStatus] -> Value toEncodingList :: [JSONCIFileStatus] -> Encoding omitField :: JSONCIFileStatus -> Bool | |
jsonCIFileStatus :: forall (d :: MsgDirection). CIFileStatus d -> JSONCIFileStatus Source #
Constructors
| FileErrAuth | |
| FileErrBlocked | |
| FileErrNoFile | |
| FileErrRelay | |
| FileErrOther | |
Fields
| |
Instances
| FromJSON FileError Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser FileError parseJSONList :: Value -> Parser [FileError] omittedField :: Maybe FileError | |
| ToJSON FileError Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: FileError -> Encoding toJSONList :: [FileError] -> Value toEncodingList :: [FileError] -> Encoding | |
| Show FileError Source # | |
| Eq FileError Source # | |
| StrEncoding FileError Source # | |
data CIFileInfo Source #
Constructors
| CIFileInfo | |
Fields
| |
Instances
| Show CIFileInfo Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIFileInfo -> ShowS show :: CIFileInfo -> String showList :: [CIFileInfo] -> ShowS | |
mkCIFileInfo :: forall (d :: MsgDirection). MsgDirectionI d => CIFile d -> CIFileInfo Source #
data CIStatus (d :: MsgDirection) where Source #
Constructors
| CISSndNew :: CIStatus 'MDSnd | |
| CISSndSent :: SndCIStatusProgress -> CIStatus 'MDSnd | |
| CISSndRcvd :: MsgReceiptStatus -> SndCIStatusProgress -> CIStatus 'MDSnd | |
| CISSndErrorAuth :: CIStatus 'MDSnd | |
| CISSndError :: SndError -> CIStatus 'MDSnd | |
| CISSndWarning :: SndError -> CIStatus 'MDSnd | |
| CISRcvNew :: CIStatus 'MDRcv | |
| CISRcvRead :: CIStatus 'MDRcv | |
| CISInvalid :: Text -> CIStatus 'MDSnd |
Instances
| MsgDirectionI d => FromJSON (CIStatus d) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIStatus d) parseJSONList :: Value -> Parser [CIStatus d] omittedField :: Maybe (CIStatus d) | |
| ToJSON (CIStatus d) Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: CIStatus d -> Encoding toJSONList :: [CIStatus d] -> Value toEncodingList :: [CIStatus d] -> Encoding | |
| Show (CIStatus d) Source # | |
| Eq (CIStatus d) Source # | |
| MsgDirectionI d => StrEncoding (CIStatus d) Source # | |
| (Typeable d, MsgDirectionI d) => FromField (CIStatus d) Source # | |
Defined in Simplex.Chat.Messages | |
| MsgDirectionI d => ToField (CIStatus d) Source # | |
Defined in Simplex.Chat.Messages | |
Constructors
| MsgDirectionI d => ACIStatus (SMsgDirection d) (CIStatus d) |
Constructors
| SndErrAuth | |
| SndErrQuota | |
| SndErrExpired | |
| SndErrRelay | |
| SndErrProxy | |
Fields
| |
| SndErrProxyRelay | |
Fields
| |
| SndErrOther | |
Fields
| |
Instances
| FromJSON SndError Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser SndError parseJSONList :: Value -> Parser [SndError] omittedField :: Maybe SndError | |
| ToJSON SndError Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: SndError -> Encoding toJSONList :: [SndError] -> Value toEncodingList :: [SndError] -> Encoding | |
| Show SndError Source # | |
| Eq SndError Source # | |
| StrEncoding SndError Source # | |
Constructors
| SrvErrHost | |
| SrvErrVersion | |
| SrvErrOther | |
Fields
| |
Instances
| FromJSON SrvError Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser SrvError parseJSONList :: Value -> Parser [SrvError] omittedField :: Maybe SrvError | |
| ToJSON SrvError Source # | |
Defined in Simplex.Chat.Messages Methods toEncoding :: SrvError -> Encoding toJSONList :: [SrvError] -> Value toEncodingList :: [SrvError] -> Encoding | |
| Show SrvError Source # | |
| Eq SrvError Source # | |
| StrEncoding SrvError Source # | |
data JSONCIStatus Source #
Constructors
| JCISSndNew | |
| JCISSndSent | |
Fields | |
| JCISSndRcvd | |
Fields
| |
| JCISSndErrorAuth | |
| JCISSndError | |
Fields | |
| JCISSndWarning | |
Fields | |
| JCISRcvNew | |
| JCISRcvRead | |
| JCISInvalid | |
Fields
| |
Instances
| FromJSON JSONCIStatus Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser JSONCIStatus parseJSONList :: Value -> Parser [JSONCIStatus] omittedField :: Maybe JSONCIStatus | |
| ToJSON JSONCIStatus Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONCIStatus -> Value toEncoding :: JSONCIStatus -> Encoding toJSONList :: [JSONCIStatus] -> Value toEncodingList :: [JSONCIStatus] -> Encoding omitField :: JSONCIStatus -> Bool | |
| Show JSONCIStatus Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> JSONCIStatus -> ShowS show :: JSONCIStatus -> String showList :: [JSONCIStatus] -> ShowS | |
jsonCIStatus :: forall (d :: MsgDirection). CIStatus d -> JSONCIStatus Source #
ciStatusNew :: forall (d :: MsgDirection). MsgDirectionI d => CIStatus d Source #
ciCreateStatus :: forall (d :: MsgDirection). MsgDirectionI d => CIContent d -> CIStatus d Source #
membersGroupItemStatus :: [(GroupSndStatus, Int)] -> CIStatus 'MDSnd Source #
data SndCIStatusProgress Source #
Constructors
| SSPPartial | |
| SSPComplete |
Instances
data GroupSndStatus Source #
Constructors
| GSSNew | |
| GSSForwarded | |
| GSSInactive | |
| GSSSent | |
| GSSRcvd | |
Fields
| |
| GSSError | |
Fields | |
| GSSWarning | |
Fields | |
| GSSInvalid | |
Fields
| |
Instances
type ChatItemId = Int64 Source #
type ChatItemTs = UTCTime Source #
data SndMessage Source #
Constructors
| SndMessage | |
Fields
| |
Instances
| Show SndMessage Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> SndMessage -> ShowS show :: SndMessage -> String showList :: [SndMessage] -> ShowS | |
data NewRcvMessage (e :: MsgEncoding) Source #
Constructors
| NewRcvMessage | |
Fields
| |
Instances
| Show (NewRcvMessage e) Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> NewRcvMessage e -> ShowS show :: NewRcvMessage e -> String showList :: [NewRcvMessage e] -> ShowS | |
data RcvMessage Source #
Constructors
| RcvMessage | |
Fields
| |
data ConnOrGroupId Source #
Constructors
| ConnectionId Int64 | |
| GroupId Int64 |
data SndMsgDelivery Source #
Constructors
| SndMsgDelivery | |
Fields
| |
Instances
| Show SndMsgDelivery Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> SndMsgDelivery -> ShowS show :: SndMsgDelivery -> String showList :: [SndMsgDelivery] -> ShowS | |
data RcvMsgDelivery Source #
Constructors
| RcvMsgDelivery | |
Fields
| |
Instances
| Show RcvMsgDelivery Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> RcvMsgDelivery -> ShowS show :: RcvMsgDelivery -> String showList :: [RcvMsgDelivery] -> ShowS | |
data RcvMsgInfo Source #
Constructors
| RcvMsgInfo | |
Fields
| |
Instances
| FromJSON RcvMsgInfo Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser RcvMsgInfo parseJSONList :: Value -> Parser [RcvMsgInfo] omittedField :: Maybe RcvMsgInfo | |
| ToJSON RcvMsgInfo Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: RcvMsgInfo -> Value toEncoding :: RcvMsgInfo -> Encoding toJSONList :: [RcvMsgInfo] -> Value toEncodingList :: [RcvMsgInfo] -> Encoding omitField :: RcvMsgInfo -> Bool | |
| Show RcvMsgInfo Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> RcvMsgInfo -> ShowS show :: RcvMsgInfo -> String showList :: [RcvMsgInfo] -> ShowS | |
data MsgMetaJSON Source #
Constructors
| MsgMetaJSON | |
Instances
| FromJSON MsgMetaJSON Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser MsgMetaJSON parseJSONList :: Value -> Parser [MsgMetaJSON] omittedField :: Maybe MsgMetaJSON | |
| ToJSON MsgMetaJSON Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: MsgMetaJSON -> Value toEncoding :: MsgMetaJSON -> Encoding toJSONList :: [MsgMetaJSON] -> Value toEncodingList :: [MsgMetaJSON] -> Encoding omitField :: MsgMetaJSON -> Bool | |
| Show MsgMetaJSON Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> MsgMetaJSON -> ShowS show :: MsgMetaJSON -> String showList :: [MsgMetaJSON] -> ShowS | |
| Eq MsgMetaJSON Source # | |
Defined in Simplex.Chat.Messages | |
msgMetaToJson :: MsgMeta -> MsgMetaJSON Source #
data MsgDeliveryStatus (d :: MsgDirection) where Source #
Constructors
| MDSRcvAgent :: MsgDeliveryStatus 'MDRcv | |
| MDSRcvAcknowledged :: MsgDeliveryStatus 'MDRcv | |
| MDSSndPending :: MsgDeliveryStatus 'MDSnd | |
| MDSSndAgent :: MsgDeliveryStatus 'MDSnd | |
| MDSSndSent :: MsgDeliveryStatus 'MDSnd | |
| MDSSndRcvd :: MsgReceiptStatus -> MsgDeliveryStatus 'MDSnd | |
| MDSSndRead :: MsgDeliveryStatus 'MDSnd |
Instances
| (Typeable d, MsgDirectionI d) => FromField (MsgDeliveryStatus d) Source # | |
Defined in Simplex.Chat.Messages Methods fromField :: FieldParser (MsgDeliveryStatus d) # | |
| ToField (MsgDeliveryStatus d) Source # | |
Defined in Simplex.Chat.Messages Methods toField :: MsgDeliveryStatus d -> SQLData # | |
data AMsgDeliveryStatus Source #
Constructors
| AMDS (SMsgDirection d) (MsgDeliveryStatus d) |
serializeMsgDeliveryStatus :: forall (d :: MsgDirection). MsgDeliveryStatus d -> Text Source #
msgDeliveryStatusT :: Text -> Maybe AMsgDeliveryStatus Source #
msgDeliveryStatusT' :: forall (d :: MsgDirection). MsgDirectionI d => Text -> Maybe (MsgDeliveryStatus d) Source #
data CIDeleted (c :: ChatType) where Source #
Constructors
| CIDeleted :: forall (c :: ChatType). Maybe UTCTime -> CIDeleted c | |
| CIBlocked :: Maybe UTCTime -> CIDeleted 'CTGroup | |
| CIBlockedByAdmin :: Maybe UTCTime -> CIDeleted 'CTGroup | |
| CIModerated :: Maybe UTCTime -> GroupMember -> CIDeleted 'CTGroup |
Instances
| ChatTypeI c => FromJSON (CIDeleted c) Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser (CIDeleted c) parseJSONList :: Value -> Parser [CIDeleted c] omittedField :: Maybe (CIDeleted c) | |
| ChatTypeI c => ToJSON (CIDeleted c) Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIDeleted c -> Value toEncoding :: CIDeleted c -> Encoding toJSONList :: [CIDeleted c] -> Value toEncodingList :: [CIDeleted c] -> Encoding | |
| Show (CIDeleted c) Source # | |
data ACIDeleted Source #
Constructors
| ChatTypeI c => ACIDeleted (SChatType c) (CIDeleted c) |
data JSONCIDeleted Source #
Constructors
| JCIDDeleted | |
| JCIDBlocked | |
Fields
| |
| JCIDBlockedByAdmin | |
Fields
| |
| JCIDModerated | |
Fields
| |
Instances
| FromJSON JSONCIDeleted Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser JSONCIDeleted parseJSONList :: Value -> Parser [JSONCIDeleted] omittedField :: Maybe JSONCIDeleted | |
| ToJSON JSONCIDeleted Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: JSONCIDeleted -> Value toEncoding :: JSONCIDeleted -> Encoding toJSONList :: [JSONCIDeleted] -> Value toEncodingList :: [JSONCIDeleted] -> Encoding omitField :: JSONCIDeleted -> Bool | |
| Show JSONCIDeleted Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> JSONCIDeleted -> ShowS show :: JSONCIDeleted -> String showList :: [JSONCIDeleted] -> ShowS | |
jsonCIDeleted :: forall (d :: ChatType). ChatTypeI d => CIDeleted d -> JSONCIDeleted Source #
itemDeletedTs :: forall (d :: ChatType). CIDeleted d -> Maybe UTCTime Source #
data CIForwardedFrom Source #
Constructors
| CIFFUnknown | |
| CIFFContact | |
Fields
| |
| CIFFGroup | |
Fields
| |
Instances
| FromJSON CIForwardedFrom Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser CIForwardedFrom parseJSONList :: Value -> Parser [CIForwardedFrom] omittedField :: Maybe CIForwardedFrom | |
| ToJSON CIForwardedFrom Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: CIForwardedFrom -> Value toEncoding :: CIForwardedFrom -> Encoding toJSONList :: [CIForwardedFrom] -> Value toEncodingList :: [CIForwardedFrom] -> Encoding omitField :: CIForwardedFrom -> Bool | |
| Show CIForwardedFrom Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIForwardedFrom -> ShowS show :: CIForwardedFrom -> String showList :: [CIForwardedFrom] -> ShowS | |
cmForwardedFrom :: AChatMsgEvent -> Maybe CIForwardedFrom Source #
data CIForwardedFromTag Source #
Constructors
| CIFFUnknown_ | |
| CIFFContact_ | |
| CIFFGroup_ |
Instances
| TextEncoding CIForwardedFromTag Source # | |
Defined in Simplex.Chat.Messages | |
| FromField CIForwardedFromTag Source # | |
Defined in Simplex.Chat.Messages Methods fromField :: FieldParser CIForwardedFromTag # | |
| ToField CIForwardedFromTag Source # | |
Defined in Simplex.Chat.Messages Methods toField :: CIForwardedFromTag -> SQLData # | |
data ChatItemInfo Source #
Constructors
| ChatItemInfo | |
Fields
| |
Instances
| FromJSON ChatItemInfo Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ChatItemInfo parseJSONList :: Value -> Parser [ChatItemInfo] omittedField :: Maybe ChatItemInfo | |
| ToJSON ChatItemInfo Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: ChatItemInfo -> Value toEncoding :: ChatItemInfo -> Encoding toJSONList :: [ChatItemInfo] -> Value toEncodingList :: [ChatItemInfo] -> Encoding omitField :: ChatItemInfo -> Bool | |
| Show ChatItemInfo Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> ChatItemInfo -> ShowS show :: ChatItemInfo -> String showList :: [ChatItemInfo] -> ShowS | |
data ChatItemVersion Source #
Constructors
| ChatItemVersion | |
Fields
| |
Instances
| FromJSON ChatItemVersion Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser ChatItemVersion parseJSONList :: Value -> Parser [ChatItemVersion] omittedField :: Maybe ChatItemVersion | |
| ToJSON ChatItemVersion Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: ChatItemVersion -> Value toEncoding :: ChatItemVersion -> Encoding toJSONList :: [ChatItemVersion] -> Value toEncodingList :: [ChatItemVersion] -> Encoding omitField :: ChatItemVersion -> Bool | |
| Show ChatItemVersion Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> ChatItemVersion -> ShowS show :: ChatItemVersion -> String showList :: [ChatItemVersion] -> ShowS | |
| Eq ChatItemVersion Source # | |
Defined in Simplex.Chat.Messages Methods (==) :: ChatItemVersion -> ChatItemVersion -> Bool (/=) :: ChatItemVersion -> ChatItemVersion -> Bool | |
mkItemVersion :: forall (c :: ChatType) (d :: MsgDirection). ChatItem c d -> Maybe ChatItemVersion Source #
data MemberDeliveryStatus Source #
Constructors
| MemberDeliveryStatus | |
Fields
| |
Instances
| FromJSON MemberDeliveryStatus Source # | |
Defined in Simplex.Chat.Messages Methods parseJSON :: Value -> Parser MemberDeliveryStatus parseJSONList :: Value -> Parser [MemberDeliveryStatus] omittedField :: Maybe MemberDeliveryStatus | |
| ToJSON MemberDeliveryStatus Source # | |
Defined in Simplex.Chat.Messages Methods toJSON :: MemberDeliveryStatus -> Value toEncoding :: MemberDeliveryStatus -> Encoding toJSONList :: [MemberDeliveryStatus] -> Value toEncodingList :: [MemberDeliveryStatus] -> Encoding omitField :: MemberDeliveryStatus -> Bool | |
| Show MemberDeliveryStatus Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> MemberDeliveryStatus -> ShowS show :: MemberDeliveryStatus -> String showList :: [MemberDeliveryStatus] -> ShowS | |
| Eq MemberDeliveryStatus Source # | |
Defined in Simplex.Chat.Messages Methods (==) :: MemberDeliveryStatus -> MemberDeliveryStatus -> Bool (/=) :: MemberDeliveryStatus -> MemberDeliveryStatus -> Bool | |
data CIModeration Source #
Constructors
| CIModeration | |
Fields
| |
Instances
| Show CIModeration Source # | |
Defined in Simplex.Chat.Messages Methods showsPrec :: Int -> CIModeration -> ShowS show :: CIModeration -> String showList :: [CIModeration] -> ShowS | |
msgMetaJson :: MsgMeta -> Text Source #