package Ġru . ter r ak ok . gitlab client . presentation . issue . details Ċ Ċ import Ġgit fox . model . inter actor . Issue Interactor Ċ import Ġkotlinx . coroutines . flow . collect Ċ import Ġkotlinx . coroutines . flow . filter Ċ import Ġkotlinx . coroutines . launch Ċ import Ġm oxy . Inject ViewState Ċ import Ġru . ter r ak ok . gitlab client . di . Issue Id Ċ import Ġru . ter r ak ok . gitlab client . di . Primitive Wrapper Ċ import Ġru . ter r ak ok . gitlab client . di . ProjectId Ċ import Ġru . ter r ak ok . gitlab client . presentation . global . Base Presenter Ċ import Ġru . ter r ak ok . gitlab client . presentation . global . ErrorHandler Ċ import Ġru . ter r ak ok . gitlab client . presentation . global . Mark Down Converter Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠE ug ene ĠSh ap oval ov Ġ(@ C rag gy H ag gy ) Ġon Ġ 2 6 . 0 5 . 1 9 . Ċ Ġ*/ Ċ @ Inject ViewState Ċ class ĠIssue Details Presenter Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġ@ ProjectId Ġprivate Ġval ĠprojectId Wrapper : ĠPrimitive Wrapper < Long >, ĊĠĠĠ Ġ@ Issue Id Ġprivate Ġval Ġissue Id Wrapper : ĠPrimitive Wrapper < Long >, ĊĠĠĠ Ġprivate Ġval Ġissue Interactor : ĠIssue Interactor , ĊĠĠĠ Ġprivate Ġval Ġmd Converter : ĠMark Down Converter , ĊĠĠĠ Ġprivate Ġval ĠerrorHandler : ĠError Handler Ċ ) Ġ: ĠBase Presenter < Issue Details View >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠprojectId Ġ= ĠprojectId Wrapper . value ĊĠĠĠ Ġprivate Ġval Ġissue Id Ġ= Ġissue Id Wrapper . value ĊĊĠĠĠ Ġoverride Ġfun Ġon First View Attach () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on First View Attach () ĊĠĠĠĠĠĠĠ Ġlaunch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġload Issue () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġissue Interactor . issue Changes ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit Ġ== Ġissue Id Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. collect Ġ{ Ġload Issue () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġsuspend Ġfun Ġload Issue () Ġ{ ĊĠĠĠĠĠĠĠ Ġview State . show Empty Progress ( true ) ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġissue Ġ= Ġissue Interactor . get Issue ( projectId , Ġissue Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsp nb l Ġ= Ġmd Converter . to Sp ann able ( issue . description ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview State . show Details ( issue , Ġsp nb l ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠerrorHandler . proceed ( e ) Ġ{ Ġview State . showMessage ( it ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġview State . show Empty Progress ( false ) ĊĠĠĠ Ġ} Ċ } Ċ