{-# LANGUAGE OverloadedStrings #-} module Web.Routes.Nested.FileExtListener.Text where import Web.Routes.Nested.FileExtListener.Types import Data.Map import qualified Data.Text.Lazy as LT import qualified Data.Text.Lazy.Encoding as LT import Network.HTTP.Types (RequestHeaders, Status, status200) import Network.Wai import Control.Monad.Writer text :: Monad m => LT.Text -> FileExtListenerT Response m () text i = let r = responseLBS status200 [("Content-Type", "text/plain")] $ LT.encodeUtf8 i in FileExtListenerT $ tell $ FileExts $ singleton Text r textStatus :: Monad m => Status -> LT.Text -> FileExtListenerT Response m () textStatus s i = let r = responseLBS s [("Content-Type", "text/plain")] $ LT.encodeUtf8 i in FileExtListenerT $ tell $ FileExts $ singleton Text r textHeaders :: Monad m => RequestHeaders -> LT.Text -> FileExtListenerT Response m () textHeaders hs i = let r = responseLBS status200 hs $ LT.encodeUtf8 i in FileExtListenerT $ tell $ FileExts $ singleton Text r textStatusHeaders :: Monad m => Status -> RequestHeaders -> LT.Text -> FileExtListenerT Response m () textStatusHeaders s hs i = let r = responseLBS s hs $ LT.encodeUtf8 i in FileExtListenerT $ tell $ FileExts $ singleton Text r textOnly :: LT.Text -> Response textOnly i = responseLBS status200 [("Content-Type", "text/plain")] $ LT.encodeUtf8 i textOnlyStatus :: Status -> LT.Text -> Response textOnlyStatus s i = responseLBS s [("Content-Type", "text/plain")] $ LT.encodeUtf8 i textOnlyHeaders :: RequestHeaders -> LT.Text -> Response textOnlyHeaders hs i = responseLBS status200 hs $ LT.encodeUtf8 i textOnlyStatusHeaders :: Status -> RequestHeaders -> LT.Text -> Response textOnlyStatusHeaders s hs i = responseLBS s hs $ LT.encodeUtf8 i