package Ġde . r ki . cor on aw arn app . ui . presence tracing . organ izer . warn . tan Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroid . view . accessibility . Accessibility Event Ċ import Ġandroidx . core . view . is G one Ċ import Ġandroidx . core . view . isVisible Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . navigation . fragment . nav Args Ċ import Ġde . r ki . cor on aw arn app . R Ċ import Ġde . r ki . cor on aw arn app . bug reporting . ui . to Error Dialog Builder Ċ import Ġde . r ki . cor on aw arn app . contact di ary . util . hide Keyboard Ċ import Ġde . r ki . cor on aw arn app . databinding . Trace Location Organ izer Warn Tan Fragment Binding Ċ import Ġde . r ki . cor on aw arn app . ui . submission . ApiRequest State Ċ import Ġde . r ki . cor on aw arn app . util . di . Auto Inject Ċ import Ġde . r ki . cor on aw arn app . util . ui . do Navigate Ċ import Ġde . r ki . cor on aw arn app . util . ui . observe 2 Ċ import Ġde . r ki . cor on aw arn app . util . ui . pop Back Stack Ċ import Ġde . r ki . cor on aw arn app . util . ui . set G one Ċ import Ġde . r ki . cor on aw arn app . util . ui . view Binding Ċ import Ġde . r ki . cor on aw arn app . util . view model . C WA ViewModel Factory Provider Ċ import Ġde . r ki . cor on aw arn app . util . view model . c wa ViewModels Ass isted Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠTrace Location Warn Tan Fragment Ġ: ĠFragment ( R . layout . trace _ location _ organ izer _ warn _ tan _ fragment ), ĠAuto Inject Ġ{ ĊĊĠĠĠ Ġ@ Inject Ġlateinit Ġvar ĠviewModel Factory : ĠC WA ViewModel Factory Provider . Factory ĊĠĠĠ Ġprivate Ġval Ġnav Args Ġby Ġnav Args < Trace Location Warn Tan Fragment Args >() ĊĠĠĠ Ġprivate Ġval ĠviewModel : ĠTrace Location Warn Tan ViewModel Ġby Ġc wa ViewModels Ass isted ( ĊĠĠĠĠĠĠĠ Ġfactory Producer Ġ= Ġ{ ĠviewModel Factory Ġ}, ĊĠĠĠĠĠĠĠ Ġconstructor Call Ġ= Ġ{ Ġfactory , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfactory Ġas ĠTrace Location Warn Tan ViewModel . Factory ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfactory . create ( nav Args . trace Location Warn Duration ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġval Ġbinding : ĠTrace Location Organ izer Warn Tan Fragment Binding Ġby Ġview Binding () ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ ĠviewModel . state . observe 2 ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Button Enter . isEnabled Ġ= Ġit . is Tan Valid ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Content . submission Tan Character Error . set G one ( it . are Characters Correct ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it . is Correct Length ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Content . submission Tan Error . is G one Ġ= Ġit . is Tan Valid ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Content . submission Tan Error . is G one Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbinding . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtan Content . submission Tan Input . listener Ġ= Ġ{ Ġtan Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Content . submission Tan Character Error . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Content . submission Tan Error . visibility Ġ= ĠView . GONE ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . on Tan Changed ( tan ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtan Button Enter . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtan Button Enter . hide Keyboard () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . start Tan Submission () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoolbar . set Navigation OnClickListener Ġ{ Ġgo Back () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠviewModel . registration State . observe 2 ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . tan Spinner . isVisible Ġ= Ġit Ġ== ĠApi Request State . STARTED ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( ApiRequest State . SUCCESS Ġ== Ġit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdo Navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTrace Location Warn Tan Fragment Directions ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. action Trace Location Tan Duration Fragment To Trace Location Organ izer Thanks Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠviewModel . registration Error . observe 2 ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . to Error Dialog Builder ( require Context ()). show () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġbinding . tan Root . send Accessibility Event ( Accessibility Event . TYPE _ AN NOUN CE MENT ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġgo Back () Ġ{ ĊĠĠĠĠĠĠĠ Ġpop Back Stack () ĊĠĠĠ Ġ} Ċ } Ċ