var Navigation,Marginal;(function(n){var t=function(){function t(t){var i=this;this.dataStorageKey=n.LocalStorageKeys.DataStorage;this.maxItemsInStorage=20;this.saveData=function(n,t,r){var u,f,e;r===void 0&&(r=!1);r&&i.removeData(n);u=i.getDataArray();u.length>=i.maxItemsInStorage&&u.shift();f={key:n,value:t};u.push(f);e={key:i.dataStorageKey,value:u};i.storage.setItem(e)};this.getData=function(n){var t,u=i.getDataArray(),r=(t=u.filter(function(t){return t.key===n}))===null||t===void 0?void 0:t[0];return r?r.value:null};this.removeData=function(n){var t=i.getDataArray(),r=t.filter(function(t){return t.key==n}),u;r.length>0&&(r.forEach(function(n){t.splice(t.indexOf(n),1)}),u={key:i.dataStorageKey,value:t},i.storage.setItem(u))};this.clearAllData=function(){i.storage.clearItems()};this.getDataArray=function(){var n=i.storage.getItem(i.dataStorageKey);return n&&Array.isArray(n)||(n=[]),n};this.storage=new n.LocalStorage(t)}return t}();n.DataStorageService=t})(Navigation||(Navigation={})),function(n){var t,i;(function(n){n[n.SignIn=0]="SignIn";n[n.Confirm=1]="Confirm"})(t=n.SignInMode||(n.SignInMode={}));i=function(){function n(){var n=this;this.resetSignIn=function(){n.mode=ko.observable(t.SignIn);n.username=ko.observable(null)};this.resetConfirm=function(){n.mode=ko.observable(t.Confirm);n.mfaCode=ko.observable(null);n.sessionId=ko.observable(null)};this.mode=ko.observable(t.SignIn);this.sessionId=ko.observable(null);this.errorMessage=ko.observable(null);this.username=ko.observable(null);this.mfaCode=ko.observable(null);this.deepLinkingUrl=ko.observable(null);this.signInMode=ko.computed(function(){return n.mode()===t.SignIn},this);this.confirmMode=ko.computed(function(){return n.mode()===t.Confirm},this);this.signInError=ko.computed(function(){return n.errorMessage()&&n.errorMessage().length>0},this)}return n}();n.SignInModel=i}(Marginal||(Marginal={})),function(n){var t=Ajax.SignInStatus,i=function(){function i(i){var r=this,u;this.open=function(n,t){r.isVisible()||r.slideToggle();r.$signInPanel.dataJs("signInHeaderStandard").hide();r.$signInPanel.dataJs("signInHeaderProceed").show();r.$signInForm.dataJs("usernameInput").focus();String.isNullOrWhitespace(n)||r.vm.deepLinkingUrl(n);t&&r.setUsername(t);Smile.Layout.isMobile()&&Smile.Layout.mobileNoScroll.set();r.vm.deepLinkingUrl()&&Smile.Layout.pageBodyBlur.set();window.scrollTo(0,0)};this.slideToggle=function(){r.$signInPanel.slideToggle({complete:function(){r.isVisible()||Smile.Layout.pageBodyBlur.unset();Smile.Layout.isMobile()&&(r.isVisible()?Smile.Layout.mobileNoScroll.set():Smile.Layout.mobileNoScroll.unset());r.$signInButton.attr("aria-expanded",r.$signInButton.attr("aria-expanded")==="true"?"false":"true")}})};this.toggleMode=function(){r.vm.signInMode()?(r.vm.mode(n.SignInMode.Confirm),r.vm.mfaCode(null)):(r.vm.mode(n.SignInMode.SignIn),r.vm.sessionId(null),r.vm.username(null))};this.isVisible=function(){return r.$signInPanel.is(":visible")};this.setUsername=function(n){r.vm.username(n)};this.setSignInPanelPadding=function(){var n=r.$signInForm.dataJs("signInFields");r.$signInPanel.find("#error_sign_in_3").length&&n.css({"padding-top":"60px"});(r.$signInPanel.find("#error_sign_in_2").length||r.$signInForm.find("#error_sign_in_1").length)&&n.css({"padding-top":"100px"})};this.signIn=function(){r.signInForm.submit().then(function(n){if(n.Status===Ajax.SignInStatus.Success&&r.signInService.auth(r.vm.deepLinkingUrl(),n.IdentityToken),n.Status===Ajax.SignInStatus.MfaChallenge){r.vm.sessionId(n.SessionId);r.toggleMode();return}r.handleSignInError(n)})};this.handleSignInError=function(n){r.vm.errorMessage("");n.SignInError&&(n.Status===t.AccountConfirmLimitExceeded?Smile.Modals.ErrorDialog.show(n.ErrorMessage,null):r.vm.errorMessage(n.ErrorMessage),Smile.Layout.isMobile()&&r.setSignInPanelPadding(),r.vm.deepLinkingUrl()&&Smile.Layout.pageBodyBlur.set())};this.confirm=function(){var n={Username:r.vm.username(),DeepLinkingUrl:r.vm.deepLinkingUrl()};r.confirmForm.submit(n).then(function(n){n.Status===Ajax.SignInStatus.Success&&r.signInService.auth(r.vm.deepLinkingUrl(),n.IdentityToken);n.Status===Ajax.SignInStatus.ExpiredCode&&r.toggleMode();r.handleSignInError(n)})};this.bindView=function(){var n,t;r.$signInPanel=$.dataJs("signInPanel");r.$signInForm=r.$signInPanel.dataJs("signInForm");r.$confirmForm=r.$signInPanel.dataJs("confirmForm");r.$signInButton=$('[aria-controls="SignInPanel"]');r.$signInPanel.length>0&&(Smile.User.IsAuth||r.setDeepLinkingUrl(),ko.applyBindings(r.vm,r.$signInPanel[0]));n={id:"signInForm",httpService:r.signInService,endpoint:r.$signInForm.attr("action"),focusFirstField:!1};r.signInForm=new Forms.Form(n);t={id:"confirmForm",httpService:r.signInService,endpoint:r.$confirmForm.attr("action"),focusFirstField:!1};r.confirmForm=new Forms.Form(t)};this.setDeepLinkingUrl=function(){var n=Core.Uri.getQuerystringValue("rp");n&&r.vm.deepLinkingUrl(n)};this.signInService=i;this.dataStorageService=new Navigation.DataStorageService(Navigation.LocalStorageKeys.SignInComponent);this.vm=new n.SignInModel;this.bindView();this.$signInPanel.on("click","[data-js=signInSubmit]",function(){return r.signIn()}).on("click","[data-js=confirmSubmit]",function(){return r.confirm()}).on("keypress","[data-js=confirmForm]",function(n){n.keyCode===13&&(r.confirm(),n.preventDefault())}).on("keypress","[data-js=signInForm]",function(n){n.keyCode===13&&(r.signIn(),n.preventDefault())});String.isNullOrWhitespace(this.vm.deepLinkingUrl())||this.open(this.vm.deepLinkingUrl());Smile.Events.subscribe(Events.Action.OpenSignInPanel,function(n){return r.open(n.redirectUrl,n.username)});Smile.Events.subscribe(Events.Action.ToggleSignInPanel,this.slideToggle);u=this;jQuery(document).ready(function(){var t=Core.Uri.getQuerystringValue("spo")==="1",n;t&&(n=u.dataStorageService.getData("ErrorData"),n&&(u.handleSignInError(n),u.dataStorageService.clearAllData()),u.slideToggle(),u.$signInForm.dataJs("usernameInput").focus());u.$signInButton.attr("aria-expanded",u.isVisible().toString())})}return i}();n.SignInPanel=i}(Marginal||(Marginal={}))