reflex-dom-core-0.8.0.0: Functional Reactive Web Apps with Reflex

Safe HaskellNone
LanguageHaskell98

Reflex.Dom.Prerender

Description

Render the first widget on the server, and the second on the client.

Synopsis

Documentation

class (PrerenderClientConstraint t (Client m), Client (Client m) ~ Client m, Prerender t (Client m)) => Prerender t m | m -> t where Source #

Associated Types

type Client m :: * -> * Source #

Monad in which the client widget is built

Methods

prerender :: m a -> Client m a -> m (Dynamic t a) Source #

Render the first widget on the server, and the second on the client. The hydration builder will run *both* widgets, updating the result dynamic at switchover time.

Instances
(Prerender t m, Monad m) => Prerender t (HydratableT m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (HydratableT m) :: Type -> Type Source #

(Prerender t m, Monad m) => Prerender t (InputDisabledT m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (InputDisabledT m) :: Type -> Type Source #

(Prerender t m, Monad m, ReflexHost t) => Prerender t (PostBuildT t m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (PostBuildT t m) :: Type -> Type Source #

Methods

prerender :: PostBuildT t m a -> Client (PostBuildT t m) a -> PostBuildT t m (Dynamic t a) Source #

(Prerender t m, Monad m) => Prerender t (ReaderT r m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (ReaderT r m) :: Type -> Type Source #

Methods

prerender :: ReaderT r m a -> Client (ReaderT r m) a -> ReaderT r m (Dynamic t a) Source #

(Prerender t m, Monad m, Reflex t, MonadFix m, Group q, Commutative q, Query q, Eq q) => Prerender t (QueryT t q m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (QueryT t q m) :: Type -> Type Source #

Methods

prerender :: QueryT t q m a -> Client (QueryT t q m) a -> QueryT t q m (Dynamic t a) Source #

(Prerender t m, Monad m, Reflex t, Semigroup w) => Prerender t (EventWriterT t w m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (EventWriterT t w m) :: Type -> Type Source #

Methods

prerender :: EventWriterT t w m a -> Client (EventWriterT t w m) a -> EventWriterT t w m (Dynamic t a) Source #

(Prerender t m, Monad m, Reflex t, MonadFix m, Monoid w) => Prerender t (DynamicWriterT t w m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (DynamicWriterT t w m) :: Type -> Type Source #

Methods

prerender :: DynamicWriterT t w m a -> Client (DynamicWriterT t w m) a -> DynamicWriterT t w m (Dynamic t a) Source #

SupportsStaticDomBuilder t m => Prerender t (StaticDomBuilderT t m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (StaticDomBuilderT t m) :: Type -> Type Source #

(Prerender t m, MonadFix m, Reflex t) => Prerender t (RequesterT t request response m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (RequesterT t request response m) :: Type -> Type Source #

Methods

prerender :: RequesterT t request response m a -> Client (RequesterT t request response m) a -> RequesterT t request response m (Dynamic t a) Source #

(Adjustable t m, PrerenderBaseConstraints t m, ReflexHost t) => Prerender t (HydrationDomBuilderT HydrationDomSpace t m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (HydrationDomBuilderT HydrationDomSpace t m) :: Type -> Type Source #

(ReflexHost t, Adjustable t m, PrerenderBaseConstraints t m) => Prerender t (HydrationDomBuilderT GhcjsDomSpace t m) Source # 
Instance details

Defined in Reflex.Dom.Prerender

Associated Types

type Client (HydrationDomBuilderT GhcjsDomSpace t m) :: Type -> Type Source #

prerender_ :: (Functor m, Reflex t, Prerender t m) => m () -> Client m () -> m () Source #

Render the first widget on the server, and the second on the client. The hydration builder will run *both* widgets.