package Ġcom . chr yn an . video . presentation . reducer Ċ Ċ import Ġcom . chr yn an . inject . Inject Ċ import Ġcom . chr yn an . video . presentation . core . Reducer Ċ import Ġcom . chr yn an . video . presentation . state . Search Change Ċ import Ġcom . chr yn an . video . presentation . state . Search State Ċ Ċ class ĠSearch Reducer Ġ@ Inject Ġconstructor () Ġ: ĠRed ucer < Search State , ĠSearch Change > Ġ{ ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġreduce ( previous : ĠSearch State , Ġchange : ĠSearch Change ): ĠSearch State Ġ= ĊĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchange Ġis ĠSearch Change . Cle ared Ġ-> ĠSearch State . Display ing No Input ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchange Ġis ĠSearch Change . Loaded Ġ&& Ġchange . items . isEmpty () Ġ-> ĠSearch State . Display ing Empty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġquery Ġ= Ġchange . query ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchange Ġis ĠSearch Change . Loaded Ġ-> ĠSearch State . Display ing Loaded ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġquery Ġ= Ġchange . query , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitems Ġ= Ġchange . items ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchange Ġis ĠSearch Change . Started Searching Ġ-> ĠSearch State . Searching ( query Ġ= Ġchange . query ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprevious Ġis ĠSearch State . Display ing Loaded Ġ&& Ġchange Ġis ĠSearch Change . Started Loading Ġ-> ĠSearch State . Loading More ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġquery Ġ= Ġchange . query , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Items Ġ= Ġchange . current Items ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġprevious ĊĠĠĠĠĠĠĠ Ġ} Ċ }