package Ġcom . say zen . camp fire sdk . support Ċ Ċ import Ġandroidx . annotation . String Res Ċ import Ġcom . d zen . camp fire . api . tools . client . ApiClient Ċ import Ġcom . d zen . camp fire . api . tools . client . Request Ċ import Ġcom . sup . dev . android . app . Sup Android Ċ import Ġcom . sup . dev . android . libs . screens . Screen Ċ import Ġcom . sup . dev . android . libs . screens . navigator . Navigation Action Ċ import Ġcom . sup . dev . android . libs . screens . navigator . Navigator Ċ import Ġcom . sup . dev . android . tools . Tools Resources Ċ import Ġcom . sup . dev . android . tools . Tools Toast Ċ import Ġcom . sup . dev . android . tools . Tools View Ċ import Ġcom . sup . dev . android . views . screens . S Alert Ċ import Ġcom . sup . dev . android . views . splash . Splash Ċ import Ġcom . sup . dev . android . views . splash . Splash Alert Ċ import Ġcom . sup . dev . android . views . splash . Splash Progress Transparent Ċ import Ġcom . sup . dev . android . views . splash . Splash Progress With Title Ċ import Ġcom . sup . dev . java . tools . Tools Date Ċ Ċ object ĠApi Requests Support er Ġ{ ĊĊĠĠĠ Ġvar ĠUSE _ ID _ RESOURCES Ġ= Ġfalse ĊĊĠĠĠ Ġprivate Ġvar Ġapi : ĠApi Client ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġinit ( api : ĠApi Client ) Ġ{ ĊĠĠĠĠĠĠĠ ĠApi Requests Support er . api Ġ= Ġapi ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute With Retry ( request : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute With Retry ( 5 , Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute With Retry ( try Count : Int , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġtry Count Ġ= Ġtry Count ĊĠĠĠĠĠĠĠ Ġif ( try Count Ġ< Ġ 1 ) Ġreturn Ġrequest ĊĠĠĠĠĠĠĠ Ġrequest . on Network Error Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( try Count Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Count -- ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecute ( request , Ġfalse , ĠonComplete ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request , Ġfalse , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute ( request : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request , Ġfalse , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute ( request : ĠRequest < K >, Ġsend Now : Boolean , ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġrequest . onComplete Ġ{ Ġr Ġ-> ĠonComplete . invoke ( r ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Network Error Ġ{ ĠTools Toast . show ( Sup Android . TEXT _ ERROR _ NETWORK ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on ApiError ( ApiClient . ERROR _ ACCOUNT _ IS _ BAN ED ) Ġ{ Ġex Ġ-> ĠTools Toast . show ( String . format ( Sup Android . TEXT _ ERROR _ ACCOUNT _ BAN ED !! , ĠTools Date . date ToString Full ( java . lang . Long . parse Long ( ex . params [ 0 ])) )) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on ApiError ( ApiClient . ERROR _ GONE ) Ġ{ ĠTools Toast . show ( Sup Android . TEXT _ ERROR _ GONE ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġif ( send Now ) request . send Now ( api !! ) ĊĠĠĠĠĠĠĠ Ġelse Ġrequest . send ( api !! ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġrequest ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Inter stitial ( action : ĠNavigation Action , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠScreen ?): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Inter stitial ( action , Ġrequest , ĠonComplete , ĠSup Android . TEXT _ ERROR _ GONE ? :" ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Inter stitial ( action : ĠNavigation Action , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠScreen ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgone Text : String ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Progress Ġ= ĠSpl ash Progress Transparent () ĊĠĠĠĠĠĠĠ Ġv Progress . as Splash Show () ĊĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request ) Ġ{ Ġr Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( v Progress . is H ided ()) Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscreen Ġ= ĠonComplete . invoke ( r ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( screen Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠNavigator . action ( action , Ġscreen ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on ApiError ( ApiClient . ERROR _ GONE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( v Progress . is H ided ()) Ġreturn @ on ApiError ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS Alert . show G one ( action , Ġgone Text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Network Error Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( v Progress . is H ided ()) Ġreturn @ on Network Error ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS Alert . show Network ( action ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNavigator . remove ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecute Inter stitial ( action , Ġrequest , ĠonComplete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Finish Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv Progress . hide () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( request : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog ( null Ġas ĠString ?, Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog (@ String Res Ġtitle : ĠInt , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog ( Tools Resources . s ( title ), Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( title : ĠString ?, Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdialog Ġ= Ġif Ġ( title Ġ== Ġnull ) ĠTools View . show Progress Dialog () Ġelse ĠTools View . show Progress Dialog ( title ) ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog ( dialog , Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( dialog : ĠSpl ash ?, Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog ( dialog , Ġrequest , Ġfalse , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( w : ĠSpl ash , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( Splash , ĠK ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request ) Ġ{ Ġr Ġ-> ĠonComplete . invoke ( w , Ġr ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. onError Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTools Toast . show ( Sup Android . TEXT _ ERROR _ NETWORK ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġw . hide () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( dialog : ĠSpl ash ?, Ġrequest : ĠRequest < K >, Ġsend Now : Boolean , ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request , Ġsend Now , ĠonComplete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Finish Ġ{ Ġdialog ?. hide () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( request : ĠRequest < K >, ĠonComplete : Ġ( Splash , ĠK ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog < K >( null , Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog (@ String Res Ġtitle : ĠInt , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( Splash , ĠK ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog ( Tools Resources . s ( title ), Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Progress Dialog ( title : ĠString ?, Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( Splash , ĠK ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġw Ġ= Ġif Ġ( title Ġ== Ġnull ) ĠTools View . show Progress Dialog () Ġelse ĠTools View . show Progress Dialog ( title ) ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Progress Dialog ( w , Ġrequest ) Ġ{ Ġ_, Ġr Ġ-> ĠonComplete . invoke ( w , Ġr ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Enabled Callback ( request : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit , Ġenabled : Ġ( Boolean ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġenabled . invoke ( false ) ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request , ĠonComplete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Finish Ġ{ Ġenabled . invoke ( true ) Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Enabled ( splash : ĠSpl ash ?, Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġsplash ?. setEnabled ( false ) ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute ( request ) Ġ{ Ġr Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonComplete . invoke ( r ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsplash ?. hide () ĊĠĠĠĠĠĠĠ Ġ}. on Finish Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsplash ?. setEnabled ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( splash Ġis ĠSpl ash Progress Transparent ) Ġsplash . hide () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( splash Ġis ĠSpl ash Progress With Title ) Ġsplash . hide () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Enabled Confirm (@ String Res Ġtext : ĠInt , Ġ@ String Res Ġenter : ĠInt , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġexecute Enabled Confirm ( Tools Resources . s ( text ), ĠTools Resources . s ( enter ), Ġrequest , ĠonComplete ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< K Ġ: ĠRequest . Response > Ġexecute Enabled Confirm ( text : ĠString , Ġenter : ĠString , Ġrequest : ĠRequest < K >, ĠonComplete : Ġ( K ) Ġ-> ĠUnit ): ĠRequest < K > Ġ{ ĊĠĠĠĠĠĠĠ ĠSpl ash Alert () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setOn Cancel ( Sup Android . TEXT _ APP _ CANCEL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setAuto Hide On Enter ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setOn Enter ( enter ) Ġ{ Ġw Ġ-> Ġexecute Enabled ( w , Ġrequest , ĠonComplete ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. as Sheet Show () ĊĠĠĠĠĠĠĠ Ġreturn Ġrequest ĊĠĠĠ Ġ} Ċ }