Skip to content

Instantly share code, notes, and snippets.

@elyphas
Created February 4, 2019 19:21
Show Gist options
  • Save elyphas/f1933306948f35d1de7854389fb51349 to your computer and use it in GitHub Desktop.
Save elyphas/f1933306948f35d1de7854389fb51349 to your computer and use it in GitHub Desktop.
package spatutorial.client.modules
import outwatch.util.Store
import spatutorial.shared.Proveedor
import monix.execution.Scheduler.Implicits.global
object StoreProv {
sealed trait ActionpProveedor
case object Search extends ActionpProveedor
case object Clean extends ActionpProveedor
case class Found(lst: Seq[Proveedor]) extends ActionpProveedor
case class AppState(lst: Seq[Proveedor])
val reducer: (AppState, ActionpProveedor) => AppState = (s, a ) => a match {
case Found(lst) => AppState(lst = lst )
//case Search => AppState(Seq.empty[Proveedor])
case Clean => AppState(Seq.empty[Proveedor])
case _ => AppState(Seq.empty[Proveedor])
}
val initialState = AppState( Seq.empty[Proveedor] )
val store = Store.create[AppState, ActionpProveedor](initialState, reducer(_,_) ).unsafeRunSync()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment