Module
MVC.Record
- Package
- purescript-mvc
- Repository
- thought2/purescript-mvc
Re-exports from MVC.Record.Types
#RecordState Source
newtype RecordState :: Row Type -> Type
newtype RecordState r
Constructors
RecordState (Record r)
Instances
Generic (RecordState r) _
(Eq (Record r)) => Eq (RecordState r)
(Show (Record r)) => Show (RecordState r)
#RecordMsg Source
newtype RecordMsg :: Row Type -> Type
newtype RecordMsg r
Constructors
Instances
Generic (RecordMsg r) _
(RowToList r rl, VariantTags rl, VariantEqs rl) => Eq (RecordMsg r)
(RowToList r rl, VariantTags rl, VariantShows rl) => Show (RecordMsg r)
Re-exports from MVC.Record.Update
#UpdateRecord Source
class UpdateRecord :: Row Type -> Row Type -> Row Type -> Constraint
class UpdateRecord (updates :: Row Type) (rmsg :: Row Type) (rsta :: Row Type) | updates -> rmsg rsta where
Members
updateRecord :: Record updates -> (RecordMsg rmsg -> RecordState rsta -> RecordState rsta)
Instances
(RowToList rsta rl, UpdateRecordRL rl rsta rmsg updates) => UpdateRecord updates rmsg rsta
#UpdateRecordRL Source
class UpdateRecordRL :: RowList Type -> Row Type -> Row Type -> Row Type -> Constraint
class UpdateRecordRL (rl :: RowList Type) (rs :: Row Type) (rm :: Row Type) (updates :: Row Type) | rl -> rs rm updates where
Members
updateRecordRL :: Proxy rl -> Record updates -> (RecordState rs -> Variant rm -> RecordState rs)
Instances
UpdateRecordRL Nil rs () ()
(IsSymbol sym, UpdateRecordRL rl' rs rm' updates', Cons sym sta rsx rs, Cons sym msg rm' rm, Cons sym (msg -> sta -> sta) updates' updates, Lacks sym rm', Lacks sym rsx, Lacks sym updates') => UpdateRecordRL (Cons sym x rl') rs rm updates
Re-exports from MVC.Record.View
#ViewResult Source
type ViewResult :: (Type -> Type) -> Type -> Type
type ViewResult html msg = { key :: String, viewValue :: html msg }
#ViewRecordProps Source
type ViewRecordProps :: (Type -> Type) -> Type -> Type
type ViewRecordProps html msg = { viewEntries :: Array (ViewResult html msg) -> 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