Module

Concur.Core.Types

Package
purescript-concur-core
Repository
purescript-concur/purescript-concur-core

#WidgetStepRecord Source

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

#WidgetStep Source

newtype WidgetStep v a

Constructors

Instances

#unWidgetStep Source

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

#displayStep Source

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

#Widget Source

newtype Widget v a

Constructors

Instances

#unWidget Source

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

#flipEither Source

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

#resume Source

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

#andd Source

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 Source

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

#mapView Source

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

#mapViewStep Source

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

#display Source

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

#effAction Source

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

#affAction Source

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

#asyncAction Source

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