matterhorn-90000.0.0: Terminal client for the Mattermost chat system
Safe HaskellSafe-Inferred
LanguageHaskell2010

Matterhorn.Types.Core

Synopsis

Documentation

data Name Source #

This Name type is the type used in brick to identify various parts of the interface.

Constructors

MessageInterfaceMessages Name

The rendering of messages for the specified message interface (by editor name)

MessageInput ChannelId

The message editor for the specified channel's main message interface

MessageInputPrompt Name

A wrapper name for reporting the extent of a message editor's prompt. The specified name is the name of the editor whose prompt extent is being reported.

ChannelListViewport TeamId

The name of the channel list viewport for the specified team.

HelpViewport

The name of the viewport for the help interface.

PostList

The tag for messages rendered in the post list window.

HelpContent HelpScreen

The cache key constructor for caching help screen content.

CompletionList Name

The name of the list of completion alternatives in the specified editor's autocomplete pop-up.

JoinChannelList TeamId

The name of the channel list in the "/join" window.

UrlList Name

The name of a URL listing for the specified message interface's editor name.

MessagePreviewViewport Name

The name of the message interface editor's preview area.

ThemeListSearchInput TeamId

The list of themes in the "/theme" window for the specified team.

UserListSearchInput TeamId

The editor name for the user search input in the specified team's user list window.

JoinChannelListSearchInput TeamId

The editor name for the search input in the specified team's "/join" window.

UserListSearchResults TeamId

The list name for the specified team's user list window search results.

ThemeListSearchResults TeamId

The list name for the specified team's theme list window search results.

ViewMessageArea TeamId

The viewport for the specified team's single-message view window.

ViewMessageReactionsArea TeamId

The viewport for the specified team's single-message view window's reaction tab.

ChannelSidebar TeamId

The cache key for the specified team's channel list viewport contents.

ChannelSelectInput TeamId

The editor name for the specified team's channel selection mode editor.

AttachmentList ChannelId

The name of the attachment list for the specified channel's message interface.

AttachmentFileBrowser ChannelId 
ReactionEmojiList TeamId

The name of the list of emoji to choose from for reactions for the specified team.

ReactionEmojiListInput TeamId

The name of the search editor for the specified team's emoji search window.

TabbedWindowTabBar TeamId

The name of the specified team's tabbed window tab bar viewport.

MuteToggleField TeamId

The name of the channel preferences mute form field.

ChannelMentionsField TeamId

The name of the channel preferences mentions form field.

DesktopNotificationsField TeamId (WithDefault NotifyOption)

The name of the channel preferences desktop notifications form field.

PushNotificationsField TeamId (WithDefault NotifyOption)

The name of the channel preferences push notifications form field.

ChannelTopicEditor TeamId

The specified team's channel topic window editor.

ChannelTopicSaveButton TeamId

The specified team's channel topic window save button.

ChannelTopicCancelButton TeamId

The specified team's channel topic window canel button.

ChannelTopicEditorPreview TeamId

The specified team's channel topic window preview area viewport.

ThreadMessageInput ChannelId

The message editor for the specified channel's thread view.

ThreadEditorAttachmentList ChannelId

The list name for the specified channel's thread message interface's attachment list.

ChannelTopic ChannelId

The mouse click area tag for a rendered channel topic.

TeamList

The viewport name for the team list.

ClickableChannelSelectEntry ChannelSelectMatch

The name of a clickable channel select entry in the channel select match list.

ClickableChannelListEntry ChannelId

The name of a clickable entry in the channel list.

ClickableTeamListEntry TeamId

The name of a clickable entry in the team list.

ClickableURL (Maybe MessageId) Name Int LinkTarget

The name of a clickable URL rendered in RichText. If provided, the message ID is the ID of the message in which the URL appears. The integer is the URL index in the rich text block for unique identification.

ClickableReaction PostId Name Text (Set UserId)

The name of a clickable reaction rendered in RichText when it is part of a message.

ClickableAttachmentInMessage Name FileId

The name of a clickable attachment.

ClickableUsername (Maybe MessageId) Name Int Text

The name of a clickable username rendered in RichText. The message ID and integer sequence number uniquely identify the clickable region.

ClickableURLListEntry Int LinkTarget

The name of a clickable URL list entry. The integer is the list index.

ClickableChannelListGroupHeading ChannelListGroupLabel

The name of a clickable channel list group heading.

ClickableReactionEmojiListWindowEntry (Bool, Text)

The name of a clickable reaction emoji list entry.

AttachmentPathEditor Name

The name of the specified message interface's attachment browser path editor.

AttachmentPathSaveButton Name

The name of the specified message interface's attachment browser save button.

AttachmentPathCancelButton Name

The name of the specified message interface's attachment browser cancel button.

RenderedMessage MessageId

The cache key for the rendering of the specified message.

SelectedChannelListEntry TeamId

The name of the specified team's currently selected channel list entry, used to bring the entry into view in its viewport.

VScrollBar ClickableScrollbarElement Name

The name of the scroll bar elements for the specified viewport name.

Instances

Instances details
Show Name Source # 
Instance details

Defined in Matterhorn.Types.Core

Methods

showsPrec :: Int -> Name -> ShowS #

show :: Name -> String #

showList :: [Name] -> ShowS #

Eq Name Source # 
Instance details

Defined in Matterhorn.Types.Core

Methods

(==) :: Name -> Name -> Bool #

(/=) :: Name -> Name -> Bool #

Ord Name Source # 
Instance details

Defined in Matterhorn.Types.Core

Methods

compare :: Name -> Name -> Ordering #

(<) :: Name -> Name -> Bool #

(<=) :: Name -> Name -> Bool #

(>) :: Name -> Name -> Bool #

(>=) :: Name -> Name -> Bool #

max :: Name -> Name -> Name #

min :: Name -> Name -> Name #

SemEq Name Source # 
Instance details

Defined in Matterhorn.Types

Methods

semeq :: Name -> Name -> Bool Source #

data ChannelSelectMatch Source #

A match in channel selection mode.

Constructors

ChannelSelectMatch 

Fields

  • nameBefore :: Text

    The content of the match before the user's matching input.

  • nameMatched :: Text

    The potion of the name that matched the user's input.

  • nameAfter :: Text

    The portion of the name that came after the user's matching input.

  • matchFull :: Text

    The full string for this entry so it doesn't have to be reassembled from the parts above.

  • matchEntry :: ChannelListEntry

    The original entry data corresponding to the text match.

data KeyEvent Source #

This enum represents all the possible key events a user might want to use.

Constructors

VtyRefreshEvent 
ShowHelpEvent 
EnterSelectModeEvent 
ReplyRecentEvent 
ToggleMessagePreviewEvent 
InvokeEditorEvent 
EnterFastSelectModeEvent 
QuitEvent 
NextChannelEvent 
PrevChannelEvent 
NextChannelEventAlternate 
PrevChannelEventAlternate 
NextUnreadChannelEvent 
NextUnreadUserOrChannelEvent 
LastChannelEvent 
EnterOpenURLModeEvent 
ClearUnreadEvent 
ToggleMultiLineEvent 
EnterFlaggedPostsEvent 
ToggleChannelListVisibleEvent 
ToggleExpandedChannelTopicsEvent 
ShowAttachmentListEvent 
ChangeMessageEditorFocus 
EditorKillToBolEvent 
EditorKillToEolEvent 
EditorBolEvent 
EditorEolEvent 
EditorTransposeCharsEvent 
EditorDeleteCharacter 
EditorPrevCharEvent 
EditorNextCharEvent 
EditorPrevWordEvent 
EditorNextWordEvent 
EditorDeleteNextWordEvent 
EditorDeletePrevWordEvent 
EditorHomeEvent 
EditorEndEvent 
EditorYankEvent 
CycleChannelListSorting 
SelectNextTabEvent 
SelectPreviousTabEvent 
SaveAttachmentEvent 
CancelEvent 
LoadMoreEvent 
OpenMessageURLEvent 
ScrollUpEvent 
ScrollDownEvent 
ScrollLeftEvent 
ScrollRightEvent 
PageUpEvent 
PageDownEvent 
PageRightEvent 
PageLeftEvent 
ScrollTopEvent 
ScrollBottomEvent 
SelectOldestMessageEvent 
ChannelListScrollUpEvent 
ChannelListScrollDownEvent 
SelectUpEvent 
SelectDownEvent 
SearchSelectUpEvent 
SearchSelectDownEvent 
ActivateListItemEvent 
ViewMessageEvent 
FillGapEvent 
CopyPostLinkEvent 
FlagMessageEvent 
OpenThreadEvent 
PinMessageEvent 
YankMessageEvent 
YankWholeMessageEvent 
DeleteMessageEvent 
EditMessageEvent 
ReplyMessageEvent 
ReactToMessageEvent 
OpenMessageInExternalEditorEvent 
AttachmentListAddEvent 
AttachmentListDeleteEvent 
AttachmentOpenEvent 
FileBrowserBeginSearchEvent 
FileBrowserSelectEnterEvent 
FileBrowserSelectCurrentEvent 
FileBrowserListPageUpEvent 
FileBrowserListPageDownEvent 
FileBrowserListHalfPageUpEvent 
FileBrowserListHalfPageDownEvent 
FileBrowserListTopEvent 
FileBrowserListBottomEvent 
FileBrowserListNextEvent 
FileBrowserListPrevEvent 
FormSubmitEvent 
NextTeamEvent 
PrevTeamEvent 
MoveCurrentTeamLeftEvent 
MoveCurrentTeamRightEvent 

data MessageId Source #

Instances

Instances details
Generic MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

Associated Types

type Rep MessageId :: Type -> Type #

Read MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

Show MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

Eq MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

Ord MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

Hashable MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

type Rep MessageId Source # 
Instance details

Defined in Matterhorn.Types.Core

type Rep MessageId = D1 ('MetaData "MessageId" "Matterhorn.Types.Core" "matterhorn-90000.0.0-BoeDK4C3Xo9HO2An4hJdTx" 'False) (C1 ('MetaCons "MessagePostId" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PostId)) :+: C1 ('MetaCons "MessageUUID" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UUID)))

data MessageSelectState Source #

The state of message selection mode.

data HelpScreen Source #

The HelpScreen type represents the set of possible Help screens we have to choose from.