Module
MVC.Record.View
- Package
- purescript-mvc
- Repository
- thought2/purescript-mvc
#ViewRecordProps Source
type ViewRecordProps :: (Type -> Type) -> Type -> Type
type ViewRecordProps html msg = { viewEntries :: Array (ViewResult html msg) -> html msg }
#ViewResult Source
type ViewResult :: (Type -> Type) -> Type -> Type
type ViewResult html msg = { key :: String, viewValue :: html msg }
#ViewRecord Source
class ViewRecord :: (Type -> Type) -> Row Type -> Row Type -> Row Type -> Constraint
class ViewRecord (html :: Type -> Type) (views :: Row Type) (rmsg :: Row Type) (rsta :: Row Type) where
Members
viewRecord :: Record views -> ViewRecordProps html (RecordMsg rmsg) -> (RecordState rsta -> html (RecordMsg rmsg))
Instances
(RowToList views rl, ViewRecordRL html views rl rmsg rsta) => ViewRecord html views rmsg rsta
#ViewRecordRL Source
class ViewRecordRL :: (Type -> Type) -> Row Type -> RowList Type -> Row Type -> Row Type -> Constraint
class ViewRecordRL (html :: Type -> Type) (views :: Row Type) (rl :: RowList Type) (rmsg :: Row Type) (rsta :: Row Type) | rl -> rmsg rsta views where
Members
viewRecordRL :: Proxy rl -> Record views -> (RecordState rsta -> Array (ViewResult html (RecordMsg rmsg)))
Instances
ViewRecordRL html () Nil () ()
(Functor html, IsSymbol sym, ViewRecordRL html views' rl' rmsg' rsta', Cons sym sta rsta' rsta, Cons sym msg rmsg' rmsg, Cons sym (sta -> html msg) views' views, Lacks sym rsta', Lacks sym rmsg', Lacks sym views', Union rmsg' rx rmsg) => ViewRecordRL html views (Cons sym x rl') rmsg rsta