module Types
(
AppS(..)
, OverlayS(..)
, AppR(..)
, CustomHeaderR(..)
, CustomHeaderColumn(..)
, RangeInAlign(..)
, VertAlign
, WideAlign
, left
, top
) where
import Brick.Types (Extent)
import Brick.Widgets.Edit (Editor)
import Brick.Widgets.List (List)
import qualified Data.ByteString.Lazy as Lazy (ByteString)
import qualified Network.HTTP.Client as HC
import Data.Text (Text)
import Graphics.Vty.Image (Image)
import HTTP.Client (Header, Method)
data AppS = AppS
{ AppS -> AppR
focus :: AppR
, AppS -> Editor Method AppR
methodEditor :: !(Editor Method AppR)
, AppS -> Maybe OverlayS
overlayState :: !(Maybe OverlayS)
, AppS -> Editor Method AppR
urlEditor :: !(Editor String AppR)
, AppS -> Image
lastResponse :: !Image
, :: !Bool
, :: ![(Bool, Header)]
, :: !(Maybe (Editor Text AppR))
, AppS -> Maybe ByteString
payload :: !(Maybe Lazy.ByteString)
, AppS -> Manager
connManager :: !HC.Manager
}
data OverlayS = OverlayS
{ OverlayS -> Extent AppR
methodEditorExtent :: Extent AppR
, OverlayS -> List AppR Method
methodList :: List AppR Method
}
data AppR
= MethodEditor
| UrlEditor
|
| CustomHeaderR
|
| ResponseBodyView
| MethodSelector
deriving (AppR -> AppR -> Bool
(AppR -> AppR -> Bool) -> (AppR -> AppR -> Bool) -> Eq AppR
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: AppR -> AppR -> Bool
== :: AppR -> AppR -> Bool
$c/= :: AppR -> AppR -> Bool
/= :: AppR -> AppR -> Bool
Eq, Eq AppR
Eq AppR =>
(AppR -> AppR -> Ordering)
-> (AppR -> AppR -> Bool)
-> (AppR -> AppR -> Bool)
-> (AppR -> AppR -> Bool)
-> (AppR -> AppR -> Bool)
-> (AppR -> AppR -> AppR)
-> (AppR -> AppR -> AppR)
-> Ord AppR
AppR -> AppR -> Bool
AppR -> AppR -> Ordering
AppR -> AppR -> AppR
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: AppR -> AppR -> Ordering
compare :: AppR -> AppR -> Ordering
$c< :: AppR -> AppR -> Bool
< :: AppR -> AppR -> Bool
$c<= :: AppR -> AppR -> Bool
<= :: AppR -> AppR -> Bool
$c> :: AppR -> AppR -> Bool
> :: AppR -> AppR -> Bool
$c>= :: AppR -> AppR -> Bool
>= :: AppR -> AppR -> Bool
$cmax :: AppR -> AppR -> AppR
max :: AppR -> AppR -> AppR
$cmin :: AppR -> AppR -> AppR
min :: AppR -> AppR -> AppR
Ord, Int -> AppR -> ShowS
[AppR] -> ShowS
AppR -> Method
(Int -> AppR -> ShowS)
-> (AppR -> Method) -> ([AppR] -> ShowS) -> Show AppR
forall a.
(Int -> a -> ShowS) -> (a -> Method) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> AppR -> ShowS
showsPrec :: Int -> AppR -> ShowS
$cshow :: AppR -> Method
show :: AppR -> Method
$cshowList :: [AppR] -> ShowS
showList :: [AppR] -> ShowS
Show)
data =
{ CustomHeaderR -> Int
listIndex :: !Int
, CustomHeaderR -> CustomHeaderColumn
column :: !CustomHeaderColumn
}
deriving (CustomHeaderR -> CustomHeaderR -> Bool
(CustomHeaderR -> CustomHeaderR -> Bool)
-> (CustomHeaderR -> CustomHeaderR -> Bool) -> Eq CustomHeaderR
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CustomHeaderR -> CustomHeaderR -> Bool
== :: CustomHeaderR -> CustomHeaderR -> Bool
$c/= :: CustomHeaderR -> CustomHeaderR -> Bool
/= :: CustomHeaderR -> CustomHeaderR -> Bool
Eq, Eq CustomHeaderR
Eq CustomHeaderR =>
(CustomHeaderR -> CustomHeaderR -> Ordering)
-> (CustomHeaderR -> CustomHeaderR -> Bool)
-> (CustomHeaderR -> CustomHeaderR -> Bool)
-> (CustomHeaderR -> CustomHeaderR -> Bool)
-> (CustomHeaderR -> CustomHeaderR -> Bool)
-> (CustomHeaderR -> CustomHeaderR -> CustomHeaderR)
-> (CustomHeaderR -> CustomHeaderR -> CustomHeaderR)
-> Ord CustomHeaderR
CustomHeaderR -> CustomHeaderR -> Bool
CustomHeaderR -> CustomHeaderR -> Ordering
CustomHeaderR -> CustomHeaderR -> CustomHeaderR
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: CustomHeaderR -> CustomHeaderR -> Ordering
compare :: CustomHeaderR -> CustomHeaderR -> Ordering
$c< :: CustomHeaderR -> CustomHeaderR -> Bool
< :: CustomHeaderR -> CustomHeaderR -> Bool
$c<= :: CustomHeaderR -> CustomHeaderR -> Bool
<= :: CustomHeaderR -> CustomHeaderR -> Bool
$c> :: CustomHeaderR -> CustomHeaderR -> Bool
> :: CustomHeaderR -> CustomHeaderR -> Bool
$c>= :: CustomHeaderR -> CustomHeaderR -> Bool
>= :: CustomHeaderR -> CustomHeaderR -> Bool
$cmax :: CustomHeaderR -> CustomHeaderR -> CustomHeaderR
max :: CustomHeaderR -> CustomHeaderR -> CustomHeaderR
$cmin :: CustomHeaderR -> CustomHeaderR -> CustomHeaderR
min :: CustomHeaderR -> CustomHeaderR -> CustomHeaderR
Ord, Int -> CustomHeaderR -> ShowS
[CustomHeaderR] -> ShowS
CustomHeaderR -> Method
(Int -> CustomHeaderR -> ShowS)
-> (CustomHeaderR -> Method)
-> ([CustomHeaderR] -> ShowS)
-> Show CustomHeaderR
forall a.
(Int -> a -> ShowS) -> (a -> Method) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CustomHeaderR -> ShowS
showsPrec :: Int -> CustomHeaderR -> ShowS
$cshow :: CustomHeaderR -> Method
show :: CustomHeaderR -> Method
$cshowList :: [CustomHeaderR] -> ShowS
showList :: [CustomHeaderR] -> ShowS
Show)
data CustomHeaderColumn
= ActiveToggle
| NameEditor
| ValueEditor
deriving (CustomHeaderColumn -> CustomHeaderColumn -> Bool
(CustomHeaderColumn -> CustomHeaderColumn -> Bool)
-> (CustomHeaderColumn -> CustomHeaderColumn -> Bool)
-> Eq CustomHeaderColumn
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
== :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
$c/= :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
/= :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
Eq, Eq CustomHeaderColumn
Eq CustomHeaderColumn =>
(CustomHeaderColumn -> CustomHeaderColumn -> Ordering)
-> (CustomHeaderColumn -> CustomHeaderColumn -> Bool)
-> (CustomHeaderColumn -> CustomHeaderColumn -> Bool)
-> (CustomHeaderColumn -> CustomHeaderColumn -> Bool)
-> (CustomHeaderColumn -> CustomHeaderColumn -> Bool)
-> (CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn)
-> (CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn)
-> Ord CustomHeaderColumn
CustomHeaderColumn -> CustomHeaderColumn -> Bool
CustomHeaderColumn -> CustomHeaderColumn -> Ordering
CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: CustomHeaderColumn -> CustomHeaderColumn -> Ordering
compare :: CustomHeaderColumn -> CustomHeaderColumn -> Ordering
$c< :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
< :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
$c<= :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
<= :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
$c> :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
> :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
$c>= :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
>= :: CustomHeaderColumn -> CustomHeaderColumn -> Bool
$cmax :: CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn
max :: CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn
$cmin :: CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn
min :: CustomHeaderColumn -> CustomHeaderColumn -> CustomHeaderColumn
Ord, Int -> CustomHeaderColumn -> ShowS
[CustomHeaderColumn] -> ShowS
CustomHeaderColumn -> Method
(Int -> CustomHeaderColumn -> ShowS)
-> (CustomHeaderColumn -> Method)
-> ([CustomHeaderColumn] -> ShowS)
-> Show CustomHeaderColumn
forall a.
(Int -> a -> ShowS) -> (a -> Method) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CustomHeaderColumn -> ShowS
showsPrec :: Int -> CustomHeaderColumn -> ShowS
$cshow :: CustomHeaderColumn -> Method
show :: CustomHeaderColumn -> Method
$cshowList :: [CustomHeaderColumn] -> ShowS
showList :: [CustomHeaderColumn] -> ShowS
Show)
data RangeInAlign
= Min
| MidL
| MidG
| Max
deriving (RangeInAlign -> RangeInAlign -> Bool
(RangeInAlign -> RangeInAlign -> Bool)
-> (RangeInAlign -> RangeInAlign -> Bool) -> Eq RangeInAlign
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: RangeInAlign -> RangeInAlign -> Bool
== :: RangeInAlign -> RangeInAlign -> Bool
$c/= :: RangeInAlign -> RangeInAlign -> Bool
/= :: RangeInAlign -> RangeInAlign -> Bool
Eq, Eq RangeInAlign
Eq RangeInAlign =>
(RangeInAlign -> RangeInAlign -> Ordering)
-> (RangeInAlign -> RangeInAlign -> Bool)
-> (RangeInAlign -> RangeInAlign -> Bool)
-> (RangeInAlign -> RangeInAlign -> Bool)
-> (RangeInAlign -> RangeInAlign -> Bool)
-> (RangeInAlign -> RangeInAlign -> RangeInAlign)
-> (RangeInAlign -> RangeInAlign -> RangeInAlign)
-> Ord RangeInAlign
RangeInAlign -> RangeInAlign -> Bool
RangeInAlign -> RangeInAlign -> Ordering
RangeInAlign -> RangeInAlign -> RangeInAlign
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: RangeInAlign -> RangeInAlign -> Ordering
compare :: RangeInAlign -> RangeInAlign -> Ordering
$c< :: RangeInAlign -> RangeInAlign -> Bool
< :: RangeInAlign -> RangeInAlign -> Bool
$c<= :: RangeInAlign -> RangeInAlign -> Bool
<= :: RangeInAlign -> RangeInAlign -> Bool
$c> :: RangeInAlign -> RangeInAlign -> Bool
> :: RangeInAlign -> RangeInAlign -> Bool
$c>= :: RangeInAlign -> RangeInAlign -> Bool
>= :: RangeInAlign -> RangeInAlign -> Bool
$cmax :: RangeInAlign -> RangeInAlign -> RangeInAlign
max :: RangeInAlign -> RangeInAlign -> RangeInAlign
$cmin :: RangeInAlign -> RangeInAlign -> RangeInAlign
min :: RangeInAlign -> RangeInAlign -> RangeInAlign
Ord, Int -> RangeInAlign -> ShowS
[RangeInAlign] -> ShowS
RangeInAlign -> Method
(Int -> RangeInAlign -> ShowS)
-> (RangeInAlign -> Method)
-> ([RangeInAlign] -> ShowS)
-> Show RangeInAlign
forall a.
(Int -> a -> ShowS) -> (a -> Method) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> RangeInAlign -> ShowS
showsPrec :: Int -> RangeInAlign -> ShowS
$cshow :: RangeInAlign -> Method
show :: RangeInAlign -> Method
$cshowList :: [RangeInAlign] -> ShowS
showList :: [RangeInAlign] -> ShowS
Show)
type VertAlign = RangeInAlign
top :: VertAlign
top :: RangeInAlign
top = RangeInAlign
Min
type WideAlign = RangeInAlign
left :: VertAlign
left :: RangeInAlign
left = RangeInAlign
Min