// ĠCopyright Ġ( c ) ĠMicrosoft ĠCorporation . ĠAll Ġrights Ġreserved . Ċ // ĠLicensed Ġunder Ġthe ĠMIT ĠLicense . Ċ Ċ package Ġcom . azure . android . communication . ui . calling . redux . reducer Ċ Ċ import Ġcom . azure . android . communication . ui . calling . redux . action . Action Ċ import Ġcom . azure . android . communication . ui . calling . redux . action . Navigation Action Ċ import Ġcom . azure . android . communication . ui . calling . redux . state . Navigation State Ċ import Ġcom . azure . android . communication . ui . calling . redux . state . Navigation Status Ċ Ċ internal Ġinterface ĠNavigation Reducer Ġ: ĠRed ucer < Navigation State > Ċ Ċ internal Ġclass ĠNavigation Reducer Impl Ġ: ĠNavigation Reducer Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġreduce ( state : ĠNavigation State , Ġaction : ĠAction ): ĠNavigation State Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( action ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠNavigation Action . Exit Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNavigation State ( Navigation Status . EXIT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠNavigation Action . Call La unched Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNavigation State ( Navigation Status . IN _ CALL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠNavigation Action . Setup La unched Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNavigation State ( Navigation Status . SETUP ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġstate ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ