module Hypermedia.Datastar.Types where
import Data.Text (Text)
data EventType
=
EventPatchElements
|
EventPatchSignals
deriving (EventType -> EventType -> Bool
(EventType -> EventType -> Bool)
-> (EventType -> EventType -> Bool) -> Eq EventType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: EventType -> EventType -> Bool
== :: EventType -> EventType -> Bool
$c/= :: EventType -> EventType -> Bool
/= :: EventType -> EventType -> Bool
Eq, Int -> EventType -> ShowS
[EventType] -> ShowS
EventType -> String
(Int -> EventType -> ShowS)
-> (EventType -> String)
-> ([EventType] -> ShowS)
-> Show EventType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> EventType -> ShowS
showsPrec :: Int -> EventType -> ShowS
$cshow :: EventType -> String
show :: EventType -> String
$cshowList :: [EventType] -> ShowS
showList :: [EventType] -> ShowS
Show)
eventTypeToText :: EventType -> Text
eventTypeToText :: EventType -> Text
eventTypeToText EventType
EventPatchElements = Text
"datastar-patch-elements"
eventTypeToText EventType
EventPatchSignals = Text
"datastar-patch-signals"
data ElementPatchMode
=
Outer
|
Inner
|
Remove
|
Replace
|
Prepend
|
Append
|
Before
|
After
deriving (ElementPatchMode -> ElementPatchMode -> Bool
(ElementPatchMode -> ElementPatchMode -> Bool)
-> (ElementPatchMode -> ElementPatchMode -> Bool)
-> Eq ElementPatchMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ElementPatchMode -> ElementPatchMode -> Bool
== :: ElementPatchMode -> ElementPatchMode -> Bool
$c/= :: ElementPatchMode -> ElementPatchMode -> Bool
/= :: ElementPatchMode -> ElementPatchMode -> Bool
Eq, Int -> ElementPatchMode -> ShowS
[ElementPatchMode] -> ShowS
ElementPatchMode -> String
(Int -> ElementPatchMode -> ShowS)
-> (ElementPatchMode -> String)
-> ([ElementPatchMode] -> ShowS)
-> Show ElementPatchMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ElementPatchMode -> ShowS
showsPrec :: Int -> ElementPatchMode -> ShowS
$cshow :: ElementPatchMode -> String
show :: ElementPatchMode -> String
$cshowList :: [ElementPatchMode] -> ShowS
showList :: [ElementPatchMode] -> ShowS
Show)
patchModeToText :: ElementPatchMode -> Text
patchModeToText :: ElementPatchMode -> Text
patchModeToText ElementPatchMode
Outer = Text
"outer"
patchModeToText ElementPatchMode
Inner = Text
"inner"
patchModeToText ElementPatchMode
Remove = Text
"remove"
patchModeToText ElementPatchMode
Replace = Text
"replace"
patchModeToText ElementPatchMode
Prepend = Text
"prepend"
patchModeToText ElementPatchMode
Append = Text
"append"
patchModeToText ElementPatchMode
Before = Text
"before"
patchModeToText ElementPatchMode
After = Text
"after"
data ElementNamespace
=
HtmlNs
|
SvgNs
|
MathmlNs
deriving (ElementNamespace -> ElementNamespace -> Bool
(ElementNamespace -> ElementNamespace -> Bool)
-> (ElementNamespace -> ElementNamespace -> Bool)
-> Eq ElementNamespace
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ElementNamespace -> ElementNamespace -> Bool
== :: ElementNamespace -> ElementNamespace -> Bool
$c/= :: ElementNamespace -> ElementNamespace -> Bool
/= :: ElementNamespace -> ElementNamespace -> Bool
Eq, Int -> ElementNamespace -> ShowS
[ElementNamespace] -> ShowS
ElementNamespace -> String
(Int -> ElementNamespace -> ShowS)
-> (ElementNamespace -> String)
-> ([ElementNamespace] -> ShowS)
-> Show ElementNamespace
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ElementNamespace -> ShowS
showsPrec :: Int -> ElementNamespace -> ShowS
$cshow :: ElementNamespace -> String
show :: ElementNamespace -> String
$cshowList :: [ElementNamespace] -> ShowS
showList :: [ElementNamespace] -> ShowS
Show)
namespaceToText :: ElementNamespace -> Text
namespaceToText :: ElementNamespace -> Text
namespaceToText ElementNamespace
HtmlNs = Text
"html"
namespaceToText ElementNamespace
SvgNs = Text
"svg"
namespaceToText ElementNamespace
MathmlNs = Text
"mathml"
data DatastarEvent = DatastarEvent
{ DatastarEvent -> EventType
eventType :: EventType
, DatastarEvent -> Maybe Text
eventId :: Maybe Text
, DatastarEvent -> Int
retry :: Int
, DatastarEvent -> [Text]
dataLines :: [Text]
}
defaultRetryDuration :: Int
defaultRetryDuration :: Int
defaultRetryDuration = Int
1000
defaultPatchMode :: ElementPatchMode
defaultPatchMode :: ElementPatchMode
defaultPatchMode = ElementPatchMode
Outer
defaultUseViewTransition :: Bool
defaultUseViewTransition :: Bool
defaultUseViewTransition = Bool
False
defaultOnlyIfMissing :: Bool
defaultOnlyIfMissing :: Bool
defaultOnlyIfMissing = Bool
False
defaultAutoRemove :: Bool
defaultAutoRemove :: Bool
defaultAutoRemove = Bool
True
defaultNamespace :: ElementNamespace
defaultNamespace :: ElementNamespace
defaultNamespace = ElementNamespace
HtmlNs