Module

Concur.Core.Types

#WidgetStepRecord

type WidgetStepRecord v a = { cont :: Aff a, view :: v }

#WidgetStep

newtype WidgetStep v a

Constructors

Instances

#unWidgetStep

unWidgetStep :: forall v a. WidgetStep v a -> Either (Effect a) (WidgetStepRecord v a)

#displayStep

displayStep :: forall a v. v -> WidgetStep v a

#Widget

newtype Widget v a

Constructors

Instances

#unWidget

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

#flipEither

flipEither :: forall a b. Either a b -> Either b a

#resume

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

#andd

andd :: forall v a. Monoid v => Array (Widget v a) -> Widget v (Array a)

Run multiple widgets in parallel until all finish, and collect their outputs Contrast with orr

#pulse

pulse :: forall v. Monoid v => Widget v Unit

#mapView

mapView :: forall a v1 v2. (v1 -> v2) -> Widget v1 a -> Widget v2 a

#mapViewStep

mapViewStep :: forall v1 v2 a. (v1 -> v2) -> WidgetStep v1 a -> WidgetStep v2 a

#display

display :: forall a v. v -> Widget v a

#effAction

effAction :: forall a v. Effect a -> Widget v a

#affAction

affAction :: forall a v. v -> Aff a -> Widget v a

#asyncAction

asyncAction :: forall v a. v -> ((Either Error a -> Effect Unit) -> Effect (Effect Unit)) -> Widget v a

Modules