package Ġsample . kotlin . project . domain . stores . search . middle wares Ċ Ċ import Ġio . reactivex . Observable Ċ import Ġio . reactivex . functions . Consumer Ċ import Ġsample . kotlin . project . domain . core . m vi . Base Middleware Ċ import Ġsample . kotlin . project . domain . repositories . search . Search Request Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search Action Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search Action . Load SearchResults Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search Action . On Search Click Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search Event Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search Navigation Command Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search RequestType . FIRST _ PAGE Ċ import Ġsample . kotlin . project . domain . stores . search . pojo . Search State Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠSearch First Page Middleware Ċ @ Inject Ġconstructor () Ġ: ĊĠĠĠ ĠBase Middleware < Search State , ĠSearch Action , ĠSearch Event , ĠSearch Navigation Command >() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġbind ( ĊĠĠĠĠĠĠĠ Ġstates : ĠObservable < Search State >, ĊĠĠĠĠĠĠĠ Ġactions : ĠObservable < Search Action >, ĊĠĠĠĠĠĠĠ Ġevents : ĠConsumer < Search Event >, ĊĠĠĠĠĠĠĠ Ġnavigation Commands : ĠConsumer < Search Navigation Command > ĊĠĠĠ Ġ): ĠObservable < Search Action > Ġ= ĊĠĠĠĠĠĠĠ Ġactions ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. of Type ( On Search Click :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĠLoad SearchResults ( Search Request ( it . query , Ġ 1 ), ĠFIRST _ PAGE ) Ġ} Ċ } Ċ