package Ġcom . sai . fab ula . view model Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . viewModel Scope Ċ import Ġcom . sai . fab ula . database . News Repository Ċ import Ġcom . sai . fab ula . utils . Article List State Ċ import Ġkotlinx . coroutines . flow . collect Ċ import Ġkotlinx . coroutines . launch Ċ Ċ class ĠMain ViewModel ( private Ġval Ġnews Repository : ĠNews Repository ) Ġ: ĠViewModel () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġ_ news LiveData Ġ= ĠMutable LiveData < Article List State >() ĊĊĠĠĠ Ġval Ġnews LiveData : ĠLive Data < Article List State > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ_ news LiveData ĊĊĠĠĠ Ġfun Ġget News () Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnews Repository . get News (). collect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ news LiveData . value Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ