package Ġcom . j pp . mp . main . header Ċ Ċ import Ġandroid . view . View Ċ Ċ /** Ċ Ġ* ĠRepresents Ġthe Ġview Ġstates Ġthat Ġthe Ġ[ Navigation Header Fragment ] Ġcan Ġrender Ġat Ġany Ġgiven Ġtime . Ċ Ġ*/ Ċ internal Ġdata Ġclass ĠHeader ViewState ( ĊĠĠĠ Ġval Ġloading Visibility : ĠInt Ġ= ĠView . IN VISIBLE , ĊĠĠĠ Ġval Ġlogin Button ViewState : ĠLogin Button ViewState Ġ= ĠLogin Button ViewState (), ĊĠĠĠ Ġval Ġaccount ViewState : ĠAccount ViewState Ġ= ĠAccount ViewState (), ĊĠĠĠ Ġval Ġdetails ViewState : ĠAccount Details ViewState Ġ= ĠAccount Details ViewState () Ċ ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġshow Loading () Ġ= ĠHeader ViewState ( loading Visibility Ġ= ĠView . VISIBLE ) ĊĠĠĠĠĠĠĠ Ġfun Ġshow Login () Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHeader ViewState ( login Button ViewState Ġ= ĠLogin Button ViewState ( visibility Ġ= ĠView . VISIBLE )) ĊĊĠĠĠĠĠĠĠ Ġfun Ġshow Account With Avatar ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserName : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccount Name : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġavatar Url : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġavatar Callback : Ġ(() Ġ-> ĠUnit ) ĊĠĠĠĠĠĠĠ Ġ) Ġ= ĠHeader ViewState ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccount ViewState Ġ= ĠAccount ViewState . create With Avatar ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaccount Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġavatar Url , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġavatar Callback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdetails ViewState Ġ= ĠAccount Details ViewState ( visibility Ġ= ĠView . VISIBLE ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġfun Ġshow Account With Letter ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserName : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccount Name : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdefault Letter : ĠString ĊĠĠĠĠĠĠĠ Ġ) Ġ= ĠHeader ViewState ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccount ViewState Ġ= ĠAccount ViewState . create WithDefault Letter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaccount Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdefault Letter ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdetails ViewState Ġ= ĠAccount Details ViewState ( visibility Ġ= ĠView . VISIBLE ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ