Module

JollyPong

Package
purescript-jolly-pong
Repository
justinwoo/purescript-jolly-pong

#Store Source

type Store e (state :: Type) (action :: Type) = { dispatch :: EffFn1 e action Unit, getState :: EffFn1 e Unit state, subscribe :: EffFn1 e (Listener e) (Dispose e) }

#Dispose Source

newtype Dispose e

Constructors

#Reducer Source

newtype Reducer state action

Constructors

Instances

#Listener Source

newtype Listener e

Constructors

#Middleware Source

newtype Middleware e1 e2 e3 state action

Constructors

#ActionVariant Source

newtype ActionVariant (actionRow :: Row Type)

Constructors

Instances

#createStore Source

createStore :: forall e action state. Reducer state action -> state -> Enhancer -> Eff e (Store e state action)

#applyMiddleware Source

applyMiddleware :: forall e'' e' e state action. Array (Middleware e e' e'' state action) -> Eff e Enhancer

#combineReducers Source

combineReducers :: forall rl actionRow stateRow reducersRow. RowToList reducersRow rl => CombineReducers rl reducersRow stateRow actionRow => Record reducersRow -> Reducer (Record stateRow) (ActionVariant actionRow)

#CombineReducers Source

class CombineReducers (rl :: RowList) (row :: Row Type) (state :: Row Type) (action :: Row Type) | rl -> row state action

Instances

#Enhancer Source

data Enhancer :: Type

#_createStore Source

_createStore :: forall initialState action state e. EffFn3 e (Reducer state action) state Enhancer (Store e state action)

#_combineReducers Source

_combineReducers :: forall action state reducers. reducers -> Reducer state action

#_applyMiddleware Source

_applyMiddleware :: forall middleware e. EffFn1 e (Array middleware) Enhancer
Modules
JollyPong