gWU 8      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                          ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 None6Kh3Message text in the format returned by Slack, see  -https://api.slack.com/docs/message-formatting Consider using  messageToHtml for displaying.8 9 8 9 None"#];Convert the slack format for messages (markdown like, see  -https://api.slack.com/docs/message-formatting ) to HTML.>Renderers allow you to customize the message rendering. Give  for a default implementation.9A function giving a user name for a user id. You can use  "A slack message to convert to HTML The HTML-formatted slack message    : ;<=>?@ABCDEFG NoneHINone "#6K"%not present for bot messages at least#Cthe message text is in a markdown-like slack-specific format. Use  to convert it to HTML.80Errors that can be triggered by a slack request.9"errors from the network connection: errors returned by the slack API#  !"#$%&'012389:#  '0123 !"#$%&89: !"#$%&012389:None6@ACBDEFGHIJKOPQ@ABCDEFGHIJKOPQ@ ABCDEFGHIJKOPQNone6h WXYZ[\]abc WXYZ[\]abcWXYZ[\]abcNone6! ijlqkmnopuvw ijklmnopquvwijklmnopquvwNone6""}~"}~} ~None6$**None6&  None6'       None-FSTTJInternal type!Implements the   and  typeclasses."Check API calling code. &https://api.slack.com/methods/api.test#"Check authentication and identity. 'https://api.slack.com/methods/auth.test$Create a channel. -https://api.slack.com/methods/channels.create%Retrieve channel list. +https://api.slack.com/methods/channels.list&*Retrieve channel history. Consider using 0" in combination with this function .https://api.slack.com/methods/channels.history'Send a message to a channel. .https://api.slack.com/methods/chat.postMessage(This method returns a list of private channels in the team that the caller is in and archived groups that the caller was in. The list of (non-deactivated) members in each private channel is also returned. )https://api.slack.com/methods/groups.list)This method returns a portion of messages/events from the specified private channel. To read the entire history for a private channel, call the method with no latest or oldest arguments, and then continue paging. Consider using 0" in combination with this function ,https://api.slack.com/methods/groups.history*?Returns a list of all direct message channels that the user has %https://api.slack.com/methods/im.list+9Retrieve direct message channel history. Consider using 0" in combination with this function (https://api.slack.com/methods/im.history,JReturns a list of all multiparty direct message channels that the user has 'https://api.slack.com/methods/mpim.list-DRetrieve multiparty direct message channel history. Consider using 0" in combination with this function *https://api.slack.com/methods/mpim.history.^This method returns a list of all users in the team. This includes deleted/deactivated users. (https://api.slack.com/methods/users.list/,Returns a function to get a username from a . Comes in handy to use 0<Fetch all history items between two dates. The basic calls &, ), +_ and so on may not return exhaustive results if there were too many records. You need to use + to find out whether you got all the data.This function will repeatedly call the underlying history function until all the data is fetched or until a call fails, merging the messages obtained from each call.2tPrepare a SlackConfig from a slack token. You can then call the other functions providing this in a reader context./EA function to give a default username in case the username is unknown0List of users as known by the slack server. See ..A function from  to username.0)The request to make. Can be for instance -, &...The channel name to query'The number of entries to fetch at once.*The oldest timestamp to fetch records from(The newest timestamp to fetch records toYA list merging all the history records that were fetched through the individual queries. !"#$%&'()*+,-./0122"#'$%&)(0+*,-/.1 !JKLM !N             !!"#$%&'()**+,-./0123456789::;<=>?@ABCDEFGHHIJKLMNOPQRSTUVVWXYZ[\]]^_`abcdeVVfgYZ[\hhijklmnopqrVVstYZ[\uuvwxyz{|}~VVYZ[\                                  !""# $ % & & ' '((slack-web-0.2.0.4-Fw3pXSwF0Fq6zoaZ0Q3wVhWeb.Slack.CommonWeb.Slack.MessageParserWeb.Slack.User Web.Slack.ImWeb.Slack.GroupWeb.Slack.ChatWeb.Slack.ChannelWeb.Slack.Auth Web.Slack.Api Web.SlackWeb.Slack.Types getUserDescWeb.Slack.Util messageToHtmlhistoryRspHasMoreSlackTimestampslackTimestampTsslackTimestampTimeSlackMessageTextunSlackMessageTextUserIdunUserIdColorunColormkSlackTimestamp HtmlRenderersemoticonRendererdefaultHtmlRenderers$fShowSlackUrl $fEqSlackUrl$fShowSlackMsgItem$fEqSlackMsgItem HistoryReqhistoryReqChannelhistoryReqCounthistoryReqLatesthistoryReqOldesthistoryReqInclusive$fEqHistoryReq$fGenericHistoryReq$fShowHistoryReqMessage messageType messageUser messageText messageTs MessageTypeMessageTypeMessage mkHistoryReq$fToFormHistoryReq$fFromJSONHistoryReq$fFromJSONMessageType$fEqMessageType$fShowMessageType $fEqMessage$fGenericMessage $fShowMessage HistoryRsphistoryRspMessages$fFromJSONMessage$fEqHistoryRsp$fGenericHistoryRsp$fShowHistoryRspSlackClientError ServantError SlackError$fFromJSONHistoryRsp$fExceptionSlackClientError$fEqSlackClientError$fGenericSlackClientError$fShowSlackClientErrorUseruserIduserName userDeleted userColor userIsAdmin userIsOwneruserIsPrimaryOwneruserIsRestricteduserIsUltraRestricted userUpdated$fEqUser $fGenericUser $fShowUserListRsplistRspMembers$fFromJSONUser $fEqListRsp$fGenericListRsp $fShowListRsp$fFromJSONListRspImimIdimIsImimUser imCreatedimIsUserDeleted$fEqIm $fGenericIm$fShowIm listRspIms $fFromJSONImGroupgroupId groupName groupIsMpim groupCreated groupCreatorgroupIsArchived groupMembers $fEqGroup$fGenericGroup $fShowGroup listRspGroups$fFromJSONGroupPostMsg postMsgText postMsgParsepostMsgLinkNamespostMsgAttachmentspostMsgUnfurlLinkspostMsgUnfurlMediapostMsgUsername postMsgAsUserpostMsgIconUrlpostMsgIconEmojipostMsgThreadTspostMsgReplyBroadcast $fEqPostMsg$fGenericPostMsg $fShowPostMsg PostMsgReqpostMsgReqChannelpostMsgReqTextpostMsgReqParsepostMsgReqLinkNamespostMsgReqAttachmentspostMsgReqUnfurlLinkspostMsgReqUnfurlMediapostMsgReqUsernamepostMsgReqAsUserpostMsgReqIconUrlpostMsgReqIconEmojipostMsgReqThreadTspostMsgReqReplyBroadcast$fFromJSONPostMsg$fToJSONPostMsg$fEqPostMsgReq$fGenericPostMsgReq$fShowPostMsgReq PostMsgRsp postMsgRspTspostMsgRspMessage mkPostMsgReq$fToFormPostMsgReq$fFromJSONPostMsgReq$fToJSONPostMsgReq$fEqPostMsgRsp$fGenericPostMsgRsp$fShowPostMsgRsp$fFromJSONPostMsgRspTopic topicValue topicCreator topicLastSetPurpose purposeValuepurposeCreatorpurposeLastSetChannel channelId channelNamechannelCreatedchannelCreatorchannelIsArchivedchannelIsMemberchannelIsGeneralchannelLastRead channelLatestchannelUnreadCountchannelUnreadCountDisplaychannelMembers channelTopicchannelPurpose $fEqPurpose$fGenericPurpose $fShowPurpose $fEqTopic$fGenericTopic $fShowTopic $fEqChannel$fGenericChannel $fShowChannel$fFromJSONChannel$fFromJSONPurpose$fToJSONPurpose CreateReq createReqNamecreateReqValidate$fFromJSONTopic $fToJSONTopic $fEqCreateReq$fGenericCreateReq$fShowCreateReq CreateRspcreateRspChannel mkCreateReq$fToFormCreateReq$fFromJSONCreateReq$fToJSONCreateReq $fEqCreateRsp$fGenericCreateRsp$fShowCreateRspListReqlistReqExcludeArchivedlistReqExcludeMembers$fFromJSONCreateRsp $fEqListReq$fGenericListReq $fShowListReqlistRspChannels mkListReq$fToFormListReq$fFromJSONListReq$fToJSONListReqTestRsp testRspUrl testRspTeam testRspUser testRspTeamId testRspUserIdtestRspEnterpriseId $fEqTestRsp$fGenericTestRsp $fShowTestRsp$fFromJSONTestRsp$fToJSONTestRspTestReq testReqError testReqFoo $fEqTestReq$fGenericTestReq $fShowTestReq testRspArgs mkTestReq$fToFormTestReq$fFromJSONTestReq$fToJSONTestReqResponse SlackConfigslackConfigManagerslackConfigTokenHasTokengetToken HasManager getManagerapiTestauthTestchannelsCreate channelsListchannelsHistorychatPostMessage groupsList groupsHistoryimList imHistorympimList mpimHistory usersListhistoryFetchAllauthenticateReq mkSlackConfig$fHasTokenSlackConfig$fHasManagerSlackConfig$fFromJSONResponseJSON$fEqResponseSlackError$fShowResponseSlackError SlackMsgItemSlackMsgItemPlainTextSlackMsgItemBoldSectionSlackMsgItemItalicsSection SlackMsgItemStrikethroughSectionSlackMsgItemLinkSlackMsgItemUserLinkSlackMsgItemInlineCodeSectionSlackMsgItemCodeSectionSlackMsgItemQuotedSlackMsgItemEmoticonSlackUrl unSlackUrlformOptsjsonOpts ResponseJSONResponseSlackError