package Ġio . tr uere active . demo . flow . main Ċ Ċ import Ġio . tr uere active . library . flow . Base Presenter Ċ import Ġio . tr uere active . library . flow . View Channel Ċ import Ġio . tr uere active . library . flow . map Until Dead Ċ import Ġkotlinx . coroutines . Coroutine Scope Ċ import Ġkotlinx . coroutines . flow . collect Ċ import Ġkotlinx . coroutines . flow . on Completion Ċ import Ġkotlinx . coroutines . flow . on Each Ċ import Ġkotlinx . coroutines . flow . take Ċ import Ġkotlinx . coroutines . launch Ċ import Ġtim ber . log . Tim ber Ċ Ċ class ĠMain F lickr Presenter ( ĊĠĠĠ Ġview Channel : ĠView Channel < Main F lickr Events , ĠUnit >, ĊĠĠĠ Ġscope : ĠCor outine Scope Ċ ) Ġ: ĠBase Presenter ( scope ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġlaunch Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . i (" ========== Ġlaunch Ġjob ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġview Channel ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Until Dead Ġ{ Ġopen Feed Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. take ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. collect Ġ{ Ġopen Pop ular Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Pop ular () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/* view Channel ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Until Dead Ġ{ Ġopen Feed Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġ{ ĠTim ber . i (" Invoke Ġnavigation ") Ġ} Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Each Ġ{ ĠTim ber . i (" ========== Ġmap Ġopen Ġfeed ") Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Completion Ġ{ ĠTim ber . i (" ========== ĠComplete Ġmapping ") Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. first (). invoke () */ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/* view Channel ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Until Dead Ġ{ Ġopen Feed Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Each Ġ{ ĠTim ber . i (" ========== Ġmap Ġopen Ġfeed ") Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Completion Ġ{ ĠTim ber . i (" ========== ĠComplete Ġmapping ") Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. collect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Pop ular Ġ-> Ġopen Pop ular () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}*/ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }