Module

Concur.Core

#mkLeafWidget

mkLeafWidget :: forall a v. ((a -> Effect Unit) -> v) -> Widget v a

Construct a widget with just props

#mkNodeWidget

mkNodeWidget :: forall a v. ((a -> Effect Unit) -> v -> v) -> Widget v a -> Widget v a

Construct a widget, by wrapping an existing widget in a view event

#mkNodeWidget'

mkNodeWidget' :: forall a v. ((a -> Effect Unit) -> v -> v) -> Free (WidgetStep v) a -> Free (WidgetStep v) a

Re-exports from Concur.Core.IsWidget

#IsWidget

class (Monad m, Monoid v, ShiftMap (Widget v) m, LiftWidget v m, MultiAlternative m) <= IsWidget v m 

A Nice way to bring into scope all needed functionality which we need to write widgets

Instances

Re-exports from Concur.Core.LiftWidget

#LiftWidget

class LiftWidget v m  where

A way to lift widgets into higher monads

Members

Instances

Re-exports from Concur.Core.Types

#WidgetStep

newtype WidgetStep v a

Constructors

Instances

#Widget

newtype Widget v a

Constructors

Instances

#unWidget

unWidget :: forall v a. Widget v a -> Free (WidgetStep v) a

#resume

resume :: forall f a. Functor f => Free f a -> Either a (f (Free f a))

Modules