Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions src/Web/Slack/Types/Event.hs
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ data Event where
ChannelRename :: ChannelRenameInfo -> Event
ChannelUnarchive :: ChannelId -> UserId -> Event
CommandsChanged :: SlackTimeStamp -> Event
DesktopNotification :: Event
EmailDomainChange :: Domain -> SlackTimeStamp -> Event
EmojiChanged :: SlackTimeStamp -> Event
FileChange :: File -> Event
Expand All @@ -53,6 +54,7 @@ data Event where
FilePublic :: FileReference -> Event
FileShared :: FileReference -> Event
FileUnshared :: File -> Event
Goodbye :: Event
GroupArchive :: ChannelId -> Event
GroupClose :: UserId -> ChannelId -> Event
GroupHistoryChanged :: SlackTimeStamp -> SlackTimeStamp -> SlackTimeStamp -> Event
Expand All @@ -70,6 +72,7 @@ data Event where
ImMarked :: IMId -> SlackTimeStamp -> Event
ImOpen :: UserId -> IMId -> Event
ManualPresenceChange :: Presence -> Event
MemberJoinedChannel :: ChannelId -> SlackTimeStamp -> UserId {- inviter -} -> UserId {- invitee -} -> Event
Message :: ChannelId -> Submitter -> Text -> SlackTimeStamp -> Maybe Subtype -> Maybe Edited -> Event
MessageError :: Int -> SlackError -> Event
MessageResponse :: Int -> SlackTimeStamp -> Text -> Event
Expand Down Expand Up @@ -128,6 +131,7 @@ parseType o@(Object v) typ =
"channel_rename" -> ChannelRename <$> v .: "channel"
"channel_unarchive" -> ChannelUnarchive <$> v .: "channel" <*> v .: "user"
"commands_changed" -> CommandsChanged <$> v .: "event_ts"
"desktop_notification" -> pure DesktopNotification
"email_domain_changed" -> EmailDomainChange <$> v .: "email_domain" <*> v .: "event_ts"
"emoji_changed" -> EmojiChanged <$> v .: "event_ts"
"file_change" -> FileChange <$> v .: "file"
Expand All @@ -140,6 +144,7 @@ parseType o@(Object v) typ =
"file_public" -> FilePublic <$> v .: "file"
"file_shared" -> FileShared <$> v .: "file"
"file_unshared" -> FileUnshared <$> v .: "file"
"goodbye" -> pure Goodbye
"group_archive" -> GroupArchive <$> v .: "channel"
"group_close" -> GroupClose <$> v .: "user" <*> v .: "channel"
"group_history_changed" -> GroupHistoryChanged <$> v .: "latest" <*> v .: "ts" <*> v .: "event_ts"
Expand All @@ -156,6 +161,7 @@ parseType o@(Object v) typ =
"im_marked" -> ImMarked <$> v .: "channel" <*> v .: "ts"
"im_open" -> ImOpen <$> v .: "user" <*> v .: "channel"
"manual_presence_change" -> ManualPresenceChange <$> v .: "presence"
"member_joined_channel" -> MemberJoinedChannel <$> v.: "channel" <*> v.: "event_ts" <*> v.: "inviter" <*> v.: "user"
"message" -> do
subt <- (\case
Nothing -> return Nothing
Expand Down