package Ġcom . example . rep ode tail inter actor Ċ Ċ import Ġcom . example . core . domain . Data State Ċ import Ġcom . example . core . domain . Trend ing Repository Ċ import Ġcom . example . core . dto . to Trend ing Repo Ċ import Ġcom . example . trend ing . repo . Trend ing Repo Ċ import Ġkotlinx . coroutines . flow . Flow Ċ import Ġkotlinx . coroutines . flow . flow Ċ import Ġjava . lang . Exception Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠGet Trend ing Repo Data Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġtrend ing Repository Ġ: ĠT rend ing Repository ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠ Ġoperator Ġfun Ġinvoke ( repo Name : ĠString , Ġauthor : ĠString ): ĠFlow < Data State < Trend ing Repo >> Ġ= Ġflow Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemit ( Data State . Loading < Trend ing Repo >()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrepo Ġ= Ġtrend ing Repository . get Trend ing Repo ( author , Ġrepo Name ). to Trend ing Repo () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemit ( Data State . Success < Trend ing Repo >( repo )) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemit ( Data State . Failure < Trend ing Repo >( e . localized Message ?: Ġ" Couldn 't Ġreach Ġserver . ĠCheck Ġyour Ġinternet Ġconnection .")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }