module Matterhorn.Events.LeaveChannelConfirm where

import           Prelude ()
import           Matterhorn.Prelude

import qualified Graphics.Vty as Vty

import           Network.Mattermost.Types ( TeamId )

import           Matterhorn.State.Channels
import           Matterhorn.Types


onEventLeaveChannelConfirm :: TeamId -> Vty.Event -> MH ()
onEventLeaveChannelConfirm :: TeamId -> Event -> MH ()
onEventLeaveChannelConfirm TeamId
tId (Vty.EvKey Key
k []) = do
    case Key
k of
        Vty.KChar Char
c | Char
c Char -> [Char] -> Bool
forall (t :: * -> *) a. (Foldable t, Eq a) => a -> t a -> Bool
`elem` ([Char]
"yY"::String) ->
            TeamId -> MH ()
leaveCurrentChannel TeamId
tId
        Key
_ -> () -> MH ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
    TeamId -> MH ()
popMode TeamId
tId
onEventLeaveChannelConfirm TeamId
_ Event
_ = () -> MH ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()