{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./js/Core/Constants.js","webpack:///./js/Core/BrowserControl.js","webpack:///./js/Core/KnockoutUserAgentShim.js","webpack:///./js/Core/Helpers.js","webpack:///./js/Core/ComponentEvent.js","webpack:///./js/Core/Promise.js","webpack:///./js/LoginPage/LoginConstants.js","webpack:///./js/Core/AccessibleImageControlViewModel.js","webpack:///./js/Core/TelemetryFactory.js","webpack:///./js/Core/ClientTracingConstants.js","webpack:///./js/Core/PromiseHelpers.js","webpack:///./webpack/new/node_modules/JSON/json2.js","webpack:///./js/Core/ClientTracingHelper.js","webpack:///./js/Core/ApiRequest.js","webpack:///./js/Fields/FooterButtonsFieldViewModel.js","webpack:///./js/Core/BrandingHelpers.js","webpack:///./js/Core/MarchingAntsControlViewModel.js","webpack:///./js/Core/OtcRequestControl.js","webpack:///./js/Core/Fido.js","webpack:///./images/documentation_white.png","webpack:///./images/documentation_white.svg","webpack:///./images/documentation.png","webpack:///./images/documentation.svg","webpack:///./webpack/new/node_modules/knockout/build/output/knockout-latest.js-exposed","webpack:///./js/Core/GetOneTimeCodeHelper.js","webpack:///./js/Core/GetCredentialTypeHelpers.js","webpack:///./js/Core/AjaxHandlerControl.js","webpack:///./js/Core/TypeConverter.js","webpack:///./js/Core/ClientTracingContext.js","webpack:///./js/Core/DialogContentControlViewModel.js","webpack:///./js/Core/FooterControlViewModel.js","webpack:///./js/Core/FidoConstants.js","webpack:///./js/Core/DebugDetailsControlViewModel.js","webpack:///./js/LoginPage/FidoHelpButtonControlViewModel.js","webpack:///./js/Core/KnockoutExtenders.js","webpack:///./js/LoginPage/CredSwitchLinkControlViewModel.js","webpack:///./js/Core/PlaceholderTextbox.js","webpack:///./js/Fields/PlaceholderTextboxFieldViewModel.js","webpack:///./js/LoginPage/HeaderControlViewModel.js","webpack:///./images/picker_account_msa.png","webpack:///./images/picker_account_msa.svg","webpack:///(webpack)/buildin/global.js","webpack:///./js/Core/AsyncValidationControl.js","webpack:///./js/Core/BrowserSso.js","webpack:///./images/CredentialOptions/cred_option_fido_white.png","webpack:///./images/CredentialOptions/cred_option_fido_white.svg","webpack:///./images/CredentialOptions/cred_option_fido.png","webpack:///./images/CredentialOptions/cred_option_fido.svg","webpack:///./images/CredentialOptions/cred_option_passkey_white.png","webpack:///./images/CredentialOptions/cred_option_passkey_white.svg","webpack:///./images/CredentialOptions/cred_option_passkey.png","webpack:///./images/CredentialOptions/cred_option_passkey.svg","webpack:///./js/Core/CanaryValidationHelper.js","webpack:///./js/Core/TileHelpers.js","webpack:///./js/Core/PaginationControlHelper.js","webpack:///(webpack)/buildin/module.js","webpack:///./js/Core/InstrumentationControlViewModel.js","webpack:///./js/Core/LogoControlViewModel.js","webpack:///./js/Core/MasterPageViewModel.js","webpack:///./js/Core/BackgroundImageControlViewModel.js","webpack:///./js/Core/EnvironmentBannerControlViewModel.js","webpack:///./js/Core/ContentControlViewModel.js","webpack:///./images/CredentialOptions/cred_option_qrpin_white.png","webpack:///./images/CredentialOptions/cred_option_qrpin_white.svg","webpack:///./images/CredentialOptions/cred_option_qrpin.png","webpack:///./images/CredentialOptions/cred_option_qrpin.svg","webpack:///./js/Core/PaginationControlViewModel.js","webpack:///./js/TestHooks/WebNativeBridgeTestHook.js","webpack:///./js/LoginPage/FidoHelpDialogContentControlViewModel.js","webpack:///./js/LoginPage/PaginatedLoginPage.js","webpack:///./webpack/new/node_modules/knockout/build/output/knockout-latest.js","webpack:///./js/Core/KnockoutExtensions.js","webpack:///./js/Strings/Helpers/StringHelpers.js","webpack:///./js/Core/DropdownKnockoutExtensions.js","webpack:///./js/Core/StringRepository.js","webpack:///./js/LoginPage/LoginPaginatedPageViewModel.js","webpack:///./images/Backgrounds sync nonrecursive ^.+","webpack:///./images/Backgrounds/0-small.jpg","webpack:///./images/Backgrounds/0.jpg","webpack:///./images/Backgrounds/1-small.jpg","webpack:///./images/Backgrounds/1.jpg","webpack:///./images/Backgrounds/2-small.jpg","webpack:///./images/Backgrounds/2.jpg","webpack:///./images/Backgrounds/2.svg","webpack:///./images/Backgrounds/3.jpg","webpack:///./images/Backgrounds/3.svg","webpack:///./images/Backgrounds/4-small.jpg","webpack:///./images/Backgrounds/4.jpg","webpack:///./images/Backgrounds/4.svg","webpack:///./images/AppBackgrounds sync nonrecursive ^.+","webpack:///./images/AppBackgrounds/0-small.jpg","webpack:///./images/AppBackgrounds/0.jpg","webpack:///./images/AppBackgrounds/1-small.jpg","webpack:///./images/AppBackgrounds/1.jpg","webpack:///./images/AppBackgrounds/10-small.jpg","webpack:///./images/AppBackgrounds/10.jpg","webpack:///./images/AppBackgrounds/11-small.jpg","webpack:///./images/AppBackgrounds/11.jpg","webpack:///./images/AppBackgrounds/13-small.jpg","webpack:///./images/AppBackgrounds/13.jpg","webpack:///./images/AppBackgrounds/14-small.jpg","webpack:///./images/AppBackgrounds/14.jpg","webpack:///./images/AppBackgrounds/15-small.jpg","webpack:///./images/AppBackgrounds/15.jpg","webpack:///./images/AppBackgrounds/16-small.jpg","webpack:///./images/AppBackgrounds/16.jpg","webpack:///./images/AppBackgrounds/17-small.jpg","webpack:///./images/AppBackgrounds/17.jpg","webpack:///./images/AppBackgrounds/18-small.jpg","webpack:///./images/AppBackgrounds/18.jpg","webpack:///./images/AppBackgrounds/19-small.jpg","webpack:///./images/AppBackgrounds/19.jpg","webpack:///./images/AppBackgrounds/2-small.jpg","webpack:///./images/AppBackgrounds/2.jpg","webpack:///./images/AppBackgrounds/20-small.jpg","webpack:///./images/AppBackgrounds/20.jpg","webpack:///./images/AppBackgrounds/21-small.jpg","webpack:///./images/AppBackgrounds/21.jpg","webpack:///./images/AppBackgrounds/22-small.jpg","webpack:///./images/AppBackgrounds/22.jpg","webpack:///./images/AppBackgrounds/23-small.jpg","webpack:///./images/AppBackgrounds/23.jpg","webpack:///./images/AppBackgrounds/24-small.jpg","webpack:///./images/AppBackgrounds/24.jpg","webpack:///./images/AppBackgrounds/25-small.jpg","webpack:///./images/AppBackgrounds/25.jpg","webpack:///./images/AppBackgrounds/26-small.jpg","webpack:///./images/AppBackgrounds/26.jpg","webpack:///./images/AppBackgrounds/27-small.jpg","webpack:///./images/AppBackgrounds/27.jpg","webpack:///./images/AppBackgrounds/28-small.jpg","webpack:///./images/AppBackgrounds/28.jpg","webpack:///./images/AppBackgrounds/29-small.jpg","webpack:///./images/AppBackgrounds/29.jpg","webpack:///./images/AppBackgrounds/3-small.jpg","webpack:///./images/AppBackgrounds/3.jpg","webpack:///./images/AppBackgrounds/30-small.jpg","webpack:///./images/AppBackgrounds/30.jpg","webpack:///./images/AppBackgrounds/31-small.jpg","webpack:///./images/AppBackgrounds/31.jpg","webpack:///./images/AppBackgrounds/32-small.jpg","webpack:///./images/AppBackgrounds/32.jpg","webpack:///./images/AppBackgrounds/33-small.jpg","webpack:///./images/AppBackgrounds/33.jpg","webpack:///./images/AppBackgrounds/34-small.jpg","webpack:///./images/AppBackgrounds/34.jpg","webpack:///./images/AppBackgrounds/35-small.jpg","webpack:///./images/AppBackgrounds/35.jpg","webpack:///./images/AppBackgrounds/36-small.jpg","webpack:///./images/AppBackgrounds/36.jpg","webpack:///./images/AppBackgrounds/37-small.jpg","webpack:///./images/AppBackgrounds/37.jpg","webpack:///./images/AppBackgrounds/38-small.jpg","webpack:///./images/AppBackgrounds/38.jpg","webpack:///./images/AppBackgrounds/39-small.jpg","webpack:///./images/AppBackgrounds/39.jpg","webpack:///./images/AppBackgrounds/4-small.jpg","webpack:///./images/AppBackgrounds/4.jpg","webpack:///./images/AppBackgrounds/40-small.jpg","webpack:///./images/AppBackgrounds/40.jpg","webpack:///./images/AppBackgrounds/41-small.jpg","webpack:///./images/AppBackgrounds/41.jpg","webpack:///./images/AppBackgrounds/42-small.jpg","webpack:///./images/AppBackgrounds/42.jpg","webpack:///./images/AppBackgrounds/43-small.jpg","webpack:///./images/AppBackgrounds/43.jpg","webpack:///./images/AppBackgrounds/44-small.jpg","webpack:///./images/AppBackgrounds/44.jpg","webpack:///./images/AppBackgrounds/45-small.jpg","webpack:///./images/AppBackgrounds/45.jpg","webpack:///./images/AppBackgrounds/46-small.jpg","webpack:///./images/AppBackgrounds/46.jpg","webpack:///./images/AppBackgrounds/47-small.jpg","webpack:///./images/AppBackgrounds/47.jpg","webpack:///./images/AppBackgrounds/48-small.jpg","webpack:///./images/AppBackgrounds/48.jpg","webpack:///./images/AppBackgrounds/49-small.jpg","webpack:///./images/AppBackgrounds/49.jpg","webpack:///./images/AppBackgrounds/5-small.jpg","webpack:///./images/AppBackgrounds/5.jpg","webpack:///./images/AppBackgrounds/50-small.jpg","webpack:///./images/AppBackgrounds/50.jpg","webpack:///./images/AppBackgrounds/51-small.jpg","webpack:///./images/AppBackgrounds/51.jpg","webpack:///./images/AppBackgrounds/52-small.jpg","webpack:///./images/AppBackgrounds/52.jpg","webpack:///./images/AppBackgrounds/53-small.jpg","webpack:///./images/AppBackgrounds/53.jpg","webpack:///./images/AppBackgrounds/54-small.jpg","webpack:///./images/AppBackgrounds/54.jpg","webpack:///./images/AppBackgrounds/55-small.jpg","webpack:///./images/AppBackgrounds/55.jpg","webpack:///./images/AppBackgrounds/56-small.jpg","webpack:///./images/AppBackgrounds/56.jpg","webpack:///./images/AppBackgrounds/57-small.jpg","webpack:///./images/AppBackgrounds/57.jpg","webpack:///./images/AppBackgrounds/58-small.jpg","webpack:///./images/AppBackgrounds/58.jpg","webpack:///./images/AppBackgrounds/59-small.jpg","webpack:///./images/AppBackgrounds/59.jpg","webpack:///./images/AppBackgrounds/6-small.jpg","webpack:///./images/AppBackgrounds/6.jpg","webpack:///./images/AppBackgrounds/60-small.jpg","webpack:///./images/AppBackgrounds/60.jpg","webpack:///./images/AppBackgrounds/61-small.jpg","webpack:///./images/AppBackgrounds/61.jpg","webpack:///./images/AppBackgrounds/62-small.jpg","webpack:///./images/AppBackgrounds/62.jpg","webpack:///./images/AppBackgrounds/63-small.jpg","webpack:///./images/AppBackgrounds/63.jpg","webpack:///./images/AppBackgrounds/64-small.jpg","webpack:///./images/AppBackgrounds/64.jpg","webpack:///./images/AppBackgrounds/65-small.jpg","webpack:///./images/AppBackgrounds/65.jpg","webpack:///./images/AppBackgrounds/66-small.jpg","webpack:///./images/AppBackgrounds/66.jpg","webpack:///./images/AppBackgrounds/67-small.jpg","webpack:///./images/AppBackgrounds/67.jpg","webpack:///./images/AppBackgrounds/68-small.jpg","webpack:///./images/AppBackgrounds/68.jpg","webpack:///./images/AppBackgrounds/69-small.jpg","webpack:///./images/AppBackgrounds/69.jpg","webpack:///./images/AppBackgrounds/7-small.jpg","webpack:///./images/AppBackgrounds/7.jpg","webpack:///./images/AppBackgrounds/70-small.jpg","webpack:///./images/AppBackgrounds/70.jpg","webpack:///./images/AppBackgrounds/71-small.jpg","webpack:///./images/AppBackgrounds/71.jpg","webpack:///./images/AppBackgrounds/72-small.jpg","webpack:///./images/AppBackgrounds/72.jpg","webpack:///./images/AppBackgrounds/73-small.jpg","webpack:///./images/AppBackgrounds/73.jpg","webpack:///./images/AppBackgrounds/74-small.jpg","webpack:///./images/AppBackgrounds/74.jpg","webpack:///./images/AppBackgrounds/75-small.jpg","webpack:///./images/AppBackgrounds/75.jpg","webpack:///./images/AppBackgrounds/76-small.jpg","webpack:///./images/AppBackgrounds/76.jpg","webpack:///./images/AppBackgrounds/77-small.jpg","webpack:///./images/AppBackgrounds/77.jpg","webpack:///./images/AppBackgrounds/78-small.jpg","webpack:///./images/AppBackgrounds/78.jpg","webpack:///./images/AppBackgrounds/79-small.jpg","webpack:///./images/AppBackgrounds/79.jpg","webpack:///./images/AppBackgrounds/8-small.jpg","webpack:///./images/AppBackgrounds/8.jpg","webpack:///./images/AppBackgrounds/80-small.jpg","webpack:///./images/AppBackgrounds/80.jpg","webpack:///./images/AppBackgrounds/9-small.jpg","webpack:///./images/AppBackgrounds/9.jpg","webpack:///./images/AppLogos sync nonrecursive ^.+","webpack:///./images/AppLogos/0.png","webpack:///./images/AppLogos/1.png","webpack:///./images/AppLogos/10.png","webpack:///./images/AppLogos/11.png","webpack:///./images/AppLogos/12.png","webpack:///./images/AppLogos/13.png","webpack:///./images/AppLogos/14.png","webpack:///./images/AppLogos/15.png","webpack:///./images/AppLogos/17.png","webpack:///./images/AppLogos/18.png","webpack:///./images/AppLogos/19.png","webpack:///./images/AppLogos/2.png","webpack:///./images/AppLogos/20.png","webpack:///./images/AppLogos/21.png","webpack:///./images/AppLogos/22.png","webpack:///./images/AppLogos/23.png","webpack:///./images/AppLogos/24.png","webpack:///./images/AppLogos/25.png","webpack:///./images/AppLogos/26.png","webpack:///./images/AppLogos/27.png","webpack:///./images/AppLogos/28.png","webpack:///./images/AppLogos/29.png","webpack:///./images/AppLogos/3.png","webpack:///./images/AppLogos/30.png","webpack:///./images/AppLogos/31.png","webpack:///./images/AppLogos/32.png","webpack:///./images/AppLogos/33.png","webpack:///./images/AppLogos/34.png","webpack:///./images/AppLogos/35.png","webpack:///./images/AppLogos/36.png","webpack:///./images/AppLogos/37.png","webpack:///./images/AppLogos/38.png","webpack:///./images/AppLogos/39.png","webpack:///./images/AppLogos/4.png","webpack:///./images/AppLogos/40.png","webpack:///./images/AppLogos/41.png","webpack:///./images/AppLogos/42.png","webpack:///./images/AppLogos/43.png","webpack:///./images/AppLogos/44.png","webpack:///./images/AppLogos/45.png","webpack:///./images/AppLogos/46.png","webpack:///./images/AppLogos/47.png","webpack:///./images/AppLogos/48.png","webpack:///./images/AppLogos/49.png","webpack:///./images/AppLogos/5.png","webpack:///./images/AppLogos/50.png","webpack:///./images/AppLogos/51.png","webpack:///./images/AppLogos/52.png","webpack:///./images/AppLogos/53.png","webpack:///./images/AppLogos/54.png","webpack:///./images/AppLogos/55.png","webpack:///./images/AppLogos/56.png","webpack:///./images/AppLogos/57.png","webpack:///./images/AppLogos/58.png","webpack:///./images/AppLogos/59.png","webpack:///./images/AppLogos/6.png","webpack:///./images/AppLogos/60.png","webpack:///./images/AppLogos/61.png","webpack:///./images/AppLogos/62.png","webpack:///./images/AppLogos/63.png","webpack:///./images/AppLogos/64.png","webpack:///./images/AppLogos/65.png","webpack:///./images/AppLogos/66.png","webpack:///./images/AppLogos/67.png","webpack:///./images/AppLogos/68.png","webpack:///./images/AppLogos/69.png","webpack:///./images/AppLogos/7.png","webpack:///./images/AppLogos/70.png","webpack:///./images/AppLogos/71.png","webpack:///./images/AppLogos/72.png","webpack:///./images/AppLogos/73.png","webpack:///./images/AppLogos/74.png","webpack:///./images/AppLogos/75.png","webpack:///./images/AppLogos/76.png","webpack:///./images/AppLogos/77.png","webpack:///./images/AppLogos/78.png","webpack:///./images/AppLogos/8.png","webpack:///./js/Core/BrowserCapabilitiesHelper.js","webpack:///./js/Core/ChromeBrowserCore.js","webpack:///./js/Core/TokenBrokerAuthHelper.js","webpack:///./js/Core/StringCustomizationObservables.js","webpack:///C:/__w/1/s/out/retail-amd64/Microsoft.Identity.UX.Telemetry/release/EClientEvent.js","webpack:///Microsoft.Identity.UX.Telemetry/webpack/universalModuleDefinition","webpack:///Microsoft.Identity.UX.Telemetry/webpack/bootstrap","webpack:///Microsoft.Identity.UX.Telemetry/ts/Constants.ts","webpack:///Microsoft.Identity.UX.Telemetry/ts/Utils.ts","webpack:///Microsoft.Identity.UX.Telemetry/ts/EventApi.ts","webpack:///Microsoft.Identity.UX.Telemetry/ts/TelemetryHelper.ts","webpack:///./images sync nonrecursive ^.+\\/signin-.+\\.(png|svg)$","webpack:///./images/signin-apple-white.png","webpack:///./images/signin-apple-white.svg","webpack:///./images/signin-apple.png","webpack:///./images/signin-apple.svg","webpack:///./images/signin-externalidp.png","webpack:///./images/signin-externalidp.svg","webpack:///./images/signin-facebook.png","webpack:///./images/signin-fluent-facebook.png","webpack:///./images/signin-fluent-facebook.svg","webpack:///./images/signin-github-white.png","webpack:///./images/signin-github-white.svg","webpack:///./images/signin-github.png","webpack:///./images/signin-github.svg","webpack:///./images/signin-google.png","webpack:///./images/signin-google.svg","webpack:///./images/signin-linkedin-white.png","webpack:///./images/signin-linkedin-white.svg","webpack:///./images/signin-linkedin.png","webpack:///./images/signin-linkedin.svg","webpack:///./images/signin-microsoft.png","webpack:///./images/signin-microsoft.svg","webpack:///./images/signin-options-white.png","webpack:///./images/signin-options-white.svg","webpack:///./images/signin-options.png","webpack:///./images/signin-options.svg","webpack:///./images/signin-qrpin-white.png","webpack:///./images/signin-qrpin-white.svg","webpack:///./images/signin-qrpin.png","webpack:///./images/signin-qrpin.svg","webpack:///./js/Core/BrandingLivePreviewFactory.js","webpack:///./html/LoginPage/ConvergedLoginPaginatedPageHtml.html","webpack:///./js/Core/CookieBannerControlViewModel.js","webpack:///./html/Shared/Controls/ConvergedCookieBannerControlHtml.html","webpack:///./html/Shared/Controls/AccessibleImageControlHtml.html","webpack:///./images/info_white.png","webpack:///./images/info_white.svg","webpack:///./images/info.png","webpack:///./images/info.svg","webpack:///./js/Core/DialogControlViewModel.js","webpack:///./html/Shared/Controls/ConvergedDialogControlHtml.html","webpack:///./html/LoginPage/Fields/FooterButtons/ConvergedFooterButtonsFieldHtml.html","webpack:///./js/Core/PltHelper.js","webpack:///./html/Shared/Controls/InstrumentationControlHtml.html","webpack:///./html/Shared/Controls/LogoControlHtml.html","webpack:///./images/microsoft_logo_white.png","webpack:///./images/microsoft_logo_white.svg","webpack:///./images/microsoft_logo.png","webpack:///./images/microsoft_logo.svg","webpack:///./images/delos_logo_white.png","webpack:///./images/delos_logo_white.svg","webpack:///./images/delos_logo.png","webpack:///./images/delos_logo.svg","webpack:///./images/bleu_logo_white.png","webpack:///./images/bleu_logo_white.svg","webpack:///./images/bleu_logo.png","webpack:///./images/bleu_logo.svg","webpack:///./html/Shared/Controls/ConvergedMarchingAntsControlHtml.html","webpack:///./images/marching_ants_white.gif","webpack:///./images/marching_ants.gif","webpack:///./images/AppCentipede sync nonrecursive ^.+","webpack:///./images/AppCentipede/AppCentipede_Beam.png","webpack:///./images/AppCentipede/AppCentipede_Beam.svg","webpack:///./images/AppCentipede/AppCentipede_Beam_white.png","webpack:///./images/AppCentipede/AppCentipede_Beam_white.svg","webpack:///./images/AppCentipede/AppCentipede_Bing.png","webpack:///./images/AppCentipede/AppCentipede_Bing.svg","webpack:///./images/AppCentipede/AppCentipede_Bing_white.png","webpack:///./images/AppCentipede/AppCentipede_Bing_white.svg","webpack:///./images/AppCentipede/AppCentipede_Cortana.png","webpack:///./images/AppCentipede/AppCentipede_Cortana.svg","webpack:///./images/AppCentipede/AppCentipede_Cortana_white.png","webpack:///./images/AppCentipede/AppCentipede_Cortana_white.svg","webpack:///./images/AppCentipede/AppCentipede_Excel.png","webpack:///./images/AppCentipede/AppCentipede_Excel.svg","webpack:///./images/AppCentipede/AppCentipede_Excel_white.png","webpack:///./images/AppCentipede/AppCentipede_Excel_white.svg","webpack:///./images/AppCentipede/AppCentipede_Health.png","webpack:///./images/AppCentipede/AppCentipede_Health.svg","webpack:///./images/AppCentipede/AppCentipede_Health_white.png","webpack:///./images/AppCentipede/AppCentipede_Health_white.svg","webpack:///./images/AppCentipede/AppCentipede_MSN.png","webpack:///./images/AppCentipede/AppCentipede_MSN.svg","webpack:///./images/AppCentipede/AppCentipede_MSN_white.png","webpack:///./images/AppCentipede/AppCentipede_MSN_white.svg","webpack:///./images/AppCentipede/AppCentipede_Microsoft.png","webpack:///./images/AppCentipede/AppCentipede_Microsoft.svg","webpack:///./images/AppCentipede/AppCentipede_Microsoft_white.png","webpack:///./images/AppCentipede/AppCentipede_Microsoft_white.svg","webpack:///./images/AppCentipede/AppCentipede_MileIQ.png","webpack:///./images/AppCentipede/AppCentipede_MileIQ.svg","webpack:///./images/AppCentipede/AppCentipede_MileIQ_white.png","webpack:///./images/AppCentipede/AppCentipede_MileIQ_white.svg","webpack:///./images/AppCentipede/AppCentipede_Minecraft.png","webpack:///./images/AppCentipede/AppCentipede_Minecraft.svg","webpack:///./images/AppCentipede/AppCentipede_Minecraft_white.png","webpack:///./images/AppCentipede/AppCentipede_Minecraft_white.svg","webpack:///./images/AppCentipede/AppCentipede_Office.png","webpack:///./images/AppCentipede/AppCentipede_Office.svg","webpack:///./images/AppCentipede/AppCentipede_Office_white.png","webpack:///./images/AppCentipede/AppCentipede_Office_white.svg","webpack:///./images/AppCentipede/AppCentipede_OneDrive.svg","webpack:///./images/AppCentipede/AppCentipede_OneDrive_white.svg","webpack:///./images/AppCentipede/AppCentipede_Onedrive.png","webpack:///./images/AppCentipede/AppCentipede_Onedrive_white.png","webpack:///./images/AppCentipede/AppCentipede_Outlook.png","webpack:///./images/AppCentipede/AppCentipede_Outlook.svg","webpack:///./images/AppCentipede/AppCentipede_Outlook_white.png","webpack:///./images/AppCentipede/AppCentipede_Outlook_white.svg","webpack:///./images/AppCentipede/AppCentipede_PowerPoint.png","webpack:///./images/AppCentipede/AppCentipede_PowerPoint.svg","webpack:///./images/AppCentipede/AppCentipede_PowerPoint_white.png","webpack:///./images/AppCentipede/AppCentipede_PowerPoint_white.svg","webpack:///./images/AppCentipede/AppCentipede_Skype.png","webpack:///./images/AppCentipede/AppCentipede_Skype.svg","webpack:///./images/AppCentipede/AppCentipede_SkypeDialer.png","webpack:///./images/AppCentipede/AppCentipede_SkypeDialer.svg","webpack:///./images/AppCentipede/AppCentipede_SkypeDialer_white.png","webpack:///./images/AppCentipede/AppCentipede_SkypeDialer_white.svg","webpack:///./images/AppCentipede/AppCentipede_Skype_white.png","webpack:///./images/AppCentipede/AppCentipede_Skype_white.svg","webpack:///./images/AppCentipede/AppCentipede_Word.png","webpack:///./images/AppCentipede/AppCentipede_Word.svg","webpack:///./images/AppCentipede/AppCentipede_Word_white.png","webpack:///./images/AppCentipede/AppCentipede_Word_white.svg","webpack:///./images/AppCentipede/AppCentipede_Xbox.png","webpack:///./images/AppCentipede/AppCentipede_Xbox.svg","webpack:///./images/AppCentipede/AppCentipede_Xbox_white.png","webpack:///./images/AppCentipede/AppCentipede_Xbox_white.svg","webpack:///./html/Shared/Masters/ConvergedMasterPageHtml.html","webpack:///./js/Core/LightboxTemplateViewModel.js","webpack:///./html/Shared/Templates/ConvergedLightboxTemplateHtml.html","webpack:///./html/Shared/Controls/ConvergedBackgroundImageControlHtml.html","webpack:///./html/Shared/Controls/ConvergedEnvironmentBannerControlHtml.html","webpack:///./html/Shared/Controls/ConvergedContentControlHtml.html","webpack:///./js/Core/PageLevelTitleControlViewModel.js","webpack:///./html/Shared/Controls/ConvergedPageLevelTitleControlHtml.html","webpack:///./js/Core/DebugDetailsKnockoutExtensions.js","webpack:///./html/Shared/Controls/ConvergedDebugDetailsControlHtml.html","webpack:///./images/check_small_white.png","webpack:///./images/check_small_white.svg","webpack:///./images/check_small.png","webpack:///./images/check_small.svg","webpack:///./images/close_white.png","webpack:///./images/close_white.svg","webpack:///./images/close.png","webpack:///./images/close.svg","webpack:///./js/Core/FedCredButtonsControlViewModel.js","webpack:///./html/Shared/Controls/ConvergedFedCredButtonsControlHtml.html","webpack:///./js/LoginPage/QrCodePinHelpDialogContentControlViewModel.js","webpack:///./html/LoginPage/Controls/ConvergedQrCodePinHelpDialogContentControlHtml.html","webpack:///./html/Shared/Controls/ConvergedFooterControlHtml.html","webpack:///./js/Core/BrowserHistory.js","webpack:///./html/Shared/Controls/ConvergedPaginationControlHtml.html","webpack:///./js/Core/IdentityBannerControlViewModel.js","webpack:///./html/Shared/Controls/ConvergedIdentityBannerControlHtml.html","webpack:///./images/arrow_left_white.png","webpack:///./images/arrow_left_white.svg","webpack:///./images/arrow_left.png","webpack:///./images/arrow_left.svg","webpack:///./images/arrow_right_white.png","webpack:///./images/arrow_right_white.svg","webpack:///./images/arrow_right.png","webpack:///./images/arrow_right.svg","webpack:///./js/LoginPage/LoginPaginatedUsernameViewModel.js","webpack:///./images sync ^\\.\\/msaServerSignInLottie_.*\\.json$","webpack:///./images/msaServerSignInLottie_1.json","webpack:///./images/msaServerSignInLottie_2.json","webpack:///./images/msaServerSignInLottie_3.json","webpack:///./html/LoginPage/ConvergedLoginPaginatedUsernameViewHtml.html","webpack:///./html/Shared/Fields/PlaceholderTextbox/PlaceholderTextboxFieldHtml.html","webpack:///./html/LoginPage/Controls/ConvergedCredSwitchLinkControlHtml.html","webpack:///./html/LoginPage/Controls/ConvergedFidoHelpButtonControlHtml.html","webpack:///./html/LoginPage/Controls/ConvergedFidoHelpDialogContentControlHtml.html","webpack:///./html/LoginPage/Controls/ConvergedHeaderControlHtml.html","webpack:///./js/LoginPage/SeeHowDataIsManagedViewModel.js","webpack:///./html/LoginPage/ConvergedSeeHowDataIsManagedHtml.html","webpack:///./js/Shared/MoreInfoViewModel.js","webpack:///./html/Shared/Views/ConvergedMoreInfoViewHtml.html"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","ArrayPrototypeSlice","installedModules","24","__webpack_require__","exports","module","l","Function","bind","Array","slice","otherThis","this","TypeError","baseArgs","arguments","baseArgsLength","fToBind","fNOP","fBound","apply","isPrototypeOf","document","head","getElementsByTagName","Promise","executor","_this","_state","_settledValue","_queue","_processQueue","pending","setTimeout","len","_resolve","value","_reject","reason","then","onFulfilled","onRejected","resolve","reject","error","_enqueue","createPromiseAllHandlerFunction","values","index","doneCheck","rejectOnError","isFulfilled","status","iteratePromises","iterable","item","createPromiseRaceCallResolveFunction","all","allSettled","race","window","e","promises","installedChunkData","promise","serverData","ServerData","cdnRoots","loader","maxRetry","slMaxRetry","Error","script","loadScript","src","retryCount","onScriptComplete","createElement","charset","timeout","scriptWithNonce","querySelector","nonce","getAttribute","setAttribute","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","SRSRetry","external","notify","JSON","stringify","args","context","retryScript","url","indexOf","substring","fallbackCdn","appendChild","p","jsonpScriptSrc","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","t","mode","__esModule","ns","create","key","n","object","property","oe","err","console","jsonpArray","oldJsonpFunction","s","UsernameMaxLength","SATOTPV1Length","SATOTPLength","SAEOTPLength","PhoneNumberConfirmationLength","OneTimeCodeDefaultLength","OneTimeCodeMaxAcceptedLength","PCExperienceQS","PCExperienceDisabled","NotPreferredCredentialQs","AnimationTimeout","PageSummaryVersion","GuidTemplate","proofUpCorrelationIdParamName","Regex","PhoneNumberValidation","ProofUpRedirectLandingView","AccountCompromised","RiskySession","LoginMode","None","Login","ForceCredType","LWAConsent","GenericError","ForceSignin","OTS","HIP_Login","HIP_Lockout","InviteBlocked","SwitchUser","LWADelegation","ServiceBlocked","IDPFailed","StrongAuthOTC","StrongAuthMobileOTC","Finish","LoginWizard_Login","StrongAuthWABOTC","LoginWizard_HIP_Login","LoginWizard_Finish","LoginMobile","ForceSigninMobile","GenericErrorMobile","LoginHost","ForceSigninHost","GenericErrorHost","StrongAuthHostOTC","HIP_LoginHost","HIP_LoginMobile","HIP_LockoutHost","HIP_LockoutMobile","SwitchUserHost","LoginXbox_Login","HIP_LoginXbox","FinishXbox","IfExistsXbox","StartIfExistsXbox","StrongAuthXboxOTC","LoginWPWiz_Login","LoginWPWiz_HIP_Login","LoginWPWiz_Finish","StrongAuthWizOTC","StrongAuthWPWizOTC","FinishWPWiz","SwitchUserMobile","LoginWPWiz_PhoneSignIn","LoginWPWiz_HIP_PhoneSignIn","Login_PhoneSignIn","Login_HIP_PhoneSignIn","LoginHost_PhoneSignIn","LoginHost_HIP_PhoneSignIn","LoginMobile_PhoneSignIn","LoginMobile_HIP_PhoneSignIn","LoginWizard_PhoneSignIn","LoginWizard_HIP_PhoneSignIn","LoginXbox_PhoneSignIn","LoginXbox_HIP_PhoneSignIn","LoginWin10","HIP_LoginWin10","FinishWin10","FinishBlockedWin10","LoginWin10_PhoneSignIn","HIP_LoginWin10_PhoneSignIn","FinishWin10_TokenBroker","SwitchUserWin10","ForceSignInXbox","LoginClientSDK_Login","LoginClientSDK_HIP_Login","LoginClientSDK_Finish","StrongAuthClientSDKOTC","FinishClientSDK","LoginClientSDK_PhoneSignIn","LoginClientSDK_HIP_PhoneSignIn","Win10InclusiveOOBE_Finish","Win10InclusiveOOBE_FinishBlocked","Tiles","RemoteConnect","FedConflict","Win10Host_Login","Win10Host_Login_PhoneSignin","Win10Host_Finish","Win10Host_StrongAuth","Win10Host_HIP_Login","Fido","Win10Host_HIP_Login_PhoneSignIn","FedLink","UserCredentialPolicyBlocked","BindFailed","Win10HostOOBE_HIP_Login","Win10HostOOBE_HIP_Login_PhoneSignIn","AadFedConflict","ProofFedConflict","FedBoundLink","FetchSessionsProgress","Win10Host_TransferLogin","TransferLogin","Signup","CredentialPicker","SignupBlocked","QrCodePin","LoginBody","Login_OTC","SessionPullFlags","Msa","Dsso","ResponseMode","Fragment","Query","FormPost","NotSpecified","Unsupported","ResponseType","code","token","id_token","none","PaginatedState","Previous","Unknown","Username","Password","OneTimeCode","RemoteNGC","PhoneDisambiguation","LwaConsent","IdpDisambiguation","IdpRedirect","ViewAgreement","LearnMore","ConfirmSend","RemoteConnectCode","RemoteLoginPolling","BindRedirect","TermsOfUse","DesktopSsoProgress","ResetPasswordSplitter","Kmsi","CheckPasswordType","ChangePassword","Consent","ConfirmSignup","ConfirmRecoverUsername","ConfirmConsentSelection","ProofUpRedirect","ProofUpRedirectLanding","ConditionalAccessInstallBroker","ConditionalAccessWorkplaceJoin","ConditionalAccessError","CreateFido","FedLinkComplete","IdpRedirectSpeedbump","Cmsi","ProofConfirmation","MessagePrompt","FinishError","Hip","LearnMoreOfflineAccount","TenantDisambiguation","RemoteConnectCanaryValidation","PartnerCanaryValidation","AccessPass","SignupUsername","ReportSuspiciousApp","MoreInfo","AuthenticatorAddAccountView","SignupCredentialPicker","LoginError","SearchOrganization","Ptca","RemoteConnectLocation","AttributeCollection","RdpDevicePrompt","GuestConsentConnect","SeeHowDataIsManaged","SecurityDefaultsUpsell","SecurityDefaultsUpsellOptOut","SecurityDefaultsUpsellAutoEnabled","WebNativeBridge","TransferLoginChallengePin","RecoveryCredentialPicker","OneTimeCodeRecovery","PhoneLinkLearnMore","PhoneLinkSupport","CertificateInterstitialView","ConsentResourceApp","QrCodeScan","AttributeCollectionRedirect","RemoteConnectCmsi","PostType","Federation","SHA1","StrongAuth","StrongAuthTOTP","PasswordInline","SessionApproval","NGC","OtcNoPassword","RemoteConnect_NativePlatform","OTC","TransferTokenOTC","UserProperty","USERNAME","ERROR_CODE","ERR_MSG","EXT_ERROR","ERR_URL","DATOKEN","DA_SESKEY","DA_START","DA_EXPIRE","STS_ILFT","SIGNINNAME","FIRST_NAME","LAST_NAME","TILE_URL","CID","PUID","DEFAULT_CHANNEL_ID","DEFAULT_PREFERRED_EXTENSION_ID","WebNativeBridgeSuccess","DFPPrefix","S_OK","InvalidRealmDiscLogin","UsernameInvalid","PasswordEmpty","HIPEmpty","AltEmailInvalid","PhoneInvalid","SAContainsName","OTCEmpty","OTCInvalid","NotEnoughProofs","PhoneEmpty","FedUser","FedUserConflict","FedUserInviteBlocked","EmptyFields","PhoneHasSpecialChars","AutoVerifyNoCodeSent","ProofConfirmationEmpty","ProofConfirmationInvalid","TOTPInvalid","SessionNotApproved","PhoneNumberInvalid","PhoneFormattingInvalid","PollingTimedOut","SendNotificationFailed","Server_MessageOnly","PP_E_DB_MEMBERDOESNOTEXIST","PP_E_EXCLUDED","PP_E_MEMBER_LOCKED","PP_E_BAD_PASSWORD","PP_E_MISSING_MEMBERNAME","PP_E_MISSING_PASSWORD","PP_E_FEDERATION_INLINELOGIN_DISALLOWED","PP_E_PE_RULEFALSE","PP_E_MOBILECREDS_PHONENUMBER_BLANK","PP_E_MOBILECREDS_PHONENUMBER_TOOSHORT","PP_E_MOBILECREDS_PHONENUMBER_TOOLONG","PP_E_MOBILECREDS_PHONENUMBER_INVALID","PP_E_NAME_BLANK","PP_E_EMAIL_INCOMPLETE","PP_E_EMAIL_INVALID","PP_E_NAME_TOO_SHORT","PP_E_NAME_INVALID","PP_E_INVALIDARG","PP_E_SA_TOOSHORT","PP_E_SA_TOOLONG","PP_E_INVALID_PHONENUMBER","PP_E_SECRETQ_CONTAINS_SECRETA","PP_E_SECRETA_CONTAINS_SECRETQ","PP_E_SA_CONTAINS_MEMBERNAME","PP_E_STRONGPROCESS_ALTEMAILSAMEASMAILBOX","PP_E_EMAIL_RIGHT_TOO_LONG","PP_E_NAME_TOO_LONG","PP_E_ALIAS_AUTH_NOTPERMITTED","PP_E_TOTP_INVALID","PP_E_OLD_SKYPE_PASSWORD","PP_E_OTT_DATA_INVALID","PP_E_OTT_ALREADY_CONSUMED","PP_E_OTT_INVALID_PURPOSE","PP_E_PPSA_RPT_NOTOADDRESS","PP_E_STRONGPROCESS_BADDEVICENAME","PP_E_INLINELOGIN_INVALID_SMS","PP_E_INLINELOGIN_INVALID_ALT","PP_E_PREVIOUS_PASSWORD","PP_E_HIP_VALIDATION_WRONG","PP_E_HIP_VALIDATION_ERROR_FATAL","PP_E_HIP_VALIDATION_ERROR_UNAUTHENTICATED","PP_E_HIP_VALIDATION_ERROR_OTHER","PP_E_SQ_CONTAINS_PASSWORD","PP_E_SA_CONTAINS_PASSWORD","PP_E_SA_CONTAINED_IN_PASSWORD","PP_E_LIBPHONENUMBERINTEROP_NUMBERPARSE_EXCEPTION","PP_E_STRONGPROCESS_EMAIL_HAS_MOBILE_DOMAIN","PP_E_STRONGPROCESS_MXALIAS_NOTALLOWED","PP_E_INVALID_MEMBERNAME","PP_E_SA_TOO_MANY_CACHE_SESSIONS","PP_E_INTERFACE_DISABLED","PP_E_ASSOCIATE_DUPLICATE_ACCOUNT","PP_E_OAUTH_REMOTE_CONNECT_USER_CODE_MISSING_OR_INVALID","PP_E_LOGIN_NOPA_USER_PASSWORD_REQUIRED","PP_E_IDP_LINKEDIN_BINDING_NOT_ALLOWED","PP_E_IDP_GOOGLE_BINDING_NOT_ALLOWED","PP_E_IDP_GITHUB_BINDING_NOT_ALLOWED","PP_E_IDP_BINDING_EXISTS_SAMSUNG","PP_E_TRANSFER_TOKEN_INVALID_SESSION","EstsError","UserAccountSelectionInvalid","UserUnauthorized","UserUnauthorizedApiVersionNotSupported","UserUnauthorizedMsaGuestUsersNotSupported","UserAccountNotFound","UserAccountDeleted","UserAlreadyExists","UserAccountNotFoundNotConfiguredForRemoteNgc","UserAccountNotFoundFailedToCreateRemoteSignIn","UserAccountNotFoundForFidoSignIn","IdsLocked","InvalidPasswordLastPasswordUsed","InvalidPasswordExpiredPassword","InvalidPasswordNullPassword","UserDisabled","GuestUserDisabled","FlowTokenExpired","InvalidUserNameOrPassword","InvalidDomainName","ProtectedKeyMisuse","MissingCustomSigningKey","IdpLoopDetected","InvalidOneTimePasscode","ExpiredOneTimePasscode","OneTimePasscodeCacheError","OneTimePasscodeCacheErrorNoMoreOTPGenerated","OneTimePasscodeEntryNotExist","OneTimePasscodeMessageDeliveryFailed","InvalidPassword","InvalidOneTimePasscodeOTPNotGiven","InvalidGrantDeviceNotFound","SsoArtifactExpiredDueToConditionalAccess","SsoArtifactExpiredDueToConditionalAccessReAuth","InvalidTenantName","InvalidTenantNameEmptyGuidIdentifier","InvalidTenantNameEmptyIdentifier","InvalidTenantNameFormat","PhoneSignInBlockedByUserCredentialPolicy","AccessPassBlockedByPolicy","InvalidAccessPass","AccessPassExpired","AccessPassAlreadyUsed","PublicIdentifierSasBeginCallRetriableError","PublicIdentifierAuthUserNotAllowedByPolicy","PublicIdentifierSasBeginCallNonRetriableError","PublicIdentifierSasEndCallRetriableError","PublicIdentifierSasEndCallNonRetriableError","DeviceIsDisabled","FidoBlockedByPolicy","PasskeyBlockedByPolicyOtherAuthAppPasskeyAvailable","PasskeyBlockedByPolicyOtherPasskeyAvailable","PasskeyAuthInterrupted","BlockedAdalVersion","BlockedClientId","InvalidCredentialDueToMfaClassification","ProofupBlockedDueToMfaClassification","NoEmailAddressCollectedFromExternalOidcIDP","EmailAddressCollectedFromExternalOidcIDPNotVerified","EmailAddressCollectedFromExternalOidcIDPNotPublic","NoExternalIdentifierCollectedFromExternalOidcIDP","UserVoiceAuthFailedCallWentToVoicemail","UserVoiceAuthFailedInvalidPhoneInput","UserVoiceAuthFailedPhoneHungUp","UserVoiceAuthFailedInvalidPhoneNumber","UserVoiceAuthFailedInvalidExtension","InvalidFormat","UserAuthFailedDuplicateRequest","UserVoiceAuthFailedPhoneUnreachable","UserVoiceAuthFailedProviderCouldntSendCall","User2WaySMSAuthFailedProviderCouldntSendSMS","SMSAuthFailedProviderCouldntSendSMS","User2WaySMSAuthFailedNoResponseTimeout","SMSAuthFailedNoResponseTimeout","SMSAuthFailedWrongCodeEntered","IncorrectOTP","OathCodeIncorrect","OathCodeDuplicate","OathCodeOld","ProofDataNotFound","OathCodeCorrectButDeviceNotAllowed","OathCodeFailedMaxAllowedRetryReached","InvalidSession","PhoneAppNoResponse","User2WaySMSAuthFailedWrongCodeEntered","PhoneAppInvalidResult","PhoneAppDenied","PhoneAppTokenChanged","SMSAuthFailedMaxAllowedCodeRetryReached","PhoneAppFraudReported","FraudCodeEntered","UserIsBlocked","PhoneAppEntropyIncorrect","VoiceOTPAuthFailedWrongCodeEntered","VoiceOTPAuthFailedMaxAllowedCodeRetryReached","AccessPassBlockedByPolicyTfa","InvalidAccessPassTfa","AccessPassExpiredTfa","AccessPassAlreadyUsedTfa","AppLockRequiredButNotUsed","IncompatibleAppVersion","FlowTokenExpiredTfa","ApplicationUsedIsNotAnApprovedAppRequiredByConditionalAccess","BlockedByConditionalAccess","BlockedByConditionalAccessForRemoteDeviceFlow","BrokerAppNotInstalled","BrokerAppNotInstalledDeviceAuthenticationFailed","DeviceIsNotWorkplaceJoined","DeviceIsNotWorkplaceJoinedForMamApp","DeviceNotCompliant","DeviceNotCompliantBrowserNotSupported","DeviceNotCompliantDeviceCompliantRequired","DeviceNotCompliantDeviceManagementRequired","DeviceNotDomainJoined","DeviceNotDomainJoinedBrowserNotSupported","ProofUpBlockedDueToRisk","ProofUpBlockedDueToUserRisk","RemediateCompliantApp","RemediateDeviceStateManagedBrowserRequired","RemediateDeviceStateWorkplaceJoinRequired","AuthenticatorAppRegistrationRequiredInterrupt","AuthenticatorAppRegistrationEnforcementInterrupt","UserStrongAuthEnrollmentRequiredInterrupt","UserStrongAuthClientAuthNRequiredInterrupt","RequiredDeviceStateNotSupported","AdminConsentRequired","AdminConsentRequiredRequestAccess","CertificateValidationBlockedByPolicy","IssuerHintsPropagationDelay","TenantDoesNotSupportNativeCredentialRecovery","UserDoesNotSupportNativeCredentialRecovery","CredentialDoesNotSupportNativeRecovery","QrCodeKeyInvalidKey","InvalidRequestNonce","QrPinInvalid","InvalidGrantQrPinChanged","MaxUserPromptLength","FinishStates","Success","Cancel","NotSupported","UnexpectedErrorCode","EdgeErrorCodes","SyntaxError","NotFoundError","NotSupportedError","InvalidAccessError","AbortError","IfExistsResult","Exists","NotExist","Throttled","ExistsInOtherMicrosoftIDP","ExistsBothIDPs","ExistsInAcma","ThrottleStatus","NotThrottled","AadThrottled","MsaThrottled","DomainType","Consumer","Managed","Federated","CloudFederated","CredentialType","CloudFederation","OtherMicrosoftIdpFederation","GitHub","PublicIdentifierCode","LinkedIn","RemoteLogin","Google","Facebook","Certificate","OfflineAccount","NoPreferredCredential","RemoteNgcType","PushNotification","ListSessions","SessionPollingType","Image","Json","AgreementType","Privacy","Tou","Impressum","A11yConforme","ApiErrorCodes","GeneralError","AuthFailure","InvalidArgs","Generic","Timeout","Aborted","DefaultRequestTimeout","PROOF","Type","Email","AltEmail","SMS","DeviceId","CSS","SQSA","HIP","Birthday","TOTPAuthenticator","RecoveryCode","StrongTicket","TOTPAuthenticatorV2","TwoWayVoice","TwoWaySMS","FidoKey","TransferToken","CompanionApp","ExternalAuth","ConsolidatedTelephony","Voice","ContentType","FormUrlEncoded","BindProvider","Samsung","PromotedAltCredFlags","EnvironmentName","Internal","TestSlice","FirstSlice","AnimationState","Begin","End","RenderNewView","AnimateNewView","AnimationName","SlideOutNext","SlideInNext","SlideOutBack","SlideInBack","DialogId","FidoHelp","GitHubHelp","ConsentAppInfo","QrCodePinHelp","KeyCode","Tab","Enter","Escape","Space","PageUp","PageDown","Home","ArrowUp","ArrowDown","WinKeyLeft","F6","GamePadB","ProofOfPossession","AuthenticatorKey","CanaryTokenKey","MethodHint","UpgradeMigrationUXId","Invalid","Mojang","TransferLoginStringsVariant","Default","Mmx","MmxPhoneFirst","AppNameOnly","AppNameAndUsername","MmxGe","OutlookMobileCustom","TeamsMobileCustom","LayoutTemplateType","Lightbox","VerticalSplit","StringCustomizationPageId","ConditionalAccess","MessagePage","ProofUpPage","ErrorPage","LoginPage","ProofUpRedirectViewType","DefaultProofUpRedirectView","AuthAppProofUpRedirectView","ConfirmationInputDisplayType","Retype","RetypeWithReveal","SecurityDefaultsUpsellAction","Upsell","AutoEnable","AutoEnableAfterPrompt","ReevaluateLegacy","AutoEnabledNotify","Branding","DefaultBackgroundColor","CredentialDeviceType","SingleDevice","MultiDevice","AttestationParseError","InvalidAuthDataSize","SingleDeviceBackedUp","CBORDataEmpty","ExternalFederatedIdpType","Apple","CameraMode","Environment","User","Back","SignInIdentifierTypes","UPN","CustomUsername","OfficeHrdAppId","FidoConstants","require","Helpers","PromiseHelpers","ObjectHelpers","StringHelpers","String","ArrayHelpers","w","isEdge","isIEOlderThan","isFirefoxNewerThan","isChromeNewerThan","isChrome","isIOSSafari","isIOSUIWebView","isQtCarBrowser","isEdgeClientBrowser","isHighContrast","isPlaceholderAttributeAllowed","isHistorySupported","useSameSite","fUseSameSite","isSvgSupported","HttpCode","Ok","NotModified","ClientClosedRequest","BrowserHelper","Helper","version","ieVersion","getIEVersion","windowsVersion","getWindowsVersion","navigator","userAgent","toLowerCase","firefoxVersion","getFirefoxVersion","chromeVersion","getChromeVersion","test","MSStream","isOnTouchStartEventSupported","documentElement","ua","msie","parseInt","rv","edge","match","RegExp","exec","parseFloat","$1","htmlEscape","text","textArea","innerText","innerHTML","htmlUnescape","html","getStackSize","maxUpperLimitOfStackSize","stackSize","isUnlimited","recurse","getAnimationEndEventName","testDiv","animations","style","isStackSizeGreaterThan","isSvgImgSupported","implementation","hasFeature","isHosted","isCSSAnimationSupported","supported","animationName","first","prefix","isStyleSupported","styleName","isCORSSupported","XDomainRequest","XMLHttpRequest","history","pushState","state","onpopstate","replaceState","isFidoSupportedAsync","isFidoSupportedHint","skipStandardSupportCheck","credentials","PublicKeyCredential","isUserVerifyingPlatformAuthenticatorAvailable","isExternalCTAP2SecurityKeySupported","newPromiseWithTimeout","PromiseTimeout","isChangingInputTypeSupported","getComputedSpan","span","borderLeftColor","borderRightColor","backgroundColor","position","top","body","computedStyle","getComputedStyle","removeChild","getIsHighContrastUsingCssMediaQuery","headStyle","div","className","computedContent","content","theme","getHighContrastTheme","doesColorMatchAnyList","colorString","rgbList","nonRgbList","isRgbOrRgbaMatch","color","g","b","trim","rgbValues","split","map","Number","nonRgbColor","replace","isBlackHighContrastTheme","isWhiteHighContrastTheme","isAquaticTheme","isDuskTheme","isDesertTheme","element","defaultView","currentStyle","title","addEventListener","eventType","handler","useCapture","attachEvent","removeEventListener","detachEvent","getEventTarget","srcElement","QueryStringHelper","QueryString","parse","originAndPath","query","fragment","queryStartIndex","fragmentStartIndex","doubleSplit","join","parsedUrl","appendCurrentQueryParameterIfNotExist","currentUrlFullQueryString","location","href","forEach","addIfNotExist","append","queryString","params","findOwnProperty","add","keyValuePairs","keyValuePair","addFragment","uniqueKey","includes","appendOrReplace","param","maxLength","existingParam","modifiedUrl","remove","extract","urlOrQueryString","search","appendOrReplaceFromCurrentUrl","currentValue","stripQueryStringAndFragment","CookieHelpers","Cookies","expireDate","persistTTLDays","cookieSafeRegex","enabled","cookieValue","Date","getTime","write","cookiesEnabled","getCookie","getCookies","cookie","cookies","getObject","domain","path","domainName","hostname","hostParts","partCount","cookieDomain","cookiePath","secure","protocol","secureContent","sameSiteContent","getDefaultSameSiteAttribute","format","persist","topLevel","addDomainPrefix","sameSite","parts","splice","Math","max","writeWithExpiration","getPersistDate","expiresOn","_typeof","expiration","attributes","maxValueLen","chunks","ceil","suffix","toString","chunkValue","chunkToWrite","chunkName","cookieToWrite","isCookieSafeValue","str","date","setDate","getDate","toUTCString","documentMode","userAgentOverride","matches","ko","StringHelpersLite","assignRecursive","assignRecursiveWithCurrentDepth","concat","currentDepth","source","prop","clone","result","delimeter","separator","obj","action","utils","objectForEach","propertyName","ignoreCase","propertyNameLower","extend","find","searchString","startIndex","delimiterOne","delimiterTwo","multiValuedKeys","keyTransformFunc","isEmailAddress","charAt","atIndex","fApplyAsciiRegexOnInput","asciiRegex","isPhoneNumber","digits","isSkypeName","skypeRegex","extractDomain","removeDomainSuffix","includeDomainSeparator","lastIndexOf","extractDomainFromUrl","extractOriginFromUrl","origin","port","doOriginsMatch","requestUrl","responseOrigin","requestUrlOrigin","capFirst","toUpperCase","cleanseUsername","preserveLeadingPlusSign","maskString","charsToKeep","masked","utf8Encode","input","utftext","charCodeAt","fromCharCode","arrayFirst","arrayForEach","arrayMap","removeItem","arrayRemoveItem","arrayFilter","findIndex","array","predicate","DateTime","getCurrentTime","getUTCString","toISOString","ErrorData","errorText","remediationText","tracingOptions","handlerResponse","triggered","eventArgs","observable","subscribe","callback","eventArgsValue","peek","isComponentEvent","isObservable","Tokens","Fed","DomainToken","FedDomain","Partner","LoginOption","DoNotRemember","RememberPWD","NothingChecked","StringsVariantId","SkypeMoveAlias","CombinedSigninSignup","CombinedSigninSignupDefaultTitle","RemoteConnectLogin","CombinedSigninSignupV2","CombinedSigninSignupV2WelcomeTitle","AllowedIdentitiesType","MsaOnly","AadOnly","Both","SessionIdp","Aad","ClientTracingEventIds","Event_LoginPaginatedUsernameView_onLoad","Event_LoginPaginatedPasswordView_onLoad","ComponentEvent_LoginPaginatedUsernameView_onShowDialog","ComponentEvent_LoginPaginatedUsernameView_onAgreementClick","ComponentEvent_LoginPaginatedPasswordView_onResetPassword","PropertyValue_LoginPaginatedPageView_IsFidoSupported","PropertyValue_LoginPaginatedUsernameView_Username","PropertyValue_LoginPaginatedUsernameView_ClientError","PropertyValue_LoginPaginatedPasswordView_Password","PropertyValue_LoginPaginatedPasswordView_ClientError","PropertyValue_LoginPaginatedPasswordView_KMSI","Browser","AccessibleImageControl","lightImageNode","darkImageNode","_hasDarkBackground","hasDarkBackground","isHighContrastBlackTheme","isHighContrastWhiteTheme","components","register","viewModel","createViewModel","componentInfo","templateElements","templateNodes","templateNode","nodeType","template","synchronous","iMaxStackForKnockoutAsyncComponents","Telemetry","_getDCAndRI","serverDetails","_getBuildVersion","ver","buildVersion","v","isArray","instance","getInstance","fEnableOneDSClientTelemetry","_config","_browserSense","browser","_clientEventsConfig","clientEvents","_serverDetails","_uaid","correlationId","_isOobe","fIsOOBE","_isScoobe","fIsScoobe","_isHosted","fIsHosted","correlationID","hostPageID","hpgid","pageName","pgid","sPageId","actorID","hpgact","sCID","appId","autoCaptureJsErrors","fAutoCaptureJsErrors","autoCaptureClicks","fAutoCaptureClicks","autoCaptureEvents","fAutoCaptureEvents","isOOBE","isScoobe","environment","datacenter","role","roleInstance","IE","appInsightsConfig","PostChannel","disableXhrSync","TelemetryHelper","_initializeTelemetry","EventIds","Event_PaginationControl_ViewSwitch","Api_GetOneTimeCode","Api_GetOneTimeToken","Api_CanaryValidation","Api_GetCustomCss","Api_GetCredentialType","Api_CheckSessionState","Api_GetIwaSsoToken","Api_OtcAuthentication","Api_DeviceAuthentication","Api_BeginOtcAuthentication","Api_ConfirmOneTimeCode","Api_BeginSessionApproval","Api_EndSessionApproval","Api_Forget","Api_GetRecoveryCredentialType","Api_OfficeHrd","Api_CheckPassword","Redirect_Unknown","Redirect_MSASignUpPage","Redirect_AADSignUpPage","Redirect_SkipZeroTouch","Redirect_ResetPasswordPage","Redirect_MSAUserRecoveryPage","Redirect_OtherIdpRedirection","Redriect_SwitchUser","EventLevel","Critical","Info","ApiRequest","CXH","Debug","Verbose","All","HidingMode","Hide","Mask","DataPointScope","ClientEvent","Global","EventStage","throwUnhandledExceptionOnRejection","ex","func","global","f","toJSON","isFinite","valueOf","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","Boolean","cx","escapable","gap","indent","meta","rep","quote","string","lastIndex","a","holder","k","partial","mind","replacer","space","reviver","j","walk","eval","ClientTracingConstants","ClientTracingContext","ClientTracingHelper","tracingConfig","methodName","_initializingTime","_tracingEnabled","fEnableClientTelemetry","iClientLogLevel","_clientTracing","_createClientTracingWrapper","createLoadClientTracingPromise","clientTracing","logRedirection","redirectData","parameters","eventOptions","traceParameters","traceUrl","eventId","logEvent","eventLevel","getPropertyLogOption","tracingPropertyChange","getDefaultTextBoxPropertyLogOption","hidingMode","rateLimit","method","getPIITextBoxPropertyLogOption","getPasswordTextBoxPropertyLogOption","getDefaultEventTracingOptions","traceEventArgs","attachViewLoadClientTracingOptions","logUserInteractionEvent","traceBeginRequest","traceEndRequest","tracingObject","succeeded","setPageViewModel","logComponentEvent","logViewState","setViewViewModel","switchView","postEvent","Ajax","Constants","$config","$Config","_checkApiCanary","checkApiCanary","_withCredentials","withCredentials","_breakCache","breakCache","_responseType","responseType","_notifyOnClientAbort","notifyOnClientAbort","_sasEndAuthPostToGetSwitch","fSasEndAuthPostToGetSwitch","_fixUICrashForApiRequestHandler","fFixUICrashForApiRequestHandler","_constructCommonHeaders","constructForQueryString","headers","Accept","apiCanary","canary","sessionId","hpgrequestid","_constructJsonPostData","postData","jsonPostData","substr","_addCommonRequestParameters","ajaxParams","skipCommonHeaders","_traceBeginRequest","requestData","requestType","requestTimeout","contentType","noCallback","eventData","_traceEndRequest","_getErrorForTrace","xhr","textStatus","xhr_status","Errors","successCallback","failureCallback","headerData","qsParams","expectResponse","startTime","_parseError","response","responseText","isFatal","debugMessage","stackTrace","_handleResponse","dataObject","requestStats","endTime","encodeJson","errorString","debug","stacktrace","_failRequestWithErrorCode","errorCode","Get","ev","dataString","errorThrown","Post","postDataString","RequestType","targetUrl","timeoutCallback","Handler","sendRequest","header","newRequestUrl","Beacon","sendBeacon","ComponentEvent","FooterButtonsViewModel","_primaryButtonId","_primaryButtonName","_serverData","_originalPrimaryButtonId","primaryButtonId","_fConsentButtonIdViaName","fConsentButtonIdViaName","_needsIdNameProtection","needsIdNameProtection","defaultButtonIdentifier","_focusOnPrimaryButton","_focusOnSecondaryButton","_secondaryButtonId","secondaryButtonId","_primaryButtonText","primaryButtonText","_secondaryButtonText","secondaryButtonText","_isPrimaryButtonVisible","isPrimaryButtonVisible","_isSecondaryButtonVisible","isSecondaryButtonVisible","_isPrimaryButtonEnabled","isPrimaryButtonEnabled","_isSecondaryButtonEnabled","isSecondaryButtonEnabled","focusOnPrimaryButton","focusOnSecondaryButton","_primaryButtonDescribedBy","primaryButtonDescribedBy","_secondaryButtonDescribedBy","secondaryButtonDescribedBy","_primaryButtonCss","primaryButtonCss","_secondaryButtonCss","secondaryButtonCss","_primaryButtonType","primaryButtonType","_removeBottomMargin","removeBottomMargin","_primaryButtonPreventTabbing","primaryButtonPreventTabbing","direction","hasOneButtonVisible","pureComputed","visibleButtons","primaryButtonAttributes","buttonAttributes","onPrimaryButtonClick","onSecondaryButtonClick","setTextPrimaryButton","setTextSecondaryButton","setVisibilityPrimaryButton","isButtonVisible","setVisibilitySecondaryButton","setEnabledPrimaryButton","isButtonEnabled","setEnabledSecondaryButton","primaryButton_onClick","secondaryButton_onClick","enableExtensions","requireDefaultBackgroundImage","requireAppBackgroundImage","requireAppBackgroundLogo","useNonMicrosoftDefaultBrandingForCiam","fUseNonMicrosoftDefaultBrandingForCiam","isCiamUserFlowUx","fIsCiamUserFlowUx","fixCustomCssRemoval","fRemoveCustomCss","enableLivePreview","fEnableLivePreview","BrandingHelpers","loadTenantBranding","brandingToUse","brandingObject","fallbackBranding","preferredBranding","brandingProperty","currentPreferredBranding","currentFallbackBranding","TileDarkLogo","TileLogo","getPageBranding","tenantBranding","appBranding","defaultImage","branding","useDefaultBackground","bannerLogoUrl","BannerLogo","BackgroundColor","Illustration","backgroundImageUrl","useTransparentLightBox","UseTransparentLightBox","useImageMask","backgroundImageIndex","backgroundLogoIndex","friendlyAppName","smallImageUrl","backgroundLogoUrl","urlLegacyBackgroundLogo","useSvg","getMergedBranding","staticTenantBranding","dynamicTenantBranding","isGlobalTenant","fallbackToResourceBranding","mergedBranding","BoilerPlateText","KeepMeSignedInDisabled","AccessRecoveryLink","CantAccessYourAccountText","ForgotPasswordText","hideAccountResetCredentials","LayoutTemplateConfig","getLayoutTemplateConfig","CustomizationFiles","newCustomizationFiles","strings","customCssUrl","layoutTemplateConfig","showHeader","headerLogo","layoutType","showFooter","hideTOU","hidePrivacy","createMergedBrandingObservables","masterPageMethods","isVerticalSplitTemplate","termsText","termsLink","privacyText","privacyLink","userIdLabel","cantAccessYourAccountText","forgotPasswordText","accessRecoveryLink","boilerPlateText","updateMergedBrandingObservables","updateBranding","FooterTOUText","FooterTOULink","FooterPrivacyText","FooterPrivacyLink","UserIdLabel","updateFavicon","defaultFaviconUrl","favicon","Favicon","removeCustomCss","customCssNode","loadCustomizationFiles","customizationLoader","isLoadComplete","customizationFiles","customStringsFiles","initialize","customResourceUrls","customCss","load","createCustomizationLoader","customizationLoaderObservable","pageId","customizationFilesLoader","MarchingAntsControl","useCssAnimation","AjaxHelpers","QueryStringHelpers","OtcProperties","Properties","State","SessionLookupKey","DisplaySignForUI","FlowToken","OtcPurpose","Purpose","NoPassword","OtcLogin","XboxRemoteConnect","OtcChannel","Channel","Authenticator","MobileSms","EmailAddress","VoiceCall","PushNotifications","OtcType","EmailAddressEncrypted","Mobile","MobileEncrypted","SessionApprover","Event","OnSend","OnSendFail","OnFlowExpired","OtcRequestParam","RequestParam","CanaryFlowToken","UIMode","PhoneCountry","PhoneCountryCode","UnauthSessionId","OtcStatus","Status","HIPError","FTError","InputError","DestinationError","ProofTypeToChannel","ProofTypeToOtcType","isEncrypted","Proof","_username","username","_flowToken","flowToken","_purpose","purpose","_proofType","proofType","_proofData","proofData","_isEncrypted","_uiMode","uiMode","_lcid","lcid","_phoneCountry","phoneCountry","_phoneCountryCode","phoneCountryCode","_unauthSessionId","unauthSessionId","_proofConfirmation","proofConfirmation","_canaryFlowToken","canaryFlowToken","Request","market","_status","_sessionKey","_displaySign","_data","_onSend","onSend","_onSendFail","onSendFail","_onFlowExpired","onFlowExpired","_timeout","_siteId","siteId","_clientId","clientId","_forwardedClientId","forwardedClientId","_noPaBubbleVersion","noPaBubbleVersion","_evt_AJAX_onsuccess","isFailed","json","getResponseJson","_evt_AJAX_onerror","_evt_AJAX_ontimeout","getOtcStatus","isComplete","getSessionKey","getDisplaySign","getFlowToken","generateRequestString","isAsync","TypeConverter","LoginConstants","_publicKeyCredential","_platformKeySuppressedOS","fShouldPlatformKeyBeSuppressed","makeCredential","serverChallenge","id","membername","displayName","userProfileImageUrl","serverExcludeList","authenticator","rpId","hints","excludeListParam","credentialId","base64UrlStringToArrayBuffer","supportedKeyAlgorithms","SupportedKeyAlgorithms","algorithm","alg","publicKey","challenge","stringToArrayBuffer","rp","user","icon","pubKeyCredParams","excludeCredentials","authenticatorSelection","authenticatorAttachment","requireResidentKey","userVerification","attestation","extensions","getAssertion","serverAllowList","useConditionalMediation","enablePasskeyAutofillUI","allowListParam","publicKeyCredentialRequestOptions","allowCredentials","conditionalMediation","mediation","isPlatformAuthenticatorAvailable","isConditionalMediationAvailable","getIdpFromUserHandle","userHandle","userHandleString","arrayBufferToString","postFidoAssertionToIdp","setRequestPending","fidoAssertion","crossDomainCanary","originalRequest","canaryTokenName","flowTokenName","postUrl","onRedirect","postParams","ps","assertion","ctx","Otc","_request","_successCallback","_failureCallback","_clientTracingOptions","clientTracingOptions","_trackingObject","_sendOneTimeCode_onSuccess","_sendOneTimeCode_onFail","otcStatus","proofParams","otcRequestParams","GctResultAction","GetCredentialTypeRequestHelper","ShowError","SwitchView","Redirect","GctRequestHelperFlags","CheckCurrentIdpOnly","IsPhoneNumberFullyQualified","DisableDesktopSsoPreferredCred","DisableAutoSend","ForceOtcLogin","IsPostRequest","IsSignup","flags","_isOtherIdpSupported","_useAltUsernameExistenceErrorPromise","_isFidoSupportedPromise","_getPoPAuthenticatorPromise","_blockBridgePromise","_blockBridge","_cache","_isTapRestrictedWsi","_checkCurrentIdpOnly","_isPhoneNumberFullyQualified","_disableDesktopSsoPreferredCred","_disableAutoSend","_forceOtcLogin","_isPostRequest","_isSignup","_strings","_unauthSessionID","sUnauthSessionID","_allowedIdentities","iAllowedIdentities","_isFederationDisabled","fIsFedDisabled","_isRemoteNGCSupported","fIsRemoteNGCSupported","_showCookieBanner","fShowCookieBanner","_isFidoSupportedHint","fIsFidoSupported","_isOtcLoginDisabled","fIsOtcLoginDisabled","_isNoPaOtcDisabled","fIsNoPaOtcDisabled","_isExternalFederationDisallowed","fIsExternalFederationDisallowed","_isPassthroughDisallowed","fIsPassthroughDisallowed","_isPhoneNumberSignupDisallowed","fIsPhoneNumberSignupDisallowed","_originalRequest","sCtx","_redirectToSignupOnNotExists","fDoIfExists","_checkProofForAliases","fCheckProofForAliases","fCheckApiCanary","_getCredentialTypeUrl","urlGetCredentialType","_isSignupAllowed","fCBShowSignUp","_allowSkype","fAllowSkypeNameLogin","_msaSignupUrl","urlMsaSignUp","_signupUrl","urlSignUp","_showInterstitialView","fUseCertificateInterstitialView","_signupUrlPostParams","oSignUpPostParams","_useConsumerEmailError","fUseConsumerEmailError","_otherIdpRedirectPostParams","oUrlOtherIdpPostParams","_desktopSsoConfig","desktopSsoConfig","_federationRedirectQueryString","sFedQS","_staticTenantBranding","_dynamicTenantBranding","_isGlobalTenant","_country","fCheckForWindowsSku","country","_userProofData","arrProofData","_postProofType","sProofType","_changePasswordUrl","urlChangePassword","_remoteConnectEnabled","fAllowRemoteConnect","_bindCookiesUsingPoP","fBindCookiesUsingPoP","_gctFederationFlags","iGctFederationFlags","_ignoreViralUsers","fIgnoreViralUsers","_isAccessPassSupported","fAccessPassSupported","_hidePhoneCobasiInOtherSignIn","fHidePhoneCobasiInOtherSignIn","_isRestrictedWsi","fIsRestrictedWsi","_useResetPasswordUrlInPasswordRequiredError","fUseResetPwdUrlForPwdRequiredErr","_resetPasswordUrl","urlResetPassword","_isSelfServiceSignupUxEnabled","fIsSelfServiceSignupUxEnabled","_isCiamUserFlowLinked","_enableWebNativeBridge","fEnableWebNativeBridge","wamExtensionId","sWAMExtension","wamChannelId","sWAMChannel","_canaryTokenName","_canary","_deprecateSmsAutoSend","fDeprecateSmsAutoSend","_useWebviewFidoCustomProtocol","fUseWebviewFidoCustomProtocol","_isQrCodePinSupported","fIsQrCodePinSupported","_isDFPFingerprintingAllowed","fEnableDFPIntegration","_isImprovedUsernameRecovery","fIsImprovedUsernameRecovery","_fixPhoneDisambigSignupRedirect","fFixPhoneDisambigSignupRedirect","_enableRefreshCookiesFix","fEnableRefreshCookiesFix","_fixUrlExternalIdpFederation","fFixUrlExternalIdpFederation","_useNativeBridgeEdgeApi","fUseNativeBridgeEdgeApi","_removeSMSFilterGCTFix","fRemoveSMSFilterGCTFix","_urlOfficeHrd","urlOfficeHrd","_correlationId","_buildOtcCredentials","isDefault","isFidoSupported","otcLoginEligibleProofs","Credentials","OtcLoginEligibleProofs","otcCredentials","isCobasiApp","HasPhone","CobasiApp","eligibleProof","otcCredential","credType","proof","isVoiceOnly","smsCredential","otcSent","shownOnlyOnPicker","voiceEnabled","voiceCredential","_getPreferredCredential","hasPassword","HasPassword","display","Display","isNopa","_buildOtcProofStrings","clearDigits","_parseGetCredentialTypeResponse","otherIdpRedirectUrl","unsafe_username","useAltUsernameExistenceError","isCachedResponse","gctResult","desktopSsoEnabled","EstsProperties","DesktopSsoEnabled","lastUsernameTried","_isDesktopSsoAttemptedUsernameMatch","errorHr","ErrorHR","fedRedirectParams","_getFedRedirectParams","sharedData","getGctSharedData","acmaProperties","AcmaProperties","_getGctResultShowErrorAction","_getGctResultSwitchViewAction","phoneDisambigError","_getInvalidPhoneNumberGctResult","RequiresPhoneDisambiguation","AliasDisabledForLogin","isSignupAllowedForUsername","_isSignupAllowedForUsername","estsProperties","isAadVerifiedDomain","IsProofForAlias","_getSignupRedirectGctResultForResponse","_getUsernameNotFoundGctResult","idpRedirectUrl","idpRedirectPostParams","idpRedirectProvider","_getOtherIdpRedirectGctResult","ShowRemoteConnect","SignInUrl","SignInContinuationToken","_getGctResultRedirectAction","continuationToken","isProofConfirmationRequired","preferredCredential","HasGoogleFed","HasCertAuth","HasFido","HasRemoteNGC","HasFacebookFed","unsafe_desktopSsoDomainToUse","sessionPullType","NativeBridgeRequest","Nonce","idpRedirectViewParams","paginatedState","OTCNotAutoSent","OtcNotAutoSent","SasParams","isPushNotification","RemoteNgcParams","DefaultType","_getAvailableCreds","_getEvictedCreds","CertAuthParams","CertAuthUrl","_getCertAuthParams","_getUsernameFoundGctResult","hasIdpDisambigError","bypassCache","_handleGetCredentialTypeError","PrefCredential","SessionIdentifier","availableCredentials","sasParams","linkedInParams","LinkedInParams","gitHubParams","GitHubParams","googleParams","GoogleParams","facebookParams","FacebookParams","certAuthParams","qrCodePinParams","QrCodePinParams","FederationRedirectUrl","HasLinkedInFed","redirectUrl","LinkedInRedirectUrl","HasGitHubFed","GithubRedirectUrl","GoogleRedirectUrl","FacebookRedirectUrl","HasAccessPass","HasQrCodePin","redirectPostParams","encodedUsername","encodeURIComponent","otherIdpRedirectPostParams","signupUrl","signupUrlPostParams","IsUnmanaged","SamlRequest","RelayState","SAMLRequest","HasExternalOidcFed","fedUrl","fedQs","decodeURIComponent","_buildFederationRedirectUrl","_getCleansedUsername","IsSignupDisallowed","viewId","viewParams","isBlockingError","isIdpRedirect","sendAsync","unsafe_cleansedUsername","cachedResponse","gctPromise","popAuthenticator","officeHrdUrl","responseString","_callOfficeHrdAsync","officeHrdEnvironment","uaid","isOtherIdpSupported","isFederationDisabled","checkPhones","isRemoteNGCSupported","isCookieBannerShown","forceotclogin","otclogindisallowed","isExternalFederationDisallowed","isRemoteConnectSupported","federationFlags","isSignup","checkProofForAliases","noPaOtcDisallowed","isPassthroughDisallowed","isPhoneNumberSignupDisallowed","ignoreViralUsers","cpa","cpa_err","isAccessPassSupported","isQrCodePinSupported","_buildGetCredentialTypeRequest","_callGetCredentialTypeAsync","results","getResult","getState","cache","restoreState","cacheResponse","getSignupRedirectGctResult","getOtherIdpRedirectGctResult","ngcParams","fidoParams","FidoParams","remoteNgcDefaultType","remoteNgcShowAnimatedGifWhilePolling","ShowAnimatedGifWhilePolling","remoteNgcStyleCredSwitchLinkAsButton","StyleCredSwitchLinkAsButton","UserTenantBranding","undirectedRecoveryContinuationToken","RecoveryContinuationToken","undirectedRecoveryUrl","UndirectedRecoveryUrl","accountRecoveryUrlV2","AccountRecoveryUrlV2","accountRecoveryContinuationTokenV2","AccountRecoveryContinuationTokenV2","supportsAccountRecoveryV2","AccountRecoverySupportedV2","directedRecoveryContinuationToken","directedRecoveryUrl","PasswordRecoveryUrl","isEligibleForV2Recovery","SupportsModernPasswordRecoveryV2","DfpProperties","DfpUrl","urlDeviceFingerprinting","Location","isTapRestrictedWsi","supportsNativeCredentialRecovery","SupportsNativeCredentialRecovery","availableCreds","evictedCreds","credential","useEvictedCredentials","remoteNgcParams","requestSent","sessionIdentifier","entropy","Entropy","defaultType","showAnimatedGifWhilePolling","styleCredSwitchLinkAsButton","otcParams","AllowList","hasMsftAndroidAuthAppPasskey","HasMsftAndroidAuthAppPasskey","hasOnlyMsftAndroidAuthAppPasskey","HasOnlyMsftAndroidAuthAppPasskey","hasMsftAuthAppPasskey","HasCrossDeviceCapablePasskey","allowList","Hints","callMetadata","CallMetadata","userTenantBranding","checkPasswordFlowToken","CheckPasswordFlowToken","proofOfPossessionGenerator","computePoPAuthenticator","getBrowserCoreProvider","WAMMessageHandler","platformAuthentication","getSupportedContracts","contracts","AjaxState","Unsent","Done","OnSuccess","OnError","OnTimeout","requestString","_response","_httpSuccessCodes","_event","_ajaxRequest","_isTimedOut","_isSupported","_timeoutObject","_isCrossDomain","_hasContentTypeParam","_hasHeadersParam","_hasHeaderValueParam","headerValue","_targetUrl","_requestType","_isAsync","_password","password","_contentType","_headers","_timeoutCallback","_onCompletion","successOverride","failOverride","isSuccess","statusText","_onTimeout","cancel","timeoutXhr","_onAbort","_clearTimeout","canceled","abortXhr","_onError","_setResponseAndComplete","_evt_readyState_onchange","_requestCompleted","success","xhrSupportsCORS","onreadystatechange","open","clearResponse","headerName","setRequestHeader","_initializeRequest","send","readyState","getStatus","abort","targetUrlDomain","arrayBuffer","ArrayBuffer","dataView","Uint8Array","base64UrlString","base64String","bytes","atob","arrayBufferToBase64UrlString","btoa","base64ToBase64UrlString","objectToBase64UrlString","_viewModelDictionary","_nullViewModelTracingContextObject","setDataPoint","dataPointName","dataPointValue","scope","options","tracingContextObject","_getTracingContextObject","tracingDataPoints","getTracingContextObject","getTracingContextObjects","tracingContextObjectsArray","registerTracingObservables","tracingObservables","deleteTracingContextObject","viewLoadClientTracingOptions","DialogContentControl","_dialogId","dialogId","_templateNodes","onRegisterDialog","onUnregisterDialog","dispose","TelemetryFactory","FooterControl","_showLogo","showLogo","_showLinks","showLinks","_hideFooter","hideFooter","_debugDetails","debugDetails","_showDebugDetails","showDebugDetails","_useDefaultBackground","_showFooter","_hideTOU","_hidePrivacy","_termsText","_privacyText","_customTermsLink","_customPrivacyLink","_telemetry","_isChinaDc","fIsChinaDc","_termsLink","urlFooterTOU","urlHostedTOULink","_privacyLink","urlFooterPrivacy","urlHostedPrivacyLink","_impressumLink","urlImpressum","_a11yConformeLink","a11yConformeLink","_icpLink","urlGallatinIcp","_enableLivePreview","handleLegalLink","agreementType","onAgreementClick","onShowDebugDetails","onSwitchView","focusMoreInfo","showIcpLicense","impressumLink","icpLink","privacyLink_onClick","termsLink_onClick","impressumLink_onClick","services_onClick","set","post","a11yConformeLink_onClick","moreInfo_onClick","setDebugDetailsState","focusMoreInfoLink","PlatformTimeout","FidoCreateCallUnexpectedResponse","DebugDetailsExtensions","DateTimeHelpers","DebugDetailsViewModel","_isDebugTracingEnabled","isDebugTracingEnabled","_useWiderWidth","useWiderWidth","_exceptionMessage","strServiceExceptionMessage","_setDebugModeUrl","urlSetDebugMode","_postUsername","sPOST_Username","_signinName","sSigninName","_errorCode","sErrorCode","_setDebugMode_onSuccess","sending","onSetDebugTracing","_setDebugMode_onError","debugModeError","onCloseBanner","showBanner","showDebugDetailsCopyMessage","isFocusActivated","unsafe_exceptionMessage","hideBanner_onClick","setDebugMode_onClick","apiRequest","activateFocus","timestamp","applyExtensions","FidoHelpButtonControl","_isPlatformAuthenticatorAvailable","onShowDialog","hasFocus","fidoHelp_onClick","applyExtenders","extenders","preventExternalWrite","initialValue","read","newValue","flowTokenUpdate","sFTTag","sFT","logValue","loadImageFromUrl","image","GetOneTimeCodeHelper","CredSwitchLinkControl","_availableCreds","_currentCred","currentCred","_showForgotUsername","showForgotUsername","_hideCredSwitchLink","hideCredSwitchLink","_ariaDescribedBy","ariaDescribedBy","_setFocus","setFocus","_undirectedRecoveryContinuationToken","_undirectedRecoveryUrl","_forgotUsernameUrl","urlForgotUsername","sSiteId","sClientId","sForwardedClientId","sNoPaBubbleVersion","_showSignInOptionsAsButton","fShowSignInOptionsAsButton","_isOfflineAccountVisible","fOfflineAccountVisible","_IsPasskeySupportEnabled","fIsPasskeySupportEnabled","_credViewMap","_selectedCred","_hasTlr","fEnableTotalLossRecovery","_fidoLinkText","_setFlowToken","onSetPendingRequest","errorNumericId","credLinkError","onUpdateFlowToken","credentialCount","selectedCredType","selectedCredShownOnlyOnPicker","switchToCredId","switchToCredText","showSwitchToCredPickerLink","isUserKnown","displayHelp","isOfflineAccountVisible","showCredSwitchLink","view_onUpdateFlowToken","switchToCredPicker_onClick","switchToCred_onClick","_getOneTimeCodeHelperParams","getOneTimeCodeHelper","forgotUsername_onClick","assign","getSwitchToCredText","unwrap","credId","credText","credMatch","isCredTypeOtc","proofDataMatch","proofTypesMatch","errorComputed","defaultValue","_valueSubscription","placeholderTextboxMethods","focused","textbox_onUpdateFocus","isFocused","getTrimmedValue","trimmedValue","toggleVisibility","_setupPlaceholderVisibility","PlaceholderTextboxViewModel","_isPlaceholderSupported","_hintText","hintText","_hintCss","hintCss","onUpdateFocus","usePlaceholderAttribute","placeholderVisible","classes","placeholderText","isVisible","placeholder_onClick","HeaderControl","_title","_subtitle","subtitle","_useSubtitle","useSubtitle","_isSignUpView","isSignUpView","_headerDescription","headerDescription","_appCobranding","oAppCobranding","_isCiamUserFlowUx","fIsCiamUserFlowUxNewLogicEnabled","_companyDisplayName","sCompanyDisplayName","_useNonMicrosoftDefaultBrandingForCiam","isAppNamePresent","isSubtitleVisible","unsafe_companyName","headerDescriptionDefaultString","getClientErrorCallback","_asyncBlockingError","_asyncNonBlockingError","_clientError","_blockingError","isBlocking","setBlockingError","setNonBlockingError","setError","clearNonBlockingError","valueHasMutated","ChromeBrowserCore","TokenBrokerAuthHelper","_bssoConfig","bsso","_isCloudBuild","fIsCloudBuild","_trimChromeBssoUrl","fTrimChromeBssoUrl","_cookieNames","cookieNames","_bssoTelemetry","_getReloadUrlAndSetThrottlingCookie","setSeconds","getSeconds","ssoPulled","reloadOnFailure","_logMessage","traces","_logDataPoint","_reportSuccessTelemetryAsync","newSessions","_reportTelemetryAsync","_reportErrorTelemetryAsync","externalData","info","telemetry","loginWindowsUserAsync","uri","msLaunchUri","failInitiatePullOnTimeout","initiatePullTimeoutAction","logMessage","logDataPoint","initiatePullTimeoutMs","overallTimeoutMs","reload","_loginWindowsUserAsync","pullBrowserSsoCookieAsync","pullCookiePromise","isSilentCookiePull","failureRedirectUrl","bssoType","useTiles","ssoTiles","forceTiles","baseUri","rid","userList","users_json","users","windowsUserTiles","ssoUniqueId","unique_id","display_name","upn","isWindowsSso","isSignedIn","_processUsersList","_pullBrowserSsoCookieAsync","getCookiesAsync","aadSso","toCookieString","isEnabled","CanaryPurposeData","DeviceAuth","PageId","ActionId","ConfirmationViewId","FidoAuth","PartnerCanaryScenario","CanaryValidationHelper","Undefined","CanaryValidationSuccessAction","_externalCanary","sExternalCanary","_canaryValidationUrl","urlCanaryValidation","_isRemoteConnectFlow","sRemoteConnectAppName","_isRemoteConnectSignup","fIsRemoteConnectSignup","_partnerCanaryScenario","iPartnerCanaryScenario","validateAsync","_getCanaryPurposeData","Canary","successAction","_getSuccessAction","innerError","CanaryValidationError","confirmationViewId","postConfirmationAction","stack","TileHelpers","mergeSessions","sharedSessions","replaceOtherIdpSessions","addedSessions","newSession","duplicateSessionIndex","sessions","idp","_findDuplicateSessionIndex","unshift","parseMeControlSessions","userJson","fullName","firstName","lastName","memberName","signInName","isOtherIdp","authenticatedState","isMeControlSession","isGitHubFed","parseBssoSessions","session","ssoLink","paginationControlMethods","fHideFooter","_showPageLevelTitleAndDesc","fShowPageLevelTitleAndDesc","_persistedViewId","animationEnd","view_onAnimationEnd","showBackgroundLogoHolder","showErrorPageDebugDetails","currentViewHasMetadata","showFooterControl","hasInitialViewShown","showLwaDisclaimer","showPageLevelTitleControl","onLoad","onUnload","currentViewId","webpackPolyfill","deprecate","paths","children","PltHelper","InstrumentationViewModel","_isCustomPerf","isCustomPerf","_customPageLoadCompletedTime","_pageLoadCompleted","_perfDataReported","_getPerformanceObjectData","timeOnPage","recordSubmit","performance","timing","loadEventEnd","setPageLoadCompleted","performanceData","navigation","customLoadEventEnd","getEntries","entries","connection","_getPerformanceData","SendTelemetryPerfData","_sendPerfData","setCustomPageLoadCompletedTime","ticks","LogoControl","_bannerLogoUrl","isChinaDc","bannerLogoText","requireCentipede","PageViewModel","_isSvgImageSupported","_showButtons","showButtons","_showFooterLinks","showFooterLinks","_showFooterLogo","showFooterLogo","_useWizardBehavior","useWizardBehavior","_hideFromAria","hideFromAria","_productIcon","iProductIcon","fFixSignoutBrandingCiam","_mapProductIconToImageName","iconId","useLight","iconNames","useLayoutTemplates","__LAYOUT_TEMPLATES_ENABLED__","footer","centipede","getLightUrl","getDarkUrl","isInternalModeEnabled","viewAgreement","isLightboxTemplate","isTemplateLoaded","onFooterAgreementClick","footer_agreementClick","agreement_backButtonClick","showAgreement","node","childNodes","__REQUIRE_WIZARD_IN_CORE__","BackgroundImageControl","isAppBranding","backgroundStyle","ContentControl","_isVerticalSplitTemplate","_hasHeader","hasHeader","BrowserHistory","doc","PreviousPaginatedState","PaginationControl","views","viewInterfaces","viewMetadata","_initialViewId","initialViewId","_currentViewId","_initialSharedData","initialSharedData","_initialError","initialError","_enableCssAnimation","enableCssAnimation","_disableAnimationIfAnimationEndUnsupported","disableAnimationIfAnimationEndUnsupported","_saveSharedDataOnBack","saveSharedDataOnBack","_removeMinWidthFromLightBox","fRemoveMinWidthFromLightBox","_displayResourceAppConsentDetails","fDisplayResourceAppConsentDetails","_displayConsolidatedTelephony","fPassTelephonyAuthMethod","_viewInterfaces","_viewMetadata","_history","_currentAnimationState","_animateBack","_previousViewId","_newViewId","_useCssAnimations","_disableAnimationTimeout","_viewId","_getCurrentViewInterface","viewIndex","currentViewIndex","_renderNewView","view_onSetIdentityBackButtonState","isInitialState","onShowView","metadata","activeContainer","querySelectorAll","applyClientEventBindings","_showView","forceTransitionAnimation","loadViewPromise","onLoadView","_animateToNewView","hidePaginatedView","hideSubView","onSetLightBoxFadeIn","animate","unsafe_displayName","showIdentityBanner","_saveCurrentViewState","saveSharedData","currentViewInterface","viewState","historyState","_history_onBack","_history_onForward","_history_onPopState","isBackButtonVisible","isBackButtonFocused","backButtonDescribedBy","animateBanner","isSlideOutNext","isSlideInNext","isSlideOutBack","isSlideInBack","isNaN","onCancel","onAnimationStateChange","setDefaultFocus","viewInterface","getCurrentViewId","getSharedData","getSharedDataItem","getCurrentView","setSharedDataItem","saveSharedDataOnCurrentView","submitCurrentView","submit","identityBanner_onBackButtonClick","view_onSwitchView","persistedViewId","view_onLoad","replaceHistory","goBack","view_onCancel","visible","describedBy","_minWidthCssNode","_buildViewMetadata","attributeName","testHook","_scenario","_apiSupported","setScenario","apiSupported","scenario","GET_TOKEN_SUCCESS","accessToken","expiresIn","account","userName","properties","clientInfo","idToken","scopes","proofOfPossessionPayload","extendedLifetimeToken","GET_TOKEN_FAILURE","description","protocolError","errorDetails","GET_CONTRACTS_SUCCESS","GET_CONTRACTS_FAILURE","executeGetToken","platformAuth","FidoHelpDialogContentControl","__webpack_public_path__","urlCdn","urlImagePath","KnockoutExtensions","StringRepository","LoginPaginatedViewModel","_onLoadFired","postLoad","experimentUrl","doAsyncIPv6ImageLoad","urlIPv6Experiment","fUpgradeEVCert","getElementById","urlEVCertUpgrade","exc","doAsyncCertImageLoad","registerEventHandler","getStrings","self","iFedState","urlFed","loginOptions","doFedRedirect","iDefaultLoginOptions","urlNoCookies","iLoginMode","isRedirectNeeded","LoginErrorViewModel","applyBindings","A","R","jQuery","H","S","T","K","W","X","Y","Z","pc","gb","qc","aa","ba","qd","ra","Qb","mb","uc","I","J","da","$c","Ja","gd","L","deferUpdates","useOnlyNativeEvents","foreachHidesDestroyed","__proto__","q","D","Na","h","MouseEvents","propertychange","Jc","Lb","Pa","wc","Mb","jb","Nb","bc","Ba","setPrototypeOf","Ab","P","Ga","Tb","firstChild","removeNode","Yb","la","ownerDocument","oa","Ca","cloneNode","va","Xc","parentNode","insertBefore","Ua","nextSibling","Zc","selected","Db","Ud","vd","contains","compareDocumentPosition","Sb","kd","tagName","Ac","onError","Gc","B","za","on","Fb","createEvent","dispatchEvent","initEvent","click","fireEvent","trigger","O","Eb","classList","baseVal","Bb","createTextNode","Ad","Yc","mergeAttributes","zoom","wd","width","Pd","Da","Zd","$d","Lc","Nd","hc","Od","includeFields","submitter","Ub","clear","cleanExternalData","1","8","9","yb","u","G","cleanData","thead","tbody","tfoot","tr","td","th","option","optgroup","parseHTML","clean","parentWindow","innerShiv","lastChild","Md","parentElement","fc","Xb","random","bd","cd","Uc","nodeValue","ud","Kd","na","scheduler","MutationObserver","observe","toggle","zb","resetForTesting","Sd","Ta","throttle","throttleEvaluation","$","Hb","ub","deferred","notifySubscribers","equalityComparer","number","ic","lc","mc","Ib","fb","Jb","qb","U","change","sc","hb","Qa","Gb","Wa","ed","xc","end","ob","Dd","nc","sb","rc","Bd","fn","Qc","pop","cc","od","pd","fd","qa","Va","Ya","Yd","ta","ya","xa","F","Ma","Za","Nc","Ha","trackArrayChanges","removeAll","destroy","_destroy","destroyAll","sorted","sort","reversed","reverse","zc","Pc","Pb","Ob","sparse","min","Kc","nb","ka","Xa","ha","sa","rb","jc","wb","Wc","owner","disposeWhenNodeIsRemoved","Sa","disposeWhen","Rb","V","Ic","C","pure","deferEvaluation","ea","ja","Ka","Vb","La","Ia","Jd","Rd","Hc","zd","yd","N","Oc","Fd","xb","save","keys","ad","constructor","Wd","ma","M","__ko__hasDomDataOptionValue__","$b","getAttributeNode","specified","selectedIndex","cb","size","x","unknown","Ra","wa","ac","vb","getBindingHandler","preprocess","valueAccessors","bindingParams","Id","eb","createComment","ul","ol","Ea","Vc","Wb","Cd","Vd","Sc","ga","nd","nodeHasBindings","getComponentNameForNode","getBindings","getBindingsString","parseBindingsString","tc","getBindingAccessors","z","Tc","yc","kb","Kb","preprocessNode","bindingContextForDescendants","hd","Zb","has","Ec","pa","Cb","ca","after","Mc","init","update","$data","controlsDescendantBindings","shouldBindDescendants","fa","textarea","$parents","$root","$rawData","dataDependency","exportDependencies","createChildContext","as","noChildContext","$parentContext","$parent","sd","Cc","Fa","notifyImmediately","Td","ib","ld","Oa","vc","Dc","definition","Gd","loaders","suppressLoaderExceptions","Bc","oc","DocumentFragment","Xd","tb","unregister","Fc","getConfig","loadComponent","loadTemplate","HTMLElement","loadViewModel","dd","$raw","component","createDocumentFragment","$component","$componentTemplateNodes","koDescendantsComplete","attr","lookupNamespaceURI","removeAttributeNS","removeAttribute","setAttributeNS","checked","uniqueName","checkedValue","__ko__cssValue","css","enable","disabled","disable","preventDefault","returnValue","cancelBubble","stopPropagation","foreach","Rc","includeDestroyed","afterAdd","beforeRemove","afterRender","beforeMove","afterMove","templateEngine","hasfocus","__ko_hasfocusUpdating","activeElement","__ko_hasfocusLastValue","focus","blur","let","Q","multiple","scrollTop","ec","abs","selectedOptions","setProperty","opera","textInput","y","textinput","rd","using","autocomplete","form","hidden","renderTemplateSource","createJavaScriptEvaluatorBlock","makeTemplateSource","ia","renderTemplate","isTemplateRewritten","allowTemplateRewriting","rewriteTemplate","kc","xd","Ld","md","nodeName","ab","nodes","lb","jd","bb","previousSibling","gc","dc","Qd","$index","ifnot","moved","dontLimitMoves","Aa","pb","_countWaitingForRemove","E","Ed","$a","Hd","tmpl","tag","koBindingContext","templateOptions","appendTo","fragments","addTemplate","ko_code","ko_with","close","_preventDefaultEventAction","componentInit","_componentIdIndex","_componentExtensions","componentName","config","defaultLoader","resolvedConfig","viewModelFactory","componentViewModel","componentId","componentExtension","parentViewModel","componentAlias","alias","componentEvents","events","isWritableObservable","domNodeDisposal","addDisposeCallback","eventName","applyComponentExtensions","bindingHandlers","valueAccessor","allBindings","bindingContext","pageViewComponent","publicMethods","defineGlobals","ExtractFlowToken","innerBindingContext","svr","$location","cssBinding","applyBindingsToNode","themeClass","themeCssBinding","applyBindingsToDescendants","autoSubmit","binding","postRedirectForm","hiddenInput","placeholder","ariaLabel","htmlWithBindings","setHtml","childBindings","child","backgroundImage","setBackgroundImg","imgUrl","$Loader","On","addEventHandlers","wizardCssCheck","CSSLoadFail","mainDiv","withProperties","clickExpr","imgSrc","svgSrc","injectScript","injectIframe","frame","height","injectDfpIframe","dfpIframe","hasFocusEx","selectionStart","selectionEnd","inputRange","createTextRange","moveStart","collapse","moveEnd","select","preventTabbing","keyCode","shiftKey","ariaHidden","moveOffScreen","setClass","setTabIndex","setAriaHidden","tabindex","pressEnter","isScrolledToBottom","valueObservable","sticky","onScrollOrResize","offsetHeight","scrollHeight","removeEventHandlers","htmlWithMods","htmlContent","filterLinks","links","link","allowContactProtocols","getLinkInnerText","pathname","replaceChild","parentheticalText","externalCss","addClass","toggleDomNodeCssClass","virtualElements","allowedBindings","createChildContextWithAs","oldPreprocessNode","bindingProvider","dataBindString","newBindings","bindings","safeBindingMap","bindingName","safeBindingName","optionsEx","valueProperty","textProperty","selectedData","evaluate","newOption","textNode","currentSelectedData","subscription","selectedDataSubscription","isObject","isString","hasFocusBasic","_sources","registerSource","sourceName","sources","BrowserCapabilitiesHelper","BrowserSso","PaginationControlHelper","StringCustomizationObservables","requireFedIcon","BrandingLivePreviewFactory","_unseenSessions","_gctRequestHelper","_dialogs","_initializationPromises","_canaryValidationViewId","_showDialogPromiseHandlers","_brandingLivePreview","_flowTokenOverride","_showFedCredButtons","_showSignupFedCredButtons","_showQrCodeSignInButton","_credShownOnlyOnPicker","_customizationLoader","_htmlStrings","_loginMode","_loginBody","iLBodyDefault","_isForceSigninPost","fPOST_ForceSignin","_flowTokenTag","_flowTokenCookieName","sFTCookieName","_allowCancel","fAllowCancel","_postUrl","urlPost","_cancelUrl","urlCancel","_backUrl","urlBack","_hipScriptUrl","urlHIPScript","_prefillUsername","sPrefillUsername","_signInUsername","sSignInUsername","_postedUsername","_ztdUpnHint","sZtdUpnHint","_foundNames","sFoundMSAs","_lockUsername","fLockUsername","_errorText","sErrTxt","_validationErrors","arrValErrs","_prefixCookieDomainEnabled","fPrefixCookieDomainEnabled","_backgroundImage","iBackgroundImage","_resetPasswordUsernamePrefillParam","sResetPasswordPrefillParam","_rawQueryString","sRawQueryString","_sessions","arrSessions","_otherIdpRedirectUrl","urlGoToAADError","_cancelPostParams","oCancelPostParams","_getCredTypeResultFromServer","oGetCredTypeResult","_postedPaginatedState","sPOST_PaginatedLoginState","_postedSessionIdentifier","sPOST_PaginatedLoginStateRNGCSLK","_postedEntropy","sPOST_PaginatedLoginStateRNGCEntropy","_postedRngcDefaultType","sPOST_PaginatedLoginStateRNGCDefaultType","_postedIsSignupPost","fPOST_IsSignupPost","_fidoAllowList","arrFidoAllowList","_fidoHints","arrHints","_promotedFedCredTypes","arrPromotedFedCredTypes","_linkedInFedUrl","urlLinkedInFed","_gitHubFedUrl","urlGitHubFed","_googleFedUrl","urlGoogleFed","_facebookFedUrl","urlFacebookFed","fEnableCssAnimation","sProofConfirm","_needsExternalCanaryValidation","_sessionPullType","iSessionPullType","fIsDebugTracingEnabled","_detectBrowserCapabilities","fDetectBrowserCapabilities","_isWriteWloptCookieDisallowed","fIsWriteWloptCookieDisallowed","_otherIdpSignUpUrl","urlOtherIdpSignup","_googleFedSignUpUrl","urlGoogleFedSignup","_facebookFedSignUpUrl","urlFacebookFedSignup","_showTilesAfterSessionPull","fAutopilotProvisioningNavigation","fShowTilesAfterSessionPull","_showSignup","_showForgotUsernameLink","fShowForgotUsernameLink","_showRemoteConnectLocationPage","fShowRemoteConnectLocationPage","_enableUserStateFix","fEnableUserStateFix","_oidcDiscoveryEndpointFormatUrl","urlOidcDiscoveryEndpointFormat","_defaultFaviconUrl","urlDefaultFavicon","_livePreviewAllowedOrigins","arrLivePreviewOrigins","_shouldSupportTargetCredentialForRecovery","fShouldSupportTargetCredentialForRecovery","_currentTargetCredentialForRecovery","iCurrentTargetCredentialForRecovery","_externalTrustedRealmFederatedIdps","arrExternalTrustedRealmFederatedIdps","iViewId","_showPasskeyUCPError","fShowPassKeyErrorUCP","_canRedirectPasskeyError","fPasskeyAssertionRedirect","_updatePromotedCredTypesOrder","fUpdatePromotedCredTypesOrder","_enableExternalIdpConfirmationViewExp","fEnableExternalIdpConfirmationViewExp","_allowExternalIdpSignInCommonEndpoint","fAllowExternalIdpSignInCommonEndpoint","_updateTenantBrandingLivePreview","livePreviewBranding","_setTenantBranding","_updateUserTiles","tilesStateQuery","currentView","asyncTileRequestCount","addNewSessions","_setDebugDetailsState","activateDebugDetailsFocus","debugDetailsMethods","footerMethods","_handleCanaryValidationFailure","postCanaryValidationAction","_handleCanaryValidationSuccess","_extractFlowToken","_currentViewUsesOtherSigninOptionButtons","_currentViewUsesQrCodeSigninOptionButtons","_currentViewHasOtherSigninOptionButtons","otherSigninOptions","_currentViewUsesOtherSignupOptionButtons","_currentViewHasOtherSignupOptionButtons","otherSignupOptions","_initializeWithFidoSupportedResult","hipRequiredForUsername","showCredViewBrandingDesc","showDescOnCredViews","startDesktopSsoOnPageLoad","hintedDomainName","isSignupPost","recoveryCredentialsData","gctSharedData","targetCredentialForRecovery","availableSignupCreds","_getAvailableSignupCreds","_setInitialSharedData","forceSigninLoginModes","isForceSignin","arrayIndexOf","dfpUrl","view_onRedirect","fEnableBackButtonBugFix","getServerError","_setInitialView","_getFedProviderIconImageName","providerName","_getExternalIdpIconImageName","externalIdp","IdpType","_createFedCredButton","fedCredButtonCredType","signInUrl","lightIconUrl","darkIconUrl","DisplayName","IdpSignUpUrl","IdpSignInUrl","SignUpPostParams","SignInPostParams","testId","_createAdditionalCredOptionsButton","isGooglePromotedFedCredType","isFacebookPromotedFedCredType","Promoted","isExternalFederatedIdp","_navigateToUrl","_DFP_iFrame_onMessage","dfpData","dfpResponse","dfpPrefix","dfpResult","backgroundControlMethods","loadBannerLogo","paginationControlHelper","learnMore","prefillNames","useCssAnimations","showFedCredAndNewSession","learnMoreMethods","instrumentationMethods","asyncInitReady","initializeComplete","userClickedCentipede","pageSubmitted","forceSubmit","wasLearnMoreShown","postRedirect","postedLoginStateViewId","postedLoginStateViewRNGCEntropy","postedLoginStateViewRNGCDefaultType","postedLoginStateViewRNGCSLK","isRequestPending","showLightboxProgress","fadeInLightBox","activeDialog","tracingChange","isRecoveryAttemptPost","availableCredsWithoutUsername","observableArray","isLoginPageHidden","stringCustomizationObservables","newSessionInfo","unsafe_newSessionDisplayName","unsafe_fullName","unsafe_signedInFullName","unsafe_newSessionFullName","showFedCredButtons","showQrCodeSignInButton","multipleSigninOptionsAvailable","showCredsOnlyOnPicker","showCredPickerOptions","credTypeArray","qrCodeSigninOption","showHelpIcon","helpText","showSignupFedCredButtons","isCustomStringsLoadComplete","removeListener","fetchSessions_onUpdateUserTiles","fetchSessions_onIncrementAsyncTileRequestCount","fetchSessions_onDecrementAsyncTileRequestCount","fetchSessions_onExecuteGctResult","paginationControl_onCancel","view_onSetPendingRequest","view_onSubmitReady","useViewProgress","userTrackerDestroy","UserTracker","prefixCookieDomain","wlidperf","_updateWLPerfCookie","view_onLoadView","__IS_OLD_WEBPACK__","lazyViewIds","_createLoadViewPromise","view_onShow","dynamicBranding","view_onRestoreIsRecoveryAttemptPost","view_onUpdateDFPUrl","view_onUpdateAvailableCreds","view_onUpdateRemoteNgcParams","view_onSetLightBoxFadeIn","fadeIn","view_onSetLoginPageHiddenState","closeDebugDetails_onClick","toggleDebugDetails_onClick","setDebugTracing_onClick","learnMore_onShow","learnMore_onHide","passwordView_onResetPassword","rootUrl","queryParameter","currentUsername","_updateMembernamePrefill","newSession_onClick","browserSsoHelper","newSessionClose_onClick","otherSigninOptionsButton_onClick","fedCredButton","selectedCred","IdpSignInPostParams","otherSignupOptionsButton_onClick","qrCodePinSigninButton_onClick","qrCodePinButton","qrCodePinHelpButton_onClick","view_onShowDialog","paginationControl_onAnimationStateChange","animationState","animateBack","hasPreviousView","viewHasOtherSigninOptionButtons","viewHasOtherSignupOptionButtons","viewHasQrCodeSignInOptionButtons","view_onRegisterDialog","dialogInfo","view_onUnregisterDialog","dialog_onClose","addListener","writeCookie","initializeWithFidoPromise","canaryValidationHelper","canaryValidationPromise","wlopt","act","webpackContext","req","webpackContextResolve","BrowserCapabilities","_browserCapabilities","OsError","logger","setNonSecureCookies","trimChromeBssoUrl","c_channelId","_logger","_nonce","_cookieDomain","_setNonSecureCookies","_responseMap","_msgid","_extListNode","_getCookieUri","_cookieAttributes","_openChannelPromise","_window_onMessage","channel","responseId","resolveHandler","_sendMessageAsync","extensionId","postMessage","ext","_openChannelAsync","_getExtensionId","extension","_fallbackOnGetCookiesMethodNotFound","_parseCookies","existingAttributesIndex","_code","_description","_externalData","cookieString","externalDataJson","initiatePullTimeout","overallTimeout","_initiatePullTimeout","_overallTimeout","_failInitiatePullOnTimeout","_callTokenBrokerAsync","ssoCookieOnly","pullStartTime","elapsedMs","_launchUriAsync","intervalId","setInterval","ssoToken","clearInterval","_pollForTokenBrokerCookieAsync","customStrings","isCustomStringsLoadFailure","isLoadFailure","EClientEvent","Account_Signup_SwitchSignupType","Account_Signup_MemberName_ValidationError","Account_ResetPW_SeeMoreVerificationOptions","Account_ResetPW_SelectedVerificationOption","Account_ResetPW_OTT_ValidationError","Account_ResetPW_SeeMoreSecondaryAction","Account_Signup_Phone","Account_Signup_EASI","Account_Signup_Live","Account_DeviceFingerPrinting_Iframe_Load","Signin_Email_Phone_Skype","Signin_Submit","Signup_ChinaPIPLConsent_UserAction","Account_Arkose_Iframe_Load","Account_Arkose_Iframe_Load_Flavor","Account_Arkose_Iframe_Solved","Account_Arkose_Iframe_Solved_Flavor","ManageNames_AddPhone_Step","Account_AliasAccrual_Submit","Account_AliasAccrual_Cancel","Account_AliasAccrual_Skip","Account_AliasAccrual_Suggestions","Account_ManageProofsV2_AddPasskey","Account_ManageProofsV2_PasskeyTryAgain","Account_RemovePasskey","Account_SelectAddressableProof","PrefillPasskeyName","Account_JavascriptEncryptor_Invoke","Account_Human_Iframe_Load","Account_Signup_BackClicked","Account_Signup_CancelClicked","Account_Signup_Easi_ProofVerificationSkipPressed","Account_Signup_LearnMoreLinkClicked","Account_Signup_LegalLinkClicked","Account_Signup_NextClicked","Account_Signup_ResendCodeClicked","Account_Signup_SignInClicked","Account_Signup_SuggestionsLinkClicked","Account_Signup_UsernameRecoveryLinkClicked","Account_HumanCaptcha_Rendered","Account_HumanCaptcha_Rendered_Flavor","Account_HumanCaptcha_Solved","Account_HumanCaptcha_Solved_Flavor","Account_HumanCaptcha_Failed","Account_HumanCaptcha_Failed_Flavor","Account_HumanCaptcha_Error","Account_HumanCaptcha_Error_Flavor","Account_HumanSensor_Error","Account_HumanSensor_Error_Flavor","0","default","telemetry_webpackJsonp","ReportEventIdAttr","ReportEventValueAttr","ReportEventTriggerAttr","ReportEventValueAttrBinding","ReportEventHandlerAttachedAttr","DataViewId","NonIndexedDataPointKey","Click","Dblclick","Keypress","Cut","Copy","Paste","Change","Focus","Scroll","Submit","Reset","Input","Radio","Checkbox","Button","ExceptionData","PageActionData","ExceptionsTablesuffix","PageActtionsTablesuffix","AddListener","GenerateGUID","floor","propertyIsEnumerable","_preSendHandlers","_eventProvider","_eventApiConfig","_eventDict","hasEvents","_numEvents","hasEvent","cloud","app","validKeysPresent","addPreSendHandler","EventApi","_iduxProviderUrl","_isAppInsightsLoaded","_pendingEventQueue","_args","appInsights","providerUrl","_checkIfOneDsScriptExists","_initializeAppInsights","oneDS","AppInsightsCore","PropertiesPlugin","ApplicationInsights","catch","_postToAppInsights","_isAppInsightsManager","_appInsights","newInst","instrumentationKey","track","appInsightObject","_createAppInsightsCore","endpointUrl","disablePageUnloadEvents","channelConfiguration","eventsLimitInMem","ignoreMc1Ms0CookieProcessing","propertyConfiguration","hashIdentifiers","gpcDataSharingOptIn","cookieCfg","ignoreCookies","disableCookiesUsage","extensionConfig","webAnalyticsConfiguration","autoCapture","scroll","pageView","resize","jsError","addTelemetryInitializer","getPropertiesContext","baseType","ri","roleVer","env","sesId","defaultEventName","identifier","OneDSEventProvider","EmptyEventProvider","_nonIndexedDataPoint","_enabled","telemetryEnabled","useOneDSEventApi","_eventApi","_serverPageID","_serviceID","serviceID","_setPerRequestDataPoints","autoPost","hasPageEvents","flush","_addUnloadHandlers","appendClientEvent","_isNumeric","_getNumericValue","ID","EventTime","_getCurrentTime","Value","DataViewID","isViewTransition","minEvents","postPageView","_inferClientEventValue","now","visibilityState","HTMLInputElement","HTMLButtonElement","HTMLAnchorElement","_getCorrelationID","isOobe","uiFlavor","_getCloudrole","define","BrandingLivePreview","allowedOrigins","_allowedOrigins","_listeners","_listening","_sendConnectionStatusMessage","isOpen","opener","messageType","allowedOrigin","_loadLivePreview","actualReferrer","parseError","listener","DialogControl","_body_onKeyDown","onClose","overlay_onClick","_getTcpDnsInfo","domainLookupStart","domainLookupEnd","connectStart","connectEnd","_isResourcePlt1","resource","duration","_isSubDocument","initiatorType","_isResource","entryType","_isDocument","_getDomainHost","Name","_isAbsoluteUrl","_extractHostname","_getTransferTimeAndSize","entry","transferInfo","responseTime","start","_calcTimespan","responseStart","fetchStart","MAX_VALUE","_getBaseStartTime","_getStart","responseEnd","transferSize","TransferSize","TransferTime","perfData","pageSource","_pltMetrics","_getPltMetrics","apiTimingInfo","isPlt1","resources","resourcePlt1","_isPlt1","plt","fromFetchTime","baseValue","navigationStart","_getBaseValueStartTime","_elapsedPltValue","_getCalculatedPlt","pltOverallTransferBucket","transferRate","previous","bucket","hold","_getTransferBucket","transferTime","resourceMetrics","metrics","metricsValues","domainHost","val","_getResourceMetrics","_calcKbRatePerSecond","_getOverallTransferRate","_getPltTransferBucketData","dns","tcp","LightboxTemplate","_showHeader","_headerLogo","_hideHeader","fHideHeader","copySource","textareaId","bindingEvent","startPossiblyAsyncContentBinding","clickToCopy","copyConfig","showNotificationObservable","showNotification","execCommand","showCopyNotification","copyToClipboard","FedCredButtonsControl","_fedCredOptions","fedCredOptions","onFedCredButtonClick","onFedCredHelpButtonClick","fedCredButton_onClick","fedCredHelpButton_onClick","QrCodePinHelpDialogContentControl","BrowserHistoryHelper","backCallback","forwardCallback","popStateCallback","_isHtml5HistorySupported","_backCallback","_forwardCallback","_popStateCallback","_historyIndex","_window_onPopState","newHistoryIndex","back","_displayName","_isBackButtonVisible","_backButtonId","backButtonId","_backButtonDescribedBy","_focusOnBackButton","focusOnBackButton","onBackButtonClick","backButton_onClick","AsyncValidation","PlaceholderTextbox","KnockoutExtenders","LoginPaginatedUsernameView","_serverError","serverError","_isInitialView","isInitialView","_prefillNames","_flowTokenParam","_availableSignupCreds","_customStrings","_isCustomizationFailure","isCustomizationFailure","_userIdLabel","_cantAccessYourAccountText","_hideAccountResetCredentials","_accessRecoveryLink","_boilerPlateText","_allowPhone","fAllowPhoneSignIn","fAllowPhoneInput","_checkWindowsFormat","fCheckWindowsUsernameFormat","_getOneTimeCodeUrl","urlGetOneTimeCode","_skipZtdUrl","urlSkipZtd","_appName","_remoteClientIp","sRemoteClientIp","_remoteAppLocation","sRemoteAppLocation","_remoteLoginConfig","remoteLoginConfig","_userRoutingCookieConfig","userRoutingCookieConfig","_ztdTenantName","fIsTokenBroker","fPreferAssociate","sZtdTenantName","_showSignInWithGitHubOnlyOnCredPicker","fShowSignInWithGitHubOnlyOnCredPicker","_showFidoLinkInline","fShowSignInWithFidoOnUsernameView","_showOfflineAccountLearnMore","fShowOfflineAccountLearnMore","iRequestLCID","fHideOfflineAccountNewTitleString","_aadSignupUrl","urlAadSignup","_recoverUsernameUrl","iMsaServerLottieId","_showCantAccessAccountLink","fOobeDisplayServicesConsent","fOobeDisplayUnifiedConsent","showCantAccessAccountLink","_enableShowPickerCredObservable","fEnableShowPickerCredObservable","_useRemoteConnectDescriptionStrings","fUseRemoteConnectDescriptionStrings","_fidoChallenge","sFidoChallenge","_aadPostUrl","urlPostAad","_msaPostUrl","urlPostMsa","_fidoLoginUrl","urlFidoLogin","_sessionId","sCanaryTokenName","_flowTokenName","sFTName","_enablePasskeyAutofillUI","fEnablePasskeyAutofillUI","_isUserNameSignInAllowed","fAllowUserNameSignIn","_signInIdentifierConfigs","arrSignInIdentifierConfigs","_crossDomainCanary","sCrossDomainCanary","_useApiRequest","_getOneTimeCodeState","_unsafe_displayNameBrowserPrefill","_useCredWithoutUsername","_gctResultSharedData","_gctResultSharedDataForGctShowErrorResult","_validationEnabled","_getOneTimeCodeAsync","_setIsRequestPending","OriginalRequest","_getOneTimeCodeApiRequestAsync","_getOneTimeCodeOtcHelperAsync","_handleGetOneTimeCodeSuccess","_handleGetOneTimeCodeError","userCode","UserCode","deviceCode","DeviceCode","usernameTextbox","_redirect","_isValidUserNameBasedOnSignConfig","allowedUserNameSignInRegexes","some","regex","hasFido","allowRemoteLogin","isLinkedInPromotedFedCredType","isGitHubPromotedFedCredType","onUpdateAvailableCredsWithoutUsername","fidoLinkText","_initializePasskeyAutofill","available","_fidoUrlDomain","publicKeyCredential","assertionResponse","postedAssertionInfo","clientDataJSON","authenticatorData","signature","userIdp","onUpdateDFPUrl","onRestoreIsRecoveryAttemptPost","_getClientError","passwordBrowserPrefill","showTileLogo","customTitle","customDescription","pageDescription","unsafe_pageTitle","unsafe_subHeader","showFidoLinkInline","hideCantAccessYourAccount","unsafe_cantAccessYourAccountText","showCredPicker","useCredWithoutUsername","getOneTimeCodeResult","remoteLoginUserCode","remoteLoginDeviceCode","gctRequestHelperState","remoteLogin_onClick","signup_onClick","aadSignup_onClick","otherIdpLogin_onClick","sendOtcLink_onClick","recoverUsername_onClick","recoverUsernameUrl","skip_onClick","skipZtd_onClick","privacy_onClick","tou_onClick","learnMore_onClick","cantAccessAccount_onClick","switchToFidoCredLink_onClick","noUsernameCredSwitchLink_onSwitchView","tileLogo_onLoad","unsafe_userIdLabel","StringCustomizationHelper","customStringResolver","unsafe_tenantName","prefillName","useRegexForSignIn","validationRegex","layoutConfig","SeeHowDataIsManagedViewModel","_oobeServicesInformationLinkUrl","urlOobeServicesInformationLink","iFrameReady","iFrameTarget","iframeMessage","expectedOrigin","URL","oIFrame","MoreInfoViewModel","_moreInfoTitle","moreInfoTitle","_moreInfo","moreInfo","_showErrorText","showErrorText","fShowButtons","onSetBackButtonState"],"mappings":"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,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3CC,EAAOD,QAAU,IAA0B,+E,gBCA3CC,EAAOD,QAAU,IAA0B,yE,gBCA3CC,EAAOD,QAAU,IAA0B,8E,gBCA3CC,EAAOD,QAAU,IAA0B,wE,gBCA3C,IAAIy4B,EAAM,CACT,UAAW,IACX,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,IACX,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,UAAW,KAIZ,SAASkzF,EAAeC,GACvB,IAAI/gE,EAAKghE,EAAsBD,GAC/B,OAAO7rH,EAAoB8qD,GAE5B,SAASghE,EAAsBD,GAC9B,IAAI7rH,EAAoBkH,EAAEwxB,EAAKmzF,GAAM,CACpC,IAAInoH,EAAI,IAAIU,MAAM,uBAAyBynH,EAAM,KAEjD,MADAnoH,EAAEmN,KAAO,mBACHnN,EAEP,OAAOg1B,EAAImzF,GAEZD,EAAerpB,KAAO,WACrB,OAAOnjG,OAAOmjG,KAAK7pE,IAEpBkzF,EAAerpH,QAAUupH,EACzB5rH,EAAOD,QAAU2rH,EACjBA,EAAe9gE,GAAK,K,gBClGpB5qD,EAAOD,QAAU,IAA0B,kE,gBCA3CC,EAAOD,QAAU,IAA0B,kE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,kE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,kE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,kE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3CC,EAAOD,QAAU,IAA0B,kE,gBCA3CC,EAAOD,QAAU,IAA0B,mE,gBCA3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,IAA0B,qF,gBCA3CC,EAAOD,QAAU,IAA0B,qF,gBCA3CC,EAAOD,QAAU,IAA0B,2F,gBCA3CC,EAAOD,QAAU,IAA0B,2F,gBCA3CC,EAAOD,QAAU,IAA0B,2F,gBCA3CC,EAAOD,QAAU,IAA0B,2F,gBCA3CC,EAAOD,QAAU,IAA0B,iG,gBCA3CC,EAAOD,QAAU,IAA0B,iG,gBCA3CC,EAAOD,QAAU,IAA0B,wF,gBCA3CC,EAAOD,QAAU,IAA0B,wF,gBCA3CC,EAAOD,QAAU,IAA0B,8F,gBCA3CC,EAAOD,QAAU,IAA0B,8F,gBCA3CC,EAAOD,QAAU,IAA0B,2F,gBCA3CC,EAAOD,QAAU,IAA0B,2F,gBCA3CC,EAAOD,QAAU,IAA0B,iG,gBCA3CC,EAAOD,QAAU,IAA0B,iG,gBCA3CC,EAAOD,QAAU,IAA0B,wF,gBCA3CC,EAAOD,QAAU,IAA0B,wF,gBCA3CC,EAAOD,QAAU,IAA0B,8F,gBCA3CC,EAAOD,QAAU,IAA0B,8F,gBCA3CC,EAAOD,QAAU,IAA0B,0F,gBCA3CC,EAAOD,QAAU,IAA0B,gG,gBCA3CC,EAAOD,QAAU,IAA0B,0F,gBCA3CC,EAAOD,QAAU,IAA0B,gG,gBCA3CC,EAAOD,QAAU,IAA0B,yF,gBCA3CC,EAAOD,QAAU,IAA0B,yF,gBCA3CC,EAAOD,QAAU,IAA0B,+F,gBCA3CC,EAAOD,QAAU,IAA0B,+F,gBCA3CC,EAAOD,QAAU,IAA0B,4F,gBCA3CC,EAAOD,QAAU,IAA0B,4F,gBCA3CC,EAAOD,QAAU,IAA0B,kG,gBCA3CC,EAAOD,QAAU,IAA0B,kG,gBCA3CC,EAAOD,QAAU,IAA0B,uF,gBCA3CC,EAAOD,QAAU,IAA0B,uF,gBCA3CC,EAAOD,QAAU,IAA0B,6F,gBCA3CC,EAAOD,QAAU,IAA0B,6F,gBCA3CC,EAAOD,QAAU,IAA0B,mG,gBCA3CC,EAAOD,QAAU,IAA0B,mG,gBCA3CC,EAAOD,QAAU,IAA0B,6F,gBCA3CC,EAAOD,QAAU,IAA0B,6F,gBCA3CC,EAAOD,QAAU,IAA0B,sF,gBCA3CC,EAAOD,QAAU,IAA0B,sF,gBCA3CC,EAAOD,QAAU,IAA0B,4F,gBCA3CC,EAAOD,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","file":"content/js/ConvergedLogin_PCore.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t};\n\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t24: 0\n \t};\n\n\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"content/js/asyncchunk/convergedlogin_p\" + ({\"0\":\"aadfedconflict\",\"1\":\"alt\",\"2\":\"certificateinterstitial\",\"3\":\"clienttracing\",\"4\":\"confirmrecoveryusername\",\"5\":\"confirmsend\",\"6\":\"confirmsignup\",\"7\":\"credentialpicker\",\"8\":\"customizationloader\",\"9\":\"estslogin_accesspass\",\"10\":\"estslogin_remoteloginpoll\",\"11\":\"estslogin_searchorganization\",\"12\":\"estslogin_signupblocked\",\"13\":\"estslogin_signupusername\",\"14\":\"estslogin_tenantdisambiguation\",\"15\":\"fedconflict\",\"16\":\"fedlink\",\"17\":\"fetchsessionsprogress\",\"18\":\"fido\",\"19\":\"idpdisambiguation\",\"20\":\"idpredirect\",\"21\":\"idpredirectspeedbump\",\"22\":\"learnmore\",\"23\":\"learnmoreofflineaccount\",\"25\":\"onetimecode\",\"26\":\"password\",\"27\":\"phonedisambiguation\",\"28\":\"pop\",\"29\":\"proofconfirmation\",\"30\":\"prooffedconflict\",\"31\":\"qrcodepin\",\"32\":\"qrcodescan\",\"33\":\"remoteconnectcanaryvalidation\",\"34\":\"remoteconnectlocation\",\"35\":\"remotengc\",\"36\":\"resetpasswordsplitter\",\"37\":\"stringcustomizationhelper\",\"38\":\"tiles\",\"39\":\"verticalsplittemplate\",\"40\":\"viewagreement\",\"41\":\"wammessagehandler\",\"42\":\"webnativebridge\"}[chunkId]||chunkId) + \"_\" + {\"0\":\"1cdcdf386d39528fae07\",\"1\":\"4eb9b4110f6a0a008b1a\",\"2\":\"391153f734118796829d\",\"3\":\"45a714fab8b6ba65764d\",\"4\":\"583f51b6cf791da5b8d4\",\"5\":\"2b0e6b4e577db8b0fa1f\",\"6\":\"c03cc078e606b17b1cbd\",\"7\":\"ac200351fe9457c64680\",\"8\":\"45fabe6597885bd9dd3e\",\"9\":\"9880a1672497e2f9aab0\",\"10\":\"d66bf40b2c52d3afdd4c\",\"11\":\"459d6967c26911e72659\",\"12\":\"53559d047ae0c4194ec2\",\"13\":\"33d9352b38887b62e95d\",\"14\":\"d3c66bae0a223c169ded\",\"15\":\"dd8f45608cca85ebfa71\",\"16\":\"793172ad4977e9a5e9c1\",\"17\":\"fac053f592dc42159692\",\"18\":\"ec6faafca86482e19010\",\"19\":\"c7e699c07c35315a438c\",\"20\":\"e46b2636953e757962e9\",\"21\":\"cc71b063059b2570baee\",\"22\":\"613e632103cdf35782b9\",\"23\":\"d683d42211817a27cec5\",\"25\":\"85b852fd1a792b65f22a\",\"26\":\"60411dfc9c9fbf38e7a6\",\"27\":\"f79e7190003a7eaed9a5\",\"28\":\"2ed5577877403c29b10c\",\"29\":\"e8c3915683540a80dc97\",\"30\":\"c11facb7583cbcea405e\",\"31\":\"37b2a077619f4d52c368\",\"32\":\"1216722d5582b04d1c80\",\"33\":\"32f0bfc17ca934392271\",\"34\":\"153468b8d96b6888c007\",\"35\":\"363a8471907f46de18b2\",\"36\":\"f5d1004d6fafd427ffb4\",\"37\":\"b769de80491fb7447ef9\",\"38\":\"a346c99c0b091054bd15\",\"39\":\"5728a2da49fa38bc15da\",\"40\":\"6bd7f1f919ba4fd64a68\",\"41\":\"abc7477c0af235378227\",\"42\":\"9d0fd25ffdd941b6ef13\"}[chunkId] + \".js\"\n \t}\n \t// Polyfill the function.bind implementation for IE 8\r\n \t\r\n \t// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_objects/Function/bind\r\n \t// Yes, it does work with `new funcA.bind(thisArg, args)`\r\n \tif (!Function.prototype.bind)\r\n \t{\r\n \t (function ()\r\n \t {\r\n \t var ArrayPrototypeSlice = Array.prototype.slice;\r\n \t Function.prototype.bind = function (otherThis)\r\n \t {\r\n \t if (typeof this !== 'function')\r\n \t {\r\n \t // closest thing possible to the ECMAScript 5\r\n \t // internal IsCallable function\r\n \t throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');\r\n \t }\r\n \t\r\n \t var baseArgs= ArrayPrototypeSlice.call(arguments, 1),\r\n \t baseArgsLength = baseArgs.length,\r\n \t fToBind = this,\r\n \t fNOP = function () {},\r\n \t fBound = function ()\r\n \t {\r\n \t baseArgs.length = baseArgsLength; // reset to default base arguments\r\n \t baseArgs.push.apply(baseArgs, arguments);\r\n \t return fToBind.apply(\r\n \t fNOP.prototype.isPrototypeOf(this) ? this : otherThis, baseArgs\r\n \t );\r\n \t };\r\n \t\r\n \t if (this.prototype)\r\n \t {\r\n \t // Function.prototype doesn't have a prototype property\r\n \t fNOP.prototype = this.prototype;\r\n \t }\r\n \t fBound.prototype = new fNOP();\r\n \t\r\n \t return fBound;\r\n \t };\r\n \t })();\r\n \t}\n \t// Polyfill the document.head for IE 8\r\n \t\r\n \tdocument.head = document.head || document.getElementsByTagName(\"head\")[0];\n \t(function ()\r\n \t{\r\n \t var PromiseStatePending = 0;\r\n \t var PromiseStateFulfilled = 1;\r\n \t var PromiseStateRejected = 2;\r\n \t\r\n \t function Promise(executor)\r\n \t {\r\n \t var _this = this;\r\n \t\r\n \t var _state = PromiseStatePending;\r\n \t var _settledValue = null;\r\n \t var _queue = [];\r\n \t\r\n \t _this.then = function (onFulfilled, onRejected)\r\n \t {\r\n \t return new Promise(\r\n \t function (resolve, reject)\r\n \t {\r\n \t // Queue the new promise returned to be resolved or rejected\r\n \t // when this promise settles.\r\n \t _enqueue(onFulfilled, onRejected, resolve, reject);\r\n \t });\r\n \t };\r\n \t\r\n \t _this[\"catch\"] = function (onRejected)\r\n \t {\r\n \t return _this.then(null, onRejected);\r\n \t };\r\n \t\r\n \t function _enqueue(onFulfilled, onRejected, resolve, reject)\r\n \t {\r\n \t _queue.push(\r\n \t function ()\r\n \t {\r\n \t var value;\r\n \t\r\n \t try\r\n \t {\r\n \t // First call the onFulfilled or onRejected handler, on the settled value\r\n \t // of this promise. If the corresponding handler does not exist, simply\r\n \t // pass through the settled value.\r\n \t if (_state === PromiseStateFulfilled)\r\n \t {\r\n \t value = typeof onFulfilled === \"function\" ? onFulfilled(_settledValue) : _settledValue;\r\n \t }\r\n \t else\r\n \t {\r\n \t value = typeof onRejected === \"function\" ? onRejected(_settledValue) : _settledValue;\r\n \t }\r\n \t }\r\n \t catch (error)\r\n \t {\r\n \t // The chained promise will reject if there is any exception thrown while\r\n \t // calling the onFulfilled or onRejected handlers.\r\n \t reject(error);\r\n \t return;\r\n \t }\r\n \t\r\n \t if (value instanceof Promise)\r\n \t {\r\n \t // The called handlers returned a new promise, so the chained promise\r\n \t // will follow the state of this promise.\r\n \t value.then(resolve, reject);\r\n \t }\r\n \t else if (_state === PromiseStateRejected && typeof onRejected !== \"function\")\r\n \t {\r\n \t // If there wasn't an onRejected handler and this promise is rejected, then\r\n \t // the chained promise also rejects with the same reason.\r\n \t reject(value);\r\n \t }\r\n \t else\r\n \t {\r\n \t // If this promise is fulfilled, then the chained promise is also fulfilled\r\n \t // with either the settled value of this promise (if no onFulfilled handler\r\n \t // was available) or the return value of the handler. If this promise is\r\n \t // rejected and there was an onRejected handler, then the chained promise is\r\n \t // fulfilled with the return value of the handler.\r\n \t resolve(value);\r\n \t }\r\n \t });\r\n \t\r\n \t // If this promise is already settled, then immediately process the callback we\r\n \t // just added to the queue.\r\n \t if (_state !== PromiseStatePending)\r\n \t {\r\n \t _processQueue();\r\n \t }\r\n \t }\r\n \t\r\n \t function _processQueue()\r\n \t {\r\n \t if (_queue.length > 0)\r\n \t {\r\n \t // The onFulfilled and onRejected handlers must be called asynchronously. Thus,\r\n \t // we make a copy of the queue and work on it once the current call stack unwinds.\r\n \t var pending = _queue.slice();\r\n \t _queue = [];\r\n \t\r\n \t setTimeout(\r\n \t function ()\r\n \t {\r\n \t for (var i = 0, len = pending.length; i < len; ++i)\r\n \t {\r\n \t pending[i]();\r\n \t }\r\n \t }, 0);\r\n \t }\r\n \t }\r\n \t\r\n \t function _resolve(value)\r\n \t {\r\n \t if (_state === PromiseStatePending)\r\n \t {\r\n \t _settledValue = value;\r\n \t _state = PromiseStateFulfilled;\r\n \t _processQueue();\r\n \t }\r\n \t }\r\n \t\r\n \t function _reject(reason)\r\n \t {\r\n \t if (_state === PromiseStatePending)\r\n \t {\r\n \t _settledValue = reason;\r\n \t _state = PromiseStateRejected;\r\n \t _processQueue();\r\n \t }\r\n \t }\r\n \t\r\n \t (function _initialize()\r\n \t {\r\n \t if (typeof executor !== \"function\")\r\n \t {\r\n \t throw new TypeError(\"Promise: argument is not a Function object\");\r\n \t }\r\n \t\r\n \t try\r\n \t {\r\n \t executor(_resolve, _reject);\r\n \t }\r\n \t catch (error)\r\n \t {\r\n \t // This promise will immediately reject if any exception is thrown\r\n \t // from within the executor function.\r\n \t _reject(error);\r\n \t }\r\n \t })();\r\n \t }\r\n \t\r\n \t function createPromiseAllHandlerFunction(values, index, doneCheck, rejectOnError, isFulfilled)\r\n \t {\r\n \t // This function will be used as handler for any Promise found\r\n \t // in the iterable passed to Promise.all or Promise.allSettled.\r\n \t // The goal here is to capture in a closure the index of the current item\r\n \t // from the iterable. If we did not create this closure, the captured index\r\n \t // variable would be the same one that the for loop updates and thus would\r\n \t // always be pointing to the last index in the iterable by the time that\r\n \t // the handler is called.\r\n \t // However, note that for the doneCheck callback we want the opposite. For\r\n \t // this one we do want to capture the same variable that the for loop\r\n \t // updates so that we have the full count of pending promises by the time\r\n \t // the handlers start getting called.\r\n \t\r\n \t var fn =\r\n \t function (value)\r\n \t {\r\n \t // The rejectOnError flag indicates if the expected handler function needs\r\n \t // to update the values array with the individual value (for Promise.all)\r\n \t // or with an object containing status and value (for Promise.allSettled).\r\n \t if (rejectOnError)\r\n \t {\r\n \t values[index] = value;\r\n \t }\r\n \t else\r\n \t {\r\n \t if (isFulfilled)\r\n \t {\r\n \t values[index] = { status: \"fulfilled\", value: value };\r\n \t }\r\n \t else\r\n \t {\r\n \t values[index] = { status: \"rejected\", reason: value };\r\n \t }\r\n \t }\r\n \t\r\n \t doneCheck();\r\n \t };\r\n \t\r\n \t return fn;\r\n \t }\r\n \t\r\n \t function iteratePromises(iterable, rejectOnError)\r\n \t {\r\n \t if (!iterable || !iterable.length)\r\n \t {\r\n \t // If we are not passed an iterable or it is empty, then synchronously\r\n \t // return an already-resolved Promise.\r\n \t return Promise.resolve([]);\r\n \t }\r\n \t\r\n \t return new Promise(\r\n \t function (resolve, reject)\r\n \t {\r\n \t var values = [];\r\n \t var pending = 0;\r\n \t\r\n \t for (var i = 0, len = iterable.length; i < len; ++i)\r\n \t {\r\n \t var item = iterable[i];\r\n \t\r\n \t // For each item in the iterable, if it is a Promise, then\r\n \t // wait for it to resolve and add its resolved value to the\r\n \t // array of values to return.\r\n \t // If the item is not a Promise, pass through the\r\n \t // item into the array of values to return. Each value is\r\n \t // returned in the same index as the item was found in the\r\n \t // iterable.\r\n \t if (item instanceof Promise)\r\n \t {\r\n \t pending++;\r\n \t\r\n \t var doneCheck =\r\n \t function ()\r\n \t {\r\n \t if (--pending === 0)\r\n \t {\r\n \t resolve(values);\r\n \t }\r\n \t };\r\n \t\r\n \t // If rejectsOnError, then reject the Promise that we return\r\n \t // immediately upon any of the input promises rejecting\r\n \t // and reject with the same message/error.\r\n \t if (rejectOnError)\r\n \t {\r\n \t item.then(\r\n \t createPromiseAllHandlerFunction(values, i, doneCheck, rejectOnError),\r\n \t reject);\r\n \t }\r\n \t else\r\n \t {\r\n \t item.then(\r\n \t createPromiseAllHandlerFunction(values, i, doneCheck, rejectOnError, true),\r\n \t createPromiseAllHandlerFunction(values, i, doneCheck, rejectOnError, false));\r\n \t }\r\n \t }\r\n \t else\r\n \t {\r\n \t values[i] = item;\r\n \t }\r\n \t }\r\n \t\r\n \t // If no item is pending (i.e. none were a Promise), then just\r\n \t // resolve the Promise we return. However, this must be done\r\n \t // asynchronously.\r\n \t if (pending === 0)\r\n \t {\r\n \t setTimeout(\r\n \t function ()\r\n \t {\r\n \t resolve(values);\r\n \t }, 0);\r\n \t }\r\n \t });\r\n \t };\r\n \t\r\n \t Promise.all = function (iterable)\r\n \t {\r\n \t return iteratePromises(iterable, true);\r\n \t };\r\n \t\r\n \t Promise.allSettled = function (iterable)\r\n \t {\r\n \t return iteratePromises(iterable, false);\r\n \t };\r\n \t\r\n \t function createPromiseRaceCallResolveFunction(resolve, item)\r\n \t {\r\n \t // This function is used to resolve the Promise returned by Promise.race\r\n \t // with the given item from the iterable that was passed in. The goal\r\n \t // is to create a closure that capture the current item from the\r\n \t // iterable. Without this closure, we would capture the same item\r\n \t // variable used by the for loop which would always end up being the\r\n \t // last item in the iterable by the time we resolve the Promise.\r\n \t\r\n \t var fn =\r\n \t function ()\r\n \t {\r\n \t resolve(item);\r\n \t };\r\n \t\r\n \t return fn;\r\n \t }\r\n \t\r\n \t Promise.race = function (iterable)\r\n \t {\r\n \t return new Promise(\r\n \t function (resolve, reject)\r\n \t {\r\n \t // If we are not passed in an iterable or it is empty, then\r\n \t // the returned Promise will never settle.\r\n \t if (!iterable || !iterable.length)\r\n \t {\r\n \t return;\r\n \t }\r\n \t\r\n \t for (var i = 0, len = iterable.length; i < len; ++i)\r\n \t {\r\n \t var item = iterable[i];\r\n \t\r\n \t // For each item in the iterable, if it is a Promise, then\r\n \t // wait for the Promise to settle and have the returned\r\n \t // promise settle into the same state (if it hasn't settled\r\n \t // already by the time that the Promise from the iterable\r\n \t // settles). If a non-Promise is found in the iterable, then\r\n \t // the returned Promise will resolve with that item as the\r\n \t // settled value, but it must do so asynchronously.\r\n \t if (item instanceof Promise)\r\n \t {\r\n \t item.then(resolve, reject);\r\n \t }\r\n \t else\r\n \t {\r\n \t setTimeout(\r\n \t createPromiseRaceCallResolveFunction(resolve, item), 0);\r\n \t }\r\n \t }\r\n \t });\r\n \t };\r\n \t\r\n \t Promise.reject = function (reason)\r\n \t {\r\n \t return new Promise(\r\n \t function (resolve, reject)\r\n \t {\r\n \t reject(reason);\r\n \t });\r\n \t };\r\n \t\r\n \t Promise.resolve = function (value)\r\n \t {\r\n \t if (value instanceof Promise)\r\n \t {\r\n \t // The value is already a Promise - return it directly.\r\n \t return value;\r\n \t }\r\n \t else if (value && typeof value.then === \"function\")\r\n \t {\r\n \t // The value is a thenable - have the Promise we return\r\n \t // follow the thenable.\r\n \t return new Promise(\r\n \t function (resolve, reject)\r\n \t {\r\n \t value.then(resolve, reject);\r\n \t });\r\n \t }\r\n \t\r\n \t // The value is neither a Promise or a thenable - resolve\r\n \t // the Promise we return with the value.\r\n \t return new Promise(\r\n \t function (resolve)\r\n \t {\r\n \t resolve(value);\r\n \t });\r\n \t };\r\n \t\r\n \t if (!window.Promise)\r\n \t {\r\n \t window.Promise = Promise;\r\n \t }\r\n \t \r\n \t if (!window.Promise.all)\r\n \t {\r\n \t window.Promise.all = Promise.all;\r\n \t }\r\n \t\r\n \t if (!window.Promise.allSettled)\r\n \t {\r\n \t window.Promise.allSettled = Promise.allSettled;\r\n \t }\r\n \t\r\n \t if (!window.Promise.race)\r\n \t {\r\n \t window.Promise.race = Promise.race;\r\n \t }\r\n \t\r\n \t if (!window.Promise.reject)\r\n \t {\r\n \t window.Promise.reject = Promise.reject;\r\n \t }\r\n \t\r\n \t if (!window.Promise.resolve)\r\n \t {\r\n \t window.Promise.resolve = Promise.resolve;\r\n \t }\r\n \t})();\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n\n \t\t\t\t function fallbackCdn(url, cdnRoots)\n \t\t\t\t {\n \t\t\t\t if (!cdnRoots)\n \t\t\t\t {\n \t\t\t\t return url;\n \t\t\t\t }\n\n \t\t\t\t for (var i = 0; i < cdnRoots.length; i++)\n \t\t\t\t {\n \t\t\t\t if (url.indexOf(cdnRoots[i]) == 0)\n \t\t\t\t {\n \t\t\t\t return cdnRoots[(i + 1) % cdnRoots.length] + url.substring(cdnRoots[i].length);\n \t\t\t\t }\n \t\t\t\t }\n\n \t\t\t\t return url;\n \t\t\t\t }\n \t\t\t\t \n\n \t\t\t\t var serverData = window.ServerData;\n \t\t\t\t var cdnRoots = serverData && serverData.loader ? serverData.loader.cdnRoots || [] : [];\n \t\t\t\t var maxRetry = serverData && serverData.slMaxRetry ? serverData.slMaxRetry : cdnRoots.length - 1;\n\n \t\t\t\t var error = new Error();\n\n \t\t\t\t function loadScript(src, retryCount)\n \t\t\t\t {\n \t\t\t\t var script = document.createElement('script');\n \t\t\t\t var onScriptComplete;\n \t\t\t\t \n\n \t\t\t\t script.charset = 'utf-8';\n \t\t\t\t script.timeout = 120;\n \t\t\t\t var scriptWithNonce = document.querySelector('script[nonce]');\n \t\t\t\t if (scriptWithNonce)\n \t\t\t\t {\n \t\t\t\t var nonce = scriptWithNonce['nonce'] || scriptWithNonce.getAttribute('nonce');\n \t\t\t\t script.setAttribute(\"nonce\", nonce);\n \t\t\t\t }\n\n \t\t\t\t script.src = src;\n \t\t\t\t \n\n \t\t\t\t onScriptComplete = function (event)\n \t\t\t\t {\n \t\t\t\t //avoid mem leaks in IE\n \t\t\t\t script.onerror = script.onload = null;\n \t\t\t\t clearTimeout(timeout);\n \t\t\t\t var chunk = installedChunks[chunkId];\n \t\t\t\t if (chunk !== 0)\n \t\t\t\t {\n \t\t\t\t if (chunk)\n \t\t\t\t {\n \t\t\t\t if (maxRetry <= 0 || retryCount === maxRetry)\n \t\t\t\t {\n \t\t\t\t var errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t var realSrc = event && event.target && event.target.src;\n \t\t\t\t error.message = 'Loading chunk ' + chunkId + ' failed after ' + (maxRetry + 1) + ' tries.\\n(' + errorType + ': ' + realSrc + ')';\n\n \t\t\t\t error.name = 'ChunkLoadError';\n \t\t\t\t error.type = errorType;\n \t\t\t\t error.request = realSrc;\n\n \t\t\t\t chunk[1](error);\n \t\t\t\t installedChunks[chunkId] = undefined;\n \t\t\t\t \n \t\t\t\t //only applies to CXH flows\n \t\t\t\t if(SRSRetry) {\n \t\t\t\t window.external.notify(\n \t\t\t\t JSON.stringify(\n \t\t\t\t {\n \t\t\t\t type: \"invoke\",\n \t\t\t\t value: {\n \t\t\t\t name: \"CloudExperienceHost.Telemetry.logEvent\",\n \t\t\t\t args: [\"MSA.ResourceDownloadError\", \"Javascript failed to download on IDUX: \" + realSrc],\n \t\t\t\t context: \"criticalError1\"\n \t\t\t\t }\n \t\t\t\t }\n \t\t\t\t )\n \t\t\t\t );\n \t\t\t\t \n \t\t\t\t window.external.notify(\n \t\t\t\t JSON.stringify(\n \t\t\t\t {\n \t\t\t\t type: \"event\",\n \t\t\t\t value:\n \t\t\t\t {\n \t\t\t\t name: \"CloudExperienceHost.done\",\n \t\t\t\t data: \"fail\"\n \t\t\t\t }\n \t\t\t\t }\n \t\t\t\t )\n \t\t\t\t );\n \t\t\t\t }\n \t\t\t\t }\n \t\t\t\t else\n \t\t\t\t {\n \t\t\t\t var retryScript = loadScript(fallbackCdn(src, cdnRoots), retryCount + 1);\n \t\t\t\t document.head.appendChild(retryScript);\n \t\t\t\t }\n \t\t\t\t }\n \t\t\t\t else\n \t\t\t\t {\n \t\t\t\t installedChunks[chunkId] = undefined;\n \t\t\t\t }\n \t\t\t\t }\n \t\t\t\t };\n\n \t\t\t\t var timeout = setTimeout(\n \t\t\t\t function ()\n \t\t\t\t {\n \t\t\t\t onScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t }, 120000);\n\n \t\t\t\t script.onerror = script.onload = onScriptComplete;\n\n \t\t\t\t return script;\n \t\t\t\t }\n\n \t\t\t\t var script = loadScript(jsonpScriptSrc(chunkId), 0);\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 70);\n","exports.UsernameMaxLength = 113;\r\nexports.SATOTPV1Length = 6;\r\nexports.SATOTPLength = 8;\r\nexports.SAEOTPLength = 8;\r\nexports.PhoneNumberConfirmationLength = 4;\r\nexports.OneTimeCodeDefaultLength = 16;\r\nexports.OneTimeCodeMaxAcceptedLength = 10;\r\nexports.PCExperienceQS = \"pcexp\";\r\nexports.PCExperienceDisabled = exports.PCExperienceQS + \"=false\";\r\nexports.NotPreferredCredentialQs = \"npc\";\r\nexports.AnimationTimeout = 700;\r\nexports.PageSummaryVersion = 1;\r\nexports.GuidTemplate = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\";\r\n\r\nexports.proofUpCorrelationIdParamName = \"x-ms-correlation-id\";\r\n\r\nexports.Regex =\r\n{\r\n PhoneNumberValidation: /^[0-9 ()[\\].\\-#*/+]+$/\r\n};\r\n\r\nexports.ProofUpRedirectLandingView =\r\n{\r\n AccountCompromised: 1,\r\n RiskySession: 2\r\n};\r\n\r\nexports.LoginMode =\r\n{\r\n None: 0,\r\n Login: 1,\r\n ForceCredType: 3,\r\n LWAConsent: 4,\r\n GenericError: 5,\r\n ForceSignin: 6,\r\n OTS: 7,\r\n HIP_Login: 8,\r\n HIP_Lockout: 9,\r\n InviteBlocked: 10,\r\n SwitchUser: 11,\r\n LWADelegation: 12,\r\n ServiceBlocked: 13,\r\n IDPFailed: 14,\r\n StrongAuthOTC: 16,\r\n StrongAuthMobileOTC: 25,\r\n Finish: 27,\r\n LoginWizard_Login: 28,\r\n StrongAuthWABOTC: 30,\r\n LoginWizard_HIP_Login: 32,\r\n LoginWizard_Finish: 34,\r\n LoginMobile: 36,\r\n ForceSigninMobile: 37,\r\n GenericErrorMobile: 38,\r\n LoginHost: 39,\r\n ForceSigninHost: 40,\r\n GenericErrorHost: 42,\r\n StrongAuthHostOTC: 43,\r\n HIP_LoginHost: 45,\r\n HIP_LoginMobile: 46,\r\n HIP_LockoutHost: 47,\r\n HIP_LockoutMobile: 48,\r\n SwitchUserHost: 49,\r\n LoginXbox_Login: 50,\r\n HIP_LoginXbox: 51,\r\n FinishXbox: 52,\r\n IfExistsXbox: 53,\r\n StartIfExistsXbox: 54,\r\n StrongAuthXboxOTC: 55,\r\n LoginWPWiz_Login: 56,\r\n LoginWPWiz_HIP_Login: 57,\r\n LoginWPWiz_Finish: 58,\r\n StrongAuthWizOTC: 59,\r\n StrongAuthWPWizOTC: 60,\r\n FinishWPWiz: 61,\r\n SwitchUserMobile: 62,\r\n LoginWPWiz_PhoneSignIn: 63,\r\n LoginWPWiz_HIP_PhoneSignIn: 64,\r\n Login_PhoneSignIn: 65,\r\n Login_HIP_PhoneSignIn: 66,\r\n LoginHost_PhoneSignIn: 67,\r\n LoginHost_HIP_PhoneSignIn: 68,\r\n LoginMobile_PhoneSignIn: 69,\r\n LoginMobile_HIP_PhoneSignIn: 70,\r\n LoginWizard_PhoneSignIn: 71,\r\n LoginWizard_HIP_PhoneSignIn: 72,\r\n LoginXbox_PhoneSignIn: 73,\r\n LoginXbox_HIP_PhoneSignIn: 74,\r\n LoginWin10: 75,\r\n HIP_LoginWin10: 76,\r\n FinishWin10: 77,\r\n FinishBlockedWin10: 78,\r\n LoginWin10_PhoneSignIn: 79,\r\n HIP_LoginWin10_PhoneSignIn: 80,\r\n FinishWin10_TokenBroker: 81,\r\n SwitchUserWin10: 82,\r\n ForceSignInXbox: 88,\r\n LoginClientSDK_Login: 92,\r\n LoginClientSDK_HIP_Login: 93,\r\n LoginClientSDK_Finish: 94,\r\n StrongAuthClientSDKOTC: 95,\r\n FinishClientSDK: 96,\r\n LoginClientSDK_PhoneSignIn: 97,\r\n LoginClientSDK_HIP_PhoneSignIn: 98,\r\n Win10InclusiveOOBE_Finish: 99,\r\n Win10InclusiveOOBE_FinishBlocked: 100,\r\n \r\n Tiles: 102,\r\n RemoteConnect: 103,\r\n \r\n FedConflict: 105,\r\n Win10Host_Login: 106,\r\n Win10Host_Login_PhoneSignin: 107,\r\n Win10Host_Finish: 108,\r\n Win10Host_StrongAuth: 109,\r\n Win10Host_HIP_Login: 110,\r\n Fido: 111,\r\n Win10Host_HIP_Login_PhoneSignIn: 112,\r\n FedLink: 113,\r\n UserCredentialPolicyBlocked: 114,\r\n BindFailed: 115,\r\n Win10HostOOBE_HIP_Login: 116,\r\n Win10HostOOBE_HIP_Login_PhoneSignIn: 117,\r\n AadFedConflict: 118,\r\n ProofFedConflict: 119,\r\n FedBoundLink: 120,\r\n FetchSessionsProgress: 121,\r\n Win10Host_TransferLogin: 122,\r\n TransferLogin: 123,\r\n Signup: 124,\r\n CredentialPicker: 129,\r\n \r\n \r\n SignupBlocked: 132,\r\n QrCodePin: 133\r\n};\r\n\r\nexports.LoginBody =\r\n{\r\n Login_OTC: 5\r\n};\r\n\r\nexports.SessionPullFlags =\r\n{\r\n Msa: 1 << 0,\r\n Dsso: 1 << 1\r\n};\r\n\r\nexports.ResponseMode =\r\n{\r\n Fragment: \"Fragment\",\r\n Query: \"Query\",\r\n FormPost: \"FormPost\",\r\n NotSpecified: \"NotSpecified\",\r\n Unsupported: \"Unsupported\"\r\n};\r\n\r\nexports.ResponseType =\r\n{\r\n code: \"code\",\r\n token: \"token\",\r\n id_token: \"id_token\",\r\n none: \"none\"\r\n};\r\n\r\nexports.PaginatedState =\r\n{\r\n \r\n \r\n Previous: -1,\r\n Unknown: 0,\r\n Username: 1,\r\n Password: 2,\r\n OneTimeCode: 3,\r\n RemoteNGC: 4,\r\n PhoneDisambiguation: 5,\r\n LwaConsent: 6,\r\n IdpDisambiguation: 7,\r\n IdpRedirect: 8,\r\n \r\n ViewAgreement: 10,\r\n LearnMore: 11,\r\n Tiles: 12,\r\n ConfirmSend: 13,\r\n RemoteConnectCode: 14,\r\n RemoteLoginPolling: 15,\r\n BindRedirect: 16,\r\n TermsOfUse: 17,\r\n DesktopSsoProgress: 18,\r\n ResetPasswordSplitter: 19,\r\n Kmsi: 20,\r\n CheckPasswordType: 21,\r\n ChangePassword: 22,\r\n Fido: 23,\r\n CredentialPicker: 24,\r\n Consent: 25,\r\n Error: 26,\r\n ConfirmSignup: 27,\r\n ConfirmRecoverUsername: 28,\r\n ConfirmConsentSelection: 29,\r\n FedConflict: 30,\r\n ProofUpRedirect: 32,\r\n ProofUpRedirectLanding: 33,\r\n ConditionalAccessInstallBroker: 34,\r\n ConditionalAccessWorkplaceJoin: 35,\r\n ConditionalAccessError: 36,\r\n CreateFido: 37,\r\n FedLink: 38,\r\n FedLinkComplete: 40,\r\n IdpRedirectSpeedbump: 41,\r\n TransferLogin: 42,\r\n Cmsi: 43,\r\n ProofConfirmation: 44,\r\n MessagePrompt: 45,\r\n FinishError: 46,\r\n Hip: 48,\r\n LearnMoreOfflineAccount: 49,\r\n TenantDisambiguation: 50,\r\n AadFedConflict: 51,\r\n RemoteConnectCanaryValidation: 52,\r\n PartnerCanaryValidation: 53,\r\n ProofFedConflict: 54,\r\n FetchSessionsProgress: 55,\r\n AccessPass: 56,\r\n SignupUsername: 57,\r\n ReportSuspiciousApp: 58,\r\n MoreInfo: 59,\r\n AuthenticatorAddAccountView: 60,\r\n SignupCredentialPicker: 61,\r\n LoginError: 62,\r\n SearchOrganization: 63,\r\n Ptca: 64,\r\n RemoteConnectLocation: 66,\r\n AttributeCollection: 67,\r\n RdpDevicePrompt: 68,\r\n GuestConsentConnect: 69,\r\n SeeHowDataIsManaged: 70,\r\n SecurityDefaultsUpsell: 71,\r\n SecurityDefaultsUpsellOptOut: 72,\r\n SecurityDefaultsUpsellAutoEnabled: 73,\r\n WebNativeBridge: 74,\r\n TransferLoginChallengePin: 75,\r\n RecoveryCredentialPicker: 76,\r\n OneTimeCodeRecovery: 77,\r\n PhoneLinkLearnMore: 78,\r\n PhoneLinkSupport: 79,\r\n CertificateInterstitialView: 80,\r\n ConsentResourceApp: 81,\r\n SignupBlocked: 82,\r\n \r\n QrCodeScan: 84,\r\n QrCodePin: 85,\r\n AttributeCollectionRedirect: 86,\r\n RemoteConnectCmsi: 87\r\n};\r\n\r\nexports.PostType =\r\n{\r\n Password: 11,\r\n Federation: 13,\r\n SHA1: 15,\r\n StrongAuth: 18,\r\n StrongAuthTOTP: 19,\r\n LWAConsent: 30,\r\n PasswordInline: 20,\r\n RemoteNGC: 21,\r\n SessionApproval: 22,\r\n NGC: 23,\r\n OtcNoPassword: 24,\r\n RemoteConnect_NativePlatform: 25,\r\n OTC: 27,\r\n Kmsi: 28,\r\n TransferTokenOTC: 31,\r\n QrCodePin: 32\r\n};\r\n\r\nexports.UserProperty =\r\n{\r\n USERNAME: \"login\",\r\n ERROR_CODE: \"HR\",\r\n ERR_MSG: \"ErrorMessage\",\r\n EXT_ERROR: \"ExtErr\",\r\n ERR_URL: \"ErrUrl\",\r\n DATOKEN: \"DAToken\",\r\n DA_SESKEY: \"DASessionKey\",\r\n DA_START: \"DAStartTime\",\r\n DA_EXPIRE: \"DAExpires\",\r\n STS_ILFT: \"STSInlineFlowToken\",\r\n SIGNINNAME: \"SigninName\",\r\n FIRST_NAME: \"LastName\",\r\n LAST_NAME: \"FirstName\",\r\n TILE_URL: \"TileUrl\",\r\n CID: \"CID\",\r\n PUID: \"PUID\"\r\n};\r\n\r\nexports.DEFAULT_CHANNEL_ID = \"53ee284d-920a-4b59-9d30-a60315b26836\";\r\nexports.DEFAULT_PREFERRED_EXTENSION_ID = \"ppnbnpeolgkicgegkbkbjmhlideopiji\";\r\nexports.WebNativeBridgeSuccess = \"Success\";\r\nexports.DFPPrefix = \"dfp:\";\r\n\r\nexports.Error =\r\n{\r\n \r\n S_OK: \"0\",\r\n\r\n \r\n InvalidRealmDiscLogin: 10,\r\n UsernameInvalid: 1000,\r\n PasswordEmpty: 1001,\r\n HIPEmpty: 1002,\r\n AltEmailInvalid: 1005,\r\n PhoneInvalid: 1006,\r\n SAContainsName: 1007,\r\n OTCEmpty: 1009,\r\n OTCInvalid: 1010,\r\n NotEnoughProofs: 1013,\r\n PhoneEmpty: 1015,\r\n FedUser: 1016,\r\n FedUserConflict: 1017,\r\n FedUserInviteBlocked: 1018,\r\n EmptyFields: 1020,\r\n PhoneHasSpecialChars: 1021,\r\n AutoVerifyNoCodeSent: 1022,\r\n ProofConfirmationEmpty: 1023,\r\n ProofConfirmationInvalid: 1024,\r\n TOTPInvalid: 1025,\r\n SessionNotApproved: 1026,\r\n PhoneNumberInvalid: 1027,\r\n PhoneFormattingInvalid: 1028,\r\n PollingTimedOut: 1029,\r\n SendNotificationFailed: 1030,\r\n\r\n \r\n Server_MessageOnly: 9999,\r\n\r\n \r\n PP_E_DB_MEMBERDOESNOTEXIST: \"CFFFFC15\",\r\n PP_E_EXCLUDED: \"80041010\",\r\n PP_E_MEMBER_LOCKED: \"80041011\",\r\n PP_E_BAD_PASSWORD: \"80041012\",\r\n PP_E_MISSING_MEMBERNAME: \"80041031\",\r\n PP_E_MISSING_PASSWORD: \"80041032\",\r\n PP_E_FEDERATION_INLINELOGIN_DISALLOWED: \"800478AC\",\r\n PP_E_PE_RULEFALSE: \"8004490C\",\r\n PP_E_MOBILECREDS_PHONENUMBER_BLANK: \"80045801\",\r\n PP_E_MOBILECREDS_PHONENUMBER_TOOSHORT: \"80045806\",\r\n PP_E_MOBILECREDS_PHONENUMBER_TOOLONG: \"80045807\",\r\n PP_E_MOBILECREDS_PHONENUMBER_INVALID: \"80045800\",\r\n PP_E_NAME_BLANK: \"80041100\",\r\n PP_E_EMAIL_INCOMPLETE: \"8004110D\",\r\n PP_E_EMAIL_INVALID: \"8004110B\",\r\n PP_E_NAME_TOO_SHORT: \"80041101\",\r\n PP_E_NAME_INVALID: \"80041103\",\r\n PP_E_INVALIDARG: \"80048388\",\r\n PP_E_SA_TOOSHORT: \"80041120\",\r\n PP_E_SA_TOOLONG: \"80041121\",\r\n PP_E_INVALID_PHONENUMBER: \"8004113F\",\r\n PP_E_SECRETQ_CONTAINS_SECRETA: \"80041165\",\r\n PP_E_SECRETA_CONTAINS_SECRETQ: \"8004117D\",\r\n PP_E_SA_CONTAINS_MEMBERNAME: \"8004116A\",\r\n PP_E_STRONGPROCESS_ALTEMAILSAMEASMAILBOX: \"80049C2D\",\r\n PP_E_EMAIL_RIGHT_TOO_LONG: \"8004110C\",\r\n PP_E_NAME_TOO_LONG: \"80041102\",\r\n PP_E_ALIAS_AUTH_NOTPERMITTED: \"8004788B\",\r\n PP_E_TOTP_INVALID: \"80049C34\",\r\n PP_E_OLD_SKYPE_PASSWORD: \"80043557\",\r\n PP_E_OTT_DATA_INVALID: \"8004348F\",\r\n PP_E_OTT_ALREADY_CONSUMED: \"80043490\",\r\n PP_E_OTT_INVALID_PURPOSE: \"80043496\",\r\n PP_E_PPSA_RPT_NOTOADDRESS: \"80048120\",\r\n PP_E_STRONGPROCESS_BADDEVICENAME: \"80049C22\",\r\n PP_E_INLINELOGIN_INVALID_SMS: \"800434E1\",\r\n PP_E_INLINELOGIN_INVALID_ALT: \"800434E2\",\r\n PP_E_PREVIOUS_PASSWORD: \"80041013\",\r\n PP_E_HIP_VALIDATION_WRONG: \"80045505\",\r\n PP_E_HIP_VALIDATION_ERROR_FATAL: \"80045537\",\r\n PP_E_HIP_VALIDATION_ERROR_UNAUTHENTICATED: \"80045538\",\r\n PP_E_HIP_VALIDATION_ERROR_OTHER: \"80045539\",\r\n PP_E_SQ_CONTAINS_PASSWORD: \"8004341E\",\r\n PP_E_SA_CONTAINS_PASSWORD: \"8004341C\",\r\n PP_E_SA_CONTAINED_IN_PASSWORD: \"8004341D\",\r\n PP_E_LIBPHONENUMBERINTEROP_NUMBERPARSE_EXCEPTION: \"80043510\",\r\n PP_E_STRONGPROCESS_EMAIL_HAS_MOBILE_DOMAIN: \"80049C33\",\r\n PP_E_STRONGPROCESS_MXALIAS_NOTALLOWED: \"80049C23\",\r\n PP_E_INVALID_MEMBERNAME: \"80041034\",\r\n PP_E_SA_TOO_MANY_CACHE_SESSIONS: \"8004A00C\",\r\n PP_E_INTERFACE_DISABLED: \"80043448\",\r\n PP_E_ASSOCIATE_DUPLICATE_ACCOUNT: \"80043534\",\r\n PP_E_OAUTH_REMOTE_CONNECT_USER_CODE_MISSING_OR_INVALID: \"800478C7\",\r\n PP_E_LOGIN_NOPA_USER_PASSWORD_REQUIRED: \"800478CE\",\r\n PP_E_IDP_LINKEDIN_BINDING_NOT_ALLOWED: \"800478D5\",\r\n PP_E_IDP_GOOGLE_BINDING_NOT_ALLOWED: \"800478D6\",\r\n PP_E_IDP_GITHUB_BINDING_NOT_ALLOWED: \"800478D7\",\r\n PP_E_IDP_BINDING_EXISTS_SAMSUNG: \"8004453E\",\r\n PP_E_TRANSFER_TOKEN_INVALID_SESSION: \"800435A0\"\r\n};\r\n\r\n\r\nexports.EstsError =\r\n{\r\n UserAccountSelectionInvalid: \"16001\",\r\n UserUnauthorized: \"50020\",\r\n UserUnauthorizedApiVersionNotSupported: \"500201\",\r\n UserUnauthorizedMsaGuestUsersNotSupported: \"500202\",\r\n UserAccountNotFound: \"50034\",\r\n UserAccountDeleted: \"500341\",\r\n UserAlreadyExists: \"1003037\",\r\n UserAccountNotFoundNotConfiguredForRemoteNgc: \"500342\",\r\n UserAccountNotFoundFailedToCreateRemoteSignIn: \"500343\",\r\n UserAccountNotFoundForFidoSignIn: \"500344\",\r\n IdsLocked: \"50053\",\r\n InvalidPasswordLastPasswordUsed: \"50054\",\r\n InvalidPasswordExpiredPassword: \"50055\",\r\n InvalidPasswordNullPassword: \"50056\",\r\n UserDisabled: \"50057\",\r\n GuestUserDisabled: \"500571\",\r\n FlowTokenExpired: \"50089\",\r\n InvalidUserNameOrPassword: \"50126\",\r\n InvalidDomainName: \"50128\",\r\n ProtectedKeyMisuse: \"50141\",\r\n MissingCustomSigningKey: \"50146\",\r\n IdpLoopDetected: \"50174\",\r\n InvalidOneTimePasscode: \"50181\",\r\n ExpiredOneTimePasscode: \"50182\",\r\n OneTimePasscodeCacheError: \"50183\",\r\n OneTimePasscodeCacheErrorNoMoreOTPGenerated: \"501831\",\r\n OneTimePasscodeEntryNotExist: \"50184\",\r\n OneTimePasscodeMessageDeliveryFailed: \"50185\",\r\n InvalidPassword: \"50193\",\r\n InvalidOneTimePasscodeOTPNotGiven: \"501811\",\r\n InvalidGrantDeviceNotFound: \"700003\",\r\n SsoArtifactExpiredDueToConditionalAccess: \"70044\",\r\n SsoArtifactExpiredDueToConditionalAccessReAuth: \"70046\",\r\n InvalidTenantName: \"90002\",\r\n InvalidTenantNameEmptyGuidIdentifier: \"900021\",\r\n InvalidTenantNameEmptyIdentifier: \"900022\",\r\n InvalidTenantNameFormat: \"900023\",\r\n PhoneSignInBlockedByUserCredentialPolicy: \"130500\",\r\n AccessPassBlockedByPolicy: \"130502\",\r\n InvalidAccessPass: \"130503\",\r\n AccessPassExpired: \"130504\",\r\n AccessPassAlreadyUsed: \"130505\",\r\n PublicIdentifierSasBeginCallRetriableError: \"131001\",\r\n PublicIdentifierAuthUserNotAllowedByPolicy: \"131010\",\r\n PublicIdentifierSasBeginCallNonRetriableError: \"131002\",\r\n PublicIdentifierSasEndCallRetriableError: \"131003\",\r\n PublicIdentifierSasEndCallNonRetriableError: \"131004\",\r\n DeviceIsDisabled: \"135011\",\r\n FidoBlockedByPolicy: \"135016\",\r\n PasskeyBlockedByPolicyOtherAuthAppPasskeyAvailable: \"1350161\",\r\n PasskeyBlockedByPolicyOtherPasskeyAvailable: \"1350162\",\r\n PasskeyAuthInterrupted: \"1350201\",\r\n BlockedAdalVersion: \"220300\",\r\n BlockedClientId: \"220400\",\r\n InvalidCredentialDueToMfaClassification: \"54009\",\r\n ProofupBlockedDueToMfaClassification: \"54010\",\r\n NoEmailAddressCollectedFromExternalOidcIDP: \"901011\",\r\n EmailAddressCollectedFromExternalOidcIDPNotVerified: \"901012\",\r\n EmailAddressCollectedFromExternalOidcIDPNotPublic: \"901013\",\r\n NoExternalIdentifierCollectedFromExternalOidcIDP: \"901014\",\r\n\r\n \r\n \r\n UserVoiceAuthFailedCallWentToVoicemail: \"UserVoiceAuthFailedCallWentToVoicemail\",\r\n UserVoiceAuthFailedInvalidPhoneInput: \"UserVoiceAuthFailedInvalidPhoneInput\",\r\n UserVoiceAuthFailedPhoneHungUp: \"UserVoiceAuthFailedPhoneHungUp\",\r\n UserVoiceAuthFailedInvalidPhoneNumber: \"UserVoiceAuthFailedInvalidPhoneNumber\",\r\n UserVoiceAuthFailedInvalidExtension: \"UserVoiceAuthFailedInvalidExtension\",\r\n InvalidFormat: \"InvalidFormat\",\r\n UserAuthFailedDuplicateRequest: \"UserAuthFailedDuplicateRequest\",\r\n UserVoiceAuthFailedPhoneUnreachable: \"UserVoiceAuthFailedPhoneUnreachable\",\r\n UserVoiceAuthFailedProviderCouldntSendCall: \"UserVoiceAuthFailedProviderCouldntSendCall\",\r\n User2WaySMSAuthFailedProviderCouldntSendSMS: \"User2WaySMSAuthFailedProviderCouldntSendSMS\",\r\n SMSAuthFailedProviderCouldntSendSMS: \"SMSAuthFailedProviderCouldntSendSMS\",\r\n User2WaySMSAuthFailedNoResponseTimeout: \"User2WaySMSAuthFailedNoResponseTimeout\",\r\n SMSAuthFailedNoResponseTimeout: \"SMSAuthFailedNoResponseTimeout\",\r\n SMSAuthFailedWrongCodeEntered: \"SMSAuthFailedWrongCodeEntered\",\r\n IncorrectOTP: \"IncorrectOTP\",\r\n OathCodeIncorrect: \"OathCodeIncorrect\",\r\n OathCodeDuplicate: \"OathCodeDuplicate\",\r\n OathCodeOld: \"OathCodeOld\",\r\n ProofDataNotFound: \"ProofDataNotFound\",\r\n OathCodeCorrectButDeviceNotAllowed: \"OathCodeCorrectButDeviceNotAllowed\",\r\n OathCodeFailedMaxAllowedRetryReached: \"OathCodeFailedMaxAllowedRetryReached\",\r\n InvalidSession: \"InvalidSession\",\r\n PhoneAppNoResponse: \"PhoneAppNoResponse\",\r\n User2WaySMSAuthFailedWrongCodeEntered: \"User2WaySMSAuthFailedWrongCodeEntered\",\r\n PhoneAppInvalidResult: \"PhoneAppInvalidResult\",\r\n PhoneAppDenied: \"PhoneAppDenied\",\r\n PhoneAppTokenChanged: \"PhoneAppTokenChanged\",\r\n SMSAuthFailedMaxAllowedCodeRetryReached: \"SMSAuthFailedMaxAllowedCodeRetryReached\",\r\n PhoneAppFraudReported: \"PhoneAppFraudReported\",\r\n FraudCodeEntered: \"FraudCodeEntered\",\r\n UserIsBlocked: \"UserIsBlocked\",\r\n PhoneAppEntropyIncorrect: \"PhoneAppEntropyIncorrect\",\r\n VoiceOTPAuthFailedWrongCodeEntered: \"VoiceOTPAuthFailedWrongCodeEntered\",\r\n VoiceOTPAuthFailedMaxAllowedCodeRetryReached: \"VoiceOTPAuthFailedMaxAllowedCodeRetryReached\",\r\n AccessPassBlockedByPolicyTfa: \"AccessPassBlockedByPolicy\",\r\n InvalidAccessPassTfa: \"InvalidAccessPass\",\r\n AccessPassExpiredTfa: \"AccessPassExpired\",\r\n AccessPassAlreadyUsedTfa: \"AccessPassAlreadyUsed\",\r\n AppLockRequiredButNotUsed: \"AppLockRequiredButNotUsed\",\r\n IncompatibleAppVersion: \"IncompatibleAppVersion\",\r\n FlowTokenExpiredTfa: \"FlowTokenExpired\",\r\n\r\n \r\n ApplicationUsedIsNotAnApprovedAppRequiredByConditionalAccess: \"530021\",\r\n BlockedByConditionalAccess: \"53003\",\r\n BlockedByConditionalAccessForRemoteDeviceFlow: \"530033\",\r\n BrokerAppNotInstalled: \"50127\",\r\n BrokerAppNotInstalledDeviceAuthenticationFailed: \"501271\",\r\n DeviceIsNotWorkplaceJoined: \"50129\",\r\n DeviceIsNotWorkplaceJoinedForMamApp: \"501291\",\r\n DeviceNotCompliant: \"53000\",\r\n DeviceNotCompliantBrowserNotSupported: \"530001\",\r\n DeviceNotCompliantDeviceCompliantRequired: \"530002\",\r\n DeviceNotCompliantDeviceManagementRequired: \"530003\",\r\n DeviceNotDomainJoined: \"53001\",\r\n DeviceNotDomainJoinedBrowserNotSupported: \"530011\",\r\n ProofUpBlockedDueToRisk: \"53004\",\r\n ProofUpBlockedDueToUserRisk: \"53011\",\r\n RemediateCompliantApp: \"53009\",\r\n RemediateDeviceStateManagedBrowserRequired: \"530081\",\r\n RemediateDeviceStateWorkplaceJoinRequired: \"530082\",\r\n\r\n \r\n AuthenticatorAppRegistrationRequiredInterrupt: \"50203\",\r\n AuthenticatorAppRegistrationEnforcementInterrupt: \"502031\",\r\n UserStrongAuthEnrollmentRequiredInterrupt: \"50072\",\r\n UserStrongAuthClientAuthNRequiredInterrupt: \"50074\",\r\n\r\n \r\n RequiredDeviceStateNotSupported: \"9001011\",\r\n AdminConsentRequired: \"90094\",\r\n AdminConsentRequiredRequestAccess: \"90095\",\r\n\r\n \r\n CertificateValidationBlockedByPolicy: \"500186\",\r\n IssuerHintsPropagationDelay: \"2205016\",\r\n\r\n \r\n TenantDoesNotSupportNativeCredentialRecovery: \"500207\",\r\n UserDoesNotSupportNativeCredentialRecovery: \"500208\",\r\n CredentialDoesNotSupportNativeRecovery: \"500209\",\r\n\r\n \r\n QrCodeKeyInvalidKey: \"130100\",\r\n InvalidRequestNonce: \"140000\",\r\n QrPinInvalid: \"1301021\",\r\n InvalidGrantQrPinChanged: \"1301024\"\r\n};\r\n\r\nexports.Fido =\r\n{\r\n MaxUserPromptLength: 99,\r\n FinishStates:\r\n {\r\n Success: 0,\r\n Cancel: 1,\r\n Error: 2,\r\n NotSupported: 3\r\n },\r\n UnexpectedErrorCode: 9999,\r\n \r\n EdgeErrorCodes:\r\n {\r\n SyntaxError: 3, \r\n NotFoundError: 8, \r\n NotSupportedError: 9, \r\n InvalidAccessError: 15, \r\n AbortError: 20 \r\n }\r\n};\r\n\r\nexports.IfExistsResult =\r\n{\r\n Unknown: -1,\r\n Exists: 0,\r\n NotExist: 1,\r\n Throttled: 2,\r\n Error: 4,\r\n ExistsInOtherMicrosoftIDP: 5,\r\n ExistsBothIDPs: 6,\r\n ExistsInAcma: 8\r\n};\r\n\r\nexports.ThrottleStatus =\r\n{\r\n NotThrottled: 0,\r\n AadThrottled: 1 << 0,\r\n MsaThrottled: 1 << 1\r\n};\r\n\r\nexports.DomainType =\r\n{\r\n Unknown: 1,\r\n Consumer: 2,\r\n Managed: 3,\r\n Federated: 4,\r\n CloudFederated: 5\r\n};\r\n\r\nexports.CredentialType =\r\n{\r\n None: 0,\r\n Password: 1,\r\n RemoteNGC: 2,\r\n OneTimeCode: 3,\r\n Federation: 4,\r\n CloudFederation: 5,\r\n OtherMicrosoftIdpFederation: 6,\r\n Fido: 7,\r\n GitHub: 8,\r\n PublicIdentifierCode: 9,\r\n LinkedIn: 10,\r\n RemoteLogin: 11,\r\n Google: 12,\r\n AccessPass: 13,\r\n Facebook: 14,\r\n Certificate: 15,\r\n OfflineAccount: 16,\r\n \r\n QrCodePin: 18,\r\n\r\n \r\n NoPreferredCredential: 1000\r\n};\r\n\r\nexports.RemoteNgcType =\r\n{\r\n PushNotification: 1,\r\n ListSessions: 3\r\n};\r\n\r\nexports.SessionPollingType =\r\n{\r\n Image: 1,\r\n Json: 2\r\n};\r\n\r\nexports.AgreementType =\r\n{\r\n Privacy: \"privacy\",\r\n Tou: \"tou\",\r\n Impressum: \"impressum\",\r\n A11yConforme: \"a11yConforme\"\r\n};\r\n\r\n\r\nexports.ApiErrorCodes =\r\n{\r\n \r\n GeneralError: 6000,\r\n AuthFailure: 6001,\r\n InvalidArgs: 6002,\r\n\r\n \r\n Generic: 8000,\r\n Timeout: 8001,\r\n Aborted: 8002\r\n};\r\n\r\nexports.DefaultRequestTimeout = 30000;\r\n\r\n\r\n\r\n\r\n\r\nPROOF =\r\n{\r\n Type:\r\n {\r\n Email: 1,\r\n AltEmail: 2,\r\n SMS: 3,\r\n DeviceId: 4,\r\n CSS: 5,\r\n SQSA: 6,\r\n Certificate: 7,\r\n HIP: 8,\r\n Birthday: 9,\r\n TOTPAuthenticator: 10,\r\n RecoveryCode: 11,\r\n StrongTicket: 13,\r\n TOTPAuthenticatorV2: 14,\r\n TwoWayVoice: 15,\r\n TwoWaySMS: 16,\r\n FidoKey: 17,\r\n AccessPass: 18,\r\n TransferToken: 19,\r\n CompanionApp: 21,\r\n ExternalAuth: 22,\r\n ConsolidatedTelephony: 23,\r\n Voice: -3\r\n }\r\n};\r\n\r\nexports.ContentType =\r\n{\r\n Json: \"application/json; charset=utf-8\",\r\n FormUrlEncoded: \"application/x-www-form-urlencoded\"\r\n};\r\n\r\nexports.BindProvider =\r\n{\r\n LinkedIn: 0,\r\n GitHub: 1,\r\n Google: 2,\r\n Samsung: 3,\r\n Facebook: 4\r\n};\r\n\r\nexports.PromotedAltCredFlags =\r\n{\r\n None: 0,\r\n GitHub: 1 << 0,\r\n LinkedIn: 2 << 0\r\n};\r\n\r\nexports.EnvironmentName =\r\n{\r\n Internal: 1,\r\n TestSlice: 2,\r\n FirstSlice: 3\r\n};\r\n\r\nexports.AnimationState =\r\n{\r\n Begin: 0,\r\n End: -1,\r\n RenderNewView: 1,\r\n AnimateNewView: 2\r\n};\r\n\r\nexports.AnimationName =\r\n{\r\n None: 0,\r\n SlideOutNext: 1,\r\n SlideInNext: 2,\r\n SlideOutBack: 3,\r\n SlideInBack: 4\r\n};\r\n\r\nexports.DialogId =\r\n{\r\n None: 0,\r\n FidoHelp: 1,\r\n GitHubHelp: 2,\r\n ConsentAppInfo: 3,\r\n QrCodePinHelp: 4\r\n};\r\n\r\nexports.KeyCode =\r\n{\r\n Tab: 9,\r\n Enter: 13,\r\n Escape: 27,\r\n Space: 32,\r\n PageUp: 33,\r\n PageDown: 34,\r\n End: 35,\r\n Home: 36,\r\n ArrowUp: 38,\r\n ArrowDown: 40,\r\n WinKeyLeft: 91,\r\n F6: 117,\r\n GamePadB: 196\r\n};\r\n\r\nexports.ProofOfPossession =\r\n{\r\n AuthenticatorKey: \"cpa\",\r\n CanaryTokenKey: \"canary\",\r\n MethodHint: \"cpa_method_hint\"\r\n};\r\n\r\nexports.UpgradeMigrationUXId =\r\n{\r\n Invalid: 0,\r\n Mojang: 1\r\n};\r\n\r\nexports.TransferLoginStringsVariant =\r\n{\r\n Default: 0,\r\n Mmx: 1,\r\n MmxPhoneFirst: 2,\r\n AppNameOnly: 3,\r\n AppNameAndUsername: 4,\r\n MmxGe: 5,\r\n OutlookMobileCustom: 6,\r\n TeamsMobileCustom: 7\r\n};\r\n\r\nexports.LayoutTemplateType =\r\n{\r\n Lightbox: 0,\r\n VerticalSplit: 1\r\n};\r\n\r\nexports.StringCustomizationPageId =\r\n{\r\n ConditionalAccess: 0,\r\n AttributeCollection: 1,\r\n MessagePage: 2,\r\n ProofUpPage: 3,\r\n ErrorPage: 4,\r\n LoginPage: 5\r\n};\r\n\r\nexports.ProofUpRedirectViewType =\r\n{\r\n DefaultProofUpRedirectView: 0,\r\n AuthAppProofUpRedirectView: 1\r\n};\r\n\r\nexports.ConfirmationInputDisplayType =\r\n{\r\n None: 0,\r\n Retype: 1,\r\n RetypeWithReveal: 2\r\n};\r\n\r\nexports.SecurityDefaultsUpsellAction =\r\n{\r\n None: 0,\r\n Upsell: 1,\r\n AutoEnable: 2,\r\n AutoEnableAfterPrompt: 3,\r\n ReevaluateLegacy: 4,\r\n AutoEnabledNotify: 5\r\n};\r\n\r\nexports.Branding =\r\n{\r\n DefaultBackgroundColor: \"#FAF9F8\"\r\n};\r\n\r\nexports.CredentialDeviceType =\r\n{\r\n SingleDevice: \"singleDevice\",\r\n MultiDevice: \"multiDevice\"\r\n};\r\n\r\nexports.AttestationParseError =\r\n{\r\n Unknown: 1,\r\n InvalidAuthDataSize: 2,\r\n SingleDeviceBackedUp: 3,\r\n CBORDataEmpty: 4\r\n};\r\n\r\nexports.ExternalFederatedIdpType =\r\n{\r\n \r\n Google: 50,\r\n Facebook: 51,\r\n Apple: 200,\r\n GitHub: 400\r\n};\r\n\r\n\r\nexports.CameraMode =\r\n{\r\n Environment: \"environment\",\r\n User: \"user\",\r\n Back: \"back\"\r\n};\r\n\r\nexports.SignInIdentifierTypes =\r\n{\r\n UPN: 0,\r\n Email: 1,\r\n Username: 2,\r\n CustomUsername: 3\r\n};\r\n\r\nexports.OfficeHrdAppId = \"176\";\r\n","var FidoConstants = require(\"./FidoConstants\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar Promise = require(\"./Promise\");\r\nvar PromiseHelpers = require(\"./PromiseHelpers\");\r\n\r\nvar ObjectHelpers = Helpers.Object;\r\nvar StringHelpers = Helpers.String;\r\nvar ArrayHelpers = Helpers.Array;\r\n\r\nvar w = window;\r\nvar isEdge = null;\r\nvar isIEOlderThan = {};\r\nvar isFirefoxNewerThan = {};\r\nvar isChromeNewerThan = {};\r\nvar isChrome = null;\r\nvar isIOSSafari = null;\r\nvar isIOSUIWebView = null;\r\nvar isQtCarBrowser = null;\r\nvar isEdgeClientBrowser = null;\r\nvar isHighContrast = null;\r\nvar isPlaceholderAttributeAllowed = null;\r\nvar isHistorySupported = null;\r\nvar useSameSite = !!w.ServerData.fUseSameSite;\r\nvar isSvgSupported = null;\r\n\r\nexports.HttpCode =\r\n{\r\n Ok: 200,\r\n NotModified: 304,\r\n Timeout: 408,\r\n ClientClosedRequest: 499\r\n};\r\n\r\nvar BrowserHelper = exports.Helper =\r\n{\r\n isIEOlderThan: function (version)\r\n {\r\n if (isIEOlderThan[version] === undefined)\r\n {\r\n var ieVersion = BrowserHelper.getIEVersion();\r\n isIEOlderThan[version] = ieVersion && (ieVersion < version + 1);\r\n }\r\n\r\n return isIEOlderThan[version];\r\n },\r\n\r\n isEdge: function ()\r\n {\r\n if (isEdge === null)\r\n {\r\n isEdge = false;\r\n\r\n var windowsVersion = BrowserHelper.getWindowsVersion();\r\n if (windowsVersion !== null && windowsVersion >= 10.0) \r\n {\r\n var ieVersion = BrowserHelper.getIEVersion();\r\n isEdge = ieVersion !== null && ieVersion >= 12; \r\n }\r\n }\r\n\r\n return isEdge;\r\n },\r\n\r\n isChrome: function ()\r\n {\r\n if (isChrome === null)\r\n {\r\n isChrome = navigator.userAgent.toLowerCase().indexOf(\"chrome\") > -1;\r\n }\r\n\r\n return isChrome;\r\n },\r\n\r\n isFirefoxNewerThan: function (version)\r\n {\r\n if (isFirefoxNewerThan[version] === undefined)\r\n {\r\n var firefoxVersion = BrowserHelper.getFirefoxVersion();\r\n isFirefoxNewerThan[version] = firefoxVersion && (firefoxVersion > version);\r\n }\r\n\r\n return isFirefoxNewerThan[version];\r\n },\r\n\r\n isChromeNewerThan: function (version)\r\n {\r\n if (isChromeNewerThan[version] === undefined)\r\n {\r\n var chromeVersion = BrowserHelper.getChromeVersion();\r\n isChromeNewerThan[version] = chromeVersion && (chromeVersion > version);\r\n }\r\n\r\n return isChromeNewerThan[version];\r\n },\r\n\r\n isIOSSafari: function ()\r\n {\r\n if (isIOSSafari === null)\r\n {\r\n var userAgent = w.navigator.userAgent.toLowerCase();\r\n isIOSSafari = /safari/.test(userAgent) &&\r\n /iphone|ipod|ipad/.test(userAgent) && !w.MSStream;\r\n }\r\n\r\n return isIOSSafari;\r\n },\r\n\r\n isIOSUIWebView: function ()\r\n {\r\n if (isIOSUIWebView === null)\r\n {\r\n \r\n \r\n var userAgent = w.navigator.userAgent.toLowerCase();\r\n isIOSUIWebView = /safari/.test(userAgent) === false &&\r\n /iphone|ipod|ipad/.test(userAgent) && !w.MSStream;\r\n }\r\n\r\n return isIOSUIWebView;\r\n },\r\n\r\n isQtCarBrowser: function ()\r\n {\r\n \r\n if (isQtCarBrowser === null)\r\n {\r\n isQtCarBrowser = navigator.userAgent.toLowerCase().indexOf(\"qtcarbrowser\") > -1;\r\n }\r\n\r\n return isQtCarBrowser;\r\n },\r\n\r\n isEdgeClientBrowser: function ()\r\n {\r\n if (isEdgeClientBrowser === null)\r\n {\r\n \r\n \r\n \r\n isEdgeClientBrowser = navigator.userAgent.toLowerCase().indexOf(\"edgeclient/\") > -1;\r\n }\r\n\r\n return isEdgeClientBrowser;\r\n },\r\n\r\n isOnTouchStartEventSupported: function ()\r\n {\r\n return \"ontouchstart\" in document.documentElement;\r\n },\r\n\r\n getIEVersion: function ()\r\n {\r\n \r\n var ua = w.navigator.userAgent;\r\n\r\n var msie = ua.indexOf(\"MSIE \");\r\n if (msie > 0)\r\n {\r\n \r\n return parseInt(ua.substring(msie + 5, ua.indexOf(\".\", msie)), 10);\r\n }\r\n\r\n var trident = ua.indexOf(\"Trident/\");\r\n if (trident > 0)\r\n {\r\n \r\n var rv = ua.indexOf(\"rv:\");\r\n return parseInt(ua.substring(rv + 3, ua.indexOf(\".\", rv)), 10);\r\n }\r\n\r\n var edge = ua.indexOf(\"Edge/\");\r\n if (edge > 0)\r\n {\r\n \r\n return parseInt(ua.substring(edge + 5, ua.indexOf(\".\", edge)), 10);\r\n }\r\n\r\n \r\n return null;\r\n },\r\n\r\n getFirefoxVersion: function ()\r\n {\r\n \r\n var ua = w.navigator.userAgent;\r\n\r\n var match = ua.match(/(firefox(?=\\/))\\/?\\s*(\\d+)/i);\r\n if (match && match.length === 3 && match[1].toLowerCase() === \"firefox\")\r\n {\r\n return parseInt(match[2]);\r\n }\r\n\r\n return null;\r\n },\r\n\r\n getChromeVersion: function ()\r\n {\r\n \r\n var ua = w.navigator.userAgent;\r\n\r\n var match = ua.match(/(chrome(?=\\/))\\/?\\s*(\\d+)/i);\r\n if (match && match.length === 3 && match[1].toLowerCase() === \"chrome\")\r\n {\r\n return parseInt(match[2]);\r\n }\r\n\r\n return null;\r\n },\r\n\r\n getWindowsVersion: function ()\r\n {\r\n if (new RegExp(\"Windows NT ([0-9]{1,}[.0-9]{0,})\").exec(navigator.userAgent) !== null)\r\n {\r\n return parseFloat(RegExp.$1);\r\n }\r\n\r\n return null;\r\n },\r\n\r\n htmlEscape: function (text)\r\n {\r\n if (!text)\r\n {\r\n return \"\";\r\n }\r\n\r\n var textArea = document.createElement(\"textarea\");\r\n textArea.innerText = text;\r\n\r\n return textArea.innerHTML;\r\n },\r\n\r\n htmlUnescape: function (html)\r\n {\r\n \r\n \r\n\r\n if (!html)\r\n {\r\n return \"\";\r\n }\r\n\r\n \r\n \r\n if (html.match(/<[^<>]+>/))\r\n {\r\n return html;\r\n }\r\n\r\n var textArea = document.createElement(\"textarea\");\r\n textArea.innerHTML = html;\r\n\r\n return textArea.value;\r\n },\r\n\r\n getStackSize: function (maxUpperLimitOfStackSize)\r\n {\r\n var stackSize = 0;\r\n var isUnlimited = typeof maxUpperLimitOfStackSize === \"undefined\" || maxUpperLimitOfStackSize === null;\r\n\r\n function recurse()\r\n {\r\n stackSize++;\r\n if (isUnlimited || stackSize <= maxUpperLimitOfStackSize)\r\n {\r\n recurse();\r\n }\r\n }\r\n\r\n try\r\n {\r\n recurse();\r\n }\r\n catch (e)\r\n {\r\n }\r\n\r\n return stackSize;\r\n },\r\n\r\n getAnimationEndEventName: function ()\r\n {\r\n var testDiv = document.createElement(\"div\");\r\n var animations =\r\n {\r\n \"animation\": \"animationend\",\r\n \"OAnimation\": \"oAnimationEnd\",\r\n \"MozAnimation\": \"animationend\",\r\n \"WebkitAnimation\": \"webkitAnimationEnd\"\r\n };\r\n\r\n for (var key in animations)\r\n {\r\n \r\n if (testDiv.style[key] !== undefined)\r\n {\r\n return animations[key];\r\n }\r\n }\r\n\r\n return \"\";\r\n },\r\n\r\n isStackSizeGreaterThan: function (stackSize)\r\n {\r\n stackSize = stackSize || 0;\r\n return BrowserHelper.getStackSize(stackSize) > stackSize;\r\n },\r\n\r\n isSvgImgSupported: function ()\r\n {\r\n if (isSvgSupported === null)\r\n {\r\n \r\n \r\n isSvgSupported = document.implementation.hasFeature(\"http://www.w3.org/TR/SVG11/feature#Image\", \"1.1\");\r\n }\r\n\r\n return isSvgSupported;\r\n },\r\n\r\n isPlaceholderAttributeAllowed: function (isHosted)\r\n {\r\n if (isPlaceholderAttributeAllowed === null)\r\n {\r\n \r\n isPlaceholderAttributeAllowed = BrowserHelper.isChromeNewerThan(16)\r\n || BrowserHelper.isEdge()\r\n || BrowserHelper.isFirefoxNewerThan(14)\r\n || (isHosted && BrowserHelper.isIOSUIWebView())\r\n || BrowserHelper.isIOSSafari()\r\n || BrowserHelper.isQtCarBrowser();\r\n }\r\n\r\n return isPlaceholderAttributeAllowed;\r\n },\r\n\r\n isCSSAnimationSupported: function ()\r\n {\r\n var supported = false;\r\n var prefixes = [\"Webkit\", \"Moz\", \"O\"];\r\n var testDiv = document.createElement(\"div\");\r\n\r\n supported = testDiv.style.animationName !== undefined;\r\n\r\n if (!supported)\r\n {\r\n var supportedPrefix = ArrayHelpers.first(\r\n prefixes,\r\n function (prefix)\r\n {\r\n return testDiv.style[prefix + \"AnimationName\"] !== undefined;\r\n });\r\n\r\n \r\n \r\n \r\n supported = !!supportedPrefix;\r\n }\r\n\r\n return supported;\r\n },\r\n\r\n isStyleSupported: function (styleName)\r\n {\r\n return styleName in document.documentElement.style;\r\n },\r\n\r\n isCORSSupported: function ()\r\n {\r\n return w.XDomainRequest || (w.XMLHttpRequest && \"withCredentials\" in new XMLHttpRequest());\r\n },\r\n\r\n isHistorySupported: function ()\r\n {\r\n if (isHistorySupported === null)\r\n {\r\n var dummyState = \"__history_test\";\r\n isHistorySupported = w.history && w.history.pushState && typeof w.history.state !== \"undefined\" && typeof w.onpopstate !== \"undefined\";\r\n\r\n if (isHistorySupported)\r\n {\r\n try\r\n {\r\n w.history.replaceState(dummyState, \"\");\r\n\r\n if (w.history.state !== dummyState)\r\n {\r\n \r\n isHistorySupported = false;\r\n }\r\n else if (BrowserHelper.isEdgeClientBrowser())\r\n {\r\n isHistorySupported = false;\r\n }\r\n }\r\n catch (e)\r\n {\r\n \r\n isHistorySupported = false;\r\n }\r\n }\r\n }\r\n\r\n return isHistorySupported;\r\n },\r\n\r\n isFidoSupportedAsync: function (isFidoSupportedHint, skipStandardSupportCheck)\r\n {\r\n \r\n if (!skipStandardSupportCheck)\r\n {\r\n var supportsStandard = w.navigator.credentials !== undefined\r\n && w.navigator.credentials.create !== undefined\r\n && w.navigator.credentials.get !== undefined\r\n && w.PublicKeyCredential !== undefined\r\n && w.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable !== undefined;\r\n\r\n if (!supportsStandard)\r\n {\r\n \r\n return Promise.resolve(false);\r\n }\r\n\r\n if (w.PublicKeyCredential.isExternalCTAP2SecurityKeySupported)\r\n {\r\n \r\n return PromiseHelpers.newPromiseWithTimeout(w.PublicKeyCredential.isExternalCTAP2SecurityKeySupported, FidoConstants.PromiseTimeout, false);\r\n }\r\n }\r\n\r\n \r\n return Promise.resolve(isFidoSupportedHint);\r\n },\r\n\r\n isChangingInputTypeSupported: function ()\r\n {\r\n return !BrowserHelper.isIEOlderThan(9);\r\n },\r\n\r\n getComputedSpan: function ()\r\n {\r\n var span = document.createElement(\"span\");\r\n span.style.borderLeftColor = \"red\";\r\n span.style.borderRightColor = \"blue\";\r\n span.style.backgroundColor = \"Window\";\r\n span.style.position = \"absolute\";\r\n span.style.top = \"-999px\";\r\n document.body.appendChild(span);\r\n\r\n var computedStyle = BrowserHelper.getComputedStyle(span);\r\n var borderLeftColor = computedStyle.borderLeftColor;\r\n var borderRightColor = computedStyle.borderRightColor;\r\n var backgroundColor = computedStyle.backgroundColor;\r\n\r\n document.body.removeChild(span);\r\n\r\n return {\r\n borderLeftColor: borderLeftColor,\r\n borderRightColor: borderRightColor,\r\n backgroundColor: backgroundColor\r\n };\r\n },\r\n\r\n isHighContrast: function ()\r\n {\r\n \r\n \r\n \r\n\r\n if (isHighContrast === null)\r\n {\r\n var style = BrowserHelper.getComputedSpan();\r\n isHighContrast = style.borderLeftColor === style.borderRightColor;\r\n\r\n \r\n \r\n \r\n if (!isHighContrast)\r\n {\r\n isHighContrast = BrowserHelper.getIsHighContrastUsingCssMediaQuery().isHighContrast;\r\n }\r\n }\r\n\r\n return isHighContrast;\r\n },\r\n\r\n getIsHighContrastUsingCssMediaQuery: function ()\r\n {\r\n var head = document.getElementsByTagName(\"head\")[0];\r\n var headStyle = document.createElement(\"style\");\r\n headStyle.innerHTML =\r\n \"@media (-ms-high-contrast: active) {\" +\r\n \" .high-contrast-detection::before {\" +\r\n \" content: \\\"active\\\";\" +\r\n \" display: none;\" +\r\n \" }\" +\r\n \"}\" +\r\n \"@media (-ms-high-contrast: black-on-white) {\" +\r\n \" .high-contrast-detection::before {\" +\r\n \" content: \\\"white\\\";\" +\r\n \" display: none;\" +\r\n \" }\" +\r\n \"}\" +\r\n \"@media (-ms-high-contrast: white-on-black) {\" +\r\n \" .high-contrast-detection::before {\" +\r\n \" content: \\\"black\\\";\" +\r\n \" display: none;\" +\r\n \" }\" +\r\n \"}\";\r\n\r\n head.appendChild(headStyle);\r\n\r\n var div = document.createElement(\"div\");\r\n div.className = \"high-contrast-detection\";\r\n document.body.appendChild(div);\r\n\r\n var computedContent = window.getComputedStyle(div, \"::before\").content;\r\n var theme = \"\";\r\n\r\n if (computedContent === \"\\\"black\\\"\")\r\n {\r\n theme = \"black\";\r\n }\r\n else if (computedContent === \"\\\"white\\\"\")\r\n {\r\n theme = \"white\";\r\n }\r\n\r\n document.body.removeChild(div);\r\n head.removeChild(headStyle);\r\n\r\n return {\r\n isHighContrast: [\"\\\"active\\\"\", \"\\\"black\\\"\", \"\\\"white\\\"\"].indexOf(computedContent) !== -1,\r\n theme: theme\r\n };\r\n },\r\n\r\n getHighContrastTheme: function ()\r\n {\r\n function doesColorMatchAnyList(colorString, rgbList, nonRgbList)\r\n {\r\n function isRgbOrRgbaMatch(color, r, g, b)\r\n {\r\n \r\n \r\n var pattern = new RegExp(\"^rgba?\\\\(\" + r + \",\\\\s?\" + g + \",\\\\s?\" + b + \"(,\\\\s?\\\\d+\\\\.?\\\\d*)?\\\\)$\", \"i\");\r\n return pattern.test(color.trim());\r\n }\r\n\r\n \r\n for (var i = 0; i < rgbList.length; i++)\r\n {\r\n var rgbValues = rgbList[i].split(\",\").map(Number);\r\n var r = rgbValues[0];\r\n var g = rgbValues[1];\r\n var b = rgbValues[2];\r\n\r\n if (isRgbOrRgbaMatch(colorString, r, g, b))\r\n {\r\n return true;\r\n }\r\n }\r\n\r\n \r\n var foundColorMatch = ArrayHelpers.first(\r\n nonRgbList,\r\n function (nonRgbColor)\r\n {\r\n return nonRgbColor === colorString.trim();\r\n });\r\n\r\n return !!foundColorMatch;\r\n }\r\n\r\n if (BrowserHelper.isHighContrast())\r\n {\r\n var style = BrowserHelper.getComputedSpan();\r\n if (style.backgroundColor)\r\n {\r\n var backgroundColor = style.backgroundColor.toLowerCase().replace(new RegExp(\" \", \"g\"), \"\");\r\n var isBlackHighContrastTheme = doesColorMatchAnyList(backgroundColor, [\"0,0,0\"], [\"#000000\", \"#000\"]);\r\n var isWhiteHighContrastTheme = doesColorMatchAnyList(backgroundColor, [\"255,255,255\"], [\"#ffffff\", \"#fff\"]);\r\n var isAquaticTheme = doesColorMatchAnyList(backgroundColor, [\"32,32,32\"], [\"#202020\"]);\r\n var isDuskTheme = doesColorMatchAnyList(backgroundColor, [\"45,50,54\"], [\"#2d3236\"]);\r\n var isDesertTheme = doesColorMatchAnyList(backgroundColor, [\"255,250,239\"], [\"#fffaef\"]);\r\n\r\n if (isBlackHighContrastTheme || isAquaticTheme || isDuskTheme)\r\n {\r\n return \"black\";\r\n }\r\n else if (isWhiteHighContrastTheme || isDesertTheme)\r\n {\r\n return \"white\";\r\n }\r\n\r\n return BrowserHelper.getIsHighContrastUsingCssMediaQuery().theme;\r\n }\r\n }\r\n },\r\n\r\n getComputedStyle: function (element)\r\n {\r\n if (document.defaultView && document.defaultView.getComputedStyle)\r\n {\r\n return document.defaultView.getComputedStyle(element, null);\r\n }\r\n else if (element.currentStyle)\r\n {\r\n return element.currentStyle;\r\n }\r\n\r\n return {};\r\n },\r\n\r\n history:\r\n {\r\n pushState: function (state, title)\r\n {\r\n if (BrowserHelper.isHistorySupported())\r\n {\r\n w.history.pushState(state, title);\r\n }\r\n },\r\n replaceState: function (state, title)\r\n {\r\n if (BrowserHelper.isHistorySupported())\r\n {\r\n w.history.replaceState(state, title);\r\n }\r\n }\r\n },\r\n\r\n addEventListener: function (element, eventType, handler, useCapture)\r\n {\r\n if (element.addEventListener)\r\n {\r\n element.addEventListener(eventType, handler, useCapture);\r\n }\r\n else if (element.attachEvent)\r\n {\r\n element.attachEvent(\"on\" + eventType, handler);\r\n }\r\n },\r\n\r\n removeEventListener: function (element, eventType, handler, useCapture)\r\n {\r\n if (element.removeEventListener)\r\n {\r\n element.removeEventListener(eventType, handler, useCapture);\r\n }\r\n else if (element.detachEvent)\r\n {\r\n element.detachEvent(\"on\" + eventType, handler);\r\n }\r\n },\r\n\r\n getEventTarget: function (event)\r\n {\r\n if (!event)\r\n {\r\n return null;\r\n }\r\n\r\n if (event.target)\r\n {\r\n return event.target;\r\n }\r\n\r\n if (event.srcElement)\r\n {\r\n return event.srcElement;\r\n }\r\n\r\n return null;\r\n }\r\n};\r\n\r\nvar QueryStringHelper = exports.QueryString =\r\n{\r\n \r\n\r\n \r\n parse: function (url)\r\n {\r\n var originAndPath = url;\r\n var query = null;\r\n var fragment = null;\r\n\r\n if (url)\r\n {\r\n var queryStartIndex = url.indexOf(\"?\");\r\n var fragmentStartIndex = url.indexOf(\"#\");\r\n\r\n if (fragmentStartIndex !== -1\r\n && (queryStartIndex === -1 || fragmentStartIndex < queryStartIndex))\r\n {\r\n \r\n originAndPath = url.substring(0, fragmentStartIndex);\r\n fragment = StringHelpers.doubleSplit(url.substring(fragmentStartIndex + 1), \"&\", \"=\");\r\n }\r\n else if (queryStartIndex !== -1 && fragmentStartIndex === -1)\r\n {\r\n \r\n originAndPath = url.substring(0, queryStartIndex);\r\n query = StringHelpers.doubleSplit(url.substring(queryStartIndex + 1), \"&\", \"=\");\r\n }\r\n else if (queryStartIndex !== -1 && fragmentStartIndex !== -1)\r\n {\r\n \r\n originAndPath = url.substring(0, queryStartIndex);\r\n query = StringHelpers.doubleSplit(url.substring(queryStartIndex + 1, fragmentStartIndex), \"&\", \"=\");\r\n fragment = StringHelpers.doubleSplit(url.substring(fragmentStartIndex + 1), \"&\", \"=\");\r\n }\r\n }\r\n\r\n var parsedUrl =\r\n {\r\n originAndPath: originAndPath,\r\n query: query,\r\n fragment: fragment\r\n };\r\n\r\n return parsedUrl;\r\n },\r\n\r\n \r\n join: function (parsedUrl)\r\n {\r\n var url = parsedUrl.originAndPath || \"\";\r\n\r\n if (parsedUrl.query)\r\n {\r\n url += \"?\" + ObjectHelpers.join(parsedUrl.query, \"&\", \"=\");\r\n }\r\n\r\n if (parsedUrl.fragment)\r\n {\r\n url += \"#\" + ObjectHelpers.join(parsedUrl.fragment, \"&\", \"=\");\r\n }\r\n\r\n return url;\r\n },\r\n\r\n \r\n appendCurrentQueryParameterIfNotExist: function (url)\r\n {\r\n var currentUrlFullQueryString = QueryStringHelper.parse(window.location.href);\r\n\r\n ObjectHelpers.forEach(currentUrlFullQueryString.query,\r\n function (key, value)\r\n {\r\n url = QueryStringHelper.addIfNotExist(url, key, value);\r\n });\r\n\r\n return url;\r\n },\r\n\r\n \r\n append: function (url, queryString)\r\n {\r\n var parsedUrl = QueryStringHelper.parse(url);\r\n var params = StringHelpers.doubleSplit(queryString, \"&\", \"=\");\r\n\r\n parsedUrl.query = parsedUrl.query || {};\r\n\r\n ObjectHelpers.forEach(\r\n params,\r\n function (key, value)\r\n {\r\n parsedUrl.query[key] = value || null;\r\n });\r\n\r\n return QueryStringHelper.join(parsedUrl);\r\n },\r\n\r\n \r\n addIfNotExist: function (url, key, value)\r\n {\r\n value = value || \"\";\r\n\r\n var parsedUrl = QueryStringHelper.parse(url);\r\n if (ObjectHelpers.findOwnProperty(parsedUrl.query || {}, key, true) === null)\r\n {\r\n parsedUrl.query = parsedUrl.query || {};\r\n parsedUrl.query[key.toLowerCase()] = value;\r\n }\r\n\r\n return QueryStringHelper.join(parsedUrl);\r\n },\r\n\r\n \r\n add: function (url, keyValuePairs)\r\n {\r\n var parsedUrl = QueryStringHelper.parse(url);\r\n if (url && keyValuePairs && keyValuePairs.length)\r\n {\r\n parsedUrl.query = parsedUrl.query || {};\r\n\r\n ArrayHelpers.forEach(\r\n keyValuePairs,\r\n function (keyValuePair)\r\n {\r\n parsedUrl.query[keyValuePair[0]] = keyValuePair[1];\r\n });\r\n }\r\n\r\n return QueryStringHelper.join(parsedUrl);\r\n },\r\n\r\n \r\n addFragment: function (url, keyValuePairs)\r\n {\r\n var parsedUrl = \"\";\r\n if (url && keyValuePairs && keyValuePairs.length)\r\n {\r\n parsedUrl = QueryStringHelper.parse(url);\r\n parsedUrl.fragment = parsedUrl.fragment || {};\r\n var uniqueKey = [];\r\n ArrayHelpers.forEach(\r\n keyValuePairs,\r\n function (keyValuePair)\r\n {\r\n if (!uniqueKey.includes(keyValuePair[0]))\r\n {\r\n parsedUrl.fragment[keyValuePair[0]] = keyValuePair[1];\r\n uniqueKey.push(keyValuePair[0]);\r\n }\r\n });\r\n }\r\n\r\n return parsedUrl;\r\n },\r\n\r\n \r\n appendOrReplace: function (url, param, value, maxLength)\r\n {\r\n var parsedUrl = QueryStringHelper.parse(url);\r\n parsedUrl.query = parsedUrl.query || {};\r\n\r\n var existingParam = ObjectHelpers.findOwnProperty(parsedUrl.query, param, true);\r\n if (existingParam)\r\n {\r\n delete parsedUrl.query[existingParam];\r\n }\r\n\r\n parsedUrl.query[param.toLowerCase()] = value;\r\n\r\n var modifiedUrl = QueryStringHelper.join(parsedUrl);\r\n return (maxLength && modifiedUrl.length > maxLength) ? url : modifiedUrl;\r\n },\r\n\r\n \r\n remove: function (url, param)\r\n {\r\n var parsedUrl = QueryStringHelper.parse(url);\r\n parsedUrl.query = parsedUrl.query || {};\r\n\r\n var existingParam = ObjectHelpers.findOwnProperty(parsedUrl.query, param, true);\r\n if (existingParam)\r\n {\r\n delete parsedUrl.query[existingParam];\r\n }\r\n\r\n return QueryStringHelper.join(parsedUrl);\r\n },\r\n\r\n \r\n extract: function (param, urlOrQueryString)\r\n {\r\n if (!urlOrQueryString && urlOrQueryString !== \"\")\r\n {\r\n urlOrQueryString = document.location.search;\r\n }\r\n\r\n var parsedUrl = QueryStringHelper.parse(urlOrQueryString);\r\n parsedUrl.query = parsedUrl.query || {};\r\n\r\n var existingParam = ObjectHelpers.findOwnProperty(parsedUrl.query, param, true);\r\n return existingParam ? parsedUrl.query[existingParam] : \"\";\r\n },\r\n\r\n \r\n appendOrReplaceFromCurrentUrl: function (url, param)\r\n {\r\n var currentValue = QueryStringHelper.extract(param);\r\n return currentValue ? QueryStringHelper.appendOrReplace(url, param, currentValue) : url;\r\n },\r\n\r\n \r\n stripQueryStringAndFragment: function (url)\r\n {\r\n return QueryStringHelper.parse(url).originAndPath;\r\n }\r\n};\r\n\r\nvar CookieHelpers = exports.Cookies =\r\n{\r\n expireDate: \"Thu, 30-Oct-1980 16:00:00 GMT\",\r\n persistTTLDays: 390, \r\n cookieSafeRegex: /^[\\u0021\\u0023-\\u002B\\u002D-\\u003A\\u003C-\\u005B\\u005D-\\u007E]+$/,\r\n\r\n enabled: function ()\r\n {\r\n var date = new Date();\r\n var cookieValue = \"G\" + date.getTime();\r\n var cookieName = \"CkTst\";\r\n\r\n CookieHelpers.write(cookieName, cookieValue);\r\n var cookiesEnabled = !!CookieHelpers.getCookie(cookieName);\r\n CookieHelpers.remove(cookieName);\r\n\r\n return cookiesEnabled;\r\n },\r\n\r\n getCookies: function ()\r\n {\r\n return StringHelpers.doubleSplit(document.cookie, \";\", \"=\", false, StringHelpers.trim);\r\n },\r\n\r\n getCookie: function (name)\r\n {\r\n var cookies = CookieHelpers.getCookies();\r\n\r\n if (cookies[name])\r\n {\r\n return cookies[name];\r\n }\r\n\r\n return null;\r\n },\r\n\r\n getObject: function (name)\r\n {\r\n var cookie = CookieHelpers.getCookie(name) || \"\";\r\n\r\n return StringHelpers.doubleSplit(cookie, \"&\", \"=\");\r\n },\r\n\r\n remove: function (name, domain, path)\r\n {\r\n var domainName = domain || document.location.hostname;\r\n var hostParts = domainName.split(\".\");\r\n var partCount = hostParts.length;\r\n\r\n var cookieDomain = hostParts[partCount - 2] + \".\" + hostParts[partCount - 1];\r\n var cookiePath = path || \"/\";\r\n var secure = (document.location.protocol === \"https:\");\r\n var secureContent = secure ? \";secure\" : \"\";\r\n var sameSiteContent = CookieHelpers.getDefaultSameSiteAttribute(secure);\r\n document.cookie = StringHelpers.format(\"{0}= ;domain=.{1};path={2};expires={3}{4}{5}\", name, cookieDomain, cookiePath, CookieHelpers.expireDate, secureContent, sameSiteContent);\r\n document.cookie = StringHelpers.format(\"{0}= ;domain=.{1};path={2};expires={3}{4}{5}\", name, domainName, cookiePath, CookieHelpers.expireDate, secureContent, sameSiteContent);\r\n },\r\n\r\n \r\n write: function (name, value, secure, persist, topLevel, addDomainPrefix, path, sameSite, chunk)\r\n {\r\n var prefix = addDomainPrefix ? \".\" : \"\";\r\n var parts = document.domain.split(\".\");\r\n\r\n if (topLevel)\r\n {\r\n parts.splice(0, Math.max(0, parts.length - 2));\r\n }\r\n\r\n var cookieDomain = prefix + parts.join(\".\");\r\n\r\n CookieHelpers.writeWithExpiration(name, value, secure, persist ? CookieHelpers.getPersistDate() : null, cookieDomain, path, sameSite, chunk);\r\n },\r\n\r\n \r\n writeWithExpiration: function (name, value, secure, expiresOn, domain, path, sameSite, chunk)\r\n {\r\n if (value === \"\")\r\n {\r\n CookieHelpers.remove(name, domain);\r\n }\r\n else\r\n {\r\n if (typeof value === \"object\")\r\n {\r\n value = ObjectHelpers.join(value, \"&\", \"=\");\r\n }\r\n\r\n var expiration = expiresOn ? (\";expires=\" + expiresOn) : \"\";\r\n var cookieDomain = domain ? (\";domain=\" + domain) : \"\";\r\n var cookiePath = path || \"/\";\r\n var secureContent = secure ? \";secure\" : \"\";\r\n\r\n \r\n var sameSiteContent;\r\n if (!sameSite || sameSite.toLowerCase() === \"none\")\r\n {\r\n sameSiteContent = CookieHelpers.getDefaultSameSiteAttribute(secure);\r\n }\r\n else\r\n {\r\n sameSiteContent = \";SameSite=\" + sameSite;\r\n }\r\n\r\n var attributes = StringHelpers.format(\"{0};path={1}{2}{3}{4}\", cookieDomain, cookiePath, expiration, secureContent, sameSiteContent);\r\n\r\n if (!chunk)\r\n {\r\n var cookieToWrite = StringHelpers.format(\"{0}={1}{2}\", name, value, attributes);\r\n document.cookie = cookieToWrite;\r\n }\r\n else\r\n {\r\n \r\n var maxValueLen = 4000 - attributes.length - name.length - 1;\r\n var chunks = Math.ceil(value.length / maxValueLen);\r\n var cookies = CookieHelpers.getCookies();\r\n\r\n var i = 0;\r\n for (; i < chunks; i++)\r\n {\r\n var suffix = (i === 0) ? \"\" : i.toString();\r\n var chunkValue = value.substring(i * maxValueLen, (i + 1) * maxValueLen);\r\n var chunkToWrite = StringHelpers.format(\"{0}{1}={2}{3}\", name, suffix, chunkValue, attributes);\r\n document.cookie = chunkToWrite;\r\n }\r\n\r\n \r\n for (; ; i++)\r\n {\r\n var chunkName = name + i.toString();\r\n if (!cookies[chunkName])\r\n {\r\n break;\r\n }\r\n\r\n CookieHelpers.remove(chunkName, domain, path);\r\n }\r\n }\r\n }\r\n },\r\n\r\n \r\n isCookieSafeValue: function (str)\r\n {\r\n return CookieHelpers.cookieSafeRegex.test(str);\r\n },\r\n\r\n getDefaultSameSiteAttribute: function (secure)\r\n {\r\n if (secure && useSameSite)\r\n {\r\n return \";SameSite=None\";\r\n }\r\n\r\n return \"\";\r\n },\r\n\r\n getPersistDate: function ()\r\n {\r\n var date = new Date();\r\n date.setDate(date.getDate() + CookieHelpers.persistTTLDays);\r\n return date.toUTCString();\r\n }\r\n};","var w = window;\r\nvar document = w.document;\r\nvar documentMode = document.documentMode;\r\nvar navigator = w.navigator;\r\n\r\n(function ()\r\n{\r\n var ieVersion = null;\r\n var userAgent = navigator.userAgent;\r\n var userAgentOverride = null;\r\n\r\n var matches = userAgent.match(/MSIE ([^ ]+)/);\r\n if (matches)\r\n {\r\n ieVersion = parseInt(matches[1]);\r\n }\r\n\r\n \r\n \r\n if (typeof w.Symbol === \"function\" && userAgent.match(/AppleWebKit\\/601/))\r\n {\r\n w.Symbol = null;\r\n }\r\n\r\n \r\n \r\n \r\n \r\n \r\n if (ieVersion\r\n && documentMode\r\n && ieVersion !== documentMode\r\n && Object.defineProperty)\r\n {\r\n try\r\n {\r\n Object.defineProperty(\r\n navigator,\r\n \"userAgent\",\r\n {\r\n get: function ()\r\n {\r\n return userAgentOverride;\r\n }\r\n });\r\n\r\n userAgentOverride = userAgent.replace(/MSIE [^ ]+/, \"MSIE \" + documentMode + \".0\");\r\n module.exports = require(\"ko\");\r\n userAgentOverride = userAgent;\r\n }\r\n catch (e)\r\n {\r\n module.exports = require(\"ko\");\r\n }\r\n }\r\n else\r\n {\r\n module.exports = require(\"ko\");\r\n }\r\n})();","var ko = require(\"knockout\");\r\nvar JSON = require(\"JSON\");\r\nvar StringHelpersLite = require(\"../Strings/Helpers/StringHelpers\");\r\n\r\nvar w = window;\r\nvar c_MaxRecursionDepth = 3;\r\n\r\nvar ObjectHelpers = exports.Object =\r\n{\r\n \r\n assignRecursive: function ()\r\n {\r\n \r\n return ObjectHelpers.assignRecursiveWithCurrentDepth.apply(this, [1].concat(Array.prototype.slice.call(arguments)));\r\n },\r\n\r\n \r\n assignRecursiveWithCurrentDepth: function (currentDepth, target )\r\n {\r\n \r\n if (typeof currentDepth !== \"number\")\r\n {\r\n return;\r\n }\r\n\r\n \r\n for (var i = 2, n = arguments.length; i < n; i++)\r\n {\r\n var source = arguments[i];\r\n\r\n \r\n for (var prop in source)\r\n {\r\n \r\n if (Object.prototype.hasOwnProperty.call(source, prop) && source[prop] !== \"\")\r\n {\r\n \r\n if (typeof source[prop] === \"object\" && currentDepth <= c_MaxRecursionDepth)\r\n {\r\n target[prop] = target[prop] || {};\r\n ObjectHelpers.assignRecursiveWithCurrentDepth(++currentDepth, target[prop], source[prop]);\r\n }\r\n else\r\n {\r\n target[prop] = source[prop];\r\n }\r\n }\r\n }\r\n }\r\n\r\n return target;\r\n },\r\n\r\n clone: function (object)\r\n {\r\n var result = {};\r\n\r\n if (object)\r\n {\r\n result = JSON.parse(JSON.stringify(object));\r\n }\r\n\r\n return result;\r\n },\r\n\r\n join: function (object, delimeter, separator)\r\n {\r\n var result = \"\";\r\n\r\n if (object)\r\n {\r\n ObjectHelpers.forEach(\r\n object,\r\n function (key, value)\r\n {\r\n if (result)\r\n {\r\n result += delimeter;\r\n }\r\n\r\n result += key + separator + (value || \"\");\r\n });\r\n }\r\n\r\n return result;\r\n },\r\n\r\n forEach: function (obj, action)\r\n {\r\n ko.utils.objectForEach(obj, action);\r\n },\r\n\r\n findOwnProperty: function (object, propertyName, ignoreCase)\r\n {\r\n var propertyNameLower;\r\n if (ignoreCase)\r\n {\r\n propertyNameLower = propertyName.toLowerCase();\r\n }\r\n\r\n for (var key in object)\r\n {\r\n if (object.hasOwnProperty(key)\r\n && (key === propertyName || (ignoreCase && key.toLowerCase() === propertyNameLower)))\r\n {\r\n return key;\r\n }\r\n }\r\n\r\n return null;\r\n },\r\n\r\n extend: ko.utils.extend\r\n};\r\n\r\nvar StringHelpers = exports.String =\r\n{\r\n trim: function (str)\r\n {\r\n \r\n \r\n \r\n\r\n return str.replace(/^\\s+|\\s+$/g, \"\");\r\n },\r\n\r\n find: function (str, searchString, ignoreCase, startIndex)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n if (!str)\r\n {\r\n return -1;\r\n }\r\n\r\n if (ignoreCase)\r\n {\r\n return str.toLowerCase().indexOf(searchString.toLowerCase(), startIndex);\r\n }\r\n\r\n return str.indexOf(searchString, startIndex);\r\n },\r\n\r\n format: StringHelpersLite.format,\r\n\r\n doubleSplit: function (str, delimiterOne, delimiterTwo, multiValuedKeys, keyTransformFunc)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n var result = {};\r\n\r\n if (str)\r\n {\r\n ArrayHelpers.forEach(\r\n str.split(delimiterOne),\r\n function (item)\r\n {\r\n if (item)\r\n {\r\n var parts = item.split(delimiterTwo);\r\n var key = parts[0];\r\n if (keyTransformFunc)\r\n {\r\n key = keyTransformFunc(key);\r\n }\r\n\r\n if (parts.length === 1)\r\n {\r\n result[key] = null;\r\n }\r\n else if (multiValuedKeys)\r\n {\r\n result[key] = parts.slice(1);\r\n }\r\n else\r\n {\r\n result[key] = parts.slice(1).join(delimiterTwo);\r\n }\r\n }\r\n });\r\n }\r\n\r\n return result;\r\n },\r\n\r\n isEmailAddress: function (str)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n str = StringHelpers.trim(str);\r\n\r\n \r\n if (str.charAt(0) > \"~\" || str.indexOf(\" \") !== -1)\r\n {\r\n return false;\r\n }\r\n\r\n \r\n var atIndex = str.indexOf(\"@\");\r\n if (atIndex === -1 || str.indexOf(\".\", atIndex) === -1)\r\n {\r\n return false;\r\n }\r\n\r\n \r\n var parts = str.split(\"@\");\r\n if (parts.length > 2 || parts[0].length < 1 || parts[1].length < 2)\r\n {\r\n return false;\r\n }\r\n\r\n if (w.ServerData.fApplyAsciiRegexOnInput)\r\n {\r\n \r\n var asciiRegex = new RegExp(/^[\\x21-\\x7E]+$/);\r\n return !!str.match(asciiRegex);\r\n }\r\n\r\n return true;\r\n },\r\n\r\n isPhoneNumber: function (str)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n var digits = str.replace(/\\D+/g, \"\");\r\n\r\n return digits.length >= 4 && digits.length <= 50;\r\n },\r\n\r\n isSkypeName: function (str)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n str = StringHelpers.trim(str);\r\n var skypeRegex = new RegExp(/^[a-zA-Z][a-zA-Z0-9.,\\-_:']{0,128}$/);\r\n return !!str.match(skypeRegex);\r\n },\r\n\r\n extractDomain: function (str, removeDomainSuffix, includeDomainSeparator)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n if (!StringHelpers.isEmailAddress(str))\r\n {\r\n return str;\r\n }\r\n\r\n var domain = StringHelpers.trim(str).split(\"@\")[1];\r\n str = includeDomainSeparator ? \"@\" : \"\";\r\n\r\n if (removeDomainSuffix)\r\n {\r\n return str + domain.slice(0, domain.lastIndexOf(\".\") + 1);\r\n }\r\n\r\n return str + domain;\r\n },\r\n\r\n extractDomainFromUrl: function (url)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n\r\n if (url)\r\n {\r\n var element = document.createElement(\"a\");\r\n element.href = url;\r\n\r\n \r\n return element.hostname;\r\n }\r\n\r\n return \"\";\r\n },\r\n\r\n extractOriginFromUrl: function (url)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n\r\n if (url)\r\n {\r\n var element = document.createElement(\"a\");\r\n element.href = url;\r\n\r\n var origin = element.origin;\r\n if (!origin)\r\n {\r\n origin = element.protocol + \"//\" + element.hostname + (element.port ? \":\" + element.port : \"\");\r\n }\r\n\r\n return origin;\r\n }\r\n\r\n return \"\";\r\n },\r\n\r\n doOriginsMatch: function (requestUrl, responseOrigin)\r\n {\r\n \r\n \r\n var requestUrlOrigin = StringHelpers.extractOriginFromUrl(requestUrl);\r\n var dataOrigin = StringHelpers.extractOriginFromUrl(responseOrigin);\r\n\r\n return dataOrigin === requestUrlOrigin;\r\n },\r\n\r\n capFirst: function (str)\r\n {\r\n \r\n \r\n \r\n\r\n return str.charAt(0).toUpperCase() + str.slice(1);\r\n },\r\n\r\n cleanseUsername: function (str, preserveLeadingPlusSign)\r\n {\r\n \r\n \r\n \r\n\r\n if (!str)\r\n {\r\n return \"\";\r\n }\r\n\r\n str = StringHelpers.trim(str).toLowerCase();\r\n\r\n if (!StringHelpers.isEmailAddress(str) && !StringHelpers.isSkypeName(str) && StringHelpers.isPhoneNumber(str))\r\n {\r\n var prefix = \"\";\r\n if (preserveLeadingPlusSign && str.charAt(0) === \"+\")\r\n {\r\n prefix = \"+\";\r\n }\r\n\r\n return prefix + str.replace(/\\D+/g, \"\");\r\n }\r\n\r\n return str;\r\n },\r\n\r\n \r\n maskString: function (str, charsToKeep)\r\n {\r\n \r\n if (!str)\r\n {\r\n return \"\";\r\n }\r\n\r\n if (str.length <= charsToKeep * 2)\r\n {\r\n \r\n return str;\r\n }\r\n\r\n var len = str.length - (charsToKeep * 2);\r\n \r\n var masked = Array(len + 1).join(\"*\");\r\n var ret = str.substring(0, charsToKeep) + masked + str.substring(charsToKeep + len);\r\n return ret;\r\n },\r\n\r\n utf8Encode: function (input)\r\n {\r\n input = input.replace(/\\r\\n/g, \"\\n\");\r\n var utftext = \"\";\r\n\r\n for (var n = 0; n < input.length; n++)\r\n {\r\n var c = input.charCodeAt(n);\r\n\r\n if (c < 128)\r\n {\r\n utftext += String.fromCharCode(c);\r\n }\r\n else if ((c > 127) && (c < 2048))\r\n {\r\n utftext += String.fromCharCode((c >> 6) | 192);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n else\r\n {\r\n utftext += String.fromCharCode((c >> 12) | 224);\r\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n }\r\n\r\n return utftext;\r\n }\r\n};\r\n\r\nvar ArrayHelpers = exports.Array =\r\n{\r\n first: ko.utils.arrayFirst,\r\n forEach: ko.utils.arrayForEach,\r\n map: ko.utils.arrayMap,\r\n removeItem: ko.utils.arrayRemoveItem,\r\n arrayFilter: ko.utils.arrayFilter,\r\n\r\n findIndex: function (array, predicate)\r\n {\r\n if (array && typeof array === \"object\" && array.length)\r\n {\r\n for (var i = 0; i < array.length; i++)\r\n {\r\n if (predicate(array[i]))\r\n {\r\n return i;\r\n }\r\n }\r\n }\r\n\r\n return -1;\r\n }\r\n};\r\n\r\nexports.DateTime =\r\n{\r\n getCurrentTime: function ()\r\n {\r\n return (new Date()).getTime();\r\n },\r\n getUTCString: function ()\r\n {\r\n return Date.prototype.toISOString ? (new Date()).toISOString() : (new Date()).toUTCString();\r\n }\r\n};\r\n\r\nexports.ErrorData = function (errorText, remediationText)\r\n{\r\n var _this = this;\r\n\r\n _this.errorText = errorText;\r\n _this.remediationText = remediationText;\r\n\r\n _this.toString = function ()\r\n {\r\n return _this.errorText;\r\n };\r\n};","var ko = require(\"knockout\");\r\n\r\n\r\nexports.create = function (tracingOptions)\r\n{\r\n var handlerResponse;\r\n var triggered = false;\r\n\r\n function event()\r\n {\r\n triggered = true;\r\n\r\n \r\n \r\n event.eventArgs(Array.prototype.slice.call(arguments));\r\n\r\n return handlerResponse;\r\n }\r\n\r\n event.eventArgs = ko.observable().extend({ notify: \"always\" });\r\n\r\n event.tracingOptions = tracingOptions;\r\n\r\n event.subscribe = function (callback)\r\n {\r\n event.eventArgs.subscribe(\r\n function (eventArgsValue)\r\n {\r\n handlerResponse = callback(eventArgsValue);\r\n });\r\n\r\n if (triggered)\r\n {\r\n handlerResponse = callback(event.eventArgs.peek());\r\n }\r\n };\r\n\r\n return event;\r\n};\r\n\r\nexports.isComponentEvent = function (event)\r\n{\r\n return event && ko.isObservable(event.eventArgs);\r\n};","\r\nvar w = window;\r\n\r\n\r\nvar Promise = null;\r\nvar iteratePromises = null;\r\nvar createPromiseAllHandlerFunction = null;\r\nvar createPromiseRaceCallResolveFunction = null;\r\nvar PromiseStatePending = 0;\r\nvar PromiseStateFulfilled = 1;\r\nvar PromiseStateRejected = 2;\r\n\r\nif (__IS_OLD_WEBPACK__)\r\n{\r\n Promise = function (executor)\r\n {\r\n var _this = this;\r\n\r\n var _state = PromiseStatePending;\r\n var _settledValue = null;\r\n var _queue = [];\r\n\r\n _this.then = function (onFulfilled, onRejected)\r\n {\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n \r\n \r\n _enqueue(onFulfilled, onRejected, resolve, reject);\r\n });\r\n };\r\n\r\n _this[\"catch\"] = function (onRejected)\r\n {\r\n return _this.then(null, onRejected);\r\n };\r\n\r\n function _enqueue(onFulfilled, onRejected, resolve, reject)\r\n {\r\n _queue.push(\r\n function ()\r\n {\r\n var value;\r\n\r\n try\r\n {\r\n \r\n \r\n \r\n if (_state === PromiseStateFulfilled)\r\n {\r\n value = typeof onFulfilled === \"function\" ? onFulfilled(_settledValue) : _settledValue;\r\n }\r\n else\r\n {\r\n value = typeof onRejected === \"function\" ? onRejected(_settledValue) : _settledValue;\r\n }\r\n }\r\n catch (error)\r\n {\r\n \r\n \r\n reject(error);\r\n return;\r\n }\r\n\r\n if (value instanceof Promise)\r\n {\r\n \r\n \r\n value.then(resolve, reject);\r\n }\r\n else if (_state === PromiseStateRejected && typeof onRejected !== \"function\")\r\n {\r\n \r\n \r\n reject(value);\r\n }\r\n else\r\n {\r\n \r\n \r\n \r\n \r\n \r\n resolve(value);\r\n }\r\n });\r\n\r\n \r\n \r\n if (_state !== PromiseStatePending)\r\n {\r\n _processQueue();\r\n }\r\n }\r\n\r\n function _processQueue()\r\n {\r\n if (_queue.length > 0)\r\n {\r\n \r\n \r\n var pending = _queue.slice();\r\n _queue = [];\r\n\r\n setTimeout(\r\n function ()\r\n {\r\n for (var i = 0, len = pending.length; i < len; ++i)\r\n {\r\n pending[i]();\r\n }\r\n }, 0);\r\n }\r\n }\r\n\r\n function _resolve(value)\r\n {\r\n if (_state === PromiseStatePending)\r\n {\r\n _settledValue = value;\r\n _state = PromiseStateFulfilled;\r\n _processQueue();\r\n }\r\n }\r\n\r\n function _reject(reason)\r\n {\r\n if (_state === PromiseStatePending)\r\n {\r\n _settledValue = reason;\r\n _state = PromiseStateRejected;\r\n _processQueue();\r\n }\r\n }\r\n\r\n (function _initialize()\r\n {\r\n if (typeof executor !== \"function\")\r\n {\r\n throw new TypeError(\"Promise: argument is not a Function object\");\r\n }\r\n\r\n try\r\n {\r\n executor(_resolve, _reject);\r\n }\r\n catch (error)\r\n {\r\n \r\n \r\n _reject(error);\r\n }\r\n })();\r\n };\r\n\r\n createPromiseAllHandlerFunction = function (values, index, doneCheck, rejectOnError, isFulfilled)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n var fn =\r\n function (value)\r\n {\r\n \r\n \r\n \r\n if (rejectOnError)\r\n {\r\n values[index] = value;\r\n }\r\n else\r\n {\r\n if (isFulfilled)\r\n {\r\n values[index] = { status: \"fulfilled\", value: value };\r\n }\r\n else\r\n {\r\n values[index] = { status: \"rejected\", reason: value };\r\n }\r\n }\r\n\r\n doneCheck();\r\n };\r\n\r\n return fn;\r\n };\r\n\r\n iteratePromises = function (iterable, rejectOnError)\r\n {\r\n if (!iterable || !iterable.length)\r\n {\r\n \r\n \r\n return Promise.resolve([]);\r\n }\r\n\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n var values = [];\r\n var pending = 0;\r\n\r\n for (var i = 0, len = iterable.length; i < len; ++i)\r\n {\r\n var item = iterable[i];\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n if (item instanceof Promise)\r\n {\r\n pending++;\r\n\r\n var doneCheck =\r\n function ()\r\n {\r\n if (--pending === 0)\r\n {\r\n resolve(values);\r\n }\r\n };\r\n\r\n \r\n \r\n \r\n if (rejectOnError)\r\n {\r\n item.then(\r\n createPromiseAllHandlerFunction(values, i, doneCheck, rejectOnError),\r\n reject);\r\n }\r\n else\r\n {\r\n item.then(\r\n createPromiseAllHandlerFunction(values, i, doneCheck, rejectOnError, true),\r\n createPromiseAllHandlerFunction(values, i, doneCheck, rejectOnError, false));\r\n }\r\n }\r\n else\r\n {\r\n values[i] = item;\r\n }\r\n }\r\n\r\n \r\n \r\n \r\n if (pending === 0)\r\n {\r\n setTimeout(\r\n function ()\r\n {\r\n resolve(values);\r\n }, 0);\r\n }\r\n });\r\n };\r\n\r\n Promise.all = function (iterable)\r\n {\r\n return iteratePromises(iterable, true);\r\n };\r\n\r\n Promise.allSettled = function (iterable)\r\n {\r\n return iteratePromises(iterable, false);\r\n };\r\n\r\n createPromiseRaceCallResolveFunction = function (resolve, item)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n var fn =\r\n function ()\r\n {\r\n resolve(item);\r\n };\r\n\r\n return fn;\r\n };\r\n\r\n Promise.race = function (iterable)\r\n {\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n \r\n \r\n if (!iterable || !iterable.length)\r\n {\r\n return;\r\n }\r\n\r\n for (var i = 0, len = iterable.length; i < len; ++i)\r\n {\r\n var item = iterable[i];\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n if (item instanceof Promise)\r\n {\r\n item.then(resolve, reject);\r\n }\r\n else\r\n {\r\n setTimeout(\r\n createPromiseRaceCallResolveFunction(resolve, item), 0);\r\n }\r\n }\r\n });\r\n };\r\n\r\n Promise.reject = function (reason)\r\n {\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n reject(reason);\r\n });\r\n };\r\n\r\n Promise.resolve = function (value)\r\n {\r\n if (value instanceof Promise)\r\n {\r\n \r\n return value;\r\n }\r\n else if (value && typeof value.then === \"function\")\r\n {\r\n \r\n \r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n value.then(resolve, reject);\r\n });\r\n }\r\n\r\n \r\n \r\n return new Promise(\r\n function (resolve)\r\n {\r\n resolve(value);\r\n });\r\n };\r\n\r\n var promise = w.Promise || Promise;\r\n\r\n if (!promise.all)\r\n {\r\n promise.all = Promise.all;\r\n }\r\n\r\n if (!promise.allSettled)\r\n {\r\n promise.allSettled = Promise.allSettled;\r\n }\r\n\r\n if (!promise.race)\r\n {\r\n promise.race = Promise.race;\r\n }\r\n\r\n if (!promise.reject)\r\n {\r\n promise.reject = Promise.reject;\r\n }\r\n\r\n if (!promise.resolve)\r\n {\r\n promise.resolve = Promise.resolve;\r\n }\r\n\r\n module.exports = promise;\r\n}\r\nelse\r\n{\r\n module.exports = w.Promise;\r\n}","exports.Tokens =\r\n{\r\n Username: \"#~#MemberName_LS#~#\"\r\n};\r\n\r\nexports.Fed =\r\n{\r\n DomainToken: \"#~#partnerdomain#~#\",\r\n FedDomain: \"#~#FederatedDomainName_LS#~#\",\r\n Partner: \"#~#FederatedPartnerName_LS#~#\"\r\n};\r\n\r\nexports.LoginOption =\r\n{\r\n DoNotRemember: 0,\r\n RememberPWD: 1,\r\n NothingChecked: 3\r\n};\r\n\r\nexports.StringsVariantId =\r\n{\r\n Default: 0,\r\n SkypeMoveAlias: 1,\r\n CombinedSigninSignup: 2,\r\n CombinedSigninSignupDefaultTitle: 3,\r\n RemoteConnectLogin: 4,\r\n CombinedSigninSignupV2: 5,\r\n CombinedSigninSignupV2WelcomeTitle: 6\r\n};\r\n\r\nexports.AllowedIdentitiesType =\r\n{\r\n MsaOnly: 0,\r\n AadOnly: 1,\r\n Both: 2\r\n};\r\n\r\nexports.SessionIdp =\r\n{\r\n Aad: 0,\r\n Msa: 1\r\n};\r\n\r\nexports.ClientTracingEventIds =\r\n{\r\n \r\n Event_LoginPaginatedUsernameView_onLoad: 110000,\r\n Event_LoginPaginatedPasswordView_onLoad: 110001,\r\n \r\n ComponentEvent_LoginPaginatedUsernameView_onShowDialog: 120000,\r\n ComponentEvent_LoginPaginatedUsernameView_onAgreementClick: 120001,\r\n ComponentEvent_LoginPaginatedPasswordView_onResetPassword: 120100,\r\n \r\n PropertyValue_LoginPaginatedPageView_IsFidoSupported: 140000,\r\n PropertyValue_LoginPaginatedUsernameView_Username: 140100,\r\n PropertyValue_LoginPaginatedUsernameView_ClientError: 140101,\r\n PropertyValue_LoginPaginatedPasswordView_Password: 140200,\r\n PropertyValue_LoginPaginatedPasswordView_ClientError: 140201,\r\n PropertyValue_LoginPaginatedPasswordView_KMSI: 140202\r\n};","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar w = window;\r\nvar BrowserHelper = Browser.Helper;\r\nvar NodeTypeElement = 1;\r\n\r\nfunction AccessibleImageControl(params, lightImageNode, darkImageNode)\r\n{\r\n var _this = this;\r\n\r\n var _hasDarkBackground = params.hasDarkBackground;\r\n\r\n _this.isHighContrastBlackTheme = false;\r\n _this.isHighContrastWhiteTheme = false;\r\n _this.hasDarkBackground = _hasDarkBackground;\r\n _this.lightImageNode = lightImageNode;\r\n _this.darkImageNode = darkImageNode;\r\n\r\n (function _initialize()\r\n {\r\n var isHighContrast = BrowserHelper.isHighContrast();\r\n if (isHighContrast)\r\n {\r\n var theme = BrowserHelper.getHighContrastTheme();\r\n _this.isHighContrastBlackTheme = theme === \"black\";\r\n _this.isHighContrastWhiteTheme = theme === \"white\";\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"accessible-image-control\",\r\n {\r\n viewModel:\r\n {\r\n createViewModel: function (params, componentInfo)\r\n {\r\n var templateElements = ko.utils.arrayFilter(\r\n componentInfo.templateNodes,\r\n function (templateNode)\r\n {\r\n return templateNode.nodeType === NodeTypeElement;\r\n });\r\n\r\n \r\n return new AccessibleImageControl(params, templateElements[0], templateElements[1]);\r\n }\r\n },\r\n template: require(\"html/Shared/Controls/AccessibleImageControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents)\r\n });\r\n\r\nmodule.exports = AccessibleImageControl;","\r\nrequire(\"telemetry/EClientEvent\");\r\nvar Telemetry = require(\"telemetry/TelemetryHelper\");\r\n\r\nfunction _initializeTelemetry(serverData)\r\n{\r\n \r\n var _config = serverData || {};\r\n var _browserSense = serverData.browser || {};\r\n var _clientEventsConfig = _config.clientEvents || {};\r\n var _serverDetails = _config.serverDetails || {};\r\n var _uaid = _config.correlationId ? _config.correlationId : \"\";\r\n var _isOobe = _config.fIsOOBE;\r\n var _isScoobe = _config.fIsScoobe;\r\n var _isHosted = _config.fIsHosted;\r\n \r\n\r\n _clientEventsConfig.correlationID = _uaid;\r\n _clientEventsConfig.hostPageID = _config.hpgid;\r\n _clientEventsConfig.pageName = _config.pgid || _config.sPageId;\r\n _clientEventsConfig.actorID = _config.hpgact || _config.sCID;\r\n _clientEventsConfig.appId = _config.appId;\r\n _clientEventsConfig.autoCaptureJsErrors = _config.fAutoCaptureJsErrors || false;\r\n _clientEventsConfig.autoCaptureClicks = _config.fAutoCaptureClicks || false;\r\n _clientEventsConfig.autoCaptureEvents = _config.fAutoCaptureEvents || false;\r\n _clientEventsConfig.isOOBE = _isOobe || false;\r\n _clientEventsConfig.isScoobe = _isScoobe || false;\r\n _clientEventsConfig.isHosted = _isHosted || false;\r\n\r\n \r\n _clientEventsConfig[\"environment\"] = _config.environment;\r\n _clientEventsConfig[\"serverDetails\"] = {\r\n datacenter: _getDCAndRI(_serverDetails,\"dc\"),\r\n role: _getDCAndRI(_serverDetails, \"r\"),\r\n roleInstance: _getDCAndRI(_serverDetails, \"ri\"),\r\n version: _getBuildVersion(_serverDetails)\r\n };\r\n\r\n \r\n \r\n if (_browserSense.IE && _clientEventsConfig.appInsightsConfig)\r\n {\r\n if (_clientEventsConfig.appInsightsConfig.PostChannel)\r\n {\r\n _clientEventsConfig.appInsightsConfig.PostChannel.disableXhrSync = true;\r\n }\r\n else\r\n {\r\n _clientEventsConfig.appInsightsConfig.PostChannel = {\r\n disableXhrSync: true\r\n };\r\n }\r\n }\r\n\r\n return new Telemetry.TelemetryHelper(_clientEventsConfig);\r\n}\r\n\r\n\r\nfunction _getDCAndRI(serverDetails, name)\r\n{\r\n if (serverDetails && serverDetails[name])\r\n {\r\n return serverDetails[name];\r\n }\r\n\r\n return \"\";\r\n}\r\n\r\nfunction _getBuildVersion(serverDetails)\r\n{\r\n if (!serverDetails || !serverDetails.ver)\r\n {\r\n return \"\";\r\n }\r\n\r\n var buildVersion = serverDetails.ver.v || serverDetails.ver || \"\";\r\n\r\n if (Array.isArray(buildVersion) && buildVersion.length > 0)\r\n {\r\n return buildVersion.join(\".\");\r\n }\r\n\r\n return buildVersion;\r\n}\r\n\r\n\r\nvar instance = null;\r\n\r\n\r\nexports.getInstance = function (serverData)\r\n{\r\n if (serverData.fEnableOneDSClientTelemetry)\r\n {\r\n try\r\n {\r\n instance = instance || _initializeTelemetry(serverData);\r\n }\r\n catch (e) { }\r\n }\r\n\r\n return instance;\r\n};","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nexports.EventIds =\r\n{\r\n Unknown: 0,\r\n \r\n Event_PaginationControl_ViewSwitch: 10000,\r\n \r\n Api_GetOneTimeCode: 20000,\r\n Api_GetOneTimeToken: 20001,\r\n Api_CanaryValidation: 20002,\r\n Api_GetCustomCss: 20003,\r\n Api_GetCredentialType: 20004,\r\n Api_CheckSessionState: 20005,\r\n Api_GetIwaSsoToken: 20006,\r\n Api_OtcAuthentication: 20007,\r\n Api_DeviceAuthentication: 20008,\r\n Api_BeginOtcAuthentication: 20009,\r\n Api_ConfirmOneTimeCode: 20010,\r\n Api_BeginSessionApproval: 20011,\r\n Api_EndSessionApproval: 20012,\r\n Api_Forget: 20013,\r\n Api_GetRecoveryCredentialType: 20014,\r\n Api_OfficeHrd: 20015,\r\n Api_CheckPassword: 20016,\r\n \r\n Redirect_Unknown: 40000,\r\n Redirect_MSASignUpPage: 40001,\r\n Redirect_AADSignUpPage: 40002,\r\n Redirect_SkipZeroTouch: 40003,\r\n Redirect_ResetPasswordPage: 40004,\r\n Redirect_MSAUserRecoveryPage: 40005,\r\n Redirect_OtherIdpRedirection: 40006,\r\n Redriect_SwitchUser: 40007\r\n \r\n \r\n};\r\n\r\n\r\nexports.EventLevel =\r\n{\r\n None: 0x0,\r\n Critical: 0x0001,\r\n Info: 0x0002,\r\n ApiRequest: 0x0004,\r\n CXH: 0x0008,\r\n Debug: 0x0010,\r\n Verbose: 0x0020,\r\n All: 0xFFFF\r\n};\r\n\r\n\r\nexports.HidingMode =\r\n{\r\n \r\n None: 0,\r\n \r\n Hide: 1,\r\n \r\n Mask: 2\r\n};\r\n\r\n\r\nexports.DataPointScope =\r\n{\r\n ClientEvent: 1,\r\n Global: 2\r\n};\r\n\r\n\r\nexports.EventStage =\r\n{\r\n None: 0,\r\n Begin: 1,\r\n End: 2\r\n};\r\n","var Promise = require(\"./Promise\");\r\n\r\n\r\nexports.throwUnhandledExceptionOnRejection = function (promise)\r\n{\r\n promise[\"catch\"](\r\n function (error)\r\n {\r\n var ex = error;\r\n\r\n if (!(error instanceof Error))\r\n {\r\n ex = new Error(\"Unhandled Promise rejection: \" + error);\r\n }\r\n\r\n \r\n \r\n setTimeout(\r\n function ()\r\n {\r\n throw ex;\r\n }, 0);\r\n });\r\n};\r\n\r\n\r\nexports.newPromiseWithTimeout = function (func, timeout, result)\r\n{\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n Promise.resolve(func()).then(resolve, reject);\r\n setTimeout(function () { resolve(result); }, timeout);\r\n }\r\n );\r\n};","/*\n http://www.JSON.org/json2.js\n 2011-02-23\n\n Public Domain.\n\n NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.\n\n See http://www.JSON.org/js.html\n\n\n This code should be minified before deployment.\n See http://javascript.crockford.com/jsmin.html\n\n USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO\n NOT CONTROL.\n\n\n This file creates a global JSON object containing two methods: stringify\n and parse.\n\n JSON.stringify(value, replacer, space)\n value any JavaScript value, usually an object or array.\n\n replacer an optional parameter that determines how object\n values are stringified for objects. It can be a\n function or an array of strings.\n\n space an optional parameter that specifies the indentation\n of nested structures. If it is omitted, the text will\n be packed without extra whitespace. If it is a number,\n it will specify the number of spaces to indent at each\n level. If it is a string (such as '\\t' or ' '),\n it contains the characters used to indent at each level.\n\n This method produces a JSON text from a JavaScript value.\n\n When an object value is found, if the object contains a toJSON\n method, its toJSON method will be called and the result will be\n stringified. A toJSON method does not serialize: it returns the\n value represented by the name/value pair that should be serialized,\n or undefined if nothing should be serialized. The toJSON method\n will be passed the key associated with the value, and this will be\n bound to the value\n\n For example, this would serialize Dates as ISO strings.\n\n Date.prototype.toJSON = function (key) {\n function f(n) {\n // Format integers to have at least two digits.\n return n < 10 ? '0' + n : n;\n }\n\n return this.getUTCFullYear() + '-' +\n f(this.getUTCMonth() + 1) + '-' +\n f(this.getUTCDate()) + 'T' +\n f(this.getUTCHours()) + ':' +\n f(this.getUTCMinutes()) + ':' +\n f(this.getUTCSeconds()) + 'Z';\n };\n\n You can provide an optional replacer method. It will be passed the\n key and value of each member, with this bound to the containing\n object. The value that is returned from your method will be\n serialized. If your method returns undefined, then the member will\n be excluded from the serialization.\n\n If the replacer parameter is an array of strings, then it will be\n used to select the members to be serialized. It filters the results\n such that only members with keys listed in the replacer array are\n stringified.\n\n Values that do not have JSON representations, such as undefined or\n functions, will not be serialized. Such values in objects will be\n dropped; in arrays they will be replaced with null. You can use\n a replacer function to replace those with JSON values.\n JSON.stringify(undefined) returns undefined.\n\n The optional space parameter produces a stringification of the\n value that is filled with line breaks and indentation to make it\n easier to read.\n\n If the space parameter is a non-empty string, then that string will\n be used for indentation. If the space parameter is a number, then\n the indentation will be that many spaces.\n\n Example:\n\n text = JSON.stringify(['e', {pluribus: 'unum'}]);\n // text is '[\"e\",{\"pluribus\":\"unum\"}]'\n\n\n text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\\t');\n // text is '[\\n\\t\"e\",\\n\\t{\\n\\t\\t\"pluribus\": \"unum\"\\n\\t}\\n]'\n\n text = JSON.stringify([new Date()], function (key, value) {\n return this[key] instanceof Date ?\n 'Date(' + this[key] + ')' : value;\n });\n // text is '[\"Date(---current time---)\"]'\n\n\n JSON.parse(text, reviver)\n This method parses a JSON text to produce an object or array.\n It can throw a SyntaxError exception.\n\n The optional reviver parameter is a function that can filter and\n transform the results. It receives each of the keys and values,\n and its return value is used instead of the original value.\n If it returns what it received, then the structure is not modified.\n If it returns undefined then the member is deleted.\n\n Example:\n\n // Parse the text. Values that look like ISO date strings will\n // be converted to Date objects.\n\n myData = JSON.parse(text, function (key, value) {\n var a;\n if (typeof value === 'string') {\n a =\n/^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2}(?:\\.\\d*)?)Z$/.exec(value);\n if (a) {\n return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],\n +a[5], +a[6]));\n }\n }\n return value;\n });\n\n myData = JSON.parse('[\"Date(09/09/2001)\"]', function (key, value) {\n var d;\n if (typeof value === 'string' &&\n value.slice(0, 5) === 'Date(' &&\n value.slice(-1) === ')') {\n d = new Date(value.slice(5, -1));\n if (d) {\n return d;\n }\n }\n return value;\n });\n\n\n This is a reference implementation. You are free to copy, modify, or\n redistribute.\n*/\n\n/*jslint evil: true, strict: false, regexp: false */\n\n/*members \"\", \"\\b\", \"\\t\", \"\\n\", \"\\f\", \"\\r\", \"\\\"\", JSON, \"\\\\\", apply,\n call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,\n getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,\n lastIndex, length, parse, prototype, push, replace, slice, stringify,\n test, toJSON, toString, valueOf\n*/\n\n\n// Create a JSON object only if one does not already exist. We create the\n// methods in a closure to avoid creating global variables.\n\nvar JSON;\nif (!JSON) {\n JSON = {};\n}\n\n(function () {\n \"use strict\";\n\n var global = Function('return this')()\n , JSON = global.JSON\n ;\n\n if (!JSON) {\n JSON = {};\n }\n\n function f(n) {\n // Format integers to have at least two digits.\n return n < 10 ? '0' + n : n;\n }\n\n if (typeof Date.prototype.toJSON !== 'function') {\n\n Date.prototype.toJSON = function (key) {\n\n return isFinite(this.valueOf()) ?\n this.getUTCFullYear() + '-' +\n f(this.getUTCMonth() + 1) + '-' +\n f(this.getUTCDate()) + 'T' +\n f(this.getUTCHours()) + ':' +\n f(this.getUTCMinutes()) + ':' +\n f(this.getUTCSeconds()) + 'Z' : null;\n };\n\n String.prototype.toJSON =\n Number.prototype.toJSON =\n Boolean.prototype.toJSON = function (key) {\n return this.valueOf();\n };\n }\n\n var cx = /[\\u0000\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,\n escapable = /[\\\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,\n gap,\n indent,\n meta = { // table of character substitutions\n '\\b': '\\\\b',\n '\\t': '\\\\t',\n '\\n': '\\\\n',\n '\\f': '\\\\f',\n '\\r': '\\\\r',\n '\"' : '\\\\\"',\n '\\\\': '\\\\\\\\'\n },\n rep;\n\n\n function quote(string) {\n\n// If the string contains no control characters, no quote characters, and no\n// backslash characters, then we can safely slap some quotes around it.\n// Otherwise we must also replace the offending characters with safe escape\n// sequences.\n\n escapable.lastIndex = 0;\n return escapable.test(string) ? '\"' + string.replace(escapable, function (a) {\n var c = meta[a];\n return typeof c === 'string' ? c :\n '\\\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n }) + '\"' : '\"' + string + '\"';\n }\n\n\n function str(key, holder) {\n\n// Produce a string from holder[key].\n\n var i, // The loop counter.\n k, // The member key.\n v, // The member value.\n length,\n mind = gap,\n partial,\n value = holder[key];\n\n// If the value has a toJSON method, call it to obtain a replacement value.\n\n if (value && typeof value === 'object' &&\n typeof value.toJSON === 'function') {\n value = value.toJSON(key);\n }\n\n// If we were called with a replacer function, then call the replacer to\n// obtain a replacement value.\n\n if (typeof rep === 'function') {\n value = rep.call(holder, key, value);\n }\n\n// What happens next depends on the value's type.\n\n switch (typeof value) {\n case 'string':\n return quote(value);\n\n case 'number':\n\n// JSON numbers must be finite. Encode non-finite numbers as null.\n\n return isFinite(value) ? String(value) : 'null';\n\n case 'boolean':\n case 'null':\n\n// If the value is a boolean or null, convert it to a string. Note:\n// typeof null does not produce 'null'. The case is included here in\n// the remote chance that this gets fixed someday.\n\n return String(value);\n\n// If the type is 'object', we might be dealing with an object or an array or\n// null.\n\n case 'object':\n\n// Due to a specification blunder in ECMAScript, typeof null is 'object',\n// so watch out for that case.\n\n if (!value) {\n return 'null';\n }\n\n// Make an array to hold the partial results of stringifying this object value.\n\n gap += indent;\n partial = [];\n\n// Is the value an array?\n\n if (Object.prototype.toString.apply(value) === '[object Array]') {\n\n// The value is an array. Stringify every element. Use null as a placeholder\n// for non-JSON values.\n\n length = value.length;\n for (i = 0; i < length; i += 1) {\n partial[i] = str(i, value) || 'null';\n }\n\n// Join all of the elements together, separated with commas, and wrap them in\n// brackets.\n\n v = partial.length === 0 ? '[]' : gap ?\n '[\\n' + gap + partial.join(',\\n' + gap) + '\\n' + mind + ']' :\n '[' + partial.join(',') + ']';\n gap = mind;\n return v;\n }\n\n// If the replacer is an array, use it to select the members to be stringified.\n\n if (rep && typeof rep === 'object') {\n length = rep.length;\n for (i = 0; i < length; i += 1) {\n if (typeof rep[i] === 'string') {\n k = rep[i];\n v = str(k, value);\n if (v) {\n partial.push(quote(k) + (gap ? ': ' : ':') + v);\n }\n }\n }\n } else {\n\n// Otherwise, iterate through all of the keys in the object.\n\n for (k in value) {\n if (Object.prototype.hasOwnProperty.call(value, k)) {\n v = str(k, value);\n if (v) {\n partial.push(quote(k) + (gap ? ': ' : ':') + v);\n }\n }\n }\n }\n\n// Join all of the member texts together, separated with commas,\n// and wrap them in braces.\n\n v = partial.length === 0 ? '{}' : gap ?\n '{\\n' + gap + partial.join(',\\n' + gap) + '\\n' + mind + '}' :\n '{' + partial.join(',') + '}';\n gap = mind;\n return v;\n }\n }\n\n// If the JSON object does not yet have a stringify method, give it one.\n\n if (typeof JSON.stringify !== 'function') {\n JSON.stringify = function (value, replacer, space) {\n\n// The stringify method takes a value and an optional replacer, and an optional\n// space parameter, and returns a JSON text. The replacer can be a function\n// that can replace values, or an array of strings that will select the keys.\n// A default replacer method can be provided. Use of the space parameter can\n// produce text that is more easily readable.\n\n var i;\n gap = '';\n indent = '';\n\n// If the space parameter is a number, make an indent string containing that\n// many spaces.\n\n if (typeof space === 'number') {\n for (i = 0; i < space; i += 1) {\n indent += ' ';\n }\n\n// If the space parameter is a string, it will be used as the indent string.\n\n } else if (typeof space === 'string') {\n indent = space;\n }\n\n// If there is a replacer, it must be a function or an array.\n// Otherwise, throw an error.\n\n rep = replacer;\n if (replacer && typeof replacer !== 'function' &&\n (typeof replacer !== 'object' ||\n typeof replacer.length !== 'number')) {\n throw new Error('JSON.stringify');\n }\n\n// Make a fake root object containing our value under the key of ''.\n// Return the result of stringifying the value.\n\n return str('', {'': value});\n };\n }\n\n\n// If the JSON object does not yet have a parse method, give it one.\n\n if (typeof JSON.parse !== 'function') {\n JSON.parse = function (text, reviver) {\n\n// The parse method takes a text and an optional reviver function, and returns\n// a JavaScript value if the text is a valid JSON text.\n\n var j;\n\n function walk(holder, key) {\n\n// The walk method is used to recursively walk the resulting structure so\n// that modifications can be made.\n\n var k, v, value = holder[key];\n if (value && typeof value === 'object') {\n for (k in value) {\n if (Object.prototype.hasOwnProperty.call(value, k)) {\n v = walk(value, k);\n if (v !== undefined) {\n value[k] = v;\n } else {\n delete value[k];\n }\n }\n }\n }\n return reviver.call(holder, key, value);\n }\n\n\n// Parsing happens in four stages. In the first stage, we replace certain\n// Unicode characters with escape sequences. JavaScript handles many characters\n// incorrectly, either silently deleting them, or treating them as line endings.\n\n text = String(text);\n cx.lastIndex = 0;\n if (cx.test(text)) {\n text = text.replace(cx, function (a) {\n return '\\\\u' +\n ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n });\n }\n\n// In the second stage, we run the text against regular expressions that look\n// for non-JSON patterns. We are especially concerned with '()' and 'new'\n// because they can cause invocation, and '=' because it can cause mutation.\n// But just to be safe, we want to reject all unexpected forms.\n\n// We split the second stage into 4 regexp operations in order to work around\n// crippling inefficiencies in IE's and Safari's regexp engines. First we\n// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we\n// replace all simple value tokens with ']' characters. Third, we delete all\n// open brackets that follow a colon or comma or that begin the text. Finally,\n// we look to see that the remaining characters are only whitespace or ']' or\n// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.\n\n if (/^[\\],:{}\\s]*$/\n .test(text.replace(/\\\\(?:[\"\\\\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@')\n .replace(/\"[^\"\\\\\\n\\r]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g, ']')\n .replace(/(?:^|:|,)(?:\\s*\\[)+/g, ''))) {\n\n// In the third stage we use the eval function to compile the text into a\n// JavaScript structure. The '{' operator is subject to a syntactic ambiguity\n// in JavaScript: it can begin a block or an object literal. We wrap the text\n// in parens to eliminate the ambiguity.\n\n j = eval('(' + text + ')');\n\n// In the optional fourth stage, we recursively walk the new structure, passing\n// each name/value pair to a reviver function for possible transformation.\n\n return typeof reviver === 'function' ?\n walk({'': j}, '') : j;\n }\n\n// If the text is not JSON parseable, then a SyntaxError is thrown.\n\n throw new SyntaxError('JSON.parse');\n };\n }\n\n global.JSON = JSON;\n module.exports = JSON;\n}());\n","var ClientTracingConstants = require(\"./ClientTracingConstants\");\r\nvar ClientTracingContext = require(\"./ClientTracingContext\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar Promise = require(\"../Core/Promise\");\r\n\r\n\r\nfunction ClientTracingHelper(tracingConfig)\r\n{\r\n var _this = this;\r\n var _initializingTime = Helpers.DateTime.getCurrentTime();\r\n var _tracingEnabled = _getIfTracingEnabled();\r\n var _clientTracing = null;\r\n\r\n \r\n \r\n \r\n\r\n \r\n _this.createLoadClientTracingPromise = function ()\r\n {\r\n var loadClientTracingPromise = new Promise(\r\n function (resolve)\r\n {\r\n if (_tracingEnabled && !_clientTracing)\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n var clientTracing = require(\"./ClientTracing\").getInstance(tracingConfig, _initializingTime);\r\n\r\n if (!_clientTracing)\r\n {\r\n _clientTracing = clientTracing;\r\n }\r\n\r\n resolve();\r\n },\r\n \"ClientTracing\"); \r\n }\r\n else\r\n {\r\n resolve();\r\n }\r\n });\r\n\r\n return loadClientTracingPromise;\r\n };\r\n\r\n \r\n _this.logRedirection = function (redirectData, parameters)\r\n {\r\n var url = redirectData;\r\n var eventOptions = null;\r\n if (redirectData && typeof(redirectData) !== \"string\")\r\n {\r\n url = redirectData.url;\r\n eventOptions = redirectData.eventOptions;\r\n parameters = redirectData.traceParameters ? parameters : null;\r\n\r\n if (redirectData.traceUrl)\r\n {\r\n \r\n if (!parameters)\r\n {\r\n parameters = url;\r\n }\r\n else\r\n {\r\n parameters.url = url;\r\n }\r\n }\r\n }\r\n else\r\n {\r\n parameters = null;\r\n }\r\n\r\n if (eventOptions && eventOptions.eventId)\r\n {\r\n _this.logEvent(\r\n {\r\n eventType: \"onRedirect\",\r\n eventId: eventOptions.eventId,\r\n eventLevel: eventOptions.eventLevel,\r\n eventArgs: parameters,\r\n eventOptions: eventOptions\r\n });\r\n }\r\n\r\n return url;\r\n };\r\n\r\n \r\n \r\n _this.getPropertyLogOption = function (viewModel, tracingOptions)\r\n {\r\n tracingOptions = tracingOptions || {};\r\n\r\n if (!tracingOptions.hasOwnProperty(\"tracingPropertyChange\"))\r\n {\r\n tracingOptions.tracingPropertyChange = true;\r\n }\r\n\r\n tracingOptions.eventLevel = tracingOptions.eventLevel || ClientTracingConstants.EventLevel.Info;\r\n return { viewModel: viewModel, tracingOptions: tracingOptions };\r\n };\r\n\r\n \r\n _this.getDefaultTextBoxPropertyLogOption = function (viewModel, tracingOptions)\r\n {\r\n tracingOptions = tracingOptions || {};\r\n if (!tracingOptions.hasOwnProperty(\"hidingMode\"))\r\n {\r\n tracingOptions.hidingMode = ClientTracingConstants.HidingMode.None;\r\n }\r\n\r\n tracingOptions.rateLimit =\r\n {\r\n method: \"notifyWhenChangesStop\"\r\n };\r\n\r\n return _this.getPropertyLogOption(\r\n viewModel,\r\n tracingOptions\r\n );\r\n };\r\n\r\n \r\n _this.getPIITextBoxPropertyLogOption = function (viewModel, tracingOptions)\r\n {\r\n tracingOptions = tracingOptions || {};\r\n tracingOptions.hidingMode = ClientTracingConstants.HidingMode.Mask;\r\n\r\n return _this.getDefaultTextBoxPropertyLogOption(\r\n viewModel,\r\n tracingOptions\r\n );\r\n };\r\n\r\n \r\n _this.getPasswordTextBoxPropertyLogOption = function (viewModel, tracingOptions)\r\n {\r\n tracingOptions = tracingOptions || {};\r\n tracingOptions.hidingMode = ClientTracingConstants.HidingMode.Hide;\r\n\r\n return _this.getDefaultTextBoxPropertyLogOption(\r\n viewModel,\r\n tracingOptions\r\n );\r\n };\r\n\r\n \r\n _this.getDefaultEventTracingOptions = function (eventId, traceEventArgs, eventLevel)\r\n {\r\n return {\r\n eventId: eventId,\r\n eventLevel: eventLevel || ClientTracingConstants.EventLevel.Info,\r\n hidingMode: traceEventArgs ? ClientTracingConstants.HidingMode.None : ClientTracingConstants.HidingMode.Hide\r\n };\r\n };\r\n \r\n\r\n \r\n \r\n _this.attachViewLoadClientTracingOptions = _createClientTracingContextWrapper(\"attachViewLoadClientTracingOptions\");\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n _this.logEvent = _createClientTracingWrapper(\"logEvent\");\r\n\r\n \r\n _this.logUserInteractionEvent = _createClientTracingWrapper(\"logUserInteractionEvent\");\r\n\r\n \r\n _this.traceBeginRequest = _createClientTracingWrapper(\"traceBeginRequest\");\r\n\r\n \r\n _this.traceEndRequest = function (tracingObject, result, data, succeeded, handler)\r\n {\r\n if (_clientTracing)\r\n {\r\n _clientTracing.traceEndRequest(tracingObject, result, data, succeeded, handler);\r\n }\r\n else if (handler)\r\n {\r\n handler();\r\n }\r\n };\r\n\r\n \r\n _this.setPageViewModel = _createClientTracingWrapper(\"setPageViewModel\");\r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n _this.logComponentEvent = _createClientTracingWrapper(\"logComponentEvent\");\r\n\r\n \r\n _this.logViewState = _createClientTracingWrapper(\"logViewState\");\r\n\r\n \r\n _this.setViewViewModel = _createClientTracingWrapper(\"setViewViewModel\");\r\n\r\n \r\n _this.switchView = _createClientTracingWrapper(\"switchView\");\r\n\r\n \r\n _this.postEvent = _createClientTracingWrapper(\"postEvent\");\r\n \r\n \r\n\r\n function _getIfTracingEnabled()\r\n {\r\n return (tracingConfig && tracingConfig.fEnableClientTelemetry && tracingConfig.iClientLogLevel);\r\n }\r\n\r\n function _createClientTracingWrapper(methodName)\r\n {\r\n return function ()\r\n {\r\n if (_clientTracing)\r\n {\r\n return _clientTracing[methodName].apply(_clientTracing, arguments);\r\n }\r\n };\r\n }\r\n\r\n function _createClientTracingContextWrapper(methodName)\r\n {\r\n return function ()\r\n {\r\n if (ClientTracingContext)\r\n {\r\n return ClientTracingContext[methodName].apply(ClientTracingContext, arguments);\r\n }\r\n };\r\n }\r\n}\r\n\r\nvar instance = null;\r\n\r\nexports.getInstance = function (tracingConfig)\r\n{\r\n instance = instance || new ClientTracingHelper(tracingConfig);\r\n return instance;\r\n};","var JSON = require(\"JSON\");\r\nvar Ajax = require(\"./AjaxHandlerControl\");\r\nvar Constants = require(\"./Constants\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar ClientTracingHelper = require(\"./ClientTracingHelper\").getInstance(window.ServerData);\r\nvar ClientTracingConstants = require(\"./ClientTracingConstants\");\r\n\r\nvar w = window;\r\nvar $config = w.$Config || w.ServerData || {};\r\n\r\nvar ObjectHelpers = Helpers.Object;\r\nvar QueryString = Browser.QueryString;\r\n\r\n\r\nmodule.exports = function (params)\r\n{\r\n params = params || {};\r\n\r\n var _this = this;\r\n\r\n var c_requestTimeout = 30000; \r\n\r\n var c_callGenericErrorCode = 8000;\r\n var c_callTimeoutErrorCode = 8001;\r\n var c_callAbortedErrorCode = 8002;\r\n\r\n var c_maxErrors = 100;\r\n var c_correlationIdHeader = \"client-request-id\";\r\n var c_acceptHeader = \"application/json\";\r\n\r\n \r\n var _checkApiCanary = params.checkApiCanary !== false;\r\n var _withCredentials = params.withCredentials || false;\r\n var _breakCache = params.breakCache || false;\r\n var _responseType = params.responseType || \"\";\r\n var _notifyOnClientAbort = params.notifyOnClientAbort || false;\r\n\r\n var _sasEndAuthPostToGetSwitch = w.ServerData.fSasEndAuthPostToGetSwitch;\r\n var _fixUICrashForApiRequestHandler = w.ServerData.fFixUICrashForApiRequestHandler;\r\n\r\n \r\n _this.Errors = [];\r\n\r\n \r\n\r\n \r\n\r\n \r\n _this.Json = function (requestData, postData, successCallback, failureCallback, requestTimeout, headerData, qsParams)\r\n {\r\n \r\n var expectResponse = !!(successCallback || failureCallback);\r\n var startTime = (new Date()).getTime();\r\n\r\n var requestUrl = requestData.url;\r\n\r\n \r\n function _parseError(xhr, textStatus)\r\n {\r\n var response = {};\r\n\r\n \r\n if (xhr.status === 500)\r\n {\r\n try\r\n {\r\n response = (JSON.parse(xhr.responseText) || {});\r\n }\r\n catch (e) { }\r\n }\r\n\r\n \r\n if (!response.error)\r\n {\r\n \r\n var isFatal = false;\r\n var code = c_callGenericErrorCode;\r\n var message = \"Request Failed -- No Response from Server\";\r\n\r\n \r\n switch (textStatus)\r\n {\r\n case \"timeout\":\r\n code = c_callTimeoutErrorCode;\r\n message = \"Timeout Error\";\r\n isFatal = true;\r\n break;\r\n\r\n case \"abort\":\r\n code = c_callAbortedErrorCode;\r\n message = \"Aborted\";\r\n break;\r\n\r\n case \"error\":\r\n if (xhr.status >= 400)\r\n {\r\n isFatal = true;\r\n }\r\n\r\n break;\r\n\r\n case \"parsererror\":\r\n message = \"Unable to parse response\";\r\n isFatal = true;\r\n break;\r\n }\r\n\r\n response.error =\r\n {\r\n code: code,\r\n message: message,\r\n debugMessage: \"(xhr status \" + xhr.status + \") xhr.responseText: \" + xhr.responseText,\r\n stackTrace: \"\",\r\n isFatal: isFatal\r\n };\r\n }\r\n\r\n return response;\r\n }\r\n\r\n \r\n function _handleResponse(dataObject)\r\n {\r\n \r\n dataObject = dataObject || {};\r\n\r\n var stackTrace;\r\n var error = dataObject.error || null;\r\n\r\n var requestStats =\r\n {\r\n startTime: startTime,\r\n endTime: (new Date()).getTime()\r\n };\r\n\r\n if (dataObject.apiCanary)\r\n {\r\n \r\n $config.apiCanary = dataObject.apiCanary;\r\n delete dataObject.apiCanary;\r\n }\r\n\r\n if (error)\r\n {\r\n stackTrace = error.stackTrace;\r\n stackTrace = (stackTrace && stackTrace.encodeJson) ? stackTrace.encodeJson() : \"\";\r\n\r\n var errorString = JSON.stringify(\r\n {\r\n code: error.code,\r\n message: error.message,\r\n debug: error.debugMessage,\r\n stacktrace: stackTrace,\r\n requestUrl: requestUrl\r\n });\r\n\r\n _this.Errors.push(errorString);\r\n\r\n if (_this.Errors.length > c_maxErrors)\r\n {\r\n _this.Errors.shift();\r\n }\r\n\r\n \r\n \r\n if (error.code !== c_callAbortedErrorCode || _notifyOnClientAbort)\r\n {\r\n if (failureCallback)\r\n {\r\n failureCallback(dataObject, requestStats);\r\n }\r\n }\r\n }\r\n else if (successCallback)\r\n {\r\n successCallback(dataObject, requestStats);\r\n }\r\n }\r\n\r\n function _failRequest()\r\n {\r\n \r\n setTimeout(\r\n function ()\r\n {\r\n var response =\r\n {\r\n error:\r\n {\r\n code: c_callAbortedErrorCode,\r\n message: \"Request Failed!\",\r\n isFatal: true\r\n }\r\n };\r\n\r\n _handleResponse(response);\r\n }, 0);\r\n\r\n \r\n return null;\r\n }\r\n\r\n function _failRequestWithErrorCode(errorCode)\r\n {\r\n \r\n setTimeout(\r\n function ()\r\n {\r\n var response =\r\n {\r\n error:\r\n {\r\n code: errorCode,\r\n message: \"Request Failed!\",\r\n isFatal: true\r\n }\r\n };\r\n\r\n _handleResponse(response);\r\n }, 0);\r\n\r\n \r\n return null;\r\n }\r\n\r\n if (_checkApiCanary && !$config.apiCanary)\r\n {\r\n \r\n \r\n if (_fixUICrashForApiRequestHandler)\r\n {\r\n return _failRequestWithErrorCode(c_callAbortedErrorCode);\r\n }\r\n return _failRequest();\r\n }\r\n\r\n \r\n \r\n if (_sasEndAuthPostToGetSwitch && (postData === null) && (headerData !== null))\r\n {\r\n _this.Get(\r\n requestData,\r\n Constants.ContentType.Json,\r\n function (ev, dataString)\r\n {\r\n if (expectResponse)\r\n {\r\n if (_fixUICrashForApiRequestHandler)\r\n {\r\n try\r\n {\r\n var responseDataObject = JSON.parse(dataString);\r\n _handleResponse(responseDataObject);\r\n }\r\n catch (e)\r\n {\r\n _failRequestWithErrorCode(c_callGenericErrorCode);\r\n }\r\n }\r\n else\r\n {\r\n var dataObject = JSON.parse(dataString);\r\n _handleResponse(dataObject);\r\n }\r\n }\r\n },\r\n function (ev, xhr, textStatus, errorThrown)\r\n {\r\n if (expectResponse)\r\n {\r\n _handleResponse(_parseError(xhr, textStatus, errorThrown));\r\n }\r\n },\r\n requestTimeout,\r\n headerData,\r\n qsParams);\r\n }\r\n else\r\n {\r\n var jsonPostData = _constructJsonPostData(postData);\r\n\r\n _this.Post(\r\n requestData,\r\n Constants.ContentType.Json,\r\n jsonPostData,\r\n function (ev, dataString)\r\n {\r\n if (expectResponse)\r\n {\r\n if (_fixUICrashForApiRequestHandler)\r\n {\r\n try\r\n {\r\n var responseDataObject = JSON.parse(dataString);\r\n _handleResponse(responseDataObject);\r\n }\r\n catch (e)\r\n {\r\n _failRequestWithErrorCode(c_callGenericErrorCode);\r\n }\r\n }\r\n else\r\n {\r\n var dataObject = JSON.parse(dataString);\r\n _handleResponse(dataObject);\r\n }\r\n }\r\n },\r\n function (ev, xhr, textStatus, errorThrown)\r\n {\r\n if (expectResponse)\r\n {\r\n _handleResponse(_parseError(xhr, textStatus, errorThrown));\r\n }\r\n },\r\n requestTimeout);\r\n }\r\n };\r\n\r\n \r\n _this.Post = function (requestData, contentType, postDataString, successCallback, failureCallback, requestTimeout)\r\n {\r\n var requestUrl = requestData.url;\r\n var tracingObject = {};\r\n var noCallback = false;\r\n\r\n if (!successCallback && !failureCallback)\r\n {\r\n noCallback = true;\r\n }\r\n\r\n _traceBeginRequest(tracingObject, requestData, Ajax.RequestType.Post, requestTimeout, contentType, noCallback);\r\n\r\n var ajaxParams =\r\n {\r\n targetUrl: requestUrl,\r\n contentType: contentType,\r\n data: postDataString,\r\n requestType: Ajax.RequestType.Post,\r\n timeout: requestTimeout || c_requestTimeout,\r\n successCallback: function (ev, dataString)\r\n {\r\n _traceEndRequest(\r\n tracingObject,\r\n \"Success\",\r\n dataString,\r\n true ,\r\n function ()\r\n {\r\n if (successCallback)\r\n {\r\n successCallback(ev, dataString);\r\n }\r\n });\r\n },\r\n failureCallback: function (ev, xhr, textStatus)\r\n {\r\n _traceEndRequest(\r\n tracingObject,\r\n \"Failed\",\r\n _getErrorForTrace(xhr, textStatus),\r\n false ,\r\n function ()\r\n {\r\n if (failureCallback)\r\n {\r\n failureCallback(ev, xhr, textStatus);\r\n }\r\n });\r\n },\r\n timeoutCallback: function (ev, xhr, textStatus)\r\n {\r\n _traceEndRequest(\r\n tracingObject,\r\n \"Timeout\",\r\n _getErrorForTrace(xhr, textStatus),\r\n false ,\r\n function ()\r\n {\r\n if (failureCallback)\r\n {\r\n failureCallback(ev, xhr, textStatus);\r\n }\r\n });\r\n }\r\n };\r\n\r\n _addCommonRequestParameters(ajaxParams);\r\n\r\n Ajax.Handler.call(_this, ajaxParams);\r\n _this.sendRequest();\r\n };\r\n\r\n \r\n _this.Get = function (requestData, contentType, successCallback, failureCallback, requestTimeout, headerData, qsParams, skipCommonHeaders)\r\n {\r\n var requestUrl = requestData.url;\r\n var tracingObject = {};\r\n var noCallback = false;\r\n if (!successCallback && !failureCallback)\r\n {\r\n noCallback = true;\r\n }\r\n\r\n _traceBeginRequest(tracingObject, requestData, Ajax.RequestType.Get, requestTimeout, contentType, noCallback);\r\n var ajaxParams =\r\n {\r\n targetUrl: requestUrl,\r\n contentType: contentType,\r\n requestType: Ajax.RequestType.Get,\r\n timeout: requestTimeout || c_requestTimeout,\r\n successCallback: function (ev, dataString)\r\n {\r\n _traceEndRequest(\r\n tracingObject,\r\n \"Success\",\r\n dataString,\r\n true ,\r\n function ()\r\n {\r\n if (successCallback)\r\n {\r\n successCallback(ev, dataString);\r\n }\r\n });\r\n },\r\n failureCallback: function (ev, xhr, textStatus)\r\n {\r\n _traceEndRequest(\r\n tracingObject,\r\n \"Failed\",\r\n _getErrorForTrace(xhr, textStatus),\r\n false ,\r\n function ()\r\n {\r\n if (failureCallback)\r\n {\r\n failureCallback(ev, xhr, textStatus);\r\n }\r\n });\r\n },\r\n timeoutCallback: function (ev, xhr, textStatus)\r\n {\r\n _traceEndRequest(\r\n tracingObject,\r\n \"Timeout\",\r\n _getErrorForTrace(xhr, textStatus),\r\n false ,\r\n function ()\r\n {\r\n if (failureCallback)\r\n {\r\n failureCallback(ev, xhr, textStatus);\r\n }\r\n });\r\n }\r\n };\r\n\r\n _addCommonRequestParameters(ajaxParams, skipCommonHeaders);\r\n\r\n if (headerData)\r\n {\r\n \r\n for (var header in headerData)\r\n {\r\n if (headerData.hasOwnProperty(header))\r\n {\r\n ajaxParams.headers[header] = headerData[header];\r\n }\r\n }\r\n }\r\n\r\n if (qsParams)\r\n {\r\n \r\n var newRequestUrl = QueryString.add(requestUrl, qsParams);\r\n ajaxParams.targetUrl = newRequestUrl;\r\n }\r\n\r\n Ajax.Handler.call(_this, ajaxParams);\r\n _this.sendRequest();\r\n };\r\n\r\n \r\n _this.Beacon = function (requestData, postData, successCallback, failureCallback, requestTimeout)\r\n {\r\n var qsParams = [];\r\n var headers = _constructCommonHeaders(true );\r\n\r\n ObjectHelpers.forEach(\r\n headers,\r\n function (key, value)\r\n {\r\n qsParams.push([key, value]);\r\n });\r\n\r\n \r\n var requestUrl = requestData.url;\r\n requestUrl = QueryString.add(requestUrl, qsParams);\r\n requestData.url = requestUrl;\r\n if (navigator.sendBeacon)\r\n {\r\n var tracingObject = {};\r\n var noCallback = false;\r\n _traceBeginRequest(tracingObject, requestData, \"Beacon\", requestTimeout, null, noCallback);\r\n\r\n var jsonPostData = _constructJsonPostData(postData);\r\n\r\n var result = navigator.sendBeacon(requestUrl, jsonPostData);\r\n\r\n \r\n _traceEndRequest(\r\n tracingObject,\r\n result ? \"Success\" : \"Failed\",\r\n null,\r\n result,\r\n function ()\r\n {\r\n if (result && successCallback)\r\n {\r\n successCallback();\r\n }\r\n else if (!result && failureCallback)\r\n {\r\n failureCallback();\r\n }\r\n });\r\n }\r\n else\r\n {\r\n _this.Json(requestData, postData, successCallback, failureCallback, requestTimeout);\r\n }\r\n };\r\n\r\n \r\n\r\n \r\n function _constructCommonHeaders(constructForQueryString)\r\n {\r\n var headers =\r\n {\r\n hpgid: $config.hpgid || 0,\r\n hpgact: $config.hpgact || 0 \r\n };\r\n\r\n if (!constructForQueryString)\r\n {\r\n headers.Accept = c_acceptHeader;\r\n\r\n if (_checkApiCanary && $config.apiCanary)\r\n {\r\n headers.canary = $config.apiCanary;\r\n }\r\n }\r\n\r\n if ($config.correlationId)\r\n {\r\n headers[c_correlationIdHeader] = $config.correlationId;\r\n }\r\n\r\n if ($config.sessionId)\r\n {\r\n headers.hpgrequestid = $config.sessionId;\r\n }\r\n\r\n return headers;\r\n }\r\n\r\n \r\n function _constructJsonPostData(postData)\r\n {\r\n \r\n var jsonPostData = postData;\r\n if (postData && !_isString(postData))\r\n {\r\n \r\n \r\n \r\n var data = {};\r\n\r\n ObjectHelpers.forEach(\r\n postData,\r\n function (key, value)\r\n {\r\n if (key.substr(0, 7) === \"unsafe_\")\r\n {\r\n key = key.substr(7);\r\n }\r\n\r\n data[key] = value;\r\n });\r\n\r\n jsonPostData = JSON.stringify(data);\r\n }\r\n\r\n \r\n if (jsonPostData)\r\n {\r\n jsonPostData = jsonPostData.replace(/\\?/g, \"\\\\u003F\");\r\n }\r\n\r\n return jsonPostData;\r\n }\r\n\r\n \r\n function _addCommonRequestParameters(ajaxParams, skipCommonHeaders)\r\n {\r\n ajaxParams.headers = skipCommonHeaders ? {} : _constructCommonHeaders();\r\n ajaxParams.withCredentials = _withCredentials;\r\n ajaxParams.breakCache = _breakCache;\r\n ajaxParams.responseType = _responseType;\r\n }\r\n\r\n \r\n function _isString(obj)\r\n {\r\n return typeof obj === \"string\";\r\n }\r\n\r\n function _traceBeginRequest(tracingObject, requestData, requestType, requestTimeout, contentType, noCallback)\r\n {\r\n var eventData = null;\r\n if (requestData)\r\n {\r\n var eventOptions = requestData.eventOptions || {};\r\n eventOptions.eventId = requestData.eventId || eventOptions.eventId;\r\n if (!eventOptions.hasOwnProperty(\"hidingMode\"))\r\n {\r\n eventOptions.hidingMode = ClientTracingConstants.HidingMode.None;\r\n }\r\n\r\n if (eventOptions.eventId)\r\n {\r\n eventData = {};\r\n eventData.eventType = requestType;\r\n eventData.eventId = eventOptions.eventId;\r\n eventData.eventLevel = eventOptions.eventLevel || ClientTracingConstants.EventLevel.ApiRequest;\r\n var eventArgs = {};\r\n eventArgs.requestTimeout = requestTimeout;\r\n if (contentType)\r\n {\r\n eventArgs.contentType = contentType;\r\n }\r\n\r\n eventArgs.requestType = requestType;\r\n\r\n if (noCallback)\r\n {\r\n eventArgs.noCallback = true;\r\n }\r\n\r\n eventData.eventArgs = eventArgs;\r\n eventData.eventOptions = eventOptions;\r\n\r\n ClientTracingHelper.traceBeginRequest(tracingObject, eventData);\r\n }\r\n }\r\n\r\n tracingObject.eventData = eventData;\r\n }\r\n\r\n function _traceEndRequest(tracingObject, result, data, succeeded, handler)\r\n {\r\n ClientTracingHelper.traceEndRequest(tracingObject, result, data, succeeded, handler);\r\n }\r\n\r\n function _getErrorForTrace(xhr, textStatus)\r\n {\r\n var error = {};\r\n if (xhr)\r\n {\r\n error.xhr_status = xhr.status;\r\n }\r\n\r\n error.textStatus = textStatus;\r\n return error;\r\n }\r\n};","\r\n\r\nvar ko = require(\"knockout\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar ComponentEvent = require(\"../Core/ComponentEvent\");\r\nvar HostExtensions = null;\r\n\r\nif (__IS_WEBWIZARD_ENABLED__ || __REQUIRE_WIZARD_IN_CORE__)\r\n{\r\n if (__REQUIRE_WIZARD_IN_CORE__)\r\n {\r\n HostExtensions = require(\"./WizardFooterButtonExtensions\");\r\n }\r\n else\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n HostExtensions = require(\"./WizardFooterButtonExtensions\");\r\n },\r\n \"Wizard\");\r\n }\r\n}\r\nelse if (__IS_INCLUSIVE_OOBE__)\r\n{\r\n HostExtensions = require(\"./Win10InclusiveOOBEFooterButtonExtensions\");\r\n}\r\nelse if (__IS_XBOX__)\r\n{\r\n HostExtensions = require(\"./XboxFooterButtonExtensions\");\r\n}\r\n\r\nvar w = window;\r\n\r\n\r\n\r\nfunction FooterButtonsViewModel(params)\r\n{\r\n params = params || {};\r\n\r\n var _this = this;\r\n\r\n var _serverData = params.serverData;\r\n var _primaryButtonId;\r\n var _primaryButtonName;\r\n var _originalPrimaryButtonId = params.primaryButtonId;\r\n var _fConsentButtonIdViaName = _serverData.fConsentButtonIdViaName;\r\n var _needsIdNameProtection = !!(_fConsentButtonIdViaName && params.needsIdNameProtection);\r\n if (_fConsentButtonIdViaName)\r\n {\r\n var defaultButtonIdentifier = _originalPrimaryButtonId || \"idSIButton9\";\r\n \r\n _primaryButtonId = !_needsIdNameProtection ? defaultButtonIdentifier : undefined;\r\n _primaryButtonName = _needsIdNameProtection ? defaultButtonIdentifier : undefined;\r\n }\r\n else\r\n {\r\n _primaryButtonId = _originalPrimaryButtonId;\r\n _primaryButtonName = undefined;\r\n }\r\n var _secondaryButtonId = params.secondaryButtonId;\r\n var _primaryButtonText = params.primaryButtonText;\r\n var _secondaryButtonText = params.secondaryButtonText;\r\n var _isPrimaryButtonVisible = params.isPrimaryButtonVisible !== false; \r\n var _isSecondaryButtonVisible = params.isSecondaryButtonVisible !== false;\r\n var _isPrimaryButtonEnabled = params.isPrimaryButtonEnabled !== false;\r\n var _isSecondaryButtonEnabled = params.isSecondaryButtonEnabled !== false;\r\n var _focusOnPrimaryButton;\r\n var _focusOnSecondaryButton;\r\n if (_fConsentButtonIdViaName)\r\n {\r\n \r\n \r\n _focusOnPrimaryButton = _needsIdNameProtection ? false : (params.focusOnPrimaryButton || false); \r\n _focusOnSecondaryButton = params.focusOnSecondaryButton || (_needsIdNameProtection ? params.focusOnPrimaryButton : false);\r\n }\r\n else\r\n {\r\n _focusOnPrimaryButton = params.focusOnPrimaryButton || false; \r\n _focusOnSecondaryButton = params.focusOnSecondaryButton || false;\r\n }\r\n var _primaryButtonDescribedBy = params.primaryButtonDescribedBy;\r\n var _secondaryButtonDescribedBy = params.secondaryButtonDescribedBy;\r\n var _primaryButtonCss = params.primaryButtonCss;\r\n var _secondaryButtonCss = params.secondaryButtonCss;\r\n var _primaryButtonType = params.primaryButtonType || \"submit\";\r\n var _removeBottomMargin = params.removeBottomMargin;\r\n var _primaryButtonPreventTabbing = params.primaryButtonPreventTabbing || { direction: \"none\" };\r\n\r\n \r\n \r\n \r\n _this.primaryButtonId = _primaryButtonId;\r\n \r\n _this.secondaryButtonId = _secondaryButtonId;\r\n\r\n _this.primaryButtonCss = _primaryButtonCss;\r\n _this.secondaryButtonCss = _secondaryButtonCss;\r\n\r\n _this.primaryButtonText = ko.observable(_primaryButtonText);\r\n _this.secondaryButtonText = ko.observable(_secondaryButtonText);\r\n\r\n _this.isPrimaryButtonVisible = ko.observable(_isPrimaryButtonVisible);\r\n _this.isSecondaryButtonVisible = ko.observable(_isSecondaryButtonVisible);\r\n\r\n _this.isPrimaryButtonEnabled = ko.observable(_isPrimaryButtonEnabled);\r\n _this.isSecondaryButtonEnabled = ko.observable(_isSecondaryButtonEnabled);\r\n\r\n _this.focusOnPrimaryButton = ko.observable(_focusOnPrimaryButton);\r\n _this.focusOnSecondaryButton = ko.observable(_focusOnSecondaryButton);\r\n\r\n _this.hasOneButtonVisible = ko.pureComputed(\r\n function ()\r\n {\r\n var visibleButtons = 0;\r\n\r\n if (_this.isPrimaryButtonVisible())\r\n {\r\n visibleButtons++;\r\n }\r\n\r\n if (_this.isSecondaryButtonVisible())\r\n {\r\n visibleButtons++;\r\n }\r\n\r\n return visibleButtons === 1;\r\n });\r\n\r\n \r\n \r\n _this.primaryButtonDescribedBy = _primaryButtonDescribedBy;\r\n _this.secondaryButtonDescribedBy = _secondaryButtonDescribedBy;\r\n\r\n _this.removeBottomMargin = _removeBottomMargin;\r\n _this.primaryButtonPreventTabbing = _primaryButtonPreventTabbing;\r\n\r\n _this.primaryButtonAttributes = ko.pureComputed(\r\n function ()\r\n {\r\n var buttonAttributes;\r\n if (_fConsentButtonIdViaName)\r\n {\r\n buttonAttributes = {\r\n \"id\": _primaryButtonId,\r\n \"name\": _primaryButtonName,\r\n \"aria-describedby\": _primaryButtonDescribedBy\r\n };\r\n }\r\n else\r\n {\r\n buttonAttributes = {\r\n \"id\": _this.primaryButtonId || \"idSIButton9\",\r\n \"aria-describedby\": _this.primaryButtonDescribedBy\r\n };\r\n }\r\n\r\n if (Browser.Helper.isChangingInputTypeSupported())\r\n {\r\n buttonAttributes.type = _primaryButtonType;\r\n }\r\n\r\n return buttonAttributes;\r\n });\r\n\r\n \r\n _this.onPrimaryButtonClick = ComponentEvent.create();\r\n _this.onSecondaryButtonClick = ComponentEvent.create();\r\n\r\n \r\n _this.setTextPrimaryButton = function (text)\r\n {\r\n _this.primaryButtonText(text);\r\n };\r\n\r\n _this.setTextSecondaryButton = function (text)\r\n {\r\n _this.secondaryButtonText(text);\r\n };\r\n\r\n _this.setVisibilityPrimaryButton = function (isButtonVisible)\r\n {\r\n _this.isPrimaryButtonVisible(isButtonVisible);\r\n };\r\n\r\n _this.setVisibilitySecondaryButton = function (isButtonVisible)\r\n {\r\n _this.isSecondaryButtonVisible(isButtonVisible);\r\n };\r\n\r\n _this.setEnabledPrimaryButton = function (isButtonEnabled)\r\n {\r\n _this.isPrimaryButtonEnabled(isButtonEnabled);\r\n };\r\n\r\n _this.setEnabledSecondaryButton = function (isButtonEnabled)\r\n {\r\n _this.isSecondaryButtonEnabled(isButtonEnabled);\r\n };\r\n\r\n _this.primaryButton_onClick = function ()\r\n {\r\n _this.onPrimaryButtonClick();\r\n };\r\n\r\n _this.secondaryButton_onClick = function ()\r\n {\r\n _this.onSecondaryButtonClick();\r\n };\r\n\r\n (function initialize()\r\n {\r\n if (HostExtensions && HostExtensions.initialize)\r\n {\r\n HostExtensions.initialize(_this, _serverData, params);\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"footer-buttons-field\",\r\n {\r\n viewModel: FooterButtonsViewModel,\r\n template: require(\"html/LoginPage/Fields/FooterButtons/FooterButtonsFieldHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = FooterButtonsViewModel;","\r\n\r\nvar ko = require(\"knockout\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar Constants = require(\"../Core/Constants\");\r\nvar PromiseHelpers = require(\"../Core/PromiseHelpers\");\r\n\r\nvar requireDefaultBackgroundImage = require.context(\"images/Backgrounds\", false, /^.+?\\.jpg|svg$/);\r\nvar requireAppBackgroundImage = require.context(\"images/AppBackgrounds\", false, /^.+?\\.jpg$/);\r\nvar requireAppBackgroundLogo = require.context(\"images/AppLogos\", false, /^.+?\\.png$/);\r\n\r\nvar w = window;\r\nvar BrowserHelper = Browser.Helper;\r\nvar StringHelpers = Helpers.String;\r\nvar ObjectHelpers = Helpers.Object;\r\nvar LayoutTemplateType = Constants.LayoutTemplateType;\r\nvar Branding = Constants.Branding;\r\n\r\nvar useNonMicrosoftDefaultBrandingForCiam = w.ServerData.fUseNonMicrosoftDefaultBrandingForCiam;\r\nvar isCiamUserFlowUx = w.ServerData.fIsCiamUserFlowUx;\r\nvar fixCustomCssRemoval = w.ServerData.fRemoveCustomCss;\r\nvar enableLivePreview = w.ServerData.fEnableLivePreview;\r\n\r\nvar BrandingHelpers =\r\n{\r\n loadTenantBranding: function (brandingToUse)\r\n {\r\n var brandingObject = {};\r\n\r\n if (brandingToUse)\r\n {\r\n var brandingProperties =\r\n [\r\n \"BoilerPlateText\",\r\n \"UserIdLabel\",\r\n \"TileLogo\",\r\n \"TileDarkLogo\",\r\n \"BannerLogo\",\r\n \"BackgroundColor\",\r\n \"Illustration\",\r\n \"KeepMeSignedInDisabled\",\r\n \"UseTransparentLightBox\",\r\n \"LayoutTemplateConfig\",\r\n \"CustomizationFiles\",\r\n \"AccessRecoveryLink\",\r\n \"CantAccessYourAccountText\",\r\n \"ForgotPasswordText\",\r\n \"FooterTOULink\",\r\n \"FooterTOUText\",\r\n \"FooterPrivacyLink\",\r\n \"FooterPrivacyText\",\r\n \"Favicon\"\r\n ];\r\n\r\n \r\n \r\n var fallbackBranding = brandingToUse[0] || {};\r\n var preferredBranding = brandingToUse[1] || {};\r\n\r\n \r\n ko.utils.arrayForEach(\r\n brandingProperties,\r\n function (brandingProperty)\r\n {\r\n if (brandingProperty === \"LayoutTemplateConfig\" || brandingProperty === \"CustomizationFiles\")\r\n {\r\n var currentPreferredBranding = preferredBranding[brandingProperty];\r\n var currentFallbackBranding = fallbackBranding[brandingProperty];\r\n\r\n \r\n \r\n brandingObject[brandingProperty] = ObjectHelpers.assignRecursive({}, currentFallbackBranding, currentPreferredBranding);\r\n }\r\n else\r\n {\r\n \r\n brandingObject[brandingProperty] = preferredBranding[brandingProperty] || fallbackBranding[brandingProperty] || \"\";\r\n }\r\n }\r\n );\r\n\r\n \r\n if (!brandingObject.TileDarkLogo)\r\n {\r\n brandingObject.TileDarkLogo = brandingObject.TileLogo;\r\n }\r\n }\r\n\r\n return brandingObject;\r\n },\r\n\r\n getPageBranding: function (tenantBranding, appBranding, defaultImage)\r\n {\r\n var branding = { useDefaultBackground: false };\r\n\r\n if (tenantBranding)\r\n {\r\n branding.bannerLogoUrl = tenantBranding.BannerLogo;\r\n }\r\n\r\n if (tenantBranding && (tenantBranding.BackgroundColor || tenantBranding.Illustration))\r\n {\r\n \r\n branding.color = tenantBranding.BackgroundColor;\r\n branding.backgroundImageUrl = tenantBranding.Illustration;\r\n branding.useTransparentLightBox = tenantBranding.UseTransparentLightBox;\r\n\r\n if (useNonMicrosoftDefaultBrandingForCiam)\r\n {\r\n branding.useImageMask = !isCiamUserFlowUx;\r\n }\r\n else\r\n {\r\n branding.useImageMask = true;\r\n }\r\n }\r\n else if (appBranding\r\n && (appBranding.backgroundImageIndex >= 0 || appBranding.backgroundLogoIndex >= 0 || appBranding.backgroundColor || appBranding.friendlyAppName))\r\n {\r\n \r\n if (appBranding.backgroundImageIndex >= 0)\r\n {\r\n branding.backgroundImageUrl = requireAppBackgroundImage(StringHelpers.format(\"./{0}.jpg\", appBranding.backgroundImageIndex));\r\n\r\n if (BrowserHelper.isStyleSupported(\"backgroundSize\"))\r\n {\r\n \r\n branding.smallImageUrl = requireAppBackgroundImage(StringHelpers.format(\"./{0}-small.jpg\", appBranding.backgroundImageIndex));\r\n }\r\n }\r\n\r\n if (appBranding.backgroundLogoIndex >= 0)\r\n {\r\n branding.backgroundLogoUrl = requireAppBackgroundLogo(StringHelpers.format(\"./{0}.png\", appBranding.backgroundLogoIndex));\r\n }\r\n\r\n branding.color = appBranding.backgroundColor;\r\n branding.friendlyAppName = appBranding.friendlyAppName;\r\n }\r\n else if (appBranding && appBranding.urlLegacyBackgroundLogo)\r\n {\r\n \r\n \r\n branding.backgroundLogoUrl = appBranding.urlLegacyBackgroundLogo;\r\n }\r\n else if (useNonMicrosoftDefaultBrandingForCiam && isCiamUserFlowUx)\r\n {\r\n branding.color = Branding.DefaultBackgroundColor;\r\n }\r\n else if (defaultImage >= 0)\r\n {\r\n var useSvg = BrowserHelper.isSvgImgSupported();\r\n\r\n branding.backgroundImageUrl = requireDefaultBackgroundImage(\r\n StringHelpers.format(\r\n \"./{0}.{1}\",\r\n defaultImage,\r\n useSvg ? \"svg\" : \"jpg\"));\r\n\r\n if (!useSvg && BrowserHelper.isStyleSupported(\"backgroundSize\"))\r\n {\r\n \r\n branding.smallImageUrl = requireDefaultBackgroundImage(StringHelpers.format(\"./{0}-small.jpg\", defaultImage));\r\n }\r\n\r\n branding.useDefaultBackground = true;\r\n }\r\n\r\n return branding;\r\n },\r\n\r\n getMergedBranding: function (staticTenantBranding, dynamicTenantBranding, isGlobalTenant, fallbackToResourceBranding)\r\n {\r\n var mergedBranding;\r\n\r\n if (isGlobalTenant)\r\n {\r\n \r\n mergedBranding = dynamicTenantBranding;\r\n }\r\n else\r\n {\r\n \r\n \r\n \r\n \r\n mergedBranding = staticTenantBranding;\r\n\r\n dynamicTenantBranding = dynamicTenantBranding || {};\r\n\r\n if (fallbackToResourceBranding)\r\n {\r\n if (dynamicTenantBranding.BannerLogo)\r\n {\r\n mergedBranding.BannerLogo = dynamicTenantBranding.BannerLogo;\r\n }\r\n\r\n if (dynamicTenantBranding.BoilerPlateText)\r\n {\r\n mergedBranding.BoilerPlateText = dynamicTenantBranding.BoilerPlateText;\r\n }\r\n\r\n if (dynamicTenantBranding.KeepMeSignedInDisabled)\r\n {\r\n mergedBranding.KeepMeSignedInDisabled = dynamicTenantBranding.KeepMeSignedInDisabled;\r\n }\r\n\r\n if (dynamicTenantBranding.AccessRecoveryLink)\r\n {\r\n mergedBranding.AccessRecoveryLink = dynamicTenantBranding.AccessRecoveryLink;\r\n }\r\n\r\n if (dynamicTenantBranding.CantAccessYourAccountText)\r\n {\r\n mergedBranding.CantAccessYourAccountText = dynamicTenantBranding.CantAccessYourAccountText;\r\n }\r\n\r\n if (dynamicTenantBranding.ForgotPasswordText)\r\n {\r\n mergedBranding.ForgotPasswordText = dynamicTenantBranding.ForgotPasswordText;\r\n }\r\n }\r\n else\r\n {\r\n mergedBranding.BannerLogo = dynamicTenantBranding.BannerLogo || \"\";\r\n mergedBranding.BoilerPlateText = dynamicTenantBranding.BoilerPlateText || \"\";\r\n mergedBranding.KeepMeSignedInDisabled = dynamicTenantBranding.KeepMeSignedInDisabled || false;\r\n mergedBranding.AccessRecoveryLink = dynamicTenantBranding.AccessRecoveryLink || \"\";\r\n mergedBranding.CantAccessYourAccountText = dynamicTenantBranding.CantAccessYourAccountText || \"\";\r\n mergedBranding.ForgotPasswordText = dynamicTenantBranding.ForgotPasswordText || \"\";\r\n }\r\n\r\n var hideAccountResetCredentials = false;\r\n if (dynamicTenantBranding.LayoutTemplateConfig)\r\n {\r\n hideAccountResetCredentials = dynamicTenantBranding.LayoutTemplateConfig.hideAccountResetCredentials;\r\n }\r\n\r\n mergedBranding.LayoutTemplateConfig = mergedBranding.LayoutTemplateConfig || BrandingHelpers.getLayoutTemplateConfig({});\r\n mergedBranding.LayoutTemplateConfig.hideAccountResetCredentials = hideAccountResetCredentials;\r\n\r\n mergedBranding.CustomizationFiles = mergedBranding.CustomizationFiles || {};\r\n if (dynamicTenantBranding.CustomizationFiles)\r\n {\r\n \r\n var newCustomizationFiles =\r\n {\r\n strings: dynamicTenantBranding.CustomizationFiles.strings,\r\n customCssUrl: dynamicTenantBranding.CustomizationFiles.customCssUrl\r\n };\r\n\r\n \r\n \r\n if (mergedBranding.CustomizationFiles.customCssUrl !== newCustomizationFiles.customCssUrl)\r\n {\r\n newCustomizationFiles.customCssUrl = null;\r\n }\r\n\r\n mergedBranding.CustomizationFiles = newCustomizationFiles;\r\n }\r\n }\r\n\r\n return mergedBranding;\r\n },\r\n\r\n getLayoutTemplateConfig: function (tenantBranding)\r\n {\r\n var layoutTemplateConfig = tenantBranding.LayoutTemplateConfig;\r\n\r\n if (!layoutTemplateConfig || layoutTemplateConfig === {})\r\n {\r\n layoutTemplateConfig = {\r\n showHeader: false,\r\n headerLogo: \"\",\r\n layoutType: LayoutTemplateType.Lightbox,\r\n showFooter: true,\r\n hideTOU: false,\r\n hidePrivacy: false,\r\n hideAccountResetCredentials: false\r\n };\r\n\r\n if (useNonMicrosoftDefaultBrandingForCiam && isCiamUserFlowUx)\r\n {\r\n layoutTemplateConfig.showFooter = false;\r\n }\r\n }\r\n\r\n return layoutTemplateConfig;\r\n },\r\n\r\n createMergedBrandingObservables: function (viewModel)\r\n {\r\n viewModel.masterPageMethods = ko.observable();\r\n viewModel.isVerticalSplitTemplate = ko.observable();\r\n viewModel.showHeader = ko.observable(false);\r\n viewModel.headerLogo = ko.observable();\r\n viewModel.showFooter = ko.observable(true);\r\n viewModel.hideTOU = ko.observable(false);\r\n viewModel.hidePrivacy = ko.observable(false);\r\n viewModel.termsText = ko.observable();\r\n viewModel.termsLink = ko.observable();\r\n viewModel.privacyText = ko.observable();\r\n viewModel.privacyLink = ko.observable();\r\n viewModel.userIdLabel = ko.observable();\r\n viewModel.cantAccessYourAccountText = ko.observable();\r\n viewModel.forgotPasswordText = ko.observable();\r\n viewModel.accessRecoveryLink = ko.observable();\r\n viewModel.boilerPlateText = ko.observable();\r\n viewModel.hideAccountResetCredentials = ko.observable(false);\r\n },\r\n\r\n updateMergedBrandingObservables: function (viewModel, mergedBranding)\r\n {\r\n if ((__LAYOUT_TEMPLATES_ENABLED__ || __LAYOUT_TEMPLATES_ROLLOUT__) && mergedBranding)\r\n {\r\n var layoutTemplateConfig = BrandingHelpers.getLayoutTemplateConfig(mergedBranding);\r\n if (viewModel.masterPageMethods())\r\n {\r\n viewModel.masterPageMethods().updateBranding(mergedBranding);\r\n }\r\n\r\n viewModel.isVerticalSplitTemplate(layoutTemplateConfig.layoutType === LayoutTemplateType.VerticalSplit);\r\n viewModel.showHeader(layoutTemplateConfig.showHeader);\r\n viewModel.headerLogo(layoutTemplateConfig.headerLogo);\r\n viewModel.showFooter(layoutTemplateConfig.showFooter);\r\n viewModel.hideTOU(layoutTemplateConfig.hideTOU);\r\n viewModel.hidePrivacy(layoutTemplateConfig.hidePrivacy);\r\n viewModel.termsText(mergedBranding.FooterTOUText);\r\n viewModel.termsLink(mergedBranding.FooterTOULink);\r\n viewModel.privacyText(mergedBranding.FooterPrivacyText);\r\n viewModel.privacyLink(mergedBranding.FooterPrivacyLink);\r\n if (enableLivePreview)\r\n {\r\n viewModel.hideAccountResetCredentials(layoutTemplateConfig.hideAccountResetCredentials);\r\n viewModel.userIdLabel(mergedBranding.UserIdLabel);\r\n viewModel.cantAccessYourAccountText(mergedBranding.CantAccessYourAccountText);\r\n viewModel.forgotPasswordText(mergedBranding.ForgotPasswordText);\r\n viewModel.accessRecoveryLink(mergedBranding.AccessRecoveryLink);\r\n viewModel.boilerPlateText(mergedBranding.BoilerPlateText);\r\n }\r\n }\r\n },\r\n\r\n updateFavicon: function (tenantBranding, defaultFaviconUrl)\r\n {\r\n var favicon = document.querySelector(\"link[rel~='icon']\");\r\n\r\n if (favicon)\r\n {\r\n if (tenantBranding && tenantBranding.Favicon)\r\n {\r\n favicon.href = tenantBranding.Favicon;\r\n }\r\n else if (defaultFaviconUrl)\r\n {\r\n favicon.href = defaultFaviconUrl;\r\n }\r\n }\r\n },\r\n\r\n removeCustomCss: function ()\r\n {\r\n var customCssNode = document.head.querySelector(\"#customCssStyle\");\r\n if (customCssNode)\r\n {\r\n document.head.removeChild(customCssNode);\r\n }\r\n },\r\n\r\n loadCustomizationFiles: function (tenantBranding, customizationLoader)\r\n {\r\n if (fixCustomCssRemoval && (!customizationLoader || !tenantBranding || !tenantBranding.CustomizationFiles || !tenantBranding.CustomizationFiles.customCssUrl))\r\n {\r\n BrandingHelpers.removeCustomCss();\r\n }\r\n\r\n if (!customizationLoader)\r\n {\r\n return;\r\n }\r\n\r\n if (!tenantBranding || !tenantBranding.CustomizationFiles)\r\n {\r\n customizationLoader.isLoadComplete(true);\r\n customizationLoader.strings.isLoadComplete(true);\r\n return;\r\n }\r\n\r\n var customizationFiles = tenantBranding.CustomizationFiles;\r\n var customCssUrl = customizationFiles.customCssUrl;\r\n var customStringsFiles = customizationFiles.strings;\r\n\r\n if (customStringsFiles || customCssUrl)\r\n {\r\n customizationLoader.initialize();\r\n\r\n var customResourceUrls =\r\n {\r\n customStringsFiles: customStringsFiles,\r\n customCss: customCssUrl\r\n };\r\n\r\n PromiseHelpers.throwUnhandledExceptionOnRejection(customizationLoader.load(customResourceUrls));\r\n }\r\n else\r\n {\r\n customizationLoader.isLoadComplete(true);\r\n customizationLoader.strings.isLoadComplete(true);\r\n }\r\n },\r\n\r\n createCustomizationLoader: function (serverData, mergedBranding, customizationLoaderObservable, pageId)\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n var CustomizationLoader = require(\"./CustomizationLoader\");\r\n var customizationFilesLoader = new CustomizationLoader({ serverData: serverData, pageId: pageId });\r\n\r\n if (customizationLoaderObservable)\r\n {\r\n customizationLoaderObservable(customizationFilesLoader);\r\n BrandingHelpers.loadCustomizationFiles(mergedBranding, customizationLoaderObservable());\r\n }\r\n else\r\n {\r\n BrandingHelpers.loadCustomizationFiles(mergedBranding, customizationFilesLoader);\r\n }\r\n },\r\n \"CustomizationLoader\");\r\n }\r\n};\r\n\r\nmodule.exports = BrandingHelpers;","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar w = window;\r\nvar BrowserHelper = Browser.Helper;\r\n\r\nfunction MarchingAntsControl()\r\n{\r\n var _this = this;\r\n\r\n _this.useCssAnimation = false;\r\n\r\n (function _initialize()\r\n {\r\n if (BrowserHelper.isCSSAnimationSupported() && !BrowserHelper.isHighContrast())\r\n {\r\n _this.useCssAnimation = true;\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"marching-ants-control\",\r\n {\r\n viewModel: MarchingAntsControl,\r\n template: require(\"html/Shared/Controls/MarchingAntsControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents)\r\n });\r\n\r\nmodule.exports = MarchingAntsControl;","var Ajax = require(\"./AjaxHandlerControl\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar AjaxHelpers = Ajax.Helper;\r\nvar QueryStringHelpers = Browser.QueryString;\r\n\r\nvar c_timeout = 30000;\r\n\r\nvar OtcProperties = exports.Properties =\r\n{\r\n State: \"State\",\r\n SessionLookupKey: \"SessionLookupKey\",\r\n DisplaySignForUI: \"DisplaySignForUI\",\r\n FlowToken: \"FlowToken\"\r\n};\r\n\r\nvar OtcPurpose = exports.Purpose =\r\n{\r\n Password: \"eOTT_OneTimePassword\",\r\n RemoteNGC: \"eOTT_RemoteNGC\",\r\n NoPassword: \"eOTT_NoPasswordAccountLoginCode\",\r\n OtcLogin: \"eOTT_OtcLogin\",\r\n XboxRemoteConnect: \"RemoteSignInWithUserCode\"\r\n};\r\n\r\nvar OtcChannel = exports.Channel =\r\n{\r\n Authenticator: \"Authenticator\",\r\n MobileSms: \"SMS\",\r\n EmailAddress: \"Email\",\r\n VoiceCall: \"Voice\",\r\n PushNotifications: \"PushNotifications\"\r\n};\r\n\r\nvar OtcType = exports.Type =\r\n{\r\n EmailAddress: \"AltEmail\",\r\n EmailAddressEncrypted: \"AltEmailE\",\r\n Mobile: \"MobileNum\",\r\n MobileEncrypted: \"MobileNumE\",\r\n SessionApprover: \"SAPId\"\r\n};\r\n\r\nexports.Event =\r\n{\r\n OnSend: \"otcsend\",\r\n OnSendFail: \"otcsendfailed\",\r\n OnFlowExpired: \"otcflowexpired\"\r\n};\r\n\r\nvar OtcRequestParam = exports.RequestParam =\r\n{\r\n Username: \"login\",\r\n Purpose: \"purpose\",\r\n FlowToken: \"flowtoken\",\r\n CanaryFlowToken: \"canaryFlowToken\",\r\n Channel: \"channel\",\r\n UIMode: \"UIMode\",\r\n PhoneCountry: \"MobileCountry\",\r\n PhoneCountryCode: \"MobileCC\",\r\n UnauthSessionId: \"uaid\",\r\n ProofConfirmation: \"ProofConfirmation\"\r\n};\r\n\r\nvar OtcStatus = exports.Status =\r\n{\r\n None: 0,\r\n Error: 200,\r\n Success: 201,\r\n HIPError: 202,\r\n FTError: 203,\r\n InputError: 204,\r\n DestinationError: 205,\r\n Timeout: 300\r\n};\r\n\r\nvar ProofTypeToChannel = exports.ProofTypeToChannel = function (type)\r\n{\r\n \r\n \r\n \r\n \r\n \r\n\r\n var value = null;\r\n switch (type)\r\n {\r\n case PROOF.Type.SMS:\r\n value = OtcChannel.MobileSms;\r\n break;\r\n case PROOF.Type.Voice:\r\n value = OtcChannel.VoiceCall;\r\n break;\r\n case PROOF.Type.Email:\r\n case PROOF.Type.AltEmail:\r\n value = OtcChannel.EmailAddress;\r\n break;\r\n case PROOF.Type.TOTPAuthenticatorV2:\r\n value = OtcChannel.PushNotifications;\r\n break;\r\n }\r\n return value;\r\n};\r\n\r\nvar ProofTypeToOtcType = exports.ProofTypeToOtcType = function (type, isEncrypted)\r\n{\r\n \r\n \r\n \r\n \r\n \r\n\r\n var value = null;\r\n switch (type)\r\n {\r\n case PROOF.Type.Voice:\r\n case PROOF.Type.SMS:\r\n value = (isEncrypted ? OtcType.MobileEncrypted : OtcType.Mobile);\r\n break;\r\n case PROOF.Type.Email:\r\n case PROOF.Type.AltEmail:\r\n value = (isEncrypted ? OtcType.EmailAddressEncrypted : OtcType.EmailAddress);\r\n break;\r\n case PROOF.Type.TOTPAuthenticatorV2:\r\n value = OtcType.SessionApprover;\r\n break;\r\n }\r\n return value;\r\n};\r\n\r\nexports.Proof = function (params)\r\n{\r\n var _this = this;\r\n\r\n var _username = params.username || \"\";\r\n var _flowToken = params.flowToken || \"\";\r\n var _purpose = params.purpose || OtcPurpose.Password;\r\n var _proofType = params.proofType;\r\n var _proofData = params.proofData || \"\";\r\n var _isEncrypted = params.isEncrypted;\r\n var _uiMode = params.uiMode;\r\n var _lcid = params.lcid;\r\n var _phoneCountry = params.phoneCountry || \"\";\r\n var _phoneCountryCode = params.phoneCountryCode || \"\";\r\n var _unauthSessionId = params.unauthSessionId;\r\n var _proofConfirmation = params.proofConfirmation;\r\n var _canaryFlowToken = params.canaryFlowToken;\r\n\r\n _this[OtcRequestParam.Username] = _username;\r\n _this[OtcRequestParam.FlowToken] = _flowToken;\r\n _this[OtcRequestParam.Purpose] = _purpose;\r\n _this[OtcRequestParam.Channel] = ProofTypeToChannel(_proofType);\r\n _this[ProofTypeToOtcType(_proofType, _isEncrypted)] = _proofData;\r\n\r\n if (_uiMode)\r\n {\r\n _this[OtcRequestParam.UIMode] = _uiMode;\r\n }\r\n\r\n if (_lcid)\r\n {\r\n _this.lcid = _lcid;\r\n }\r\n\r\n \r\n if (!_isEncrypted && (_proofType === PROOF.Type.SMS || _proofType === PROOF.Type.Voice))\r\n {\r\n _this[OtcRequestParam.PhoneCountry] = _phoneCountry;\r\n _this[OtcRequestParam.PhoneCountryCode] = _phoneCountryCode;\r\n }\r\n\r\n \r\n if (_unauthSessionId)\r\n {\r\n _this[OtcRequestParam.UnauthSessionId] = _unauthSessionId;\r\n }\r\n\r\n \r\n if (_proofConfirmation)\r\n {\r\n _this[OtcRequestParam.ProofConfirmation] = _proofConfirmation;\r\n }\r\n\r\n \r\n if (_canaryFlowToken)\r\n {\r\n _this[OtcRequestParam.CanaryFlowToken] = _canaryFlowToken;\r\n }\r\n};\r\n\r\nexports.Request = function (params)\r\n{\r\n var c_url = \"GetOneTimeCode.srf\";\r\n\r\n var _this = this;\r\n\r\n var _status = OtcStatus.None;\r\n var _sessionKey = \"\";\r\n var _displaySign = \"\";\r\n var _flowToken = \"\";\r\n\r\n var _data = params.data;\r\n var _onSend = params.onSend;\r\n var _onSendFail = params.onSendFail;\r\n var _onFlowExpired = params.onFlowExpired;\r\n var _timeout = params.timeout || c_timeout;\r\n var _siteId = params.siteId;\r\n var _clientId = params.clientId;\r\n var _forwardedClientId = params.forwardedClientId;\r\n var _noPaBubbleVersion = params.noPaBubbleVersion;\r\n\r\n _this.getOtcStatus = function ()\r\n {\r\n \r\n \r\n \r\n \r\n\r\n if (_this.isComplete())\r\n {\r\n return _status;\r\n }\r\n\r\n return OtcStatus.None;\r\n };\r\n\r\n _this.getSessionKey = function ()\r\n {\r\n \r\n \r\n \r\n \r\n\r\n if (_this.isComplete())\r\n {\r\n return _sessionKey;\r\n }\r\n\r\n return \"\";\r\n };\r\n\r\n _this.getDisplaySign = function ()\r\n {\r\n \r\n \r\n \r\n \r\n\r\n if (_this.isComplete())\r\n {\r\n return _displaySign;\r\n }\r\n\r\n return \"\";\r\n };\r\n\r\n _this.getFlowToken = function ()\r\n {\r\n \r\n \r\n \r\n \r\n\r\n if (_this.isComplete())\r\n {\r\n return _flowToken;\r\n }\r\n\r\n return \"\";\r\n };\r\n\r\n function _evt_AJAX_onsuccess(event)\r\n {\r\n \r\n \r\n \r\n\r\n var isFailed = false;\r\n var json = _this.getResponseJson();\r\n\r\n _flowToken = json[OtcProperties.FlowToken] || \"\";\r\n\r\n if (json[OtcProperties.State])\r\n {\r\n _status = json[OtcProperties.State];\r\n _sessionKey = json[OtcProperties.SessionLookupKey] || \"\";\r\n _displaySign = json[OtcProperties.DisplaySignForUI] || \"\";\r\n isFailed = _status !== OtcStatus.Success;\r\n }\r\n else\r\n {\r\n _status = OtcStatus.Error;\r\n _sessionKey = \"\";\r\n _displaySign = \"\";\r\n isFailed = true;\r\n }\r\n\r\n if (isFailed)\r\n {\r\n if (_status === OtcStatus.FTError)\r\n {\r\n _onFlowExpired(event, _this);\r\n }\r\n else\r\n {\r\n _onSendFail(event, _this);\r\n }\r\n }\r\n else\r\n {\r\n _onSend(event);\r\n }\r\n }\r\n\r\n function _evt_AJAX_onerror()\r\n {\r\n \r\n \r\n \r\n\r\n _flowToken = \"\";\r\n _status = OtcStatus.Error;\r\n _sessionKey = \"\";\r\n _displaySign = \"\";\r\n\r\n _onSendFail(_this);\r\n }\r\n\r\n function _evt_AJAX_ontimeout()\r\n {\r\n \r\n \r\n \r\n\r\n _status = OtcStatus.Timeout;\r\n _sessionKey = \"\";\r\n _displaySign = \"\";\r\n _flowToken = \"\";\r\n _onSendFail(_this);\r\n }\r\n\r\n (function _initialize()\r\n {\r\n var url = c_url;\r\n var market = QueryStringHelpers.extract(\"mkt\");\r\n var lcid = QueryStringHelpers.extract(\"lc\");\r\n\r\n var qsParams = [].concat(\r\n market ? [[\"mkt\", market]] : [],\r\n lcid ? [[\"lcid\", lcid]] : [],\r\n _siteId ? [[\"id\", _siteId]] : [],\r\n _clientId ? [[\"client_id\", _clientId]] : [],\r\n _forwardedClientId ? [[\"fci\", _forwardedClientId]] : [],\r\n _noPaBubbleVersion ? [[\"nopa\", _noPaBubbleVersion]] : []);\r\n\r\n var ajaxParams =\r\n {\r\n targetUrl: QueryStringHelpers.add(url, qsParams),\r\n requestType: Ajax.RequestType.Post,\r\n data: AjaxHelpers.generateRequestString(_data),\r\n isAsync: true,\r\n timeout: _timeout,\r\n successCallback: _evt_AJAX_onsuccess,\r\n failureCallback: _evt_AJAX_onerror,\r\n timeoutCallback: _evt_AJAX_ontimeout\r\n };\r\n\r\n Ajax.Handler.call(_this, ajaxParams);\r\n })();\r\n};","var FidoConstants = require(\"./FidoConstants\");\r\nvar PromiseHelpers = require(\"./PromiseHelpers\");\r\nvar TypeConverter = require(\"./TypeConverter\");\r\nvar Promise = require(\"./Promise\");\r\nvar Constants = require(\"./Constants\");\r\nvar LoginConstants = require(\"../LoginPage/LoginConstants\");\r\n\r\nvar w = window;\r\nvar n = w.navigator;\r\nvar _publicKeyCredential = w.PublicKeyCredential;\r\nvar _serverData = w.ServerData;\r\n\r\n\r\nvar _platformKeySuppressedOS = _serverData.fShouldPlatformKeyBeSuppressed;\r\n\r\n\r\nvar PostType = Constants.PostType;\r\nvar AllowedIdentitiesType = LoginConstants.AllowedIdentitiesType;\r\n\r\n\r\nexports.makeCredential = function (serverChallenge, id, membername, displayName, userProfileImageUrl, serverExcludeList, authenticator, rpId, hints)\r\n{\r\n var excludeListParam = [];\r\n\r\n if (serverExcludeList)\r\n {\r\n excludeListParam = serverExcludeList.map(\r\n function (credentialId)\r\n {\r\n return { type: \"public-key\", id: TypeConverter.base64UrlStringToArrayBuffer(credentialId) };\r\n });\r\n }\r\n\r\n \r\n var supportedKeyAlgorithms = FidoConstants.SupportedKeyAlgorithms.map(\r\n function (algorithm)\r\n {\r\n return { type: \"public-key\", alg: algorithm };\r\n });\r\n\r\n var publicKey =\r\n {\r\n challenge: TypeConverter.stringToArrayBuffer(serverChallenge),\r\n rp:\r\n {\r\n name: \"Microsoft\",\r\n id: rpId\r\n },\r\n user:\r\n {\r\n id: TypeConverter.base64UrlStringToArrayBuffer(id),\r\n name: membername,\r\n displayName: displayName,\r\n icon: userProfileImageUrl\r\n },\r\n pubKeyCredParams: supportedKeyAlgorithms,\r\n timeout: FidoConstants.Timeout,\r\n excludeCredentials: excludeListParam,\r\n authenticatorSelection:\r\n {\r\n authenticatorAttachment: authenticator,\r\n requireResidentKey: true,\r\n userVerification: \"required\"\r\n },\r\n attestation: \"direct\",\r\n extensions:\r\n {\r\n \r\n \"hmacCreateSecret\": true,\r\n\r\n \r\n \"credentialProtectionPolicy\": \"userVerificationOptional\"\r\n }\r\n };\r\n\r\n \r\n \r\n if (hints && hints.length)\r\n {\r\n publicKey.hints = hints;\r\n }\r\n\r\n return n.credentials.create({ publicKey: publicKey });\r\n};\r\n\r\n\r\nexports.getAssertion = function (serverChallenge, serverAllowList, rpId, useConditionalMediation, enablePasskeyAutofillUI, hints)\r\n{\r\n var allowListParam = [];\r\n\r\n if (serverAllowList)\r\n {\r\n allowListParam = serverAllowList.map(\r\n function (credentialId)\r\n {\r\n return { type: \"public-key\", id: TypeConverter.base64UrlStringToArrayBuffer(credentialId) };\r\n });\r\n }\r\n\r\n var publicKeyCredentialRequestOptions =\r\n {\r\n challenge: TypeConverter.stringToArrayBuffer(serverChallenge),\r\n timeout: FidoConstants.Timeout,\r\n rpId: rpId,\r\n allowCredentials: allowListParam,\r\n userVerification: \"required\"\r\n };\r\n\r\n \r\n \r\n if (hints && hints.length)\r\n {\r\n publicKeyCredentialRequestOptions.hints = hints;\r\n }\r\n\r\n var conditionalMediation = useConditionalMediation ? \"conditional\" : undefined;\r\n\r\n return enablePasskeyAutofillUI ? n.credentials.get({ publicKey: publicKeyCredentialRequestOptions, mediation: conditionalMediation }) : n.credentials.get({ publicKey: publicKeyCredentialRequestOptions });\r\n};\r\n\r\n\r\nexports.isPlatformAuthenticatorAvailable = function (skipStandardSupportCheck)\r\n{\r\n if (_platformKeySuppressedOS || !(_publicKeyCredential))\r\n {\r\n return Promise.resolve(null);\r\n }\r\n\r\n if (skipStandardSupportCheck)\r\n {\r\n return Promise.resolve(true);\r\n }\r\n\r\n return PromiseHelpers.newPromiseWithTimeout(_publicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable, FidoConstants.PromiseTimeout, false);\r\n};\r\n\r\n\r\nexports.isConditionalMediationAvailable = function ()\r\n{\r\n if (_publicKeyCredential !== undefined && _publicKeyCredential !== null\r\n && typeof _publicKeyCredential.isConditionalMediationAvailable === \"function\")\r\n {\r\n return PromiseHelpers.newPromiseWithTimeout(_publicKeyCredential.isConditionalMediationAvailable, FidoConstants.PromiseTimeout, false);\r\n }\r\n\r\n return Promise.resolve(false);\r\n};\r\n\r\n\r\nexports.getIdpFromUserHandle = function (userHandle)\r\n{\r\n var userHandleString = TypeConverter.arrayBufferToString(userHandle);\r\n\r\n \r\n if (userHandleString.match(/^M.:/))\r\n {\r\n return AllowedIdentitiesType.MsaOnly;\r\n }\r\n\r\n if (userHandleString.match(/^O.:/))\r\n {\r\n return AllowedIdentitiesType.AadOnly;\r\n }\r\n};\r\n\r\n\r\nexports.postFidoAssertionToIdp = function (setRequestPending, fidoAssertion, crossDomainCanary, sessionId, originalRequest, canaryTokenName, canary, flowTokenName, flowToken, postUrl, onRedirect)\r\n{\r\n setRequestPending(true);\r\n\r\n var postParams =\r\n {\r\n type: PostType.NGC,\r\n ps: PostType.NGC,\r\n assertion: fidoAssertion,\r\n hpgrequestid: sessionId,\r\n ctx: originalRequest\r\n };\r\n\r\n if (crossDomainCanary)\r\n {\r\n postParams[\"lmcCanary\"] = crossDomainCanary;\r\n }\r\n\r\n if (canary)\r\n {\r\n postParams[canaryTokenName] = canary;\r\n }\r\n\r\n postParams[flowTokenName] = flowToken;\r\n\r\n onRedirect(postUrl, postParams, false , true );\r\n};","module.exports = __webpack_public_path__ + \"content/images/documentation_white_9ad8d18b22266935b952ba85a2fb252c.png\";","module.exports = __webpack_public_path__ + \"content/images/documentation_white_7849019e114f05613d891a7b3805dda2.svg\";","module.exports = __webpack_public_path__ + \"content/images/documentation_136bc3add990843012b1ec60612de803.png\";","module.exports = __webpack_public_path__ + \"content/images/documentation_dae218aac2d25462ae286ceba8d80ce2.svg\";","module.exports = global[\"ko\"] = require(\"-!.\\\\knockout-latest.js\");","var Otc = require(\"./OtcRequestControl\");\r\nvar ClientTracingConstants = require(\"./ClientTracingConstants\");\r\nvar ClientTracingHelper = require(\"./ClientTracingHelper\").getInstance(window.ServerData);\r\n\r\nmodule.exports = function (params)\r\n{\r\n var _this = this;\r\n\r\n var _request = null;\r\n\r\n var _username = params.username;\r\n var _proofData = params.proofData;\r\n var _proofType = params.proofType;\r\n var _purpose = params.purpose || Otc.Purpose.Password;\r\n var _flowToken = params.flowToken;\r\n var _canaryFlowToken = params.canaryFlowToken;\r\n var _isEncrypted = params.isEncrypted !== false; \r\n var _uiMode = params.uiMode;\r\n var _lcid = params.lcid;\r\n var _unauthSessionId = params.unauthSessionId;\r\n var _proofConfirmation = params.proofConfirmation;\r\n var _phoneCountry = params.phoneCountry;\r\n var _phoneCountryCode = params.phoneCountryCode;\r\n var _siteId = params.siteId;\r\n var _clientId = params.clientId;\r\n var _forwardedClientId = params.forwardedClientId;\r\n var _noPaBubbleVersion = params.noPaBubbleVersion;\r\n\r\n var _successCallback = params.successCallback;\r\n var _failureCallback = params.failureCallback;\r\n\r\n var _clientTracingOptions = params.clientTracingOptions;\r\n var _trackingObject = {};\r\n\r\n \r\n _this.sendRequest = function ()\r\n {\r\n var otcRequestParams =\r\n {\r\n data: _getSendOtcProof(),\r\n siteId: _siteId,\r\n clientId: _clientId,\r\n forwardedClientId: _forwardedClientId,\r\n noPaBubbleVersion: _noPaBubbleVersion,\r\n onSend: _sendOneTimeCode_onSuccess,\r\n onSendFail: _sendOneTimeCode_onFail,\r\n onFlowExpired: _sendOneTimeCode_onFail\r\n };\r\n\r\n var eventArgs = {};\r\n eventArgs.proofType = _proofType;\r\n eventArgs.purpose = _purpose;\r\n eventArgs.uiMode = _uiMode;\r\n eventArgs.lcid = _lcid;\r\n eventArgs.phoneCountry = _phoneCountry;\r\n eventArgs.phoneCountryCode = _phoneCountryCode;\r\n _traceBeginRequest(_trackingObject, eventArgs);\r\n\r\n _request = new Otc.Request(otcRequestParams);\r\n _request.sendRequest();\r\n };\r\n\r\n \r\n function _traceBeginRequest(tracingObject, eventArgs)\r\n {\r\n var eventOptions = _clientTracingOptions || {};\r\n if (!eventOptions.hasOwnProperty(\"eventId\"))\r\n {\r\n \r\n eventOptions.eventId = ClientTracingConstants.EventIds.Api_GetOneTimeToken;\r\n }\r\n\r\n if (eventOptions.eventId)\r\n {\r\n var eventData =\r\n {\r\n eventType: \"POST\",\r\n eventId: eventOptions.eventId,\r\n eventLevel: eventOptions.eventLevel || ClientTracingConstants.EventLevel.Info,\r\n eventArgs: eventArgs,\r\n eventOptions: eventOptions\r\n };\r\n\r\n ClientTracingHelper.traceBeginRequest(tracingObject, eventData);\r\n }\r\n }\r\n\r\n function _traceEndRequest(tracingObject, result, error, succeeded, handler)\r\n {\r\n ClientTracingHelper.traceEndRequest(tracingObject, result, error, succeeded, handler);\r\n }\r\n\r\n function _getSendOtcProof()\r\n {\r\n var proofParams =\r\n {\r\n username: _username,\r\n proofData: _proofData,\r\n proofType: _proofType,\r\n purpose: _purpose,\r\n flowToken: _flowToken,\r\n canaryFlowToken: _canaryFlowToken,\r\n isEncrypted: _isEncrypted,\r\n uiMode: _uiMode,\r\n lcid: _lcid,\r\n unauthSessionId: _unauthSessionId,\r\n proofConfirmation: _proofConfirmation,\r\n phoneCountry: _phoneCountry,\r\n phoneCountryCode: _phoneCountryCode\r\n };\r\n\r\n return new Otc.Proof(proofParams);\r\n }\r\n\r\n function _sendOneTimeCode_onSuccess()\r\n {\r\n _traceEndRequest(\r\n _trackingObject,\r\n \"Success\",\r\n null,\r\n true ,\r\n function ()\r\n {\r\n if (_successCallback)\r\n {\r\n _successCallback(_request);\r\n }\r\n });\r\n }\r\n\r\n function _sendOneTimeCode_onFail()\r\n {\r\n var error = _getOtcError();\r\n _traceEndRequest(\r\n _trackingObject,\r\n \"Failed\",\r\n error,\r\n false ,\r\n function ()\r\n {\r\n if (_failureCallback)\r\n {\r\n _failureCallback(_request);\r\n }\r\n });\r\n }\r\n\r\n function _getOtcError()\r\n {\r\n return { otcStatus: _request.getOtcStatus() };\r\n }\r\n};","\r\n\r\nvar Constants = require(\"./Constants\");\r\nvar LoginConstants = require(\"../LoginPage/LoginConstants\");\r\nvar Promise = require(\"./Promise\");\r\nvar BrandingHelpers = require(\"./BrandingHelpers\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar ApiRequest = require(\"./ApiRequest\");\r\nvar ClientTracingConstants = require(\"./ClientTracingConstants\");\r\n\r\nvar BrowserHelper = Browser.Helper;\r\nvar QueryString = Browser.QueryString;\r\nvar StringHelpers = Helpers.String;\r\nvar ObjectHelpers = Helpers.Object;\r\nvar CredentialType = Constants.CredentialType;\r\nvar RemoteNgcType = Constants.RemoteNgcType;\r\nvar Error = Constants.Error;\r\nvar ApiErrorCodes = Constants.ApiErrorCodes;\r\nvar EstsError = Constants.EstsError;\r\nvar PaginatedState = Constants.PaginatedState;\r\nvar IfExistsResult = Constants.IfExistsResult;\r\nvar ThrottleStatus = Constants.ThrottleStatus;\r\nvar DomainType = Constants.DomainType;\r\nvar BindProvider = Constants.BindProvider;\r\nvar AllowedIdentitiesType = LoginConstants.AllowedIdentitiesType;\r\nvar SessionPullFlags = Constants.SessionPullFlags;\r\nvar Host = null;\r\n\r\nif (__IS_CXH_ENABLED__)\r\n{\r\n Host = require(\"../LoginPage/Win10LoginHost\");\r\n}\r\nelse if (__IS_INCLUSIVE_OOBE__)\r\n{\r\n Host = require(\"../LoginPage/InclusiveWin10LoginHost.js\");\r\n}\r\n\r\n\r\nvar GctResultAction = GetCredentialTypeRequestHelper.GctResultAction =\r\n{\r\n ShowError: 1,\r\n SwitchView: 2,\r\n Redirect: 3\r\n};\r\n\r\n\r\nvar GctRequestHelperFlags = GetCredentialTypeRequestHelper.GctRequestHelperFlags =\r\n{\r\n CheckCurrentIdpOnly: 1 << 0,\r\n IsPhoneNumberFullyQualified: 1 << 1,\r\n DisableDesktopSsoPreferredCred: 1 << 2,\r\n DisableAutoSend: 1 << 3,\r\n ForceOtcLogin: 1 << 4,\r\n IsPostRequest: 1 << 5,\r\n IsSignup: 1 << 6\r\n};\r\n\r\n\r\n\r\n\r\nfunction GetCredentialTypeRequestHelper(serverData, flags)\r\n{\r\n \r\n var _this = this;\r\n\r\n var _isOtherIdpSupported = false;\r\n var _useAltUsernameExistenceErrorPromise = null;\r\n var _isFidoSupportedPromise = null;\r\n var _getPoPAuthenticatorPromise = null;\r\n var _blockBridgePromise = null;\r\n var _blockBridge = false;\r\n var _cache = {};\r\n var _isTapRestrictedWsi = null;\r\n\r\n var _serverData = serverData;\r\n var _checkCurrentIdpOnly = (flags & GctRequestHelperFlags.CheckCurrentIdpOnly) !== 0;\r\n var _isPhoneNumberFullyQualified = (flags & GctRequestHelperFlags.IsPhoneNumberFullyQualified) !== 0;\r\n var _disableDesktopSsoPreferredCred = (flags & GctRequestHelperFlags.DisableDesktopSsoPreferredCred) !== 0;\r\n var _disableAutoSend = (flags & GctRequestHelperFlags.DisableAutoSend) !== 0;\r\n var _forceOtcLogin = (flags & GctRequestHelperFlags.ForceOtcLogin) !== 0;\r\n var _isPostRequest = (flags & GctRequestHelperFlags.IsPostRequest) !== 0;\r\n var _isSignup = (flags & GctRequestHelperFlags.IsSignup) !== 0;\r\n \r\n\r\n \r\n var _strings = _serverData.str;\r\n var _unauthSessionID = _serverData.sUnauthSessionID;\r\n var _allowedIdentities = _serverData.iAllowedIdentities;\r\n var _isFederationDisabled = _serverData.fIsFedDisabled;\r\n var _isRemoteNGCSupported = !!_serverData.fIsRemoteNGCSupported;\r\n var _showCookieBanner = !!_serverData.fShowCookieBanner;\r\n var _isFidoSupportedHint = !!_serverData.fIsFidoSupported;\r\n var _isOtcLoginDisabled = _serverData.fIsOtcLoginDisabled;\r\n var _isNoPaOtcDisabled = _serverData.fIsNoPaOtcDisabled;\r\n var _isExternalFederationDisallowed = !!_serverData.fIsExternalFederationDisallowed;\r\n var _isPassthroughDisallowed = !!_serverData.fIsPassthroughDisallowed;\r\n var _isPhoneNumberSignupDisallowed = !!_serverData.fIsPhoneNumberSignupDisallowed;\r\n var _originalRequest = _serverData.sCtx;\r\n var _redirectToSignupOnNotExists = _serverData.fDoIfExists; \r\n var _checkProofForAliases = _serverData.fCheckProofForAliases; \r\n var _checkApiCanary = _serverData.fCheckApiCanary;\r\n var _getCredentialTypeUrl = _serverData.urlGetCredentialType;\r\n var _isSignupAllowed = _serverData.fCBShowSignUp;\r\n var _allowSkype = _serverData.fAllowSkypeNameLogin;\r\n var _msaSignupUrl = serverData.urlMsaSignUp;\r\n var _signupUrl = _serverData.urlSignUp;\r\n var _showInterstitialView = _serverData.fUseCertificateInterstitialView;\r\n var _signupUrlPostParams = _serverData.oSignUpPostParams;\r\n var _useConsumerEmailError = _serverData.fUseConsumerEmailError;\r\n var _otherIdpRedirectPostParams = _serverData.oUrlOtherIdpPostParams;\r\n var _desktopSsoConfig = _serverData.desktopSsoConfig;\r\n var _federationRedirectQueryString = _serverData.sFedQS;\r\n var _staticTenantBranding = _serverData.staticTenantBranding;\r\n var _dynamicTenantBranding = _serverData.dynamicTenantBranding;\r\n var _isGlobalTenant = _serverData.isGlobalTenant;\r\n var _checkForWindowsSku = _serverData.fCheckForWindowsSku;\r\n var _country = _serverData.country;\r\n var _userProofData = _serverData.arrProofData || {};\r\n var _postProofType = parseInt(_serverData.sProofType);\r\n var _changePasswordUrl = _serverData.urlChangePassword;\r\n var _remoteConnectEnabled = !!_serverData.fAllowRemoteConnect;\r\n var _bindCookiesUsingPoP = _serverData.fBindCookiesUsingPoP;\r\n var _gctFederationFlags = _serverData.iGctFederationFlags || 0;\r\n var _ignoreViralUsers = _serverData.fIgnoreViralUsers;\r\n var _isAccessPassSupported = _serverData.fAccessPassSupported;\r\n var _hidePhoneCobasiInOtherSignIn = _serverData.fHidePhoneCobasiInOtherSignIn;\r\n var _isRestrictedWsi = _serverData.fIsRestrictedWsi;\r\n var _useResetPasswordUrlInPasswordRequiredError = _serverData.fUseResetPwdUrlForPwdRequiredErr;\r\n var _resetPasswordUrl = _serverData.urlResetPassword;\r\n var _isSelfServiceSignupUxEnabled = _serverData.fIsSelfServiceSignupUxEnabled;\r\n var _isCiamUserFlowLinked = _serverData.fIsCiamUserFlowUx;\r\n var _enableWebNativeBridge = _serverData.fEnableWebNativeBridge;\r\n var wamExtensionId = _serverData.sWAMExtension;\r\n var wamChannelId = _serverData.sWAMChannel;\r\n var _canaryTokenName = _serverData.canaryTokenName;\r\n var _canary = _serverData.canary;\r\n var _deprecateSmsAutoSend = _serverData.fDeprecateSmsAutoSend;\r\n var _useWebviewFidoCustomProtocol = _serverData.fUseWebviewFidoCustomProtocol;\r\n var _isQrCodePinSupported = !!_serverData.fIsQrCodePinSupported;\r\n var _isDFPFingerprintingAllowed = _serverData.fEnableDFPIntegration;\r\n var _isImprovedUsernameRecovery = _serverData.fIsImprovedUsernameRecovery;\r\n var _fixPhoneDisambigSignupRedirect = _serverData.fFixPhoneDisambigSignupRedirect;\r\n var _enableRefreshCookiesFix = _serverData.fEnableRefreshCookiesFix;\r\n var _fixUrlExternalIdpFederation = _serverData.fFixUrlExternalIdpFederation;\r\n var _useNativeBridgeEdgeApi = _serverData.fUseNativeBridgeEdgeApi;\r\n var _removeSMSFilterGCTFix = _serverData.fRemoveSMSFilterGCTFix;\r\n var _urlOfficeHrd = _serverData.urlOfficeHrd;\r\n var _correlationId = _serverData.correlationId;\r\n \r\n\r\n \r\n _this.sendAsync = function (otherIdpRedirectUrl, unsafe_username, flowToken)\r\n {\r\n var unsafe_cleansedUsername = _getCleansedUsername(unsafe_username);\r\n var cachedResponse = _cache[unsafe_cleansedUsername] ? _cache[unsafe_cleansedUsername] : null;\r\n var isCachedResponse = !!cachedResponse;\r\n\r\n var gctPromise = cachedResponse\r\n ? Promise.resolve(cachedResponse)\r\n : _callGetCredentialTypeAsync(unsafe_cleansedUsername, flowToken);\r\n\r\n if (_useNativeBridgeEdgeApi)\r\n {\r\n return Promise.all([_useAltUsernameExistenceErrorPromise, gctPromise, _isFidoSupportedPromise, _blockBridgePromise]).then(\r\n function (results)\r\n {\r\n var useAltUsernameExistenceError = results[0];\r\n var response = results[1];\r\n var isFidoSupported = results[2];\r\n _blockBridge = results[3];\r\n return _parseGetCredentialTypeResponse(otherIdpRedirectUrl, unsafe_cleansedUsername, useAltUsernameExistenceError, response, isFidoSupported, isCachedResponse);\r\n },\r\n _handleGetCredentialTypeError);\r\n }\r\n\r\n return Promise.all([_useAltUsernameExistenceErrorPromise, gctPromise, _isFidoSupportedPromise]).then(\r\n function (results)\r\n {\r\n var useAltUsernameExistenceError = results[0];\r\n var response = results[1];\r\n var isFidoSupported = results[2];\r\n\r\n return _parseGetCredentialTypeResponse(otherIdpRedirectUrl, unsafe_cleansedUsername, useAltUsernameExistenceError, response, isFidoSupported, isCachedResponse);\r\n },\r\n _handleGetCredentialTypeError);\r\n };\r\n\r\n _this.getResult = function (otherIdpRedirectUrl, unsafe_username, response, isFidoSupported)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n return _parseGetCredentialTypeResponse(\r\n otherIdpRedirectUrl,\r\n _getCleansedUsername(unsafe_username),\r\n false ,\r\n response,\r\n isFidoSupported,\r\n false );\r\n };\r\n\r\n _this.getState = function ()\r\n {\r\n return { cache: _cache };\r\n };\r\n\r\n _this.restoreState = function (state)\r\n {\r\n if (state)\r\n {\r\n _cache = state.cache || {};\r\n }\r\n };\r\n\r\n _this.cacheResponse = function (unsafe_username, response)\r\n {\r\n \r\n if (_fixPhoneDisambigSignupRedirect && StringHelpers.isPhoneNumber(unsafe_username))\r\n {\r\n return;\r\n }\r\n\r\n _cache[_getCleansedUsername(unsafe_username)] = response;\r\n };\r\n\r\n _this.getSignupRedirectGctResult = function (unsafe_username)\r\n {\r\n var unsafe_cleansedUsername = _getCleansedUsername(unsafe_username);\r\n var cachedResponse = _cache[unsafe_cleansedUsername] ? _cache[unsafe_cleansedUsername] : null;\r\n return _getSignupRedirectGctResultForResponse(unsafe_cleansedUsername, cachedResponse);\r\n };\r\n\r\n _this.getOtherIdpRedirectGctResult = function (otherIdpRedirectUrl, unsafe_username)\r\n {\r\n return _getOtherIdpRedirectGctResult(otherIdpRedirectUrl, _getCleansedUsername(unsafe_username));\r\n };\r\n\r\n _this.getGctSharedData = function (response, isFidoSupported, isCachedResponse)\r\n {\r\n var sharedData = {};\r\n var preferredCredential = _getPreferredCredential(response, isFidoSupported);\r\n var availableCredentials = response.Credentials || {};\r\n var ngcParams = availableCredentials.RemoteNgcParams;\r\n var fidoParams = availableCredentials.FidoParams;\r\n var qrCodePinParams = availableCredentials.QrCodePinParams;\r\n var estsProperties = response.EstsProperties || {};\r\n var remoteNgcDefaultType = ngcParams ? ngcParams.DefaultType : null;\r\n var remoteNgcShowAnimatedGifWhilePolling = ngcParams ? ngcParams.ShowAnimatedGifWhilePolling : false;\r\n var remoteNgcStyleCredSwitchLinkAsButton = ngcParams ? ngcParams.StyleCredSwitchLinkAsButton : false;\r\n var dynamicTenantBranding = BrandingHelpers.loadTenantBranding(estsProperties.UserTenantBranding || _dynamicTenantBranding);\r\n var staticTenantBranding = BrandingHelpers.loadTenantBranding(_staticTenantBranding);\r\n var fedRedirectParams = _getFedRedirectParams(response.Username, response, isFidoSupported);\r\n var undirectedRecoveryContinuationToken = response && response.AcmaProperties && response.AcmaProperties.RecoveryContinuationToken;\r\n var undirectedRecoveryUrl = response && response.AcmaProperties && response.AcmaProperties.UndirectedRecoveryUrl;\r\n var accountRecoveryUrlV2 = response && response.AcmaProperties && response.AcmaProperties.AccountRecoveryUrlV2;\r\n var accountRecoveryContinuationTokenV2 = response && response.AcmaProperties && response.AcmaProperties.AccountRecoveryContinuationTokenV2;\r\n var supportsAccountRecoveryV2 = response && response.AcmaProperties && response.AcmaProperties.AccountRecoverySupportedV2;\r\n\r\n \r\n var directedRecoveryContinuationToken = response && response.AcmaProperties && response.AcmaProperties.RecoveryContinuationToken;\r\n var directedRecoveryUrl = response && response.AcmaProperties && response.AcmaProperties.PasswordRecoveryUrl;\r\n var isEligibleForV2Recovery = response && response.AcmaProperties && response.AcmaProperties.SupportsModernPasswordRecoveryV2;\r\n\r\n \r\n if (_isDFPFingerprintingAllowed && response.DfpProperties && response.DfpProperties.DfpUrl)\r\n {\r\n sharedData.urlDeviceFingerprinting = response.DfpProperties.DfpUrl;\r\n }\r\n\r\n sharedData.preferredCredential = preferredCredential;\r\n sharedData.location = response.Location;\r\n sharedData.fedRedirectParams = fedRedirectParams;\r\n sharedData.isTapRestrictedWsi = _isTapRestrictedWsi;\r\n sharedData.supportsNativeCredentialRecovery = response.SupportsNativeCredentialRecovery;\r\n sharedData.isSignup = response.IfExistsResult === IfExistsResult.NotExist && _isSelfServiceSignupUxEnabled;\r\n\r\n if (response.Display)\r\n {\r\n sharedData.displayName = response.Display;\r\n }\r\n\r\n sharedData.availableCreds = _getAvailableCreds(response, isFidoSupported);\r\n sharedData.evictedCreds = _getEvictedCreds(response, isFidoSupported);\r\n\r\n if (preferredCredential === CredentialType.OneTimeCode)\r\n {\r\n sharedData.otcCredential = Helpers.Array.first(\r\n sharedData.availableCreds,\r\n function (credential)\r\n {\r\n return credential.credType === CredentialType.OneTimeCode && credential.proof.otcSent;\r\n });\r\n\r\n if (!sharedData.otcCredential && response.Credentials && response.Credentials.OTCNotAutoSent)\r\n {\r\n if (_removeSMSFilterGCTFix)\r\n {\r\n sharedData.otcCredential = Helpers.Array.first(\r\n sharedData.availableCreds,\r\n function (credential)\r\n {\r\n return credential.credType === CredentialType.OneTimeCode;\r\n });\r\n }\r\n else\r\n {\r\n sharedData.otcCredential = Helpers.Array.first(\r\n sharedData.availableCreds,\r\n function (credential)\r\n {\r\n return credential.credType === CredentialType.OneTimeCode && credential.proof.type === PROOF.Type.SMS;\r\n });\r\n }\r\n }\r\n\r\n \r\n sharedData.useEvictedCredentials = false;\r\n }\r\n\r\n sharedData.remoteNgcParams =\r\n {\r\n requestSent: !_disableAutoSend && !isCachedResponse && preferredCredential === CredentialType.RemoteNGC && ngcParams && ngcParams.hasOwnProperty(\"Entropy\"),\r\n sessionIdentifier: ngcParams ? ngcParams.SessionIdentifier : null,\r\n entropy: ngcParams ? ngcParams.Entropy : null,\r\n defaultType: remoteNgcDefaultType,\r\n showAnimatedGifWhilePolling: remoteNgcShowAnimatedGifWhilePolling,\r\n styleCredSwitchLinkAsButton: remoteNgcStyleCredSwitchLinkAsButton\r\n };\r\n\r\n sharedData.otcParams =\r\n {\r\n \r\n requestSent: ((preferredCredential === CredentialType.OneTimeCode) || (preferredCredential === CredentialType.PublicIdentifierCode))\r\n && (response.IfExistsResult !== IfExistsResult.ExistsBothIDPs)\r\n };\r\n\r\n if (fidoParams && fidoParams.AllowList)\r\n {\r\n sharedData.fidoParams =\r\n {\r\n hasMsftAndroidAuthAppPasskey: fidoParams.HasMsftAndroidAuthAppPasskey,\r\n hasOnlyMsftAndroidAuthAppPasskey: fidoParams.HasOnlyMsftAndroidAuthAppPasskey,\r\n hasMsftAuthAppPasskey: fidoParams.HasCrossDeviceCapablePasskey,\r\n allowList: fidoParams.AllowList,\r\n hints: fidoParams.Hints\r\n };\r\n }\r\n\r\n if (_isQrCodePinSupported && qrCodePinParams && qrCodePinParams.AllowList)\r\n {\r\n sharedData.qrCodePinParams =\r\n {\r\n allowList: qrCodePinParams.AllowList,\r\n nonce: qrCodePinParams.Nonce\r\n };\r\n }\r\n\r\n sharedData.callMetadata = estsProperties && estsProperties.CallMetadata ? estsProperties.CallMetadata : {};\r\n sharedData.userTenantBranding = BrandingHelpers.getMergedBranding(staticTenantBranding, dynamicTenantBranding, _isGlobalTenant);\r\n sharedData.undirectedRecoveryContinuationToken = undirectedRecoveryContinuationToken;\r\n sharedData.undirectedRecoveryUrl = undirectedRecoveryUrl;\r\n\r\n sharedData.directedRecoveryContinuationToken = directedRecoveryContinuationToken;\r\n sharedData.directedRecoveryUrl = directedRecoveryUrl;\r\n sharedData.isEligibleForV2Recovery = isEligibleForV2Recovery;\r\n\r\n sharedData.accountRecoveryUrlV2 = accountRecoveryUrlV2;\r\n sharedData.accountRecoveryContinuationTokenV2 = accountRecoveryContinuationTokenV2;\r\n sharedData.supportsAccountRecoveryV2 = supportsAccountRecoveryV2;\r\n\r\n \r\n sharedData.checkPasswordFlowToken = response.CheckPasswordFlowToken || null;\r\n\r\n return sharedData;\r\n };\r\n \r\n\r\n \r\n function _callOfficeHrdAsync(unsafe_username)\r\n {\r\n if (!_urlOfficeHrd\r\n || !StringHelpers.isEmailAddress(unsafe_username))\r\n {\r\n return Promise.resolve();\r\n }\r\n\r\n return new Promise(function (resolve)\r\n {\r\n var officeHrdUrl = QueryString.appendOrReplace(\r\n _urlOfficeHrd,\r\n \"domain\",\r\n encodeURIComponent(StringHelpers.extractDomain(unsafe_username)));\r\n\r\n var headers =\r\n {\r\n \"X-Office-Application\": Constants.OfficeHrdAppId,\r\n \"X-Office-Platform\": \"Web\",\r\n \"X-CorrelationId\": _correlationId\r\n };\r\n\r\n var apiRequest = new ApiRequest({ checkApiCanary: false });\r\n apiRequest.Get(\r\n {\r\n url: officeHrdUrl,\r\n eventId: ClientTracingConstants.EventIds.Api_OfficeHrd\r\n },\r\n null,\r\n function (event, responseString)\r\n {\r\n try\r\n {\r\n var response = JSON.parse(responseString);\r\n resolve(response && response.environment ? response.environment : \"Error\");\r\n }\r\n catch (e)\r\n {\r\n resolve(\"Error\");\r\n }\r\n },\r\n function ()\r\n {\r\n resolve(\"Error\");\r\n },\r\n Constants.DefaultRequestTimeout,\r\n headers,\r\n null,\r\n true );\r\n });\r\n }\r\n\r\n function _buildGetCredentialTypeRequest(unsafe_username, flowToken, isFidoSupported, popAuthenticator, officeHrdEnvironment)\r\n {\r\n var postData =\r\n {\r\n unsafe_username: unsafe_username,\r\n uaid: _unauthSessionID,\r\n isOtherIdpSupported: _isOtherIdpSupported,\r\n isFederationDisabled: _isFederationDisabled,\r\n checkPhones: StringHelpers.isPhoneNumber(unsafe_username),\r\n isRemoteNGCSupported: _isRemoteNGCSupported,\r\n isCookieBannerShown: _showCookieBanner,\r\n isFidoSupported: isFidoSupported,\r\n originalRequest: _originalRequest,\r\n country: _country,\r\n forceotclogin: _forceOtcLogin,\r\n otclogindisallowed: _isOtcLoginDisabled,\r\n isExternalFederationDisallowed: _isExternalFederationDisallowed,\r\n isRemoteConnectSupported: _remoteConnectEnabled,\r\n federationFlags: _gctFederationFlags,\r\n isSignup: _isSignup,\r\n flowToken: flowToken\r\n };\r\n\r\n if (_checkProofForAliases || _isImprovedUsernameRecovery)\r\n {\r\n postData.checkProofForAliases = true;\r\n }\r\n\r\n if (_isNoPaOtcDisabled)\r\n {\r\n postData.noPaOtcDisallowed = true;\r\n }\r\n\r\n if (_isPassthroughDisallowed)\r\n {\r\n postData.isPassthroughDisallowed = true;\r\n }\r\n\r\n if (_isPhoneNumberSignupDisallowed)\r\n {\r\n postData.isPhoneNumberSignupDisallowed = true;\r\n }\r\n\r\n if (_ignoreViralUsers)\r\n {\r\n postData.ignoreViralUsers = true;\r\n }\r\n\r\n if (_bindCookiesUsingPoP)\r\n {\r\n popAuthenticator = popAuthenticator || { cpa: \"\", err: \"Authenticator not generated.\" };\r\n postData.cpa = popAuthenticator.cpa;\r\n postData.cpa_err = popAuthenticator.err;\r\n }\r\n\r\n if (_isAccessPassSupported)\r\n {\r\n postData.isAccessPassSupported = true;\r\n }\r\n\r\n if (_isQrCodePinSupported)\r\n {\r\n postData.isQrCodePinSupported = true;\r\n }\r\n\r\n if (officeHrdEnvironment)\r\n {\r\n postData.officeHrdEnvironment = officeHrdEnvironment;\r\n }\r\n\r\n return postData;\r\n }\r\n\r\n function _buildOtcCredentials(response, isDefault, isFidoSupported)\r\n {\r\n var otcLoginEligibleProofs = response.Credentials && response.Credentials.OtcLoginEligibleProofs;\r\n var otcCredentials = [];\r\n\r\n if (otcLoginEligibleProofs)\r\n {\r\n var isCobasiApp = response.Credentials && response.Credentials.HasPhone && response.Credentials.CobasiApp;\r\n Helpers.Array.forEach(\r\n otcLoginEligibleProofs,\r\n function (eligibleProof)\r\n {\r\n if (eligibleProof.isDefault !== isDefault)\r\n {\r\n return;\r\n }\r\n\r\n var otcCredential =\r\n {\r\n credType: CredentialType.OneTimeCode,\r\n proof: eligibleProof\r\n };\r\n\r\n otcCredential.proof.isEncrypted = true;\r\n\r\n switch (eligibleProof.type)\r\n {\r\n case PROOF.Type.SMS:\r\n case PROOF.Type.Voice:\r\n if (!eligibleProof.isVoiceOnly)\r\n {\r\n var smsCredential = ObjectHelpers.clone(otcCredential);\r\n\r\n if (smsCredential.proof.otcSent && _isPostRequest && _postProofType === PROOF.Type.Voice)\r\n {\r\n smsCredential.proof.otcSent = false;\r\n }\r\n\r\n smsCredential.proof.type = PROOF.Type.SMS;\r\n\r\n if (_hidePhoneCobasiInOtherSignIn && !isCobasiApp)\r\n {\r\n smsCredential.shownOnlyOnPicker = true;\r\n }\r\n\r\n otcCredentials.push(smsCredential);\r\n }\r\n\r\n if (eligibleProof.voiceEnabled)\r\n {\r\n var voiceCredential = ObjectHelpers.clone(otcCredential);\r\n\r\n if (voiceCredential.proof.otcSent && !(_isPostRequest && _postProofType === PROOF.Type.Voice))\r\n {\r\n voiceCredential.proof.otcSent = false;\r\n }\r\n\r\n voiceCredential.proof.type = PROOF.Type.Voice;\r\n otcCredentials.push(voiceCredential);\r\n }\r\n break;\r\n\r\n case PROOF.Type.Email:\r\n otcCredentials.push(ObjectHelpers.clone(otcCredential));\r\n break;\r\n }\r\n });\r\n }\r\n\r\n if (isDefault && otcCredentials.length === 0 && _getPreferredCredential(response, isFidoSupported) === CredentialType.OneTimeCode)\r\n {\r\n var hasPassword = response.Credentials && response.Credentials.HasPassword;\r\n var otcCredential =\r\n {\r\n credType: CredentialType.OneTimeCode,\r\n proof:\r\n {\r\n display: response.Display,\r\n data: StringHelpers.cleanseUsername(response.Display),\r\n otcSent: true,\r\n isEncrypted: false,\r\n isDefault: true,\r\n isNopa: !hasPassword,\r\n type: StringHelpers.isEmailAddress(response.Username) ? PROOF.Type.Email : PROOF.Type.SMS\r\n }\r\n };\r\n\r\n otcCredentials.push(otcCredential);\r\n }\r\n\r\n return otcCredentials;\r\n }\r\n\r\n function _buildOtcProofStrings(otcCredential)\r\n {\r\n \r\n \r\n otcCredential.proof.str = {};\r\n ObjectHelpers.extend(otcCredential.proof.str, _userProofData[otcCredential.proof.type] || {});\r\n\r\n ObjectHelpers.forEach(\r\n otcCredential.proof.str,\r\n function (id, str)\r\n {\r\n if (str)\r\n {\r\n otcCredential.proof.str[id] = StringHelpers.format(str, otcCredential.proof.display + \"\\u200e\", otcCredential.proof.clearDigits || \"\");\r\n }\r\n });\r\n }\r\n\r\n function _callGetCredentialTypeAsync(unsafe_username, flowToken)\r\n {\r\n var promises = [_isFidoSupportedPromise].concat(_getPoPAuthenticatorPromise || []);\r\n return Promise.all(promises).then(\r\n function (values)\r\n {\r\n var isFidoSupported = values[0];\r\n var popAuthenticator = values[1];\r\n\r\n return _callOfficeHrdAsync(unsafe_username).then(\r\n function (officeHrdEnvironment)\r\n {\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n var apiRequest = new ApiRequest({ checkApiCanary: _checkApiCanary });\r\n apiRequest.Json(\r\n {\r\n url: _getCredentialTypeUrl,\r\n eventId: ClientTracingConstants.EventIds.Api_GetCredentialType\r\n },\r\n _buildGetCredentialTypeRequest(unsafe_username, flowToken, isFidoSupported, popAuthenticator, officeHrdEnvironment),\r\n resolve,\r\n reject,\r\n Constants.DefaultRequestTimeout);\r\n });\r\n });\r\n }\r\n );\r\n }\r\n\r\n function _isDesktopSsoAttemptedUsernameMatch(unsafe_username)\r\n {\r\n return unsafe_username && _desktopSsoConfig.lastUsernameTried && unsafe_username.toLowerCase() === _desktopSsoConfig.lastUsernameTried.toLowerCase();\r\n }\r\n\r\n function _parseGetCredentialTypeResponse(otherIdpRedirectUrl, unsafe_username, useAltUsernameExistenceError, response, isFidoSupported, isCachedResponse)\r\n {\r\n var gctResult = {};\r\n var desktopSsoEnabled = _desktopSsoConfig && response.EstsProperties && response.EstsProperties.DesktopSsoEnabled && !_isDesktopSsoAttemptedUsernameMatch(unsafe_username);\r\n var errorHr = response.ErrorHR;\r\n var fedRedirectParams = _getFedRedirectParams(unsafe_username, response, isFidoSupported);\r\n var sharedData = _this.getGctSharedData(response, isFidoSupported, isCachedResponse);\r\n var acmaProperties = response.AcmaProperties;\r\n\r\n sharedData.username = unsafe_username;\r\n\r\n if (errorHr === Error.PP_E_INVALID_PHONENUMBER || errorHr === Error.PP_E_LIBPHONENUMBERINTEROP_NUMBERPARSE_EXCEPTION)\r\n {\r\n gctResult = _getInvalidPhoneNumberGctResult(errorHr);\r\n }\r\n else if (errorHr === Error.PP_E_NAME_INVALID || errorHr === Error.PP_E_INVALIDARG)\r\n {\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_InvalidUsername\"]);\r\n }\r\n else if (errorHr === Error.PP_E_FEDERATION_INLINELOGIN_DISALLOWED)\r\n {\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_FedNotAllowed\"], true );\r\n }\r\n else if (errorHr === Error.PP_E_LOGIN_NOPA_USER_PASSWORD_REQUIRED)\r\n {\r\n if (_useResetPasswordUrlInPasswordRequiredError)\r\n {\r\n gctResult = _getGctResultShowErrorAction(StringHelpers.format(_strings[\"CT_STR_Error_PasswordRequired\"], QueryString.stripQueryStringAndFragment(_resetPasswordUrl)));\r\n }\r\n else\r\n {\r\n gctResult = _getGctResultShowErrorAction(StringHelpers.format(_strings[\"CT_STR_Error_PasswordRequired\"], QueryString.stripQueryStringAndFragment(_changePasswordUrl)));\r\n }\r\n }\r\n else if (response.RequiresPhoneDisambiguation)\r\n {\r\n gctResult = _getGctResultSwitchViewAction(PaginatedState.PhoneDisambiguation);\r\n }\r\n else if (response.AliasDisabledForLogin)\r\n {\r\n return _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_AliasDisabled\"], true );\r\n }\r\n else if (response.IfExistsResult === IfExistsResult.NotExist)\r\n {\r\n gctResult = _getUsernameNotFoundGctResult(unsafe_username, useAltUsernameExistenceError, response, isFidoSupported);\r\n }\r\n else if (response.IfExistsResult === IfExistsResult.ExistsBothIDPs)\r\n {\r\n gctResult = _getGctResultSwitchViewAction(\r\n PaginatedState.IdpDisambiguation,\r\n {\r\n desktopSsoEnabled: desktopSsoEnabled,\r\n idpRedirectUrl: fedRedirectParams.idpRedirectUrl,\r\n idpRedirectPostParams: fedRedirectParams.idpRedirectPostParams,\r\n idpRedirectProvider: fedRedirectParams.idpRedirectProvider\r\n });\r\n }\r\n else if (response.IfExistsResult === IfExistsResult.ExistsInOtherMicrosoftIDP)\r\n {\r\n gctResult = _getOtherIdpRedirectGctResult(otherIdpRedirectUrl, unsafe_username);\r\n }\r\n else if (_isOtherIdpSupported\r\n && (response.IfExistsResult === IfExistsResult.Error\r\n || response.IfExistsResult === IfExistsResult.Throttled\r\n || (response.ThrottleStatus & ThrottleStatus.MsaThrottled) !== 0))\r\n {\r\n \r\n \r\n gctResult = _getGctResultSwitchViewAction(\r\n PaginatedState.IdpDisambiguation,\r\n {\r\n hasIdpDisambigError: true,\r\n desktopSsoEnabled: desktopSsoEnabled,\r\n idpRedirectUrl: fedRedirectParams.idpRedirectUrl,\r\n idpRedirectPostParams: fedRedirectParams.idpRedirectPostParams,\r\n idpRedirectProvider: fedRedirectParams.idpRedirectProvider\r\n });\r\n }\r\n else if (response.ShowRemoteConnect)\r\n {\r\n gctResult = _getGctResultSwitchViewAction(PaginatedState.RemoteLoginPolling);\r\n }\r\n else if (response.IfExistsResult === IfExistsResult.ExistsInAcma)\r\n {\r\n if (acmaProperties && acmaProperties.SignInUrl && acmaProperties.SignInContinuationToken)\r\n {\r\n gctResult = _getGctResultRedirectAction(acmaProperties.SignInUrl, { continuationToken: acmaProperties.SignInContinuationToken }, false);\r\n }\r\n else\r\n {\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_GetCredentialTypeError\"]);\r\n }\r\n }\r\n else\r\n {\r\n var isProofConfirmationRequired = sharedData.otcCredential && sharedData.otcCredential.proof.clearDigits;\r\n\r\n gctResult = _getUsernameFoundGctResult(unsafe_username, desktopSsoEnabled, fedRedirectParams, response, isProofConfirmationRequired, isFidoSupported);\r\n }\r\n\r\n \r\n gctResult.flowToken = response.FlowToken || null;\r\n\r\n if (!gctResult.bypassCache)\r\n {\r\n _cache[unsafe_username] = response;\r\n\r\n \r\n _cache[unsafe_username].FlowToken = null;\r\n }\r\n\r\n gctResult.sharedData = sharedData;\r\n\r\n return gctResult;\r\n }\r\n\r\n function _handleGetCredentialTypeError(response)\r\n {\r\n var gctResult = {};\r\n\r\n if (response && response.error)\r\n {\r\n switch (response.error.code)\r\n {\r\n case ApiErrorCodes.AuthFailure:\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_FlowTokenExpired\"]);\r\n break;\r\n\r\n case EstsError.PublicIdentifierSasBeginCallNonRetriableError:\r\n case EstsError.PublicIdentifierSasBeginCallRetriableError:\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_GetCredentialTypeError\"], false , true );\r\n break;\r\n\r\n default:\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_GetCredentialTypeError\"]);\r\n break;\r\n }\r\n }\r\n else\r\n {\r\n gctResult = _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_GetCredentialTypeError\"]);\r\n }\r\n\r\n gctResult.flowToken = response.FlowToken || null;\r\n\r\n return gctResult;\r\n }\r\n\r\n function _getPreferredCredential(response, isFidoSupported)\r\n {\r\n var preferredCredential = CredentialType.Password;\r\n var credentials = response.Credentials;\r\n\r\n if (credentials)\r\n {\r\n preferredCredential = credentials.PrefCredential;\r\n\r\n if (preferredCredential === CredentialType.Fido && !isFidoSupported)\r\n {\r\n \r\n preferredCredential = credentials.RemoteNgcParams && credentials.RemoteNgcParams.SessionIdentifier\r\n ? CredentialType.RemoteNGC\r\n : CredentialType.Password;\r\n }\r\n }\r\n\r\n return preferredCredential;\r\n }\r\n\r\n function _getAvailableCreds(response, isFidoSupported)\r\n {\r\n var availableCredentials = response.Credentials || {};\r\n var sasParams = availableCredentials.SasParams;\r\n var linkedInParams = availableCredentials.LinkedInParams;\r\n var gitHubParams = availableCredentials.GitHubParams;\r\n var googleParams = availableCredentials.GoogleParams;\r\n var facebookParams = availableCredentials.FacebookParams;\r\n var certAuthParams = availableCredentials.CertAuthParams;\r\n var qrCodePinParams = availableCredentials.QrCodePinParams;\r\n var estsProperties = response.EstsProperties || {};\r\n\r\n \r\n \r\n var credentials = [].concat(\r\n availableCredentials.HasPassword && (estsProperties.DomainType !== DomainType.Federated) ? { credType: CredentialType.Password }: [],\r\n availableCredentials.FederationRedirectUrl && (estsProperties.DomainType === DomainType.Federated) ? { credType: CredentialType.Federation } : [],\r\n availableCredentials.FederationRedirectUrl && (estsProperties.DomainType === DomainType.CloudFederated) ? { credType: CredentialType.CloudFederation } : [],\r\n availableCredentials.HasRemoteNGC ? { credType: CredentialType.RemoteNGC } : [],\r\n availableCredentials.HasFido && isFidoSupported ? { credType: CredentialType.Fido } : [],\r\n availableCredentials.HasPhone && sasParams ? { credType: CredentialType.PublicIdentifierCode } : [],\r\n availableCredentials.HasLinkedInFed && linkedInParams ? { credType: CredentialType.LinkedIn, redirectUrl: linkedInParams.LinkedInRedirectUrl } : [],\r\n availableCredentials.HasGitHubFed && gitHubParams ? { credType: CredentialType.GitHub, redirectUrl: gitHubParams.GithubRedirectUrl } : [],\r\n availableCredentials.HasGoogleFed && googleParams ? { credType: CredentialType.Google, redirectUrl: googleParams.GoogleRedirectUrl } : [],\r\n availableCredentials.HasFacebookFed && facebookParams ? { credType: CredentialType.Facebook, redirectUrl: facebookParams.FacebookRedirectUrl } : [],\r\n availableCredentials.HasAccessPass ? { credType: CredentialType.AccessPass } : [],\r\n availableCredentials.HasQrCodePin && _isQrCodePinSupported && qrCodePinParams ? { credType: CredentialType.QrCodePin } : [],\r\n availableCredentials.HasCertAuth ? { credType: CredentialType.Certificate, redirectUrl: certAuthParams.CertAuthUrl, redirectPostParams: _getCertAuthParams(response.FlowToken) } : []);\r\n\r\n \r\n if (_userProofData[PROOF.Type.Email] && _userProofData[PROOF.Type.SMS] && _userProofData[PROOF.Type.Voice])\r\n {\r\n var otcCredentials = _buildOtcCredentials(response, true , isFidoSupported);\r\n\r\n if (otcCredentials.length > 0)\r\n {\r\n Helpers.Array.forEach(otcCredentials, _buildOtcProofStrings);\r\n credentials = credentials.concat(otcCredentials);\r\n }\r\n }\r\n\r\n return credentials;\r\n }\r\n\r\n function _getEvictedCreds(response, isFidoSupported)\r\n {\r\n var credentials = [];\r\n\r\n \r\n if (_userProofData[PROOF.Type.Email] && _userProofData[PROOF.Type.SMS] && _userProofData[PROOF.Type.Voice])\r\n {\r\n var otcCredentials = _buildOtcCredentials(response, false , isFidoSupported);\r\n\r\n if (otcCredentials.length > 0)\r\n {\r\n Helpers.Array.forEach(otcCredentials, _buildOtcProofStrings);\r\n credentials = credentials.concat(otcCredentials);\r\n\r\n if (Helpers.Array.first(\r\n otcCredentials,\r\n function (otcCredential)\r\n {\r\n return !otcCredential.proof.isNopa;\r\n }))\r\n {\r\n credentials = credentials.concat({ credType: CredentialType.Password, isDefault: false });\r\n }\r\n }\r\n }\r\n\r\n return credentials;\r\n }\r\n\r\n function _getInvalidPhoneNumberGctResult(errorHr)\r\n {\r\n if (_isPhoneNumberFullyQualified)\r\n {\r\n return _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_InvalidPhoneNumber\"], true );\r\n }\r\n\r\n return _getGctResultSwitchViewAction(PaginatedState.PhoneDisambiguation, { phoneDisambigError: errorHr });\r\n }\r\n\r\n function _getUsernameNotFoundGctResult(unsafe_username, useAltUsernameExistenceError, response, isFidoSupported)\r\n {\r\n var errorString;\r\n var isSignupAllowedForUsername = _isSignupAllowedForUsername(unsafe_username, response);\r\n var estsProperties = response.EstsProperties || {};\r\n var isAadVerifiedDomain = estsProperties.DomainType\r\n && estsProperties.DomainType !== DomainType.Unknown\r\n && estsProperties.DomainType !== DomainType.Consumer;\r\n\r\n if (response.IsProofForAlias)\r\n {\r\n if (_isImprovedUsernameRecovery)\r\n {\r\n return _getSignupRedirectGctResultForResponse(unsafe_username, response, _msaSignupUrl);\r\n }\r\n\r\n \r\n return _getGctResultSwitchViewAction(PaginatedState.ConfirmRecoverUsername);\r\n }\r\n else if (_isSignupAllowed && isSignupAllowedForUsername && _isCombinedSignInSignUp())\r\n {\r\n if (_redirectToSignupOnNotExists)\r\n {\r\n \r\n return _getSignupRedirectGctResultForResponse(unsafe_username, response);\r\n }\r\n\r\n \r\n return _getGctResultSwitchViewAction(PaginatedState.ConfirmSignup);\r\n }\r\n\r\n \r\n if (_isSelfServiceSignupUxEnabled || _isCiamUserFlowLinked)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_SSSU_Error_EmailAccountNotFound\"];\r\n }\r\n else if (useAltUsernameExistenceError)\r\n {\r\n if (response.ThrottleStatus === ThrottleStatus.NotThrottled && isAadVerifiedDomain)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_Alternate_VerifiedDomain\"];\r\n }\r\n else\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_Alternate\"];\r\n }\r\n }\r\n else if (_getPreferredCredential(response, isFidoSupported) === CredentialType.OneTimeCode)\r\n {\r\n \r\n \r\n if (response.ThrottleStatus === ThrottleStatus.MsaThrottled)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExists_EmailOtpAllowed_MsaFailed\"];\r\n }\r\n else\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExists_EmailOtpAllowed\"];\r\n }\r\n }\r\n else if (_useConsumerEmailError && estsProperties.DomainType === DomainType.Consumer)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_ConsumerEmail\"];\r\n }\r\n else if (response.ThrottleStatus === ThrottleStatus.NotThrottled && isAadVerifiedDomain)\r\n {\r\n if (isSignupAllowedForUsername)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_VerifiedDomain_SignupAllowed\"];\r\n }\r\n else\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_VerifiedDomain\"];\r\n }\r\n }\r\n else if (response.ThrottleStatus === ThrottleStatus.MsaThrottled)\r\n {\r\n if (isAadVerifiedDomain && isSignupAllowedForUsername)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_VerifiedDomain_MsaFailed_SignupAllowed\"];\r\n }\r\n else if (isAadVerifiedDomain)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_VerifiedDomain_MsaFailed\"];\r\n }\r\n else if (_isSignupAllowed && !_signupUrl)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_Guest_SignupAllowed_MsaFailed\"];\r\n }\r\n else\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UnknownDomain_MsaFailed\"];\r\n }\r\n }\r\n else if (_isSignup && !isAadVerifiedDomain)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist_Guest_Signup\"];\r\n }\r\n else if (_isPhoneNumberFullyQualified)\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_InvalidPhoneNumber\"];\r\n }\r\n else\r\n {\r\n errorString = _strings[\"CT_PWD_STR_Error_UsernameNotExist\"];\r\n }\r\n\r\n \r\n \r\n return _getGctResultShowErrorAction(\r\n StringHelpers.format(\r\n errorString,\r\n BrowserHelper.htmlEscape(StringHelpers.extractDomain(unsafe_username)),\r\n BrowserHelper.htmlEscape(unsafe_username)),\r\n true );\r\n }\r\n\r\n function _getOtherIdpRedirectGctResult(otherIdpRedirectUrl, unsafe_username)\r\n {\r\n \r\n \r\n var encodedUsername = encodeURIComponent(unsafe_username).replace(new RegExp(\"'\", \"g\"), \"%27\");\r\n\r\n \r\n otherIdpRedirectUrl = QueryString.appendOrReplace(otherIdpRedirectUrl, \"username\", encodedUsername);\r\n otherIdpRedirectUrl = QueryString.appendOrReplace(otherIdpRedirectUrl, \"login_hint\", encodedUsername);\r\n\r\n var otherIdpRedirectPostParams = _otherIdpRedirectPostParams ? ObjectHelpers.clone(_otherIdpRedirectPostParams) : null;\r\n\r\n if (otherIdpRedirectPostParams)\r\n {\r\n otherIdpRedirectPostParams.unsafe_username = unsafe_username;\r\n }\r\n\r\n return _getGctResultRedirectAction(otherIdpRedirectUrl, otherIdpRedirectPostParams, true , ClientTracingConstants.EventIds.Redirect_OtherIdpRedirection);\r\n }\r\n\r\n function _getUsernameFoundGctResult(unsafe_username, desktopSsoEnabled, fedRedirectParams, response, isProofConfirmationRequired, isFidoSupported)\r\n {\r\n var preferredCredential = _getPreferredCredential(response, isFidoSupported);\r\n\r\n if (_isRestrictedWsi)\r\n {\r\n \r\n if (!response.Credentials.HasPassword\r\n && !response.Credentials.HasGoogleFed\r\n && !response.Credentials.HasCertAuth\r\n && !response.Credentials.HasFido\r\n && !response.Credentials.HasRemoteNGC\r\n && !response.Credentials.HasPhone\r\n && !response.Credentials.HasFacebookFed)\r\n {\r\n _isTapRestrictedWsi = true;\r\n\r\n if (preferredCredential !== CredentialType.AccessPass)\r\n {\r\n return _getGctResultSwitchViewAction(PaginatedState.MoreInfo);\r\n }\r\n }\r\n }\r\n\r\n if (!_disableDesktopSsoPreferredCred && desktopSsoEnabled)\r\n {\r\n return _getGctResultSwitchViewAction(\r\n PaginatedState.FetchSessionsProgress,\r\n {\r\n unsafe_desktopSsoDomainToUse: StringHelpers.extractDomain(unsafe_username),\r\n sessionPullType: SessionPullFlags.Dsso,\r\n idpRedirectUrl: fedRedirectParams.idpRedirectUrl,\r\n idpRedirectPostParams: fedRedirectParams.idpRedirectPostParams,\r\n idpRedirectProvider: fedRedirectParams.idpRedirectProvider\r\n });\r\n }\r\n\r\n if (response.NativeBridgeRequest && !_blockBridge)\r\n {\r\n if (_enableRefreshCookiesFix)\r\n {\r\n return _getGctResultSwitchViewAction(\r\n PaginatedState.WebNativeBridge,\r\n {\r\n request: response.NativeBridgeRequest,\r\n flowToken: response.FlowToken,\r\n serverData: _serverData,\r\n nonce: response.Nonce || null\r\n });\r\n }\r\n\r\n return _getGctResultSwitchViewAction(\r\n PaginatedState.WebNativeBridge,\r\n {\r\n request: response.NativeBridgeRequest,\r\n flowToken: response.FlowToken,\r\n serverData: _serverData\r\n });\r\n }\r\n\r\n var idpRedirectViewParams =\r\n {\r\n idpRedirectUrl: fedRedirectParams.idpRedirectUrl,\r\n idpRedirectPostParams: fedRedirectParams.idpRedirectPostParams,\r\n idpRedirectProvider: fedRedirectParams.idpRedirectProvider\r\n };\r\n\r\n switch (preferredCredential)\r\n {\r\n case CredentialType.OneTimeCode:\r\n var paginatedState = PaginatedState.OneTimeCode;\r\n\r\n \r\n \r\n \r\n if (_disableAutoSend || response.Credentials.OTCNotAutoSent)\r\n {\r\n paginatedState = isProofConfirmationRequired ? PaginatedState.ProofConfirmation : PaginatedState.ConfirmSend;\r\n }\r\n\r\n return _getGctResultSwitchViewAction(paginatedState);\r\n\r\n case CredentialType.PublicIdentifierCode:\r\n if (_deprecateSmsAutoSend && response.Credentials.OtcNotAutoSent)\r\n {\r\n return _getGctResultSwitchViewAction(PaginatedState.ConfirmSend);\r\n }\r\n \r\n else if (!_disableAutoSend && (!response.Credentials.SasParams || !response.Credentials.SasParams.Success))\r\n {\r\n return _getGctResultShowErrorAction(_strings[\"CT_PWD_STR_Error_GetCredentialTypeError\"], false , true );\r\n }\r\n\r\n return _getGctResultSwitchViewAction(_disableAutoSend ? PaginatedState.ConfirmSend : PaginatedState.OneTimeCode);\r\n\r\n case CredentialType.Fido:\r\n return _getGctResultSwitchViewAction(PaginatedState.Fido);\r\n\r\n case CredentialType.RemoteNGC:\r\n var isPushNotification = response.Credentials.RemoteNgcParams.DefaultType === RemoteNgcType.PushNotification;\r\n return _getGctResultSwitchViewAction(\r\n _disableAutoSend && isPushNotification ? PaginatedState.ConfirmSend : PaginatedState.RemoteNGC,\r\n idpRedirectViewParams);\r\n\r\n case CredentialType.Federation:\r\n case CredentialType.CloudFederation:\r\n return _getGctResultSwitchViewAction(PaginatedState.IdpRedirect, idpRedirectViewParams);\r\n\r\n case CredentialType.LinkedIn:\r\n case CredentialType.GitHub:\r\n case CredentialType.Google:\r\n case CredentialType.Facebook:\r\n return _getGctResultSwitchViewAction(\r\n (_getAvailableCreds(response, isFidoSupported).length > 1 || _getEvictedCreds(response, isFidoSupported).length > 0) ? PaginatedState.IdpRedirectSpeedbump : PaginatedState.IdpRedirect,\r\n idpRedirectViewParams);\r\n\r\n case CredentialType.AccessPass:\r\n return _getGctResultSwitchViewAction(PaginatedState.AccessPass, idpRedirectViewParams);\r\n\r\n case CredentialType.NoPreferredCredential:\r\n return _getGctResultSwitchViewAction(PaginatedState.CredentialPicker, idpRedirectViewParams);\r\n\r\n case CredentialType.OtherMicrosoftIdpFederation:\r\n return _getSignupRedirectGctResultForResponse(unsafe_username, response, _msaSignupUrl);\r\n\r\n case CredentialType.Certificate:\r\n if (_showInterstitialView)\r\n {\r\n return _getGctResultSwitchViewAction(PaginatedState.CertificateInterstitialView);\r\n }\r\n return _getGctResultRedirectAction(response.Credentials.CertAuthParams.CertAuthUrl, _getCertAuthParams(response.FlowToken));\r\n\r\n case CredentialType.QrCodePin:\r\n return _getGctResultSwitchViewAction(PaginatedState.QrCodeScan);\r\n\r\n case CredentialType.Password:\r\n default:\r\n return _getGctResultSwitchViewAction(PaginatedState.Password);\r\n }\r\n }\r\n\r\n function _getSignupRedirectGctResultForResponse(unsafe_username, response, signupUrl)\r\n {\r\n signupUrl = signupUrl || _signupUrl;\r\n signupUrl = QueryString.remove(signupUrl, \"username\");\r\n signupUrl = QueryString.remove(signupUrl, \"login_hint\");\r\n\r\n var signupUrlPostParams = _signupUrlPostParams ? ObjectHelpers.clone(_signupUrlPostParams) : null;\r\n\r\n \r\n if (response\r\n && (response.IfExistsResult === IfExistsResult.NotExist\r\n || (response.IsUnmanaged && response.IfExistsResult === IfExistsResult.Exists)))\r\n {\r\n if (_isSignupAllowedForUsername(unsafe_username, response))\r\n {\r\n if (signupUrlPostParams)\r\n {\r\n signupUrlPostParams.unsafe_username = unsafe_username;\r\n }\r\n else\r\n {\r\n signupUrl = QueryString.appendOrReplace(signupUrl, \"username\", encodeURIComponent(unsafe_username));\r\n signupUrl = QueryString.appendOrReplace(signupUrl, \"login_hint\", encodeURIComponent(unsafe_username));\r\n }\r\n }\r\n }\r\n\r\n return _getGctResultRedirectAction(signupUrl, signupUrlPostParams, false , ClientTracingConstants.EventIds.Redirect_MSASignUpPage);\r\n }\r\n\r\n function _getFedRedirectParams(unsafe_username, response, isFidoSupported)\r\n {\r\n var fedRedirectParams = {};\r\n var preferredCredential = _getPreferredCredential(response, isFidoSupported);\r\n var estsProperties = response.EstsProperties || {};\r\n\r\n if (!response.Credentials\r\n || (!response.Credentials.FederationRedirectUrl\r\n && !response.Credentials.LinkedInParams\r\n && !response.Credentials.GitHubParams\r\n && !response.Credentials.GoogleParams\r\n && !response.Credentials.FacebookParams))\r\n {\r\n \r\n return fedRedirectParams;\r\n }\r\n\r\n switch (preferredCredential)\r\n {\r\n case CredentialType.RemoteNGC:\r\n case CredentialType.Federation:\r\n case CredentialType.AccessPass:\r\n case CredentialType.NoPreferredCredential:\r\n if (estsProperties\r\n && estsProperties.SamlRequest\r\n && estsProperties.RelayState)\r\n {\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.FederationRedirectUrl;\r\n fedRedirectParams.idpRedirectPostParams =\r\n {\r\n SAMLRequest: estsProperties.SamlRequest,\r\n RelayState: estsProperties.RelayState,\r\n unsafe_username: unsafe_username\r\n };\r\n }\r\n else if (_fixUrlExternalIdpFederation && response.Credentials.HasExternalOidcFed)\r\n {\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.FederationRedirectUrl;\r\n }\r\n else\r\n {\r\n fedRedirectParams.idpRedirectUrl = _buildFederationRedirectUrl(\r\n response.Credentials.FederationRedirectUrl,\r\n unsafe_username);\r\n }\r\n\r\n break;\r\n\r\n case CredentialType.CloudFederation:\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.FederationRedirectUrl;\r\n break;\r\n\r\n case CredentialType.LinkedIn:\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.LinkedInParams.LinkedInRedirectUrl;\r\n fedRedirectParams.idpRedirectProvider = BindProvider.LinkedIn;\r\n break;\r\n\r\n case CredentialType.GitHub:\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.GitHubParams.GithubRedirectUrl;\r\n fedRedirectParams.idpRedirectProvider = BindProvider.GitHub;\r\n break;\r\n\r\n case CredentialType.Google:\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.GoogleParams.GoogleRedirectUrl;\r\n fedRedirectParams.idpRedirectProvider = BindProvider.Google;\r\n break;\r\n\r\n case CredentialType.Facebook:\r\n fedRedirectParams.idpRedirectUrl = response.Credentials.FacebookParams.FacebookRedirectUrl;\r\n fedRedirectParams.idpRedirectProvider = BindProvider.Facebook;\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return fedRedirectParams;\r\n }\r\n\r\n function _buildFederationRedirectUrl(fedUrl, unsafe_username)\r\n {\r\n if (_federationRedirectQueryString)\r\n {\r\n var fedQs = QueryString.appendOrReplace(\r\n \"?\" + _federationRedirectQueryString,\r\n \"wctx\",\r\n \"LoginOptions%3D3%26\" + QueryString.extract(\"wctx\", \"?\" + _federationRedirectQueryString));\r\n\r\n fedQs = fedQs.substr(1);\r\n\r\n fedUrl = QueryString.append(fedUrl, fedQs);\r\n }\r\n else\r\n {\r\n fedUrl = QueryString.appendOrReplace(\r\n fedUrl,\r\n \"wctx\",\r\n \"LoginOptions%3D3%26\" + QueryString.extract(\"wctx\", fedUrl));\r\n }\r\n\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"cbcxt\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"cbcxt\"))));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"username\", encodeURIComponent(unsafe_username));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"mkt\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"mkt\"))));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"lc\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"lc\"))));\r\n\r\n return fedUrl;\r\n }\r\n\r\n function _getCertAuthParams(flowToken)\r\n {\r\n var certAuthParams =\r\n {\r\n ctx: _originalRequest,\r\n flowToken: flowToken\r\n };\r\n\r\n if (_canaryTokenName)\r\n {\r\n certAuthParams[_canaryTokenName] = _canary;\r\n }\r\n\r\n return certAuthParams;\r\n }\r\n\r\n function _getCleansedUsername(unsafe_username)\r\n {\r\n return StringHelpers.cleanseUsername(unsafe_username, true );\r\n }\r\n\r\n function _isSignupAllowedForUsername(unsafe_username, response)\r\n {\r\n \r\n var isSkypeName = _allowSkype && StringHelpers.isSkypeName(unsafe_username);\r\n var estsProperties = response.EstsProperties || {};\r\n var isAadVerifiedDomain = estsProperties.DomainType\r\n && estsProperties.DomainType !== DomainType.Unknown\r\n && estsProperties.DomainType !== DomainType.Consumer;\r\n\r\n if (isAadVerifiedDomain)\r\n {\r\n return response.IsSignupDisallowed === false;\r\n }\r\n\r\n return !response.IsSignupDisallowed && !isSkypeName;\r\n }\r\n\r\n function _isCombinedSignInSignUp()\r\n {\r\n return _redirectToSignupOnNotExists || _checkProofForAliases;\r\n }\r\n\r\n function _getGctResultSwitchViewAction(viewId, viewParams)\r\n {\r\n return { action: GctResultAction.SwitchView, viewId: viewId, viewParams: viewParams };\r\n }\r\n\r\n function _getGctResultShowErrorAction(error, isBlockingError, bypassCache)\r\n {\r\n return { action: GctResultAction.ShowError, error: error, isBlockingError: isBlockingError, bypassCache: bypassCache };\r\n }\r\n\r\n function _getGctResultRedirectAction(redirectUrl, redirectPostParams, isIdpRedirect, eventId)\r\n {\r\n return { action: GctResultAction.Redirect, redirectUrl: redirectUrl, redirectPostParams: redirectPostParams, isIdpRedirect: isIdpRedirect, eventId: eventId };\r\n }\r\n\r\n (function _initialize()\r\n {\r\n _isOtherIdpSupported = !_checkCurrentIdpOnly && _allowedIdentities === AllowedIdentitiesType.Both;\r\n\r\n _useAltUsernameExistenceErrorPromise = Promise.resolve(false);\r\n\r\n if (_checkForWindowsSku && Host && Host.isMsaProviderAllowedAsync)\r\n {\r\n _useAltUsernameExistenceErrorPromise = Host.isMsaProviderAllowedAsync();\r\n }\r\n\r\n _isFidoSupportedPromise = BrowserHelper.isFidoSupportedAsync(_isFidoSupportedHint, _useWebviewFidoCustomProtocol);\r\n\r\n if (_bindCookiesUsingPoP)\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n var proofOfPossessionGenerator = require(\"./ProofOfPossessionGenerator\");\r\n _getPoPAuthenticatorPromise = proofOfPossessionGenerator.computePoPAuthenticator(\"POST\", _getCredentialTypeUrl).then(\r\n function (authenticator)\r\n {\r\n return { cpa: authenticator, err: null };\r\n },\r\n function (err)\r\n {\r\n return { cpa: \"\", err: err.message };\r\n });\r\n },\r\n \"PoP\");\r\n }\r\n\r\n if (_enableWebNativeBridge && !_useNativeBridgeEdgeApi)\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n var WAMMessageHandler = require(\"./WAMMessageHandler\");\r\n WAMMessageHandler.getBrowserCoreProvider(wamExtensionId, wamChannelId).then(function () { },\r\n function ()\r\n {\r\n _blockBridge = true;\r\n });\r\n },\r\n \"WAMMessageHandler\");\r\n }\r\n\r\n if (_enableWebNativeBridge && _useNativeBridgeEdgeApi)\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n var WAMMessageHandler = require(\"./WAMMessageHandler\");\r\n _blockBridgePromise = WAMMessageHandler.getBrowserCoreProvider(wamExtensionId, wamChannelId).then(\r\n function ()\r\n {\r\n return false;\r\n },\r\n function ()\r\n {\r\n var platformAuthentication = window.navigator && window.navigator.platformAuthentication;\r\n if (platformAuthentication && platformAuthentication.getSupportedContracts)\r\n {\r\n return platformAuthentication.getSupportedContracts(\"MicrosoftEntra\")\r\n .then(function (contracts)\r\n {\r\n return (!(contracts && contracts.includes(\"get-token-and-sign-out\")));\r\n });\r\n }\r\n\r\n return true;\r\n });\r\n },\r\n \"WAMMessageHandler\");\r\n }\r\n })();\r\n \r\n}\r\n\r\nmodule.exports = GetCredentialTypeRequestHelper;\r\n","var JSON = require(\"JSON\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar Helpers = require(\"./Helpers\");\r\n\r\nvar ObjectHelpers = Helpers.Object;\r\nvar HttpCode = Browser.HttpCode;\r\n\r\nvar w = window;\r\n\r\nexports.RequestType =\r\n{\r\n Post: \"POST\",\r\n Get: \"GET\"\r\n};\r\n\r\nvar AjaxState = exports.State =\r\n{\r\n Unsupported: -1,\r\n Unsent: 0,\r\n Done: 4,\r\n Timeout: 5\r\n};\r\n\r\nexports.Event =\r\n{\r\n OnSuccess: \"ajaxsuccess\",\r\n OnError: \"ajaxerror\",\r\n OnTimeout: \"ajaxtimeout\"\r\n};\r\n\r\nexports.Helper =\r\n{\r\n \r\n generateRequestString: function (requestData)\r\n {\r\n var requestString = \"\";\r\n if (requestData)\r\n {\r\n ObjectHelpers.forEach(\r\n requestData,\r\n function (key, value)\r\n {\r\n if (value || value === \"\")\r\n {\r\n if (requestString.length > 0)\r\n {\r\n requestString += \"&\";\r\n }\r\n\r\n requestString += key + \"=\" + value;\r\n }\r\n });\r\n }\r\n\r\n return requestString;\r\n }\r\n};\r\n\r\n\r\nexports.Handler = function (params)\r\n{\r\n var _this = this;\r\n var c_contentType = \"Content-type\";\r\n\r\n var _response = \"\";\r\n var _httpSuccessCodes = [];\r\n var _event = null;\r\n var _ajaxRequest = null;\r\n var _isTimedOut = false;\r\n var _isSupported = true;\r\n var _timeoutObject = null;\r\n var _isCrossDomain = false;\r\n\r\n var _hasContentTypeParam = !!params.contentType;\r\n var _hasHeadersParam = !!params.headers;\r\n var _hasHeaderValueParam = !!params.headerValue;\r\n\r\n var _data = params.data || \"\";\r\n var _targetUrl = params.targetUrl || \"\";\r\n var _requestType = params.requestType || \"\";\r\n var _isAsync = params.isAsync !== false;\r\n var _timeout = params.timeout || 0;\r\n var _username = params.username || \"\";\r\n var _password = params.password || \"\";\r\n var _contentType = params.contentType || \"application/x-www-form-urlencoded\";\r\n var _withCredentials = params.withCredentials || false;\r\n var _breakCache = params.breakCache || false;\r\n var _responseType = params.responseType || \"\";\r\n var _headers = params.headers || {};\r\n\r\n var _successCallback = params.successCallback;\r\n var _failureCallback = params.failureCallback;\r\n var _timeoutCallback = params.timeoutCallback;\r\n\r\n \r\n\r\n \r\n _this.sendRequest = function (event)\r\n {\r\n _event = event;\r\n _initializeRequest();\r\n\r\n if (_isSupported)\r\n {\r\n if (_timeout > 0)\r\n {\r\n _timeoutObject = setTimeout(function () { _onTimeout.call(_this); }, _timeout);\r\n }\r\n\r\n _ajaxRequest.send(_data);\r\n }\r\n };\r\n\r\n \r\n _this.getState = function ()\r\n {\r\n if (!_isSupported)\r\n {\r\n return AjaxState.Unsupported;\r\n }\r\n\r\n if (_isTimedOut)\r\n {\r\n return AjaxState.Timeout;\r\n }\r\n\r\n if (_ajaxRequest)\r\n {\r\n return _ajaxRequest.readyState;\r\n }\r\n\r\n return AjaxState.Unsent;\r\n };\r\n\r\n \r\n _this.getStatus = function ()\r\n {\r\n if (_isTimedOut)\r\n {\r\n return HttpCode.Timeout;\r\n }\r\n\r\n if (_ajaxRequest)\r\n {\r\n return _ajaxRequest.status;\r\n }\r\n\r\n return 0;\r\n };\r\n\r\n \r\n _this.cancel = function ()\r\n {\r\n if (_ajaxRequest)\r\n {\r\n _ajaxRequest.canceled = true;\r\n _ajaxRequest.abort();\r\n }\r\n };\r\n\r\n \r\n _this.getResponseJson = function ()\r\n {\r\n return _response ? JSON.parse(_response) : {};\r\n };\r\n\r\n \r\n _this.isComplete = function ()\r\n {\r\n return (_this.getState() === AjaxState.Done || _this.getState() === AjaxState.Timeout);\r\n };\r\n\r\n \r\n _this.isSuccess = function ()\r\n {\r\n return (_this.isComplete() && _httpSuccessCodes[_this.getStatus()]);\r\n };\r\n\r\n \r\n _this.clearResponse = function ()\r\n {\r\n _response = \"\";\r\n };\r\n\r\n \r\n function _onCompletion(successOverride, failOverride)\r\n {\r\n if (successOverride || _this.isSuccess())\r\n {\r\n if (_successCallback)\r\n {\r\n _successCallback(_event, _response);\r\n }\r\n }\r\n else if (failOverride || (!_this.isSuccess() && !_isTimedOut))\r\n {\r\n if (_failureCallback)\r\n {\r\n _failureCallback(_event, _ajaxRequest, _ajaxRequest.statusText);\r\n }\r\n }\r\n }\r\n\r\n \r\n function _onTimeout()\r\n {\r\n _timeoutObject = null;\r\n _isTimedOut = true;\r\n _this.cancel();\r\n\r\n if (_timeoutCallback)\r\n {\r\n var timeoutXhr =\r\n {\r\n status: HttpCode.Timeout,\r\n statusText: \"timeout\"\r\n };\r\n\r\n _timeoutCallback(_event, timeoutXhr, timeoutXhr.statusText);\r\n }\r\n }\r\n\r\n \r\n function _onAbort(event)\r\n {\r\n _clearTimeout();\r\n\r\n \r\n \r\n if (!_this.isComplete() && !_ajaxRequest.canceled && _failureCallback)\r\n {\r\n var abortXhr =\r\n {\r\n status: HttpCode.ClientClosedRequest,\r\n statusText: \"abort\"\r\n };\r\n\r\n _failureCallback(event, abortXhr, abortXhr.statusText);\r\n }\r\n }\r\n\r\n \r\n function _onError(event)\r\n {\r\n \r\n if (!_this.isComplete())\r\n {\r\n _setResponseAndComplete(event);\r\n }\r\n }\r\n\r\n \r\n function _evt_readyState_onchange(event)\r\n {\r\n \r\n \r\n \r\n if (_this.isComplete() && !_isTimedOut)\r\n {\r\n _setResponseAndComplete(event);\r\n }\r\n }\r\n\r\n \r\n function _setResponseAndComplete(event)\r\n {\r\n _clearTimeout();\r\n\r\n _response = _ajaxRequest.responseText;\r\n _event = event;\r\n _onCompletion();\r\n }\r\n\r\n \r\n function _clearTimeout()\r\n {\r\n if (_timeoutObject)\r\n {\r\n clearTimeout(_timeoutObject);\r\n _timeoutObject = null;\r\n }\r\n }\r\n\r\n \r\n function _initializeRequest()\r\n {\r\n _isTimedOut = false;\r\n\r\n var xhrSupportsCORS = \"withCredentials\" in new XMLHttpRequest();\r\n if (!_isCrossDomain || xhrSupportsCORS)\r\n {\r\n var targetUrl = _targetUrl;\r\n\r\n _ajaxRequest = new XMLHttpRequest();\r\n _ajaxRequest.onreadystatechange = _evt_readyState_onchange;\r\n\r\n if (_ajaxRequest.addEventListener)\r\n {\r\n _ajaxRequest.addEventListener(\"abort\", _onAbort);\r\n _ajaxRequest.addEventListener(\"error\", _onError);\r\n }\r\n\r\n if (_breakCache)\r\n {\r\n targetUrl = Browser.QueryString.appendOrReplace(targetUrl, \"_\", (new Date()).getTime());\r\n }\r\n\r\n if (_username.length > 0)\r\n {\r\n _ajaxRequest.open(_requestType, targetUrl, _isAsync, _username, _password);\r\n }\r\n else\r\n {\r\n _ajaxRequest.open(_requestType, targetUrl, _isAsync);\r\n }\r\n\r\n _this.clearResponse();\r\n\r\n ObjectHelpers.forEach(\r\n _headers,\r\n function (headerName, headerValue)\r\n {\r\n _ajaxRequest.setRequestHeader(headerName, headerValue);\r\n });\r\n\r\n _ajaxRequest.responseType = _responseType;\r\n _ajaxRequest.withCredentials = _withCredentials;\r\n }\r\n else if (w.XDomainRequest)\r\n {\r\n if (!_isAsync || _username || _password || _hasContentTypeParam || _hasHeadersParam || _hasHeaderValueParam || _withCredentials)\r\n {\r\n \r\n \r\n _isSupported = false;\r\n }\r\n else\r\n {\r\n _ajaxRequest = new w.XDomainRequest();\r\n _ajaxRequest.onerror = function () { _requestCompleted(false); };\r\n _ajaxRequest.onload = function () { _requestCompleted(true); };\r\n\r\n _ajaxRequest.open(_requestType, _targetUrl);\r\n _this.clearResponse();\r\n }\r\n }\r\n else\r\n {\r\n _isSupported = false;\r\n }\r\n }\r\n\r\n \r\n function _requestCompleted(success)\r\n {\r\n _clearTimeout();\r\n _response = _ajaxRequest.responseText;\r\n _onCompletion(success, !success);\r\n }\r\n\r\n (function _initialize()\r\n {\r\n _headers[c_contentType] = _contentType;\r\n\r\n _httpSuccessCodes[HttpCode.Ok] = true;\r\n _httpSuccessCodes[HttpCode.NotModified] = true;\r\n _httpSuccessCodes[HttpCode.Timeout] = false;\r\n\r\n var targetUrlDomain = Helpers.String.extractDomainFromUrl(_targetUrl);\r\n if (targetUrlDomain)\r\n {\r\n _isCrossDomain = Helpers.String.extractDomainFromUrl(document.location.href) !== targetUrlDomain;\r\n }\r\n })();\r\n};","\r\n\r\nvar stringToArrayBuffer = exports.stringToArrayBuffer = function (string)\r\n{\r\n var arrayBuffer = new ArrayBuffer(string.length);\r\n var dataView = new Uint8Array(arrayBuffer);\r\n\r\n for (var i = 0, len = string.length; i < len; ++i)\r\n {\r\n dataView[i] = string.charCodeAt(i);\r\n }\r\n\r\n return arrayBuffer;\r\n};\r\n\r\nvar arrayBufferToString = exports.arrayBufferToString = function (arrayBuffer)\r\n{\r\n return String.fromCharCode.apply(null, new Uint8Array(arrayBuffer));\r\n};\r\n\r\nexports.base64UrlStringToArrayBuffer = function (base64UrlString)\r\n{\r\n var base64String = base64UrlString.replace(\r\n /[-_]/g,\r\n function (match)\r\n {\r\n switch (match)\r\n {\r\n case \"-\":\r\n return \"+\";\r\n case \"_\":\r\n return \"/\";\r\n }\r\n });\r\n\r\n var bytes = atob(base64String);\r\n return stringToArrayBuffer(bytes);\r\n};\r\n\r\nexports.arrayBufferToBase64UrlString = function (arrayBuffer)\r\n{\r\n var bytes = arrayBufferToString(arrayBuffer);\r\n var base64String = btoa(bytes);\r\n return base64ToBase64UrlString(base64String);\r\n};\r\n\r\nexports.objectToBase64UrlString = function (object)\r\n{\r\n if (object)\r\n {\r\n var string = JSON.stringify(object);\r\n var base64String = btoa(string);\r\n return base64ToBase64UrlString(base64String);\r\n }\r\n\r\n return null;\r\n};\r\n\r\nvar base64ToBase64UrlString = exports.base64ToBase64UrlString = function (base64String)\r\n{\r\n var base64UrlString = base64String.replace(\r\n /[+/=]/g,\r\n function (match)\r\n {\r\n switch (match)\r\n {\r\n case \"+\":\r\n return \"-\";\r\n case \"/\":\r\n return \"_\";\r\n case \"=\":\r\n return \"\";\r\n }\r\n });\r\n\r\n return base64UrlString;\r\n};","var Helpers = require(\"./Helpers\");\r\nvar ClientTracingConstants = require(\"./ClientTracingConstants\");\r\nvar _viewModelDictionary = {};\r\nvar _nullViewModelTracingContextObject = null;\r\n\r\n\r\n\r\nexports.setDataPoint = function (viewModel, dataPointName, dataPointValue, scope)\r\n{\r\n \r\n var options = { scope: (scope ? scope : ClientTracingConstants.DataPointScope.ClientEvent) };\r\n var tracingContextObject = _getTracingContextObject(viewModel);\r\n tracingContextObject.tracingDataPoints = tracingContextObject.tracingDataPoints || {};\r\n tracingContextObject.tracingDataPoints[dataPointName] =\r\n {\r\n options: options,\r\n \r\n value: function () { return dataPointValue; }\r\n };\r\n};\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nvar _getTracingContextObject = exports.getTracingContextObject = function (viewModel)\r\n{\r\n if (!viewModel)\r\n {\r\n _nullViewModelTracingContextObject = _nullViewModelTracingContextObject || {};\r\n return _nullViewModelTracingContextObject;\r\n }\r\n\r\n if (!_viewModelDictionary[viewModel])\r\n {\r\n _viewModelDictionary[viewModel] = {};\r\n }\r\n\r\n return _viewModelDictionary[viewModel];\r\n};\r\n\r\n\r\nexports.getTracingContextObjects = function ()\r\n{\r\n var tracingContextObjectsArray = [];\r\n Helpers.Object.forEach(\r\n _viewModelDictionary,\r\n function (viewModel, tracingContextObject)\r\n {\r\n if (tracingContextObject)\r\n {\r\n tracingContextObjectsArray.push({ viewModel: viewModel, context: tracingContextObject });\r\n }\r\n }\r\n );\r\n\r\n if (_nullViewModelTracingContextObject)\r\n {\r\n tracingContextObjectsArray.push(_nullViewModelTracingContextObject);\r\n }\r\n\r\n return tracingContextObjectsArray;\r\n};\r\n\r\n\r\nexports.registerTracingObservables = function (viewModel, observable, options)\r\n{\r\n var tracingContextObject = _getTracingContextObject(viewModel);\r\n tracingContextObject.tracingObservables = tracingContextObject.tracingObservables || [];\r\n tracingContextObject.tracingObservables.push(\r\n {\r\n options: options,\r\n value: observable\r\n });\r\n};\r\n\r\n\r\nexports.deleteTracingContextObject = function (viewModel)\r\n{\r\n if (!viewModel)\r\n {\r\n _nullViewModelTracingContextObject = null;\r\n }\r\n else if (_viewModelDictionary[viewModel])\r\n {\r\n delete _viewModelDictionary[viewModel];\r\n }\r\n};\r\n\r\n\r\nexports.attachViewLoadClientTracingOptions = function (viewModel, clientTracingOptions)\r\n{\r\n var tracingContextObject = _getTracingContextObject(viewModel);\r\n tracingContextObject.viewLoadClientTracingOptions = clientTracingOptions;\r\n};\r\n\r\n","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar ComponentEvent = require(\"./ComponentEvent\");\r\n\r\nvar w = window;\r\n\r\n\r\nfunction DialogContentControl(params, templateNodes)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _dialogId = params.dialogId;\r\n var _data = params.data;\r\n var _templateNodes = templateNodes;\r\n \r\n\r\n \r\n _this.onRegisterDialog = ComponentEvent.create();\r\n _this.onUnregisterDialog = ComponentEvent.create();\r\n \r\n\r\n \r\n _this.dispose = function ()\r\n {\r\n _this.onUnregisterDialog(_dialogId);\r\n };\r\n \r\n\r\n \r\n (function _initialize()\r\n {\r\n _this.onRegisterDialog(_dialogId, { templateNodes: _templateNodes, data: _data });\r\n })();\r\n \r\n}\r\n\r\nko.components.register(\"dialog-content-control\",\r\n {\r\n viewModel:\r\n {\r\n createViewModel: function (params, componentInfo)\r\n {\r\n return new DialogContentControl(params, componentInfo.templateNodes);\r\n }\r\n },\r\n template: \"\",\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = DialogContentControl;","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar ComponentEvent = require(\"./ComponentEvent\");\r\nvar Constants = require(\"./Constants\");\r\nvar TelemetryFactory = require(\"./TelemetryFactory\");\r\n\r\nvar w = window;\r\nvar AgreementType = Constants.AgreementType;\r\nvar BrowserHelper = Browser.Helper;\r\nvar PaginatedState = Constants.PaginatedState;\r\n\r\nfunction FooterControl(params)\r\n{\r\n \r\n var _this = this;\r\n \r\n\r\n \r\n var _serverData = params.serverData;\r\n var _showLogo = params.showLogo;\r\n var _showLinks = params.showLinks;\r\n var _hideFooter = params.hideFooter;\r\n var _debugDetails = params.debugDetails;\r\n var _showDebugDetails = params.showDebugDetails;\r\n var _hasDarkBackground = params.hasDarkBackground;\r\n var _useDefaultBackground = params.useDefaultBackground;\r\n var _showFooter = params.showFooter;\r\n var _hideTOU = params.hideTOU;\r\n var _hidePrivacy = params.hidePrivacy;\r\n var _termsText = params.termsText;\r\n var _privacyText = params.privacyText;\r\n var _customTermsLink = params.termsLink;\r\n var _customPrivacyLink = params.privacyLink;\r\n var _telemetry = TelemetryFactory.getInstance(_serverData);\r\n \r\n\r\n \r\n var _strings = _serverData.str;\r\n var _isHosted = _serverData.fIsHosted;\r\n var _isChinaDc = _serverData.fIsChinaDc;\r\n var _termsLink = _serverData.urlFooterTOU || _serverData.urlHostedTOULink;\r\n var _privacyLink = _serverData.urlFooterPrivacy || _serverData.urlHostedPrivacyLink;\r\n var _impressumLink = _serverData.urlImpressum;\r\n var _a11yConformeLink = _serverData.a11yConformeLink;\r\n var _icpLink = _serverData.urlGallatinIcp;\r\n var _enableLivePreview = _serverData.fEnableLivePreview;\r\n \r\n\r\n \r\n _this.onAgreementClick = ComponentEvent.create();\r\n _this.onShowDebugDetails = ComponentEvent.create();\r\n _this.onSwitchView = ComponentEvent.create();\r\n \r\n\r\n \r\n _this.showDebugDetails = ko.observable(!!_showDebugDetails);\r\n _this.focusMoreInfo = ko.observable(false).extend({ notify: \"always\" });\r\n\r\n _this.showFooter = (_showFooter !== undefined) ? _showFooter : true;\r\n _this.hideTOU = _hideTOU || false;\r\n _this.hidePrivacy = _hidePrivacy || false;\r\n _this.termsText = BrowserHelper.htmlUnescape(_termsText) || _strings[\"MOBILE_STR_Footer_Terms\"];\r\n _this.privacyText = BrowserHelper.htmlUnescape(_privacyText) || _strings[\"MOBILE_STR_Footer_Privacy\"];\r\n _this.termsLink = _customTermsLink || _termsLink;\r\n _this.privacyLink = _customPrivacyLink || _privacyLink;\r\n _this.showLogo = _showLogo && !_isChinaDc;\r\n _this.showLinks = _showLinks;\r\n _this.hideFooter = _hideFooter;\r\n _this.showIcpLicense = _isChinaDc;\r\n _this.debugDetails = _debugDetails;\r\n _this.impressumLink = _impressumLink;\r\n _this.a11yConformeLink = _a11yConformeLink;\r\n _this.icpLink = _icpLink;\r\n _this.hasDarkBackground = _hasDarkBackground;\r\n _this.useDefaultBackground = _useDefaultBackground;\r\n \r\n\r\n \r\n _this.privacyLink_onClick = function ()\r\n {\r\n handleLegalLink(AgreementType.Privacy, _this.privacyLink);\r\n };\r\n\r\n _this.termsLink_onClick = function ()\r\n {\r\n handleLegalLink(AgreementType.Tou, _this.termsLink);\r\n };\r\n\r\n _this.impressumLink_onClick = function ()\r\n {\r\n handleLegalLink(AgreementType.Impressum, _this.impressumLink);\r\n };\r\n\r\n _this.services_onClick = function ()\r\n {\r\n if (_telemetry)\r\n {\r\n _telemetry.set(\"LoginConsentMessageClicked\", { viewId: \"Username\" });\r\n _telemetry.post(true);\r\n }\r\n\r\n _this.onSwitchView(PaginatedState.SeeHowDataIsManaged);\r\n };\r\n\r\n _this.a11yConformeLink_onClick = function ()\r\n {\r\n handleLegalLink(AgreementType.A11yConforme, _this.a11yConformeLink);\r\n };\r\n\r\n _this.moreInfo_onClick = function ()\r\n {\r\n if (!_enableLivePreview)\r\n {\r\n _this.setDebugDetailsState(!_this.showDebugDetails());\r\n _this.onShowDebugDetails();\r\n\r\n if (!_this.showDebugDetails())\r\n {\r\n _this.focusMoreInfo(true);\r\n }\r\n }\r\n };\r\n\r\n _this.setDebugDetailsState = function (state)\r\n {\r\n _this.showDebugDetails(state);\r\n };\r\n\r\n _this.focusMoreInfoLink = function ()\r\n {\r\n _this.focusMoreInfo(true);\r\n };\r\n \r\n\r\n \r\n function handleLegalLink(agreementType, url)\r\n {\r\n if (_isHosted && !_isChinaDc)\r\n {\r\n _this.onAgreementClick(agreementType);\r\n }\r\n else\r\n {\r\n w.open(url, \"_blank\");\r\n }\r\n }\r\n \r\n}\r\n\r\nko.components.register(\"footer-control\",\r\n {\r\n viewModel: FooterControl,\r\n template: require(\"html/Shared/Controls/FooterControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = FooterControl;","\r\nexports.PlatformTimeout = 0;\r\n\r\n\r\nexports.Timeout = 600000;\r\n\r\n\r\nexports.PromiseTimeout = 250;\r\n\r\nexports.SupportedKeyAlgorithms =\r\n [\r\n -7, \r\n -257 \r\n ];\r\n\r\nexports.Error =\r\n {\r\n Internal: \"InternalError\",\r\n FidoCreateCallUnexpectedResponse: \"FidoCreateCallUnexpectedResponse\"\r\n };\r\n","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar ComponentEvent = require(\"./ComponentEvent\");\r\nvar ApiRequest = require(\"./ApiRequest\");\r\nvar DebugDetailsExtensions = require(\"./DebugDetailsKnockoutExtensions\");\r\n\r\nvar w = window;\r\n\r\nvar DateTimeHelpers = Helpers.DateTime;\r\nvar BrowserHelper = Browser.Helper;\r\n\r\nDebugDetailsExtensions.applyExtensions(ko);\r\n\r\nfunction DebugDetailsViewModel(params)\r\n{\r\n \r\n var _this = this;\r\n\r\n var _username = null;\r\n \r\n\r\n \r\n var _debugDetails = params.debugDetails;\r\n var _serverData = params.serverData;\r\n var _isDebugTracingEnabled = params.isDebugTracingEnabled;\r\n var _useWiderWidth = params.useWiderWidth;\r\n \r\n\r\n \r\n var _exceptionMessage = _serverData.strServiceExceptionMessage;\r\n var _setDebugModeUrl = _serverData.urlSetDebugMode;\r\n var _postUsername = _serverData.sPOST_Username;\r\n var _signinName = _serverData.sSigninName;\r\n var _strings = _serverData.str;\r\n var _errorCode = _serverData.sErrorCode;\r\n \r\n\r\n \r\n _this.onCloseBanner = ComponentEvent.create();\r\n _this.onSetDebugTracing = ComponentEvent.create();\r\n \r\n\r\n \r\n _this.debugModeError = ko.observable();\r\n _this.isDebugTracingEnabled = ko.observable(_isDebugTracingEnabled);\r\n _this.sending = ko.observable(false);\r\n _this.showBanner = ko.observable(true);\r\n _this.showDebugDetailsCopyMessage = ko.observable(false);\r\n _this.isFocusActivated = ko.observable(false);\r\n\r\n _this.unsafe_exceptionMessage = null;\r\n _this.debugDetails = null;\r\n _this.useWiderWidth = _useWiderWidth;\r\n \r\n\r\n \r\n _this.hideBanner_onClick = function ()\r\n {\r\n _this.onCloseBanner();\r\n _this.showBanner(false);\r\n };\r\n\r\n _this.setDebugMode_onClick = function ()\r\n {\r\n if (_this.sending())\r\n {\r\n return;\r\n }\r\n\r\n var apiRequest = new ApiRequest();\r\n\r\n _this.sending(true);\r\n _this.debugModeError(\"\");\r\n\r\n var postData =\r\n {\r\n mode: _this.isDebugTracingEnabled() ? 0 : 1,\r\n user: _username\r\n };\r\n\r\n apiRequest.Json(\r\n {\r\n url: _setDebugModeUrl\r\n },\r\n postData,\r\n _setDebugMode_onSuccess,\r\n _setDebugMode_onError);\r\n };\r\n\r\n _this.activateFocus = function ()\r\n {\r\n this.isFocusActivated(true);\r\n };\r\n \r\n\r\n \r\n function _setDebugMode_onSuccess()\r\n {\r\n _this.sending(false);\r\n _this.isDebugTracingEnabled(!_this.isDebugTracingEnabled());\r\n _this.onSetDebugTracing();\r\n }\r\n\r\n function _setDebugMode_onError()\r\n {\r\n _this.sending(false);\r\n _this.debugModeError(_strings[\"STR_Error_Details_Debug_Mode_Failure\"]);\r\n }\r\n\r\n (function _initialize()\r\n {\r\n _username = _postUsername || _signinName || \"\";\r\n _this.unsafe_exceptionMessage = BrowserHelper.htmlUnescape(_exceptionMessage);\r\n\r\n _this.debugDetails = _debugDetails || {};\r\n\r\n if (_errorCode)\r\n {\r\n _this.debugDetails.errorCode = _errorCode;\r\n }\r\n\r\n if (!_this.debugDetails.timestamp)\r\n {\r\n _this.debugDetails.timestamp = DateTimeHelpers.getUTCString();\r\n }\r\n })();\r\n \r\n}\r\n\r\nko.components.register(\"debug-details-control\",\r\n {\r\n viewModel: DebugDetailsViewModel,\r\n template: require(\"html/Shared/Controls/DebugDetailsControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = DebugDetailsViewModel;","var ko = require(\"knockout\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar ComponentEvent = require(\"../Core/ComponentEvent\");\r\nvar Constants = require(\"../Core/Constants\");\r\n\r\nvar w = window;\r\nvar DialogId = Constants.DialogId;\r\n\r\n\r\nfunction FidoHelpButtonControl(params)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _isPlatformAuthenticatorAvailable = params.isPlatformAuthenticatorAvailable;\r\n \r\n\r\n \r\n _this.onRegisterDialog = ComponentEvent.create();\r\n _this.onUnregisterDialog = ComponentEvent.create();\r\n _this.onShowDialog = ComponentEvent.create();\r\n \r\n\r\n \r\n _this.isPlatformAuthenticatorAvailable = _isPlatformAuthenticatorAvailable;\r\n\r\n _this.hasFocus = ko.observable(false);\r\n \r\n\r\n \r\n _this.fidoHelp_onClick = function ()\r\n {\r\n _this.onShowDialog(DialogId.FidoHelp)\r\n .then(\r\n function ()\r\n {\r\n _this.hasFocus(true);\r\n });\r\n };\r\n \r\n}\r\n\r\nko.components.register(\"fido-help-button-control\",\r\n {\r\n viewModel: FidoHelpButtonControl,\r\n template: require(\"html/LoginPage/Controls/FidoHelpButtonControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = FidoHelpButtonControl;","\r\n\r\nvar ClientTracingContext = require(\"./ClientTracingContext\");\r\n\r\nexports.applyExtenders = function (ko)\r\n{\r\n \r\n ko.extenders.preventExternalWrite = function (target)\r\n {\r\n var initialValue = target();\r\n var currentValue = ko.observable(initialValue).extend({ notify: \"always\" });\r\n\r\n var result = ko.pureComputed(\r\n {\r\n read: function ()\r\n {\r\n return currentValue();\r\n },\r\n write: function (newValue)\r\n {\r\n \r\n if (newValue !== initialValue)\r\n {\r\n currentValue(initialValue);\r\n }\r\n }\r\n }).extend({ notify: \"always\" });\r\n\r\n return result;\r\n };\r\n\r\n \r\n ko.extenders.flowTokenUpdate = function (target, serverData)\r\n {\r\n var result = ko.pureComputed(\r\n {\r\n read: target,\r\n write: function (newValue)\r\n {\r\n if (newValue)\r\n {\r\n if (serverData)\r\n {\r\n if (serverData.sFTTag)\r\n {\r\n serverData.sFTTag = serverData.sFTTag.replace(serverData.sFT, newValue);\r\n }\r\n\r\n serverData.sFT = newValue;\r\n }\r\n\r\n target(newValue);\r\n }\r\n }\r\n }).extend({ notify: \"always\" });\r\n\r\n return result;\r\n };\r\n\r\n \r\n ko.extenders.logValue = function (target, options)\r\n {\r\n if (options)\r\n {\r\n ClientTracingContext.registerTracingObservables(options.viewModel, target, options.tracingOptions);\r\n }\r\n\r\n return target;\r\n };\r\n\r\n \r\n ko.extenders.loadImageFromUrl = function (target)\r\n {\r\n var result = ko.pureComputed(\r\n {\r\n read: target,\r\n write: function (newValue)\r\n {\r\n var currentValue = target();\r\n\r\n if (currentValue === newValue)\r\n {\r\n return;\r\n }\r\n\r\n if (newValue)\r\n {\r\n var image = new Image();\r\n\r\n image.onload = function ()\r\n {\r\n target(newValue);\r\n };\r\n\r\n image.src = newValue;\r\n }\r\n else\r\n {\r\n target(newValue);\r\n }\r\n }\r\n }).extend({ notify: \"always\" });\r\n\r\n return result;\r\n };\r\n};","\r\n\r\nvar ko = require(\"knockout\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar ComponentEvent = require(\"../Core/ComponentEvent\");\r\nvar Constants = require(\"../Core/Constants\");\r\nvar Fido = require(\"../Core/Fido\");\r\nvar PromiseHelpers = require(\"../Core/PromiseHelpers\");\r\nvar GetOneTimeCodeHelper = require(\"../Core/GetOneTimeCodeHelper\");\r\nvar Otc = require(\"../Core/OtcRequestControl\");\r\nvar Helpers = require(\"../Core/Helpers\");\r\nvar TelemetryFactory = require(\"../Core/TelemetryFactory\");\r\n\r\nvar w = window;\r\nvar StringHelpers = Helpers.String;\r\nvar PaginatedState = Constants.PaginatedState;\r\nvar CredentialType = Constants.CredentialType;\r\nvar DialogId = Constants.DialogId;\r\n\r\nfunction CredSwitchLinkControl(params)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _serverData = params.serverData;\r\n var _username = params.username;\r\n var _availableCreds = params.availableCreds || [];\r\n var _currentCred = params.currentCred || {};\r\n var _flowToken = params.flowToken;\r\n var _showForgotUsername = params.showForgotUsername;\r\n var _hideCredSwitchLink = params.hideCredSwitchLink;\r\n var _ariaDescribedBy = params.ariaDescribedBy;\r\n var _setFocus = params.setFocus;\r\n var _undirectedRecoveryContinuationToken = params.undirectedRecoveryContinuationToken;\r\n var _undirectedRecoveryUrl = params.undirectedRecoveryUrl;\r\n var _telemetry = TelemetryFactory.getInstance(_serverData);\r\n \r\n\r\n \r\n var _strings = _serverData.str;\r\n var _forgotUsernameUrl = _serverData.urlForgotUsername;\r\n var _siteId = _serverData.sSiteId;\r\n var _clientId = _serverData.sClientId;\r\n var _forwardedClientId = _serverData.sForwardedClientId;\r\n var _noPaBubbleVersion = _serverData.sNoPaBubbleVersion;\r\n var _showSignInOptionsAsButton = _serverData.fShowSignInOptionsAsButton;\r\n var _isOfflineAccountVisible = _serverData.fOfflineAccountVisible;\r\n var _showInterstitialView = _serverData.fUseCertificateInterstitialView;\r\n var _IsPasskeySupportEnabled = _serverData.fIsPasskeySupportEnabled;\r\n var _useWebviewFidoCustomProtocol = _serverData.fUseWebviewFidoCustomProtocol;\r\n \r\n\r\n \r\n var _credViewMap = [];\r\n var _selectedCred = null;\r\n var _hasTlr = _serverData.fEnableTotalLossRecovery && _undirectedRecoveryContinuationToken && _undirectedRecoveryUrl && !__IS_CXH_ENABLED__;\r\n\r\n var _fidoLinkText = ko.observable();\r\n \r\n\r\n \r\n _this.onSwitchView = ComponentEvent.create();\r\n _this.onRedirect = ComponentEvent.create();\r\n _this.onRegisterDialog = ComponentEvent.create();\r\n _this.onUnregisterDialog = ComponentEvent.create();\r\n _this.onShowDialog = ComponentEvent.create();\r\n _this.onSetPendingRequest = ComponentEvent.create();\r\n _this.onUpdateFlowToken = ComponentEvent.create();\r\n \r\n\r\n \r\n _this.credentialCount = 0;\r\n _this.selectedCredType = null;\r\n _this.selectedCredShownOnlyOnPicker = false;\r\n _this.switchToCredId = null;\r\n _this.switchToCredText = null;\r\n _this.showSwitchToCredPickerLink = false;\r\n _this.showForgotUsername = _showForgotUsername;\r\n _this.isUserKnown = !!_currentCred.credType;\r\n _this.displayHelp = !_currentCred.credType;\r\n _this.hideCredSwitchLink = _hideCredSwitchLink;\r\n _this.isOfflineAccountVisible = _isOfflineAccountVisible;\r\n _this.ariaDescribedBy = _ariaDescribedBy;\r\n _this.setFocus = _setFocus;\r\n _this.showCredSwitchLink = false;\r\n\r\n _this.isPlatformAuthenticatorAvailable = ko.observable(false);\r\n _this.credLinkError = ko.observable();\r\n \r\n\r\n \r\n _this.fidoHelp_onClick = function ()\r\n {\r\n _this.onShowDialog(DialogId.FidoHelp);\r\n };\r\n\r\n _this.view_onUpdateFlowToken = function (token)\r\n {\r\n \r\n _flowToken = token;\r\n };\r\n \r\n\r\n \r\n _this.switchToCredPicker_onClick = function ()\r\n {\r\n if (_telemetry)\r\n {\r\n _telemetry.set(\"LoginSwitchToCredentialPickerClicked\", { value: \"SignInOptionsLink\" });\r\n _telemetry.post(true);\r\n }\r\n\r\n _this.onSwitchView(PaginatedState.CredentialPicker);\r\n };\r\n\r\n _this.switchToCred_onClick = function ()\r\n {\r\n var credType = (_selectedCred && _selectedCred.credType) || CredentialType.Password;\r\n\r\n _this.credLinkError(\"\");\r\n\r\n if (_telemetry)\r\n {\r\n _telemetry.set(\"LoginCredentialSwitchLinkClicked\", { value: credType });\r\n _telemetry.post(true);\r\n }\r\n\r\n switch (credType)\r\n {\r\n case CredentialType.OneTimeCode:\r\n \r\n \r\n if (_selectedCred.proof.clearDigits)\r\n {\r\n _this.onSwitchView(PaginatedState.ProofConfirmation, false , _selectedCred);\r\n }\r\n else\r\n {\r\n var otcParams = _getOneTimeCodeHelperParams();\r\n var getOneTimeCodeHelper = new GetOneTimeCodeHelper(otcParams);\r\n\r\n _this.onSetPendingRequest(true);\r\n getOneTimeCodeHelper.sendRequest();\r\n }\r\n break;\r\n\r\n case CredentialType.OtherMicrosoftIdpFederation:\r\n case CredentialType.LinkedIn:\r\n case CredentialType.GitHub:\r\n case CredentialType.Google:\r\n case CredentialType.Facebook:\r\n _this.onRedirect(_selectedCred.redirectUrl, _selectedCred.redirectPostParams || null);\r\n break;\r\n case CredentialType.Certificate:\r\n if (_showInterstitialView)\r\n {\r\n _this.onSwitchView(PaginatedState.CertificateInterstitialView);\r\n }\r\n else\r\n {\r\n _this.onRedirect(_selectedCred.redirectUrl, _selectedCred.redirectPostParams || null);\r\n }\r\n break;\r\n default:\r\n _this.onSwitchView(_credViewMap[credType].viewId);\r\n break;\r\n }\r\n };\r\n\r\n _this.forgotUsername_onClick = function ()\r\n {\r\n if (_telemetry)\r\n {\r\n _telemetry.set(\"LoginForgotUsernameClicked\", true);\r\n _telemetry.post(true);\r\n }\r\n\r\n document.location.assign(_forgotUsernameUrl);\r\n };\r\n\r\n _this.getSwitchToCredText = function ()\r\n {\r\n return ko.unwrap(_this.switchToCredText);\r\n };\r\n \r\n\r\n \r\n function _updateFidoLinkText()\r\n {\r\n PromiseHelpers.throwUnhandledExceptionOnRejection(\r\n Fido.isPlatformAuthenticatorAvailable(_useWebviewFidoCustomProtocol)\r\n .then(null, function () { return false; })\r\n .then(\r\n function (isPlatformAuthenticatorAvailable)\r\n {\r\n if (isPlatformAuthenticatorAvailable)\r\n {\r\n _fidoLinkText(_strings[\"CT_PWD_STR_SwitchToFido_Link\"]);\r\n\r\n _this.isPlatformAuthenticatorAvailable(true);\r\n }\r\n }));\r\n }\r\n\r\n function _getOneTimeCodeHelperParams()\r\n {\r\n var otcParams =\r\n {\r\n username: StringHelpers.cleanseUsername(_username),\r\n proofData: _selectedCred.proof.data,\r\n proofType: _selectedCred.proof.type,\r\n purpose: _selectedCred.proof.isNopa ? Otc.Purpose.NoPassword : Otc.Purpose.OtcLogin,\r\n flowToken: _flowToken,\r\n isEncrypted: _selectedCred.proof.isEncrypted,\r\n siteId: _siteId,\r\n clientId: _clientId,\r\n forwardedClientId: _forwardedClientId,\r\n noPaBubbleVersion: _noPaBubbleVersion,\r\n successCallback: _sendOneTimeCode_onSuccess,\r\n failureCallback: _sendOneTimeCode_onFail\r\n };\r\n\r\n if (otcParams.isEncrypted)\r\n {\r\n switch (_selectedCred.proof.type)\r\n {\r\n case PROOF.Type.Email:\r\n otcParams.proofConfirmation = _selectedCred.proof.display;\r\n break;\r\n case PROOF.Type.SMS:\r\n case PROOF.Type.Voice:\r\n otcParams.proofConfirmation = StringHelpers.cleanseUsername(_selectedCred.proof.display).slice(-4);\r\n break;\r\n }\r\n }\r\n\r\n return otcParams;\r\n }\r\n\r\n function _sendOneTimeCode_onSuccess(response)\r\n {\r\n _setFlowToken(response);\r\n\r\n _this.onSetPendingRequest(false);\r\n _this.onSwitchView(PaginatedState.OneTimeCode, false , _selectedCred);\r\n }\r\n\r\n function _sendOneTimeCode_onFail(response)\r\n {\r\n var errorString;\r\n var errorNumericId = response.getOtcStatus();\r\n\r\n _setFlowToken(response);\r\n\r\n switch (errorNumericId)\r\n {\r\n case Otc.Status.FTError:\r\n errorString = _strings[\"CT_OTC_STR_Error_FlowExpired\"];\r\n break;\r\n default:\r\n errorString = _selectedCred.proof.str[\"CT_OTCS_STR_Error_SendCodeServer\"] || \"\";\r\n break;\r\n }\r\n\r\n _this.onSetPendingRequest(false);\r\n _this.credLinkError(errorString);\r\n }\r\n\r\n function _setFlowToken(response)\r\n {\r\n if (response)\r\n {\r\n if (response.getFlowToken)\r\n {\r\n _flowToken = response.getFlowToken();\r\n _this.onUpdateFlowToken(_flowToken);\r\n }\r\n else if (response.FlowToken)\r\n {\r\n _flowToken = response.FlowToken;\r\n _this.onUpdateFlowToken(_flowToken);\r\n }\r\n }\r\n }\r\n\r\n (function _initialize()\r\n {\r\n _credViewMap[CredentialType.Password] =\r\n {\r\n viewId: PaginatedState.Password,\r\n credId: \"idA_PWD_SwitchToPassword\",\r\n credText: _strings[\"CT_RNGC_STR_SwitchToPassword_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.RemoteNGC] =\r\n {\r\n viewId: PaginatedState.RemoteNGC,\r\n credId: \"idA_PWD_SwitchToRemoteNGC\",\r\n credText: _strings[\"CT_PWD_STR_SwitchToRemoteNGC_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.Fido] =\r\n {\r\n viewId: PaginatedState.Fido,\r\n credId: \"idA_PWD_SwitchToFido\",\r\n credText: (_IsPasskeySupportEnabled) ? _strings[\"CT_PWD_STR_SwitchToPasskey_Link\"] : _fidoLinkText\r\n };\r\n\r\n _credViewMap[CredentialType.Certificate] =\r\n {\r\n credId: \"idA_PWD_SwitchToCertificate\",\r\n credText: _strings[\"CT_STR_CredentialPicker_Option_Certificate\"]\r\n };\r\n\r\n _credViewMap[CredentialType.OtherMicrosoftIdpFederation] =\r\n {\r\n credId: \"useMicrosoftLink\",\r\n credText: _strings[\"CT_PWD_STR_UseMicrosoft_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.LinkedIn] =\r\n {\r\n credId: \"useLinkedInLink\",\r\n credText: _strings[\"CT_PWD_STR_UseLinkedIn_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.GitHub] =\r\n {\r\n credId: \"useGitHubLink\",\r\n credText: _strings[\"CT_PWD_STR_UseGitHub_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.Google] =\r\n {\r\n credId: \"useGoogleLink\",\r\n credText: _strings[\"CT_PWD_STR_UseGoogle_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.Facebook] =\r\n {\r\n credId: \"useGoogleLink\",\r\n credText: _strings[\"CT_PWD_STR_UseFacebook_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.Federation] =\r\n {\r\n viewId: PaginatedState.IdpRedirect,\r\n credId: \"redirectToIdpLink\",\r\n credText: _strings[\"CT_RNGC_STR_SwitchToFederated_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.RemoteLogin] =\r\n {\r\n viewId: PaginatedState.RemoteLoginPolling,\r\n credId: \"remoteLoginLink\",\r\n credText: _strings[\"CT_PWD_STR_RemoteLoginLink\"]\r\n };\r\n\r\n _credViewMap[CredentialType.OneTimeCode] =\r\n {\r\n viewId: PaginatedState.OneTimeCode,\r\n credId: \"otcLoginLink\",\r\n credText: _strings[\"CT_PWD_STR_SwitchToOTC_Link\"]\r\n };\r\n\r\n _credViewMap[CredentialType.AccessPass] =\r\n {\r\n viewId: PaginatedState.AccessPass,\r\n credId: \"accessPassLink\",\r\n credText: _strings[\"CT_PWD_STR_Login_SwitchToAccessPassLink\"]\r\n };\r\n\r\n _fidoLinkText(_strings[\"CT_PWD_STR_SwitchToFidoCrossPlatform_Link\"]);\r\n\r\n ko.utils.arrayForEach(\r\n _availableCreds,\r\n function (credential)\r\n {\r\n \r\n if (_credViewMap[credential.credType])\r\n {\r\n var credMatch = credential.credType === _currentCred.credType;\r\n var isCredTypeOtc = credential.credType === CredentialType.OneTimeCode;\r\n var proofDataMatch = credMatch && isCredTypeOtc && credential.proof.data === _currentCred.proof.data;\r\n var proofTypesMatch = credMatch && isCredTypeOtc && credential.proof.type === _currentCred.proof.type;\r\n\r\n if (!credMatch || (isCredTypeOtc && !proofDataMatch) || (isCredTypeOtc && !proofTypesMatch))\r\n {\r\n _this.credentialCount++;\r\n _selectedCred = credential;\r\n }\r\n }\r\n\r\n if (credential.credType === CredentialType.Fido)\r\n {\r\n _updateFidoLinkText();\r\n }\r\n\r\n if (credential.credType === CredentialType.OfflineAccount)\r\n {\r\n _this.credentialCount++;\r\n _this.selectedCredShownOnlyOnPicker = true;\r\n }\r\n });\r\n\r\n if (_selectedCred && _this.credentialCount === 1)\r\n {\r\n _this.selectedCredType = _selectedCred.credType;\r\n _this.selectedCredShownOnlyOnPicker = !!_selectedCred.shownOnlyOnPicker;\r\n _this.switchToCredId = _credViewMap[_this.selectedCredType || CredentialType.Password].credId;\r\n _this.switchToCredText = _credViewMap[_this.selectedCredType || CredentialType.Password].credText;\r\n\r\n if (_this.selectedCredType === CredentialType.OneTimeCode)\r\n {\r\n switch (_selectedCred.proof.type)\r\n {\r\n case PROOF.Type.Email:\r\n _this.switchToCredText = StringHelpers.format(_strings[\"CT_OTC_STR_SwitchToOtc_EmailLink\"], _selectedCred.proof.display);\r\n break;\r\n case PROOF.Type.SMS:\r\n _this.switchToCredText = StringHelpers.format(_strings[\"CT_OTC_STR_SwitchToOtc_SmsLink\"], _selectedCred.proof.display);\r\n break;\r\n case PROOF.Type.Voice:\r\n _this.switchToCredText = StringHelpers.format(_strings[\"CT_OTC_STR_SwitchToOtc_VoiceLink\"], _selectedCred.proof.display);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n \r\n \r\n \r\n \r\n _this.showSwitchToCredPickerLink = (!_showSignInOptionsAsButton || _this.isUserKnown)\r\n && (_this.credentialCount > 1\r\n || (_this.credentialCount === 1\r\n && (_showForgotUsername\r\n || _this.selectedCredShownOnlyOnPicker))\r\n || _hasTlr);\r\n\r\n _this.showCredSwitchLink = _serverData.fEnableTotalLossRecovery ? _this.credentialCount === 1 && !_this.showSwitchToCredPickerLink : _this.credentialCount === 1 && !(_this.showForgotUsername || _this.selectedCredShownOnlyOnPicker);\r\n })();\r\n \r\n}\r\n\r\nko.components.register(\"cred-switch-link-control\",\r\n {\r\n viewModel: CredSwitchLinkControl,\r\n template: require(\"html/LoginPage/Controls/CredSwitchLinkControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = CredSwitchLinkControl;","var ko = require(\"knockout\");\r\nvar Helpers = require(\"../Core/Helpers\");\r\n\r\nvar StringHelpers = Helpers.String;\r\n\r\nmodule.exports = function (errorComputed, defaultValue)\r\n{\r\n var _this = this;\r\n\r\n var _valueSubscription = null;\r\n\r\n _this.placeholderTextboxMethods = ko.observable();\r\n \r\n _this.value = ko.observable(defaultValue || \"\");\r\n _this.focused = ko.observable(false).extend({ notify: \"always\" });\r\n _this.error = errorComputed;\r\n\r\n _this.textbox_onUpdateFocus = function (isFocused)\r\n {\r\n _this.focused(isFocused);\r\n };\r\n\r\n _this.getTrimmedValue = function (maxLength)\r\n {\r\n var trimmedValue = StringHelpers.trim(_this.value() || \"\");\r\n\r\n if (maxLength && maxLength > 0)\r\n {\r\n trimmedValue = trimmedValue.substring(0, maxLength);\r\n }\r\n\r\n return trimmedValue;\r\n };\r\n\r\n function _setupPlaceholderVisibility(placeholderTextboxMethods)\r\n {\r\n \r\n var currentValue = _this.value.peek();\r\n placeholderTextboxMethods.toggleVisibility(!currentValue);\r\n\r\n _valueSubscription = _this.value.subscribe(\r\n function (value)\r\n {\r\n \r\n placeholderTextboxMethods.toggleVisibility(!value);\r\n });\r\n }\r\n\r\n (function _initialize()\r\n {\r\n \r\n _this.placeholderTextboxMethods.subscribe(\r\n function (placeholderTextboxMethods)\r\n {\r\n if (placeholderTextboxMethods && !_valueSubscription)\r\n {\r\n _setupPlaceholderVisibility(placeholderTextboxMethods);\r\n }\r\n }\r\n );\r\n })();\r\n};","var ko = require(\"knockout\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar ComponentEvent = require(\"../Core/ComponentEvent\");\r\n\r\nvar w = window;\r\n\r\nfunction PlaceholderTextboxViewModel(params)\r\n{\r\n var _this = this;\r\n\r\n var _isPlaceholderSupported = \"placeholder\" in document.createElement(\"input\");\r\n\r\n \r\n var _serverData = params.serverData;\r\n var _hintText = params.hintText;\r\n var _hintCss = params.hintCss || \"placeholder\";\r\n\r\n var _isHosted = _serverData.fIsHosted;\r\n\r\n \r\n _this.onUpdateFocus = ComponentEvent.create();\r\n\r\n \r\n _this.hintText = _hintText;\r\n _this.usePlaceholderAttribute = false;\r\n _this.placeholderVisible = ko.observable(true);\r\n\r\n _this.hintCss = ko.pureComputed(\r\n function ()\r\n {\r\n var classes = {};\r\n\r\n if (_hintCss)\r\n {\r\n ko.utils.arrayForEach(\r\n _hintCss.split(\" \"),\r\n function (className)\r\n {\r\n classes[className] = true;\r\n });\r\n }\r\n\r\n return classes;\r\n });\r\n\r\n _this.placeholderText = ko.pureComputed(\r\n function ()\r\n {\r\n if (_this.usePlaceholderAttribute)\r\n {\r\n return _this.hintText;\r\n }\r\n });\r\n\r\n \r\n _this.toggleVisibility = function (isVisible)\r\n {\r\n _this.placeholderVisible(isVisible);\r\n };\r\n\r\n \r\n _this.placeholder_onClick = function ()\r\n {\r\n _this.onUpdateFocus(true);\r\n };\r\n\r\n (function _initialize()\r\n {\r\n if (_isPlaceholderSupported && Browser.Helper.isPlaceholderAttributeAllowed(_isHosted))\r\n {\r\n _this.usePlaceholderAttribute = true;\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"placeholder-textbox-field\",\r\n {\r\n viewModel: PlaceholderTextboxViewModel,\r\n template: require(\"html/Shared/Fields/PlaceholderTextbox/PlaceholderTextboxFieldHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = PlaceholderTextboxViewModel;","var ko = require(\"knockout\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar Helpers = require(\"../Core/Helpers\");\r\n\r\nvar w = window;\r\nvar StringHelpers = Helpers.String;\r\nvar BrowserHelper = Browser.Helper;\r\n\r\nfunction HeaderControl(params)\r\n{\r\n \r\n var _this = this;\r\n \r\n\r\n \r\n var _serverData = params.serverData;\r\n var _title = params.title;\r\n var _subtitle = params.subtitle;\r\n var _useSubtitle = params.useSubtitle !== false;\r\n var _isSignUpView = params.isSignUpView;\r\n var _headerDescription = params.headerDescription;\r\n \r\n\r\n \r\n var _appCobranding = _serverData.oAppCobranding;\r\n var _strings = _serverData.str;\r\n var _isSelfServiceSignupUxEnabled = _serverData.fIsSelfServiceSignupUxEnabled;\r\n var _isCiamUserFlowUx = _serverData.fIsCiamUserFlowUxNewLogicEnabled && _serverData.fIsCiamUserFlowUx;\r\n var _companyDisplayName = _serverData.sCompanyDisplayName;\r\n var _useNonMicrosoftDefaultBrandingForCiam = _serverData.fUseNonMicrosoftDefaultBrandingForCiam;\r\n \r\n\r\n \r\n _this.title = null;\r\n _this.subtitle = null;\r\n _this.headerDescription = null;\r\n \r\n\r\n (function _initialize()\r\n {\r\n var isAppNamePresent = !!(_appCobranding && _appCobranding.friendlyAppName);\r\n _this.isSubtitleVisible = _useSubtitle && (isAppNamePresent || _subtitle);\r\n _this.title = _title;\r\n _this.subtitle = _subtitle;\r\n\r\n if (_isSelfServiceSignupUxEnabled || _isCiamUserFlowUx)\r\n {\r\n var unsafe_companyName = BrowserHelper.htmlUnescape(_companyDisplayName);\r\n\r\n \r\n if (_headerDescription)\r\n {\r\n _this.headerDescription = _headerDescription;\r\n }\r\n \r\n else if (_companyDisplayName)\r\n {\r\n var headerDescriptionDefaultString = _isSignUpView ? _strings[\"STR_SSSU_SignUp_HeaderDescription\"] : _strings[\"STR_SSSU_SignIn_HeaderDescription\"];\r\n _this.headerDescription = _useNonMicrosoftDefaultBrandingForCiam ? StringHelpers.format(headerDescriptionDefaultString, unsafe_companyName) : StringHelpers.format(headerDescriptionDefaultString, _companyDisplayName);\r\n }\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"header-control\",\r\n {\r\n viewModel: HeaderControl,\r\n template: require(\"html/LoginPage/Controls/HeaderControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents)\r\n });\r\n\r\nmodule.exports = HeaderControl;","module.exports = __webpack_public_path__ + \"content/images/picker_account_msa_7a63b3ce03943629f052226aaa378291.png\";","module.exports = __webpack_public_path__ + \"content/images/picker_account_msa_3b879963b4f70829fd7a25cbc9519792.svg\";","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var ko = require(\"knockout\");\r\n\r\n\r\nexports.errorComputed = function (getClientErrorCallback)\r\n{\r\n var _asyncBlockingError = ko.observable();\r\n var _asyncNonBlockingError = ko.observable();\r\n var _clientError = ko.pureComputed(getClientErrorCallback).extend({ notify: \"always\" });\r\n\r\n var _blockingError = ko.pureComputed(\r\n function ()\r\n {\r\n if (_clientError())\r\n {\r\n return _clientError();\r\n }\r\n\r\n if (_asyncBlockingError())\r\n {\r\n var error = _asyncBlockingError();\r\n _asyncBlockingError(null);\r\n return error;\r\n }\r\n\r\n return null;\r\n });\r\n\r\n return ko.utils.extend(\r\n ko.pureComputed(\r\n function ()\r\n {\r\n if (_blockingError())\r\n {\r\n return _blockingError();\r\n }\r\n\r\n if (_asyncNonBlockingError())\r\n {\r\n var error = _asyncNonBlockingError();\r\n _asyncNonBlockingError(null);\r\n return error;\r\n }\r\n\r\n return null;\r\n }\r\n ),\r\n {\r\n isBlocking: function ()\r\n {\r\n return _blockingError() !== null;\r\n },\r\n\r\n setBlockingError: function (errorString)\r\n {\r\n _asyncBlockingError(errorString);\r\n },\r\n\r\n setNonBlockingError: function (errorString)\r\n {\r\n _asyncNonBlockingError(errorString);\r\n },\r\n\r\n setError: function (errorString, isBlockingError)\r\n {\r\n if (isBlockingError)\r\n {\r\n _asyncBlockingError(errorString);\r\n }\r\n else\r\n {\r\n _asyncNonBlockingError(errorString);\r\n }\r\n },\r\n\r\n clearNonBlockingError: function ()\r\n {\r\n _asyncNonBlockingError(null);\r\n\r\n \r\n _asyncNonBlockingError.valueHasMutated();\r\n }\r\n });\r\n};","var JSON = require(\"JSON\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar ApiRequest = require(\"./ApiRequest\");\r\nvar Promise = require(\"./Promise\");\r\nvar ChromeBrowserCore = require(\"./ChromeBrowserCore\");\r\nvar TokenBrokerAuthHelper = require(\"./TokenBrokerAuthHelper\");\r\n\r\nvar w = window;\r\nvar QueryString = Browser.QueryString;\r\nvar Cookies = Browser.Cookies;\r\nvar ArrayHelpers = Helpers.Array;\r\n\r\n\r\nmodule.exports = function (serverData)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _serverData = serverData;\r\n \r\n\r\n \r\n var _bssoConfig = _serverData.bsso || { enabled: false };\r\n var _isCloudBuild = _serverData.fIsCloudBuild;\r\n var _trimChromeBssoUrl = _serverData.fTrimChromeBssoUrl;\r\n var _checkApiCanary = _serverData.checkApiCanary !== false;\r\n \r\n\r\n \r\n var _cookieNames = _bssoConfig.cookieNames;\r\n var _bssoTelemetry = null;\r\n \r\n\r\n \r\n \r\n _this.loginWindowsUserAsync = function (uri)\r\n {\r\n if (!_bssoConfig.enabled)\r\n {\r\n \r\n return Promise.reject(\"bssoDisabled\");\r\n }\r\n\r\n return _loginWindowsUserAsync(uri)\r\n .then(_reportSuccessTelemetryAsync, _reportErrorTelemetryAsync);\r\n };\r\n\r\n \r\n _this.pullBrowserSsoCookieAsync = function ()\r\n {\r\n var pullCookiePromise;\r\n var isSilentCookiePull = _bssoConfig.failureRedirectUrl || _bssoConfig.reloadOnFailure;\r\n var bssoType = _bssoConfig.type;\r\n\r\n if (!_bssoConfig.enabled)\r\n {\r\n \r\n return Promise.reject(\"bssoDisabled\");\r\n }\r\n\r\n if (bssoType === \"windows\")\r\n {\r\n pullCookiePromise = _pullBrowserSsoCookieAsync();\r\n }\r\n else if (bssoType === \"chrome\")\r\n {\r\n pullCookiePromise = _pullChromeBrowserSsoCookieAsync();\r\n }\r\n\r\n return pullCookiePromise\r\n .then(\r\n function (result)\r\n {\r\n if (isSilentCookiePull && !result.redirectUrl)\r\n {\r\n return Promise.reject(\"silentPullFailed\");\r\n }\r\n\r\n return result;\r\n })\r\n .then(_reportSuccessTelemetryAsync, _reportErrorTelemetryAsync)\r\n .then(null,\r\n function (error)\r\n {\r\n if (isSilentCookiePull)\r\n {\r\n if (_bssoConfig.reloadOnFailure)\r\n {\r\n return { redirectUrl: _getReloadUrlAndSetThrottlingCookie() };\r\n }\r\n\r\n return { redirectUrl: _bssoConfig.failureRedirectUrl };\r\n }\r\n\r\n return Promise.reject(error);\r\n });\r\n };\r\n\r\n \r\n _this.isEnabled = function ()\r\n {\r\n return !!_bssoConfig.enabled;\r\n };\r\n \r\n\r\n \r\n \r\n function _loginWindowsUserAsync(uri)\r\n {\r\n if (!w.navigator || typeof (w.navigator.msLaunchUri) !== \"function\")\r\n {\r\n _logDataPoint(\"BSSO.info\", \"not-supported\");\r\n _logMessage(\"window.navigator.msLaunchUri is not available for _loginWindowsUser\");\r\n\r\n return Promise.reject(\"bssoNotSupported\");\r\n }\r\n\r\n var failInitiatePullOnTimeout = _bssoConfig.initiatePullTimeoutAction === \"abort\";\r\n var tokenBrokerAuthHelper = new TokenBrokerAuthHelper(\r\n {\r\n logMessage: _logMessage,\r\n logDataPoint: _logDataPoint\r\n },\r\n _bssoConfig.initiatePullTimeoutMs,\r\n _bssoConfig.overallTimeoutMs,\r\n failInitiatePullOnTimeout);\r\n\r\n return tokenBrokerAuthHelper\r\n .loginWindowsUserAsync(uri)\r\n .then(\r\n function (result)\r\n {\r\n if (result.reload)\r\n {\r\n _logMessage(\"SSO cookie detected. Refreshing page.\");\r\n return _getReloadUrlAndSetThrottlingCookie();\r\n }\r\n\r\n return Promise.reject(\"error\");\r\n });\r\n }\r\n\r\n \r\n function _pullBrowserSsoCookieAsync()\r\n {\r\n if (!w.navigator || typeof (w.navigator.msLaunchUri) !== \"function\")\r\n {\r\n _logDataPoint(\"BSSO.info\", \"not-supported\");\r\n _logMessage(\"window.navigator.msLaunchUri is not available for _pullBrowserSsoCookie\");\r\n\r\n return Promise.reject(\"bssoNotSupported\");\r\n }\r\n\r\n var useTiles = Cookies.getCookie(_cookieNames.ssoTiles) || _bssoConfig.forceTiles;\r\n\r\n if (!useTiles && Cookies.getCookie(_cookieNames.ssoPulled))\r\n {\r\n _logDataPoint(\"BSSO.info\", \"throttled\");\r\n _logMessage(\"Cookie pull throttled\");\r\n\r\n return Promise.reject(\"throttled\");\r\n }\r\n\r\n var baseUri = \"tbauth://login.windows.net?\" +\r\n \"context=\" + encodeURIComponent(w.location.href.split(\"/\", 3).join(\"/\")) + \r\n (_bssoConfig.nonce ? (\"&request_nonce=\" + encodeURIComponent(_bssoConfig.nonce)) : \"\") +\r\n (_bssoConfig.rid ? (\"&rid=\" + encodeURIComponent(_bssoConfig.rid)) : \"\");\r\n\r\n \r\n var uri = baseUri;\r\n if (useTiles)\r\n {\r\n \r\n uri = QueryString.appendOrReplace(uri, \"user_id\", \"*\");\r\n Cookies.remove(_cookieNames.ssoTiles);\r\n }\r\n\r\n var failInitiatePullOnTimeout = _bssoConfig.initiatePullTimeoutAction === \"abort\";\r\n var tokenBrokerAuthHelper = new TokenBrokerAuthHelper(\r\n {\r\n logMessage: _logMessage,\r\n logDataPoint: _logDataPoint\r\n },\r\n _bssoConfig.initiatePullTimeoutMs,\r\n _bssoConfig.overallTimeoutMs,\r\n failInitiatePullOnTimeout);\r\n\r\n return tokenBrokerAuthHelper\r\n .pullBrowserSsoCookieAsync(uri)\r\n .then(\r\n function (result)\r\n {\r\n if (result.reload)\r\n {\r\n _logMessage(\"SSO cookie detected. Refreshing page.\");\r\n return { redirectUrl: _getReloadUrlAndSetThrottlingCookie() };\r\n }\r\n else if (result.userList)\r\n {\r\n var newSessions = _processUsersList(result.userList, baseUri);\r\n\r\n if (newSessions.length > 0)\r\n {\r\n return { newSessions: newSessions };\r\n }\r\n\r\n return Promise.reject(\"noUsers\");\r\n }\r\n });\r\n }\r\n\r\n \r\n function _pullChromeBrowserSsoCookieAsync()\r\n {\r\n var chromeBrowserCore = new ChromeBrowserCore(\r\n {\r\n logMessage: _logMessage,\r\n logDataPoint: _logDataPoint\r\n },\r\n _bssoConfig.nonce,\r\n \"login.microsoftonline.com\",\r\n _isCloudBuild,\r\n _trimChromeBssoUrl);\r\n\r\n return chromeBrowserCore\r\n .getCookiesAsync()\r\n .then(\r\n function (cookies)\r\n {\r\n if (!cookies || !cookies.length)\r\n {\r\n return Promise.reject(new ChromeBrowserCore.Error(\"PageException\", \"Extension returned no cookies\"));\r\n }\r\n\r\n for (var i = 0, len = cookies.length; i < len; ++i)\r\n {\r\n var cookieValue = cookies[i].data;\r\n if (cookieValue.indexOf(\";\") !== -1)\r\n {\r\n cookieValue = cookieValue.substr(0, cookieValue.indexOf(\";\"));\r\n }\r\n\r\n Cookies.write(cookies[i].name, cookieValue, !_isCloudBuild);\r\n }\r\n\r\n _logMessage(\"SSO cookie detected. Refreshing page.\");\r\n return { redirectUrl: _getReloadUrlAndSetThrottlingCookie() };\r\n })\r\n .then(null,\r\n function (error)\r\n {\r\n Cookies.write(_cookieNames.aadSso, error.toCookieString(), !_isCloudBuild);\r\n _logMessage(\"Error: \" + error.toString());\r\n\r\n return Promise.reject(error);\r\n });\r\n }\r\n\r\n \r\n function _getReloadUrlAndSetThrottlingCookie()\r\n {\r\n var expiresOn = new Date();\r\n expiresOn.setSeconds(expiresOn.getSeconds() + 60); \r\n\r\n Cookies.writeWithExpiration(_cookieNames.ssoPulled, \"1\", !_isCloudBuild, expiresOn.toUTCString());\r\n\r\n var url = w.location.href;\r\n url = QueryString.appendOrReplace(url, \"sso_reload\", \"true\");\r\n\r\n if (!_bssoConfig.reloadOnFailure && QueryString.extract(\"prompt\").toLowerCase() === \"select_account\")\r\n {\r\n url = QueryString.appendOrReplace(url, \"prompt\", \"\");\r\n }\r\n\r\n return url;\r\n }\r\n\r\n \r\n function _processUsersList(users_json, baseUri)\r\n {\r\n var newSessions = [];\r\n var userList = JSON.parse(users_json).users;\r\n\r\n if (userList && userList.length > 0)\r\n {\r\n ArrayHelpers.forEach(\r\n userList,\r\n function (user)\r\n {\r\n var windowsUserTiles =\r\n {\r\n ssoUniqueId: user.unique_id,\r\n displayName: user.display_name || \"\",\r\n name: user.upn,\r\n isWindowsSso: true,\r\n isSignedIn: true,\r\n url: baseUri\r\n };\r\n\r\n newSessions.push(windowsUserTiles);\r\n });\r\n\r\n _logMessage(\"User list processed. List: \" + JSON.stringify(newSessions));\r\n }\r\n else\r\n {\r\n _logMessage(\"User list is empty.\");\r\n }\r\n\r\n return newSessions;\r\n }\r\n\r\n \r\n function _logMessage(message)\r\n {\r\n _bssoTelemetry.traces.push(message);\r\n }\r\n\r\n \r\n function _logDataPoint(key, value)\r\n {\r\n _bssoTelemetry.data[key] = value;\r\n }\r\n\r\n \r\n function _reportSuccessTelemetryAsync(result)\r\n {\r\n _bssoTelemetry.result = result.newSessions ? \"UserList\" : \"Reload\";\r\n\r\n return _reportTelemetryAsync().then(\r\n function ()\r\n {\r\n return result;\r\n });\r\n }\r\n\r\n \r\n function _reportErrorTelemetryAsync(error)\r\n {\r\n _bssoTelemetry.result = \"Error\";\r\n\r\n if (error instanceof ChromeBrowserCore.Error)\r\n {\r\n if (error.code === \"OSError\" && error.externalData && error.externalData.error)\r\n {\r\n _bssoTelemetry.error = error.externalData.error;\r\n }\r\n else\r\n {\r\n _bssoTelemetry.error = error.code;\r\n }\r\n }\r\n else\r\n {\r\n _bssoTelemetry.error = error;\r\n }\r\n\r\n return _reportTelemetryAsync().then(\r\n function ()\r\n {\r\n return Promise.reject(error);\r\n });\r\n }\r\n\r\n \r\n function _reportTelemetryAsync()\r\n {\r\n return new Promise(\r\n function (resolve)\r\n {\r\n try\r\n {\r\n if (w.console)\r\n {\r\n w.console.info(\"BSSO Telemetry: \" + JSON.stringify(_bssoTelemetry));\r\n }\r\n }\r\n catch (e)\r\n {\r\n }\r\n\r\n if (_bssoConfig.telemetry.url)\r\n {\r\n \r\n var apiRequest = new ApiRequest({ checkApiCanary: _checkApiCanary });\r\n apiRequest.Beacon(\r\n {\r\n url: _bssoConfig.telemetry.url\r\n },\r\n _bssoTelemetry,\r\n resolve,\r\n resolve,\r\n 500);\r\n }\r\n else\r\n {\r\n resolve();\r\n }\r\n });\r\n }\r\n\r\n \r\n (function _initialize()\r\n {\r\n if (_bssoConfig.enabled)\r\n {\r\n _bssoTelemetry =\r\n {\r\n result: null,\r\n error: null,\r\n type: _bssoConfig.telemetry.type || null,\r\n data: {},\r\n traces: []\r\n };\r\n\r\n _bssoConfig.initiatePullTimeoutMs = _bssoConfig.initiatePullTimeoutMs || _bssoConfig.overallTimeoutMs;\r\n _bssoConfig.initiatePullTimeoutAction = _bssoConfig.initiatePullTimeoutAction || \"abort\";\r\n\r\n _logMessage(\"BrowserSSO Initialized\");\r\n }\r\n })();\r\n \r\n};","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_fido_white_864e6fa7d7fc3258841e849a2a379a0d.png\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_fido_white_e029710271b14f3937af7172f6076039.svg\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_fido_a8572092eb6b15420112017f4c356e31.png\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_fido_dc174eba8703c4b23780692b84de3fb1.svg\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_passkey_white_4312cd76f00ffeb4f262f0f60e0e5339.png\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_passkey_white_e66de563e5288734b1a0b8c5ce46e308.svg\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_passkey_4534333b7bb65cc5e3870e8afbe29e3f.png\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_passkey_1500b2043f4d1698f9df6089f67559d7.svg\";","var ApiRequest = require(\"./ApiRequest\");\r\nvar Constants = require(\"./Constants\");\r\nvar Promise = require(\"../Core/Promise\");\r\nvar ClientTracingConstants = require(\"../Core/ClientTracingConstants\");\r\n\r\n\r\n\r\n\r\nvar CanaryPurposeData =\r\n{\r\n DeviceAuth: { PageId: \"ConvergedRemoteConnect\", ActionId: \"OAuth2DeviceAuth\", ConfirmationViewId: Constants.PaginatedState.RemoteConnectCanaryValidation },\r\n FidoAuth: { PageId: \"PaginatedLogin\", ActionId: \"FidoGet\", ConfirmationViewId: Constants.PaginatedState.PartnerCanaryValidation }\r\n};\r\n\r\nvar PartnerCanaryScenario = CanaryValidationHelper.PartnerCanaryScenario =\r\n{\r\n Undefined: 0,\r\n Fido: 1\r\n};\r\n\r\nvar CanaryValidationSuccessAction = CanaryValidationHelper.CanaryValidationSuccessAction =\r\n{\r\n SwitchView: 1,\r\n Redirect: 2\r\n};\r\n\r\nfunction CanaryValidationHelper(serverData)\r\n{\r\n \r\n var _this = this;\r\n\r\n var _serverData = serverData;\r\n \r\n\r\n \r\n var _externalCanary = _serverData.sExternalCanary;\r\n var _canaryValidationUrl = _serverData.urlCanaryValidation;\r\n var _isRemoteConnectFlow = !!_serverData.sRemoteConnectAppName;\r\n var _isRemoteConnectSignup = !!_serverData.fIsRemoteConnectSignup;\r\n var _signupUrl = _serverData.urlSignUp;\r\n var _signupUrlPostParams = _serverData.oSignUpPostParams;\r\n var _partnerCanaryScenario = _serverData.iPartnerCanaryScenario;\r\n \r\n\r\n \r\n _this.validateAsync = function ()\r\n {\r\n return new Promise(\r\n function (resolve, reject)\r\n {\r\n var data = _getCanaryPurposeData();\r\n data.Canary = _externalCanary;\r\n\r\n var successAction = _getSuccessAction();\r\n\r\n var apiRequest = new ApiRequest({ checkApiCanary: false, withCredentials: true });\r\n\r\n apiRequest.Json(\r\n {\r\n url: _canaryValidationUrl,\r\n eventId: ClientTracingConstants.EventIds.Api_CanaryValidation\r\n },\r\n data,\r\n function () { resolve(successAction); },\r\n function (innerError) { reject(new CanaryValidationHelper.CanaryValidationError(innerError, data.ConfirmationViewId, successAction)); },\r\n Constants.DefaultRequestTimeout);\r\n });\r\n };\r\n \r\n\r\n \r\n function _getCanaryPurposeData()\r\n {\r\n if (_isRemoteConnectFlow)\r\n {\r\n return CanaryPurposeData.DeviceAuth;\r\n }\r\n else if (_partnerCanaryScenario === PartnerCanaryScenario.Fido)\r\n {\r\n return CanaryPurposeData.FidoAuth;\r\n }\r\n\r\n throw \"Canary Validation: Flow IDs not known.\";\r\n }\r\n\r\n function _getSuccessAction()\r\n {\r\n if (_isRemoteConnectSignup)\r\n {\r\n return { action: CanaryValidationSuccessAction.Redirect, redirectUrl: _signupUrl, redirectPostParams: _signupUrlPostParams, isIdpRedirect: false };\r\n }\r\n\r\n \r\n return { action: CanaryValidationSuccessAction.SwitchView };\r\n }\r\n \r\n}\r\n\r\nCanaryValidationHelper.CanaryValidationError = function (innerError, confirmationViewId, postConfirmationAction)\r\n{\r\n var _this = this;\r\n\r\n _this.name = \"CanaryValidationError\";\r\n _this.message = \"Canary validation failed, user confirmation required.\";\r\n _this.stack = (new Error()).stack;\r\n _this.innerError = innerError;\r\n _this.confirmationViewId = confirmationViewId;\r\n _this.postConfirmationAction = postConfirmationAction;\r\n};\r\n\r\nmodule.exports = CanaryValidationHelper;","var Helpers = require(\"./Helpers\");\r\nvar LoginConstants = require(\"../LoginPage/LoginConstants\");\r\n\r\nvar ArrayHelpers = Helpers.Array;\r\n\r\nvar TileHelpers =\r\n{\r\n mergeSessions: function (sharedSessions, newSessions, replaceOtherIdpSessions)\r\n {\r\n var addedSessions = [];\r\n\r\n \r\n \r\n \r\n ArrayHelpers.forEach(\r\n newSessions,\r\n function (newSession)\r\n {\r\n var duplicateSessionIndex = _findDuplicateSessionIndex(newSession, sharedSessions);\r\n\r\n if (duplicateSessionIndex === -1)\r\n {\r\n \r\n \r\n if (newSession.isWindowsSso)\r\n {\r\n sharedSessions.unshift(newSession);\r\n }\r\n else\r\n {\r\n sharedSessions.push(newSession);\r\n }\r\n\r\n addedSessions.push(newSession);\r\n }\r\n else if (newSession.isWindowsSso)\r\n {\r\n \r\n \r\n \r\n \r\n sharedSessions.splice(duplicateSessionIndex, 1);\r\n sharedSessions.unshift(newSession);\r\n addedSessions.push(newSession);\r\n }\r\n else if (replaceOtherIdpSessions)\r\n {\r\n \r\n \r\n \r\n \r\n \r\n sharedSessions.splice(duplicateSessionIndex, 1);\r\n sharedSessions.push(newSession);\r\n addedSessions.push(newSession);\r\n }\r\n });\r\n\r\n return addedSessions;\r\n },\r\n\r\n parseMeControlSessions: function (userJson)\r\n {\r\n var c_signedInToRP = 1; \r\n var c_signedInToIDP = 2; \r\n\r\n return ArrayHelpers.map(\r\n userJson,\r\n function (user)\r\n {\r\n var fullName = user.firstName;\r\n var lastName = user.lastName;\r\n\r\n if (lastName)\r\n {\r\n \r\n if (fullName)\r\n {\r\n fullName += \" \" + lastName;\r\n }\r\n else\r\n {\r\n fullName = lastName;\r\n }\r\n }\r\n\r\n return {\r\n id: user.sessionId,\r\n fullName: fullName,\r\n name: user.memberName || user.signInName,\r\n displayName: user.memberName || user.signInName,\r\n idp: LoginConstants.SessionIdp.Msa,\r\n isOtherIdp: true,\r\n isSignedIn: user.isSignedIn || user.authenticatedState === c_signedInToRP || user.authenticatedState === c_signedInToIDP,\r\n isWindowsSso: user.isWindowsSso || false,\r\n isMeControlSession: true,\r\n isGitHubFed: user.isGitHubFed || false\r\n };\r\n });\r\n },\r\n\r\n parseBssoSessions: function (userJson)\r\n {\r\n return ArrayHelpers.map(\r\n userJson,\r\n function (session)\r\n {\r\n return {\r\n ssoUniqueId: session.ssoUniqueId,\r\n name: session.name,\r\n displayName: session.displayName,\r\n idp: LoginConstants.SessionIdp.Aad,\r\n ssoLink: session.url,\r\n isWindowsSso: session.isWindowsSso,\r\n isSignedIn: session.isSignedIn\r\n };\r\n });\r\n }\r\n};\r\n\r\nfunction _findDuplicateSessionIndex(newSession, sessions)\r\n{\r\n for (var i = 0; i < sessions.length; i++)\r\n {\r\n if (sessions[i].name === newSession.name && sessions[i].idp === newSession.idp)\r\n {\r\n return i;\r\n }\r\n }\r\n\r\n return -1;\r\n}\r\n\r\nmodule.exports = TileHelpers;","var ko = require(\"knockout\");\r\n\r\n\r\nfunction PaginationControlHelper(serverData, paginationControlMethods, backgroundLogoUrl)\r\n{\r\n var _this = this;\r\n var _serverData = serverData;\r\n var _hideFooter = _serverData.fHideFooter;\r\n var _showPageLevelTitleAndDesc = _serverData.fShowPageLevelTitleAndDesc;\r\n var _persistedViewId = null;\r\n\r\n _this.paginationControlMethods = paginationControlMethods || ko.observable();\r\n _this.backgroundLogoUrl = backgroundLogoUrl || ko.observable();\r\n\r\n \r\n _this.animationEnd = ko.pureComputed(\r\n function ()\r\n {\r\n return _this.paginationControlMethods() && _this.paginationControlMethods().view_onAnimationEnd;\r\n });\r\n\r\n _this.showBackgroundLogoHolder = ko.pureComputed(\r\n function ()\r\n {\r\n return _this.backgroundLogoUrl() && _this.showLogo();\r\n });\r\n\r\n _this.showErrorPageDebugDetails = ko.pureComputed(\r\n function ()\r\n {\r\n return _this.paginationControlMethods() && _this.paginationControlMethods().currentViewHasMetadata(\"extraDebugDetails\");\r\n });\r\n\r\n _this.showFooterControl = ko.pureComputed(\r\n function ()\r\n {\r\n return !_hideFooter && _this.paginationControlMethods() && _this.paginationControlMethods().hasInitialViewShown();\r\n });\r\n\r\n _this.showLogo = ko.pureComputed(\r\n function ()\r\n {\r\n return !(_this.paginationControlMethods() && _this.paginationControlMethods().currentViewHasMetadata(\"hideLogo\"));\r\n });\r\n\r\n _this.showLwaDisclaimer = ko.pureComputed(\r\n function ()\r\n {\r\n return _this.paginationControlMethods() && !_this.paginationControlMethods().currentViewHasMetadata(\"hideLwaDisclaimer\");\r\n });\r\n\r\n _this.showPageLevelTitleControl = ko.pureComputed(\r\n function ()\r\n {\r\n return _showPageLevelTitleAndDesc && !(_this.paginationControlMethods() && _this.paginationControlMethods().currentViewHasMetadata(\"hidePageLevelTitleAndDesc\"));\r\n });\r\n\r\n _this.useWiderWidth = ko.pureComputed(\r\n function ()\r\n {\r\n return _this.paginationControlMethods() && _this.paginationControlMethods().currentViewHasMetadata(\"wide\");\r\n });\r\n\r\n \r\n _this.onLoad = function ()\r\n {\r\n _this.paginationControlMethods().restoreState(_persistedViewId);\r\n _persistedViewId = null;\r\n };\r\n\r\n _this.onUnload = function (currentViewId)\r\n {\r\n _persistedViewId = currentViewId;\r\n };\r\n}\r\n\r\nmodule.exports = PaginationControlHelper;","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar PltHelper = require(\"./PltHelper\");\r\n\r\nvar w = window;\r\n\r\nfunction InstrumentationViewModel(params)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _serverData = params.serverData;\r\n\r\n \r\n var _isCustomPerf = _serverData.isCustomPerf;\r\n\r\n \r\n var _customPageLoadCompletedTime = 0;\r\n var _pageLoadCompleted = false;\r\n var _perfDataReported = false;\r\n\r\n \r\n _this.timeOnPage = ko.observable(null); \r\n\r\n \r\n _this.recordSubmit = function ()\r\n {\r\n if (w.performance && w.performance.timing)\r\n {\r\n _this.timeOnPage(new Date().getTime() - w.performance.timing.loadEventEnd);\r\n }\r\n };\r\n\r\n _this.setPageLoadCompleted = function ()\r\n {\r\n _pageLoadCompleted = true;\r\n setTimeout(function ()\r\n {\r\n _sendPerfData();\r\n }, 0);\r\n };\r\n\r\n _this.setCustomPageLoadCompletedTime = function (ticks)\r\n {\r\n \r\n _customPageLoadCompletedTime = ticks || (new Date().getTime());\r\n };\r\n\r\n function _getPerformanceData()\r\n {\r\n var performance = w.performance;\r\n var navigator = w.navigator;\r\n var performanceData = {};\r\n\r\n if (!performance)\r\n {\r\n return null;\r\n }\r\n\r\n if (performance.navigation)\r\n {\r\n performanceData.navigation = _getPerformanceObjectData(performance.navigation);\r\n }\r\n\r\n if (performance.timing)\r\n {\r\n performanceData.timing = _getPerformanceObjectData(performance.timing);\r\n\r\n \r\n if (_customPageLoadCompletedTime > 0)\r\n {\r\n performanceData.timing.customLoadEventEnd = _customPageLoadCompletedTime;\r\n }\r\n }\r\n\r\n if (performance.getEntries)\r\n {\r\n performanceData.entries = ko.utils.arrayMap(\r\n performance.getEntries(),\r\n _getPerformanceObjectData);\r\n }\r\n\r\n if (navigator.connection)\r\n {\r\n \r\n performanceData.connection = _getPerformanceObjectData(navigator.connection);\r\n }\r\n\r\n return performanceData;\r\n }\r\n\r\n function _getPerformanceObjectData(object)\r\n {\r\n var result = {};\r\n\r\n \r\n if (object.toJSON)\r\n {\r\n return object.toJSON();\r\n }\r\n\r\n \r\n \r\n for (var property in object)\r\n {\r\n result[property] = object[property];\r\n }\r\n\r\n return result;\r\n }\r\n\r\n function _sendPerfData()\r\n {\r\n if (_perfDataReported || !_pageLoadCompleted)\r\n {\r\n return;\r\n }\r\n\r\n \r\n _perfDataReported = true;\r\n\r\n var performanceData = _getPerformanceData();\r\n\r\n \r\n try\r\n {\r\n PltHelper.SendTelemetryPerfData(performanceData, \"LPerf\");\r\n }\r\n catch (e) { }\r\n }\r\n\r\n (function _initialize()\r\n {\r\n if (!_isCustomPerf)\r\n {\r\n \r\n setTimeout(function ()\r\n {\r\n _this.setPageLoadCompleted();\r\n }, 100);\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"instrumentation-control\",\r\n {\r\n viewModel: InstrumentationViewModel,\r\n template: require(\"html/Shared/Controls/InstrumentationControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = InstrumentationViewModel;\r\n","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar BrowserHelper = Browser.Helper;\r\n\r\nvar w = window;\r\n\r\nfunction LogoControl(params)\r\n{\r\n var _this = this;\r\n\r\n var _serverData = w.ServerData;\r\n\r\n \r\n var _bannerLogoUrl = params.bannerLogoUrl;\r\n var _isChinaDc = params.isChinaDc;\r\n \r\n\r\n \r\n var _isCiamUserFlowUx = _serverData.fIsCiamUserFlowUx;\r\n var _companyDisplayName = _serverData.sCompanyDisplayName;\r\n var _useNonMicrosoftDefaultBrandingForCiam = _serverData.fUseNonMicrosoftDefaultBrandingForCiam;\r\n \r\n\r\n \r\n _this.bannerLogoUrl = _bannerLogoUrl;\r\n _this.isChinaDc = _isChinaDc;\r\n _this.isCiamUserFlowUx = _isCiamUserFlowUx;\r\n _this.bannerLogoText = null;\r\n \r\n\r\n (function _initialize()\r\n {\r\n if (_useNonMicrosoftDefaultBrandingForCiam)\r\n {\r\n var unsafe_companyName = BrowserHelper.htmlUnescape(_companyDisplayName);\r\n\r\n _this.bannerLogoText = unsafe_companyName.toUpperCase();\r\n }\r\n })();\r\n}\r\n\r\nko.components.register(\"logo-control\",\r\n {\r\n viewModel: LogoControl,\r\n template: require(\"html/Shared/Controls/LogoControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents)\r\n });\r\n\r\nmodule.exports = LogoControl;","\r\n\r\nvar ko = require(\"knockout\");\r\nvar Helpers = require(\"./Helpers\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar ComponentEvent = require(\"./ComponentEvent\");\r\nvar BrandingHelpers = null;\r\nvar Constants = null;\r\n\r\nvar requireCentipede = require.context(\"images/AppCentipede\", false, /^.+?\\.(png|svg)$/);\r\n\r\nvar w = window;\r\nvar LayoutTemplateType = null;\r\n\r\nif (__LAYOUT_TEMPLATES_ENABLED__ || __LAYOUT_TEMPLATES_ROLLOUT__)\r\n{\r\n BrandingHelpers = require(\"./BrandingHelpers\");\r\n Constants = require(\"./Constants\");\r\n\r\n LayoutTemplateType = Constants.LayoutTemplateType;\r\n}\r\n\r\nfunction PageViewModel(params, templateNodes)\r\n{\r\n \r\n var _this = this;\r\n\r\n var _isSvgImageSupported = false;\r\n \r\n\r\n \r\n var _serverData = params.serverData;\r\n var _showButtons = params.showButtons || false;\r\n var _showFooterLinks = params.showFooterLinks;\r\n var _showFooterLogo = params.showFooterLogo !== false; \r\n var _useWizardBehavior = params.useWizardBehavior;\r\n var _hideFromAria = params.hideFromAria || ko.observable(false);\r\n \r\n\r\n \r\n var _productIcon = _serverData.iProductIcon;\r\n var _isLayoutTemplatesEnabled = _serverData.fFixSignoutBrandingCiam;\r\n \r\n\r\n \r\n _this.useLayoutTemplates = __LAYOUT_TEMPLATES_ENABLED__ || _isLayoutTemplatesEnabled;\r\n _this.templateNodes = {};\r\n _this.showButtons = _showButtons;\r\n\r\n _this.footer =\r\n {\r\n showLinks: _showFooterLinks,\r\n showLogo: _showFooterLogo\r\n };\r\n\r\n _this.centipede =\r\n {\r\n getLightUrl: function ()\r\n {\r\n return requireCentipede(_mapProductIconToImageName(_productIcon, true ));\r\n },\r\n getDarkUrl: function ()\r\n {\r\n return requireCentipede(_mapProductIconToImageName(_productIcon, false ));\r\n }\r\n };\r\n\r\n _this.hideFromAria = _hideFromAria;\r\n _this.isInternalModeEnabled = Browser.QueryString.extract(\"psi\") === \"1\";\r\n _this.viewModel = null;\r\n\r\n _this.viewAgreement = ko.observable(false);\r\n _this.agreementType = ko.observable();\r\n _this.isLightboxTemplate = ko.observable(true);\r\n _this.isVerticalSplitTemplate = ko.observable(false);\r\n _this.isTemplateLoaded = ko.observable(false);\r\n \r\n\r\n \r\n _this.onFooterAgreementClick = ComponentEvent.create();\r\n \r\n\r\n \r\n _this.footer_agreementClick = function (agreementType)\r\n {\r\n _this.onFooterAgreementClick(agreementType);\r\n };\r\n\r\n _this.agreement_backButtonClick = function ()\r\n {\r\n _this.viewAgreement(false);\r\n };\r\n \r\n\r\n \r\n _this.showAgreement = function (agreementType)\r\n {\r\n _this.agreementType(agreementType);\r\n _this.viewAgreement(true);\r\n };\r\n\r\n _this.updateBranding = function (branding)\r\n {\r\n _initializeTemplate(branding);\r\n };\r\n \r\n\r\n \r\n function _mapProductIconToImageName(iconId, useLight)\r\n {\r\n var iconNames = [\r\n \"Microsoft\", \"OneDrive\", \"Skype\", \"Bing\",\r\n \"Xbox\", \"Word\", \"Outlook\", \"Office\",\r\n \"Excel\", \"PowerPoint\", \"Cortana\", \"SkypeDialer\",\r\n \"Health\", \"MileIQ\", \"Beam\", \"MSN\", \"Minecraft\"];\r\n\r\n if (iconId < 0 || iconId >= iconNames.length)\r\n {\r\n iconId = 0;\r\n }\r\n\r\n return Helpers.String.format(\r\n \"./AppCentipede_{0}{1}.{2}\",\r\n iconNames[iconId],\r\n useLight ? \"_white\" : \"\",\r\n _isSvgImageSupported ? \"svg\" : \"png\");\r\n }\r\n\r\n function _initializeTemplate(tenantBranding)\r\n {\r\n if (__LAYOUT_TEMPLATES_ENABLED__ || !!(__LAYOUT_TEMPLATES_ROLLOUT__ && _this.useLayoutTemplates))\r\n {\r\n var layoutTemplateConfig = BrandingHelpers.getLayoutTemplateConfig(tenantBranding);\r\n var layoutType = layoutTemplateConfig.layoutType;\r\n var isVerticalSplitTemplate = layoutType === LayoutTemplateType.VerticalSplit;\r\n\r\n if (__IS_OLD_WEBPACK__)\r\n {\r\n _this.isTemplateLoaded(true);\r\n return;\r\n }\r\n\r\n if (isVerticalSplitTemplate)\r\n {\r\n _this.isLightboxTemplate(false);\r\n _this.isVerticalSplitTemplate(true);\r\n\r\n require.ensure([],\r\n function ()\r\n {\r\n require(\"./VerticalSplitTemplateViewModel\");\r\n _this.isTemplateLoaded(true);\r\n },\r\n \"VerticalSplitTemplate\");\r\n }\r\n else\r\n {\r\n _this.isVerticalSplitTemplate(false);\r\n _this.isLightboxTemplate(true);\r\n }\r\n }\r\n }\r\n\r\n (function _initialize()\r\n {\r\n _isSvgImageSupported = Browser.Helper.isSvgImgSupported();\r\n\r\n if (templateNodes)\r\n {\r\n ko.utils.arrayForEach(\r\n templateNodes,\r\n function (node)\r\n {\r\n if (node.id)\r\n {\r\n _this.templateNodes[node.id] = node.childNodes;\r\n }\r\n });\r\n }\r\n\r\n if (_useWizardBehavior)\r\n {\r\n var WizardControl = null;\r\n\r\n if (__REQUIRE_WIZARD_IN_CORE__)\r\n {\r\n WizardControl = require(\"./WizardControl\");\r\n _this.viewModel = new WizardControl(params);\r\n }\r\n else if (__IS_OLD_WEBPACK__)\r\n {\r\n require.ensure([],\r\n function ()\r\n {\r\n WizardControl = require(\"./WizardControl\");\r\n _this.viewModel = new WizardControl(params);\r\n },\r\n \"Wizard\");\r\n }\r\n }\r\n }\r\n )();\r\n \r\n}\r\n\r\nko.components.register(\"master-page\",\r\n {\r\n viewModel:\r\n {\r\n createViewModel: function (params, componentInfo)\r\n {\r\n return new PageViewModel(params, componentInfo.templateNodes);\r\n }\r\n },\r\n template: require(\"html/Shared/Masters/MasterPageHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = PageViewModel;\r\n","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar w = window;\r\n\r\nfunction BackgroundImageControl()\r\n{\r\n var _this = this;\r\n\r\n \r\n _this.isAppBranding = ko.observable(false);\r\n _this.backgroundStyle = ko.observable();\r\n _this.smallImageUrl = ko.observable();\r\n _this.backgroundImageUrl = ko.observable();\r\n _this.useImageMask = ko.observable(false);\r\n _this.useTransparentLightBox = ko.observable(false);\r\n\r\n \r\n _this.updateBranding = function (branding)\r\n {\r\n _this.isAppBranding(!!branding.backgroundLogoUrl);\r\n _this.backgroundStyle(branding.color);\r\n _this.smallImageUrl(branding.smallImageUrl);\r\n _this.backgroundImageUrl(branding.backgroundImageUrl);\r\n _this.useImageMask(!!branding.useImageMask);\r\n _this.useTransparentLightBox(!!branding.useTransparentLightBox);\r\n };\r\n}\r\n\r\nko.components.register(\"background-image-control\",\r\n {\r\n viewModel: BackgroundImageControl,\r\n template: require(\"html/Shared/Controls/BackgroundImageControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = BackgroundImageControl;","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar w = window;\r\n\r\nko.components.register(\"environment-banner-control\",\r\n {\r\n template: require(\"html/Shared/Controls/EnvironmentBannerControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents)\r\n });","var ko = require(\"knockout\");\r\nvar Browser = require(\"./BrowserControl\");\r\n\r\nvar w = window;\r\n\r\nfunction ContentControl(params)\r\n{\r\n \r\n var _this = this;\r\n \r\n\r\n \r\n var _isVerticalSplitTemplate = params.isVerticalSplitTemplate;\r\n var _hasHeader = params.hasHeader || false;\r\n \r\n\r\n \r\n _this.isVerticalSplitTemplate = _isVerticalSplitTemplate || false;\r\n _this.hasHeader = _hasHeader;\r\n \r\n}\r\n\r\nko.components.register(\"content-control\",\r\n {\r\n viewModel: ContentControl,\r\n template: require(\"html/Shared/Controls/ConvergedContentControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = ContentControl;","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_qrpin_white_97ee76155bdef68d51f882d111ce1a79.png\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_qrpin_white_33f29ddd025aa33fa298befbb72a24a7.svg\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_qrpin_4a5523d6de79a0f34c943d6029ea5168.png\";","module.exports = __webpack_public_path__ + \"content/images/credentialoptions/cred_option_qrpin_ada5adc951d9c983f746704ac9363507.svg\";","\r\nvar ko = require(\"knockout\");\r\nvar Constants = require(\"./Constants\");\r\nvar Browser = require(\"./BrowserControl\");\r\nvar BrowserHistory = require(\"./BrowserHistory\");\r\nvar ComponentEvent = require(\"./ComponentEvent\");\r\nvar PromiseHelpers = require(\"../Core/PromiseHelpers\");\r\nvar TelemetryFactory = require(\"./TelemetryFactory\");\r\nvar ClientTracingHelper = require(\"./ClientTracingHelper\").getInstance(window.ServerData);\r\nvar ClientTracingConstants = require(\"./ClientTracingConstants\");\r\n\r\nvar w = window;\r\nvar doc = document;\r\nvar head = doc.head;\r\nvar HtmlElementNodeType = 1;\r\nvar PreviousPaginatedState = Constants.PaginatedState.Previous;\r\nvar AnimationState = Constants.AnimationState;\r\nvar AnimationName = Constants.AnimationName;\r\nvar AnimationTimeout = Constants.AnimationTimeout;\r\nvar BrowserHelper = Browser.Helper;\r\n\r\n\r\nfunction PaginationControl(params, views, viewInterfaces, viewMetadata)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _serverData = w.ServerData;\r\n var _initialViewId = params.initialViewId || null;\r\n var _currentViewId = params.currentViewId || null;\r\n var _initialSharedData = params.initialSharedData || {};\r\n var _initialError = params.initialError;\r\n var _enableCssAnimation = params.enableCssAnimation;\r\n var _disableAnimationIfAnimationEndUnsupported = params.disableAnimationIfAnimationEndUnsupported;\r\n var _telemetry = TelemetryFactory.getInstance(_serverData);\r\n var _saveSharedDataOnBack = params.saveSharedDataOnBack || false;\r\n \r\n\r\n \r\n var _removeMinWidthFromLightBox = _serverData.fRemoveMinWidthFromLightBox;\r\n var _displayResourceAppConsentDetails = _serverData.fDisplayResourceAppConsentDetails;\r\n var _displayConsolidatedTelephony = _serverData.fPassTelephonyAuthMethod;\r\n var _useLayoutTemplates = _serverData.fFixSignoutBrandingCiam;\r\n \r\n\r\n \r\n var _viewInterfaces = viewInterfaces;\r\n var _viewMetadata = viewMetadata;\r\n var _history = null;\r\n var _currentAnimationState = AnimationState.End;\r\n var _animateBack = false;\r\n var _previousViewId = null;\r\n var _newViewId = null;\r\n var _useCssAnimations = false;\r\n var _disableAnimationTimeout = null;\r\n\r\n var _viewId = ko.observable();\r\n \r\n\r\n \r\n _this.views = views;\r\n _this.viewInterfaces = viewInterfaces;\r\n _this.sharedData = _initialSharedData;\r\n _this.initialError = _initialError;\r\n _this.isInitialState = false;\r\n _this.showLogo = params.showLogo || false;\r\n _this.bannerLogoUrl = params.bannerLogoUrl || \"\";\r\n\r\n _this.isBackButtonVisible = ko.observable(false);\r\n _this.isBackButtonFocused = ko.observable(false);\r\n _this.backButtonDescribedBy = ko.observable(null);\r\n _this.hasInitialViewShown = ko.observable(false);\r\n _this.unsafe_displayName = ko.observable();\r\n\r\n _this.hidePaginatedView = ko.utils.extend(ko.observable(false), { hideSubView: ko.observable(false) });\r\n _this.animate = ko.utils.extend(ko.observable(AnimationName.None),\r\n {\r\n animateBanner: ko.observable(false),\r\n isSlideOutNext: ko.pureComputed(function () { return _this.animate() === AnimationName.SlideOutNext; }),\r\n isSlideInNext: ko.pureComputed(function () { return _this.animate() === AnimationName.SlideInNext; }),\r\n isSlideOutBack: ko.pureComputed(function () { return _this.animate() === AnimationName.SlideOutBack; }),\r\n isSlideInBack: ko.pureComputed(function () { return _this.animate() === AnimationName.SlideInBack; })\r\n });\r\n\r\n _this.showIdentityBanner = ko.pureComputed(\r\n function ()\r\n {\r\n var viewId = _viewId();\r\n return (viewId && _viewMetadata[viewId].metadata && _viewMetadata[viewId].metadata[\"showIdentityBanner\"]);\r\n });\r\n\r\n _this.currentViewIndex = ko.pureComputed(\r\n function ()\r\n {\r\n var viewId = _viewId();\r\n\r\n if (_viewMetadata[viewId] && !isNaN(_viewMetadata[viewId].index))\r\n {\r\n return _viewMetadata[viewId].index;\r\n }\r\n\r\n return -1;\r\n });\r\n\r\n \r\n\r\n \r\n _this.onCancel = ComponentEvent.create();\r\n _this.onUnload = ComponentEvent.create();\r\n _this.onLoadView = ComponentEvent.create();\r\n _this.onShowView = ComponentEvent.create();\r\n _this.onSetLightBoxFadeIn = ComponentEvent.create();\r\n _this.onAnimationStateChange = ComponentEvent.create();\r\n\r\n \r\n _this.dispose = function ()\r\n {\r\n _this.onUnload(_history.getState().viewId);\r\n _history.dispose();\r\n };\r\n\r\n _this.setDefaultFocus = function ()\r\n {\r\n var viewInterface = _getCurrentViewInterface();\r\n if (viewInterface && viewInterface.setDefaultFocus)\r\n {\r\n viewInterface.setDefaultFocus();\r\n }\r\n };\r\n\r\n _this.getCurrentViewId = function ()\r\n {\r\n return _viewId();\r\n };\r\n\r\n _this.getSharedData = function ()\r\n {\r\n return _this.sharedData || {};\r\n };\r\n\r\n _this.getSharedDataItem = function (key)\r\n {\r\n return _this.getSharedData()[key];\r\n };\r\n\r\n _this.getCurrentView = function ()\r\n {\r\n return { viewId: _viewId(), viewInterface: _getCurrentViewInterface() };\r\n };\r\n\r\n _this.setSharedDataItem = function (key, value)\r\n {\r\n if (!_this.sharedData)\r\n {\r\n _this.sharedData = {};\r\n }\r\n\r\n _this.sharedData[key] = value;\r\n };\r\n\r\n _this.saveSharedDataOnCurrentView = function ()\r\n {\r\n var viewInterface = _getCurrentViewInterface();\r\n\r\n if (viewInterface)\r\n {\r\n viewInterface.saveSharedData(_this.sharedData);\r\n }\r\n };\r\n\r\n _this.currentViewHasMetadata = function (property)\r\n {\r\n var viewId = _viewId();\r\n\r\n if (_viewMetadata[viewId])\r\n {\r\n return !!_viewMetadata[viewId].metadata[property];\r\n }\r\n\r\n return false;\r\n };\r\n\r\n _this.submitCurrentView = function ()\r\n {\r\n var viewInterface = _getCurrentViewInterface();\r\n if (viewInterface && viewInterface.submit)\r\n {\r\n viewInterface.submit();\r\n }\r\n };\r\n\r\n _this.identityBanner_onBackButtonClick = function ()\r\n {\r\n \r\n if ((_displayResourceAppConsentDetails || _displayConsolidatedTelephony) && _saveSharedDataOnBack)\r\n {\r\n _this.saveSharedDataOnCurrentView();\r\n }\r\n\r\n if (_telemetry)\r\n {\r\n _telemetry.set(\"BackArrowClicked\", true);\r\n _telemetry.post(true);\r\n }\r\n\r\n _this.view_onSwitchView(PreviousPaginatedState);\r\n };\r\n\r\n _this.restoreState = function (persistedViewId)\r\n {\r\n if (__LAYOUT_TEMPLATES_ENABLED__ || __LAYOUT_TEMPLATES_ROLLOUT__)\r\n {\r\n \r\n var historyState = _history.getState();\r\n\r\n \r\n if (persistedViewId && persistedViewId !== _currentViewId)\r\n {\r\n _currentViewId = persistedViewId;\r\n historyState = { viewId: _currentViewId };\r\n _history.pushState(historyState);\r\n }\r\n\r\n \r\n setTimeout(function ()\r\n {\r\n _showView(historyState.viewId);\r\n }, 0);\r\n }\r\n };\r\n\r\n \r\n _this.view_onLoad = function ()\r\n {\r\n var historyState = _history.getState();\r\n var viewInterface = _getCurrentViewInterface();\r\n\r\n \r\n if (viewInterface)\r\n {\r\n viewInterface.restoreState(historyState ? historyState.viewState : null);\r\n\r\n \r\n \r\n var viewId = _this.getCurrentViewId();\r\n ClientTracingHelper.setViewViewModel(viewInterface, viewId, _viewMetadata[viewId].metadata);\r\n ClientTracingHelper.logViewState(viewInterface);\r\n\r\n if (_telemetry && viewId)\r\n {\r\n try\r\n {\r\n _telemetry.set(\"viewId\", viewId, true);\r\n }\r\n catch (e) { }\r\n }\r\n\r\n _this.setDefaultFocus();\r\n }\r\n };\r\n\r\n _this.view_onSwitchView = function (viewId, replaceHistory, forceTransitionAnimation)\r\n {\r\n ClientTracingHelper.logEvent(\r\n {\r\n eventType: \"view_onSwitchView\",\r\n eventId: ClientTracingConstants.EventIds.Event_PaginationControl_ViewSwitch,\r\n eventLevel: ClientTracingConstants.EventLevel.Critical,\r\n eventArgs: { viewId: viewId, replaceHistory: replaceHistory },\r\n eventOptions: { hidingMode: ClientTracingConstants.HidingMode.None }\r\n });\r\n\r\n ClientTracingHelper.switchView(_getCurrentViewInterface());\r\n\r\n var historyState = _history.getState() || {};\r\n\r\n if (forceTransitionAnimation)\r\n {\r\n historyState.forceTransitionAnimation = forceTransitionAnimation;\r\n _history.replaceState(historyState);\r\n }\r\n\r\n _this.initialError = null;\r\n if (viewId === PreviousPaginatedState)\r\n {\r\n _animateBack = true;\r\n if (historyState.isInitialState)\r\n {\r\n _this.onCancel();\r\n }\r\n else\r\n {\r\n _history.goBack();\r\n }\r\n }\r\n else\r\n {\r\n _animateBack = false;\r\n _saveCurrentViewState(true );\r\n\r\n \r\n \r\n \r\n \r\n replaceHistory |= (viewId === _viewId() && replaceHistory !== false);\r\n\r\n if (replaceHistory)\r\n {\r\n \r\n historyState.viewId = viewId;\r\n historyState.viewState = null;\r\n _history.replaceState(historyState);\r\n }\r\n else\r\n {\r\n \r\n historyState = { viewId: viewId };\r\n _history.pushState(historyState);\r\n }\r\n\r\n _showView(viewId, forceTransitionAnimation);\r\n }\r\n };\r\n\r\n _this.view_onCancel = function ()\r\n {\r\n _this.onCancel();\r\n };\r\n\r\n _this.view_onSetIdentityBackButtonState = function (visible, hasFocus, describedBy)\r\n {\r\n _this.isBackButtonVisible(visible || false);\r\n _this.isBackButtonFocused(hasFocus || false);\r\n _this.backButtonDescribedBy(describedBy || null);\r\n };\r\n\r\n _this.view_onAnimationEnd = function ()\r\n {\r\n \r\n \r\n\r\n _this.onAnimationStateChange(_currentAnimationState, _animateBack, !!_previousViewId );\r\n\r\n switch (_currentAnimationState)\r\n {\r\n case AnimationState.Begin:\r\n \r\n _this.animate(AnimationName.None);\r\n _this.animate.animateBanner(!_previousViewId || _viewMetadata[_previousViewId].metadata[\"showIdentityBanner\"] !== _viewMetadata[_newViewId].metadata[\"showIdentityBanner\"]);\r\n\r\n \r\n _currentAnimationState = AnimationState.RenderNewView;\r\n if (_previousViewId)\r\n {\r\n _this.animate(_animateBack ? AnimationName.SlideOutBack : AnimationName.SlideOutNext);\r\n }\r\n else\r\n {\r\n _this.view_onAnimationEnd();\r\n }\r\n break;\r\n\r\n case AnimationState.RenderNewView:\r\n _renderNewView(_newViewId);\r\n _this.animate.animateBanner() ? _this.hidePaginatedView(true) : _this.hidePaginatedView.hideSubView(true);\r\n _this.unsafe_displayName(_this.showIdentityBanner() ? BrowserHelper.htmlUnescape(_this.sharedData.displayName || w.ServerData.sPOST_Username) : \"\");\r\n\r\n \r\n _currentAnimationState = AnimationState.AnimateNewView;\r\n if (_previousViewId)\r\n {\r\n setTimeout(_this.view_onAnimationEnd, 0);\r\n }\r\n else\r\n {\r\n _this.onSetLightBoxFadeIn(true);\r\n }\r\n break;\r\n\r\n case AnimationState.AnimateNewView:\r\n \r\n if (_disableAnimationTimeout)\r\n {\r\n clearTimeout(_disableAnimationTimeout);\r\n _disableAnimationTimeout = null;\r\n }\r\n\r\n _currentAnimationState = AnimationState.End;\r\n _this.hidePaginatedView(false);\r\n _this.hidePaginatedView.hideSubView(false);\r\n _this.animate(_animateBack ? AnimationName.SlideInBack : AnimationName.SlideInNext);\r\n break;\r\n }\r\n };\r\n\r\n \r\n function _getCurrentViewInterface()\r\n {\r\n var viewIndex = _this.currentViewIndex();\r\n if (_viewInterfaces[viewIndex])\r\n {\r\n return _viewInterfaces[viewIndex]();\r\n }\r\n\r\n return null;\r\n }\r\n\r\n function _renderNewView(viewId)\r\n {\r\n \r\n _viewId(null);\r\n _this.view_onSetIdentityBackButtonState();\r\n\r\n _this.isInitialState = _history.getState().isInitialState;\r\n\r\n \r\n _this.onShowView(_viewMetadata[viewId].metadata, viewId);\r\n\r\n \r\n _viewId(viewId);\r\n\r\n \r\n _this.hasInitialViewShown(true);\r\n\r\n var activeContainer = document.querySelectorAll(\"[data-viewid]\");\r\n\r\n if (_telemetry && activeContainer && activeContainer.length > 0)\r\n {\r\n try\r\n {\r\n \r\n _telemetry.applyClientEventBindings(activeContainer[0]);\r\n }\r\n catch (e) { }\r\n }\r\n }\r\n\r\n function _showView(viewId, forceTransitionAnimation)\r\n {\r\n var currentViewId = _viewId();\r\n var loadViewPromise = _this.onLoadView(viewId);\r\n\r\n \r\n \r\n if (_telemetry && currentViewId)\r\n {\r\n try\r\n {\r\n _telemetry.set(\"viewId\", currentViewId, true);\r\n _telemetry.post(true);\r\n }\r\n catch (e) { }\r\n }\r\n\r\n \r\n if (!loadViewPromise)\r\n {\r\n _animateToNewView(currentViewId, viewId, forceTransitionAnimation);\r\n\r\n return;\r\n }\r\n\r\n PromiseHelpers.throwUnhandledExceptionOnRejection(\r\n loadViewPromise.then(function ()\r\n {\r\n _animateToNewView(currentViewId, viewId, forceTransitionAnimation);\r\n })\r\n );\r\n }\r\n\r\n \r\n function _animateToNewView(currentViewId, viewId, forceTransitionAnimation)\r\n {\r\n var isTransitionAnimated = (currentViewId !== viewId) || forceTransitionAnimation;\r\n\r\n if (_useCssAnimations && isTransitionAnimated && (!_initialError || currentViewId))\r\n {\r\n if (_disableAnimationIfAnimationEndUnsupported && _previousViewId === null)\r\n {\r\n _disableAnimationTimeout = setTimeout(\r\n function ()\r\n {\r\n _useCssAnimations = false;\r\n _this.hidePaginatedView(false);\r\n _this.hidePaginatedView.hideSubView(false);\r\n _this.onSetLightBoxFadeIn(false);\r\n _currentAnimationState = AnimationState.End;\r\n _showView(viewId);\r\n }, AnimationTimeout);\r\n }\r\n\r\n _previousViewId = currentViewId;\r\n _newViewId = viewId;\r\n\r\n _currentAnimationState = AnimationState.Begin;\r\n _this.view_onAnimationEnd();\r\n }\r\n else\r\n {\r\n _this.animate(AnimationName.None);\r\n _this.view_onAnimationEnd();\r\n\r\n _renderNewView(viewId);\r\n _this.unsafe_displayName(_this.showIdentityBanner() ? BrowserHelper.htmlUnescape(_this.sharedData.displayName || w.ServerData.sPOST_Username) : \"\");\r\n }\r\n }\r\n\r\n function _saveCurrentViewState(saveSharedData)\r\n {\r\n var currentViewInterface = _getCurrentViewInterface();\r\n\r\n if (!currentViewInterface)\r\n {\r\n return;\r\n }\r\n\r\n if (saveSharedData)\r\n {\r\n \r\n currentViewInterface.saveSharedData(_this.sharedData);\r\n }\r\n\r\n \r\n var viewState = currentViewInterface.getState();\r\n var historyState = _history.getState();\r\n\r\n historyState.viewState = viewState;\r\n _history.replaceState(historyState);\r\n }\r\n\r\n function _history_onBack()\r\n {\r\n _animateBack = true;\r\n _saveCurrentViewState(false );\r\n }\r\n\r\n function _history_onForward()\r\n {\r\n _animateBack = false;\r\n }\r\n\r\n function _history_onPopState(historyState)\r\n {\r\n _this.initialError = null;\r\n _showView(historyState.viewId, historyState.forceTransitionAnimation);\r\n }\r\n\r\n (function _initialize()\r\n {\r\n _useCssAnimations = _enableCssAnimation && BrowserHelper.isCSSAnimationSupported();\r\n _history = new BrowserHistory(_history_onBack, _history_onForward, _history_onPopState);\r\n\r\n var historyState = null;\r\n\r\n if (_initialViewId !== null || _currentViewId !== null)\r\n {\r\n \r\n _initialViewId = _initialViewId === null ? _currentViewId : _initialViewId;\r\n _currentViewId = _currentViewId === null ? _initialViewId : _currentViewId;\r\n\r\n \r\n historyState = { viewId: _initialViewId, isInitialState: true };\r\n _history.replaceState(historyState);\r\n }\r\n\r\n \r\n if (_currentViewId !== _initialViewId)\r\n {\r\n historyState = { viewId: _currentViewId };\r\n _history.pushState(historyState);\r\n }\r\n\r\n if (!(__LAYOUT_TEMPLATES_ENABLED__ || (__LAYOUT_TEMPLATES_ROLLOUT__ && _useLayoutTemplates)) && historyState !== null)\r\n {\r\n \r\n setTimeout(function ()\r\n {\r\n _showView(historyState.viewId);\r\n }, 0);\r\n }\r\n\r\n \r\n \r\n \r\n \r\n \r\n if (__IS_CONVERGEDUX__)\r\n {\r\n if (_removeMinWidthFromLightBox)\r\n {\r\n var _minWidthCssNode = doc.createElement(\"style\");\r\n _minWidthCssNode.type = \"text/css\";\r\n _minWidthCssNode.innerHTML = \".inner,.promoted-fed-cred-box,.sign-in-box,.new-session-popup-v2sso,.debug-details-banner,.vertical-split-content{min-width:0;}\";\r\n head.appendChild(_minWidthCssNode);\r\n }\r\n }\r\n })();\r\n}\r\n\r\nfunction PaginationControlFactory(params, componentInfo)\r\n{\r\n var views = [];\r\n var viewInterfaces = [];\r\n var viewMetadata = {};\r\n var index = 0;\r\n\r\n ko.utils.arrayForEach(\r\n componentInfo.templateNodes,\r\n function (templateNode)\r\n {\r\n var viewId;\r\n\r\n \r\n if (templateNode.nodeType === HtmlElementNodeType)\r\n {\r\n viewId = templateNode.getAttribute(\"data-viewid\");\r\n\r\n if (viewId !== null)\r\n {\r\n views.push(templateNode);\r\n viewInterfaces.push(ko.observable());\r\n\r\n viewId = isNaN(viewId) ? viewId : parseInt(viewId);\r\n\r\n viewMetadata[viewId] =\r\n {\r\n index: index++,\r\n metadata: _buildViewMetadata(templateNode)\r\n };\r\n }\r\n }\r\n });\r\n\r\n return new PaginationControl(params, views, viewInterfaces, viewMetadata);\r\n}\r\n\r\nfunction _buildViewMetadata(templateNode)\r\n{\r\n var metadata = {};\r\n var supportedMetadataAttributes =\r\n [\r\n \"wide\",\r\n \"hideLogo\",\r\n \"hideDefaultLogo\",\r\n \"dynamicBranding\",\r\n \"hideLwaDisclaimer\",\r\n \"showIdentityBanner\",\r\n \"showFedCredButton\",\r\n \"showSignupFedCredButton\",\r\n \"hidePageLevelTitleAndDesc\",\r\n \"extraDebugDetails\",\r\n \"showQrCodeSignInButton\"\r\n ];\r\n\r\n ko.utils.arrayForEach(\r\n supportedMetadataAttributes,\r\n function (attributeName)\r\n {\r\n var value = templateNode.getAttribute(\"data-\" + attributeName);\r\n if (value)\r\n {\r\n metadata[attributeName] = value.toLowerCase() === \"true\";\r\n }\r\n }\r\n );\r\n\r\n return metadata;\r\n}\r\n\r\nko.components.register(\"pagination-control\",\r\n {\r\n viewModel: { createViewModel: PaginationControlFactory },\r\n template: require(\"html/Shared/Controls/PaginationControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });","\r\nvar JSON = require(\"JSON\");\r\nvar Promise = require(\"../Core/Promise\");\r\n\r\nvar w = window;\r\nvar n = w.navigator;\r\n\r\n\r\n\r\n\r\nfunction WebNativeBridgeTestHook()\r\n{\r\n var _this = this;\r\n var _scenario = \"OSError\";\r\n var _apiSupported = true;\r\n\r\n \r\n _this.setScenario = function (apiSupported, scenario)\r\n {\r\n _scenario = scenario;\r\n _apiSupported = apiSupported;\r\n };\r\n\r\n var GET_TOKEN_SUCCESS = {\r\n isSuccess: true,\r\n state: \"1234state\",\r\n accessToken: \"eyJ0eXAiOiJKV1QiLCJub25j...\",\r\n expiresIn: 1744768881,\r\n account: {\r\n id: \"d17d3706-1e4e-4695-8048-ef6196e96f3d.72f988bf-86f1-41af-91ab-2d7cd011db47\",\r\n userName: \"testuser@microsoft.com\",\r\n properties: {}\r\n },\r\n clientInfo: \"clienteyJ1aWQiOiJkMTdkMzcwNi0xZTRlLTQ2OTUtODA0OC1lZjYxOTZlOTZm\",\r\n idToken: \"idTokeneyJ0eXAiOiJKV1QiLCJyaCI\",\r\n scopes: \"openid profile User.Read email\",\r\n proofOfPossessionPayload: null,\r\n extendedLifetimeToken: true,\r\n error: null,\r\n properties: {\r\n UPN: \"testuser@microsoft.com\"\r\n }\r\n };\r\n\r\n var GET_TOKEN_FAILURE = {\r\n isSuccess: false,\r\n expiresIn: 0,\r\n account: {\r\n id: \"\",\r\n userName: \"\",\r\n properties: {}\r\n },\r\n extendedLifetimeToken: false,\r\n error: {\r\n code: \"OSError\",\r\n description: \"There is an OSError\",\r\n errorCode: \"-6000\",\r\n protocolError: \"-5000\",\r\n status: \"PERSISTENT_ERROR\",\r\n properties: {\r\n errorDetails: \"User declined access\"\r\n }\r\n }\r\n };\r\n\r\n var GET_CONTRACTS_SUCCESS = [\"get-token-and-sign-out\", \"apply-cookies\", \"bvt-working\"];\r\n\r\n var GET_CONTRACTS_FAILURE = [\"bvt-working\"];\r\n\r\n _this.executeGetToken = function (request)\r\n {\r\n console.info(\"[Called navigator.platformAuthentication.executeGetToken( \" + JSON.stringify(request) + \")]\");\r\n\r\n return new Promise(function (resolve, reject)\r\n {\r\n if (_scenario === \"success\")\r\n {\r\n console.info(\"[Call succeeded with result \" + JSON.stringify(GET_TOKEN_SUCCESS) + \"]\");\r\n resolve(GET_TOKEN_SUCCESS);\r\n }\r\n else if (_scenario === \"OSError\")\r\n {\r\n console.info(\"[Call failed with error \" + JSON.stringify(GET_TOKEN_FAILURE) + \"]\");\r\n resolve(GET_TOKEN_FAILURE);\r\n }\r\n else\r\n {\r\n reject(\"[Call failed with error \" + JSON.stringify(GET_TOKEN_FAILURE) + \"]\");\r\n }\r\n });\r\n };\r\n\r\n _this.getSupportedContracts = function (request)\r\n {\r\n console.info(\"[Called navigator.platformAuthentication.getSupportedContracts()]\");\r\n\r\n return new Promise(function (resolve, reject)\r\n {\r\n if (_apiSupported === true)\r\n {\r\n console.info(\"[Call succeeded with result \" + JSON.stringify(GET_CONTRACTS_SUCCESS) + \" \" + JSON.stringify(request) + \"]\");\r\n resolve(GET_CONTRACTS_SUCCESS);\r\n }\r\n else if (_apiSupported === false)\r\n {\r\n console.info(\"[Call failed with error \" + JSON.stringify(GET_CONTRACTS_FAILURE) + \"]\");\r\n resolve(GET_CONTRACTS_FAILURE);\r\n }\r\n else\r\n {\r\n reject(\"[Call failed with error \" + JSON.stringify(GET_CONTRACTS_FAILURE) + \"]\");\r\n }\r\n });\r\n };\r\n \r\n}\r\n\r\nif (document.location.search.indexOf(\"webbridgeedgeapi=1\") !== -1)\r\n{\r\n var testHook = new WebNativeBridgeTestHook();\r\n var platformAuth = n.platformAuthentication || (n.platformAuthentication = {});\r\n\r\n platformAuth.setScenario = function ()\r\n {\r\n return testHook.setScenario.apply(testHook, arguments);\r\n };\r\n\r\n platformAuth.executeGetToken = function ()\r\n {\r\n return testHook.executeGetToken.apply(testHook, arguments);\r\n };\r\n\r\n platformAuth.getSupportedContracts = function ()\r\n {\r\n return testHook.getSupportedContracts.apply(testHook, arguments);\r\n };\r\n}","var ko = require(\"knockout\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar ComponentEvent = require(\"../Core/ComponentEvent\");\r\n\r\nvar w = window;\r\n\r\n\r\nfunction FidoHelpDialogContentControl(params)\r\n{\r\n var _this = this;\r\n\r\n \r\n var _isPlatformAuthenticatorAvailable = params.isPlatformAuthenticatorAvailable;\r\n \r\n\r\n \r\n _this.isPlatformAuthenticatorAvailable = _isPlatformAuthenticatorAvailable;\r\n \r\n\r\n \r\n _this.onRegisterDialog = ComponentEvent.create();\r\n _this.onUnregisterDialog = ComponentEvent.create();\r\n \r\n}\r\n\r\nko.components.register(\"fido-help-dialog-content-control\",\r\n {\r\n viewModel: FidoHelpDialogContentControl,\r\n template: require(\"html/LoginPage/Controls/FidoHelpDialogContentControlHtml.html\"),\r\n synchronous: !w.ServerData.iMaxStackForKnockoutAsyncComponents || Browser.Helper.isStackSizeGreaterThan(w.ServerData.iMaxStackForKnockoutAsyncComponents),\r\n enableExtensions: true\r\n });\r\n\r\nmodule.exports = FidoHelpDialogContentControl;","var w = window;\r\n\r\n__webpack_public_path__ = w.ServerData.urlCdn;\r\n\r\n\r\nw.ServerData.urlImagePath = w.ServerData.urlCdn + \"images/\";\r\n\r\nvar ko = require(\"knockout\");\r\nvar KnockoutExtensions = require(\"../Core/KnockoutExtensions\");\r\nvar Constants = require(\"../Core/Constants\");\r\nvar Browser = require(\"../Core/BrowserControl\");\r\nvar StringRepository = require(\"../Core/StringRepository\");\r\nvar LoginConstants = require(\"./LoginConstants\");\r\nvar LoginPaginatedViewModel = require(\"./LoginPaginatedPageViewModel\");\r\n\r\nrequire(\"../Core/TelemetryFactory\").getInstance(window.ServerData);\r\n\r\nvar LoginMode = Constants.LoginMode;\r\nvar BrowserHelper = Browser.Helper;\r\nvar QueryString = Browser.QueryString;\r\nvar Cookies = Browser.Cookies;\r\nvar LoginOption = LoginConstants.LoginOption;\r\n\r\nvar _onLoadFired = false;\r\n\r\nKnockoutExtensions.applyExtensions(ko);\r\n\r\nko.utils.registerEventHandler(w, \"load\",\r\n function ()\r\n {\r\n var serverData = w.ServerData;\r\n serverData.str = StringRepository.getStrings(\"str\", serverData);\r\n serverData.html = StringRepository.getStrings(\"html\", serverData);\r\n serverData.arrProofData = StringRepository.getStrings(\"proofData\");\r\n\r\n if (_onLoadFired || isRedirectNeeded(serverData))\r\n {\r\n return;\r\n }\r\n\r\n _onLoadFired = true;\r\n\r\n switch (serverData.iLoginMode)\r\n {\r\n case LoginMode.GenericError:\r\n case LoginMode.GenericErrorMobile:\r\n case LoginMode.GenericErrorHost:\r\n case LoginMode.SwitchUser:\r\n case LoginMode.SwitchUserMobile:\r\n case LoginMode.SwitchUserHost:\r\n case LoginMode.InviteBlocked:\r\n case LoginMode.ServiceBlocked:\r\n case LoginMode.IDPFailed:\r\n case LoginMode.HIP_Lockout:\r\n case LoginMode.HIP_LockoutMobile:\r\n case LoginMode.HIP_LockoutHost:\r\n case LoginMode.BindFailed:\r\n require.ensure([],\r\n function ()\r\n {\r\n var LoginErrorViewModel = require(\"./LoginErrorPageViewModel\");\r\n\r\n document.body.appendChild(document.createElement(\"div\")).innerHTML = require(\"html/LoginPage/LoginErrorPageHtml.html\");\r\n ko.applyBindings(new LoginErrorViewModel(serverData));\r\n postLoad(serverData);\r\n },\r\n \"Alt\");\r\n\r\n break;\r\n default:\r\n document.body.appendChild(document.createElement(\"div\")).innerHTML = require(\"html/LoginPage/LoginPaginatedPageHtml.html\");\r\n ko.applyBindings(new LoginPaginatedViewModel(serverData));\r\n postLoad(serverData);\r\n break;\r\n }\r\n });\r\n\r\nfunction postLoad(serverData)\r\n{\r\n doAsyncIPv6ImageLoad(serverData.urlIPv6Experiment);\r\n doAsyncCertImageLoad(serverData);\r\n}\r\n\r\nfunction isRedirectNeeded(serverData)\r\n{\r\n try\r\n {\r\n \r\n if (top !== self)\r\n {\r\n \r\n top.location.replace(self.location.href);\r\n }\r\n\r\n \r\n if (serverData.iFedState === 2 && serverData.urlFed)\r\n {\r\n doFedRedirect(serverData.urlFed, serverData.iDefaultLoginOptions, decodeURIComponent(QueryString.extract(\"username\")), serverData);\r\n return true;\r\n }\r\n\r\n \r\n if (!Cookies.enabled())\r\n {\r\n document.location = serverData.urlNoCookies;\r\n return true;\r\n }\r\n }\r\n catch (exc)\r\n {\r\n serverData.iLoginMode = LoginMode.GenericError;\r\n }\r\n\r\n return false;\r\n}\r\n\r\nfunction doFedRedirect(fedUrl, loginOptions, username, serverData)\r\n{\r\n var fedQs = serverData.sFedQS;\r\n\r\n if (loginOptions === LoginOption.NothingChecked)\r\n {\r\n fedQs = QueryString.appendOrReplace(\"?\" + fedQs, \"wctx\", \"LoginOptions%3D3%26\" + QueryString.extract(\"wctx\", \"?\" + fedQs)).substr(1);\r\n }\r\n\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"cbcxt\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"cbcxt\"))));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"vv\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"cbcxt\"))));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"username\", encodeURIComponent(username));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"mkt\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"mkt\"))));\r\n fedUrl = QueryString.appendOrReplace(fedUrl, \"lc\", encodeURIComponent(decodeURIComponent(QueryString.extract(\"lc\"))));\r\n\r\n document.location.replace(QueryString.append(fedUrl, fedQs));\r\n\r\n return true;\r\n}\r\n\r\nfunction doAsyncCertImageLoad(serverData)\r\n{\r\n \r\n if (serverData.fUpgradeEVCert)\r\n {\r\n \r\n if ((new RegExp(\"Windows NT ([0-9]{1,}[.0-9]{0,})\").exec(navigator.userAgent) !== null && parseFloat(RegExp.$1) < 6.0) &&\r\n BrowserHelper.getIEVersion() >= 7.0) \r\n {\r\n try\r\n {\r\n \r\n var el = document.getElementById(\"ev\");\r\n el.src = serverData.urlEVCertUpgrade;\r\n }\r\n catch (exc)\r\n {\r\n }\r\n }\r\n }\r\n}\r\n\r\n\r\nfunction doAsyncIPv6ImageLoad(experimentUrl)\r\n{\r\n if (experimentUrl)\r\n {\r\n var img = new Image();\r\n img.src = experimentUrl;\r\n }\r\n}","/*!\n * Knockout JavaScript library v3.5.1\n * (c) The Knockout.js team - http://knockoutjs.com/\n * License: MIT (http://www.opensource.org/licenses/mit-license.php)\n */\n\n(function() {(function(n){var A=this||(0,eval)(\"this\"),w=A.document,R=A.navigator,v=A.jQuery,H=A.JSON;v||\"undefined\"===typeof jQuery||(v=jQuery);(function(n){\"function\"===typeof define&&define.amd?define([\"exports\",\"require\"],n):\"object\"===typeof exports&&\"object\"===typeof module?n(module.exports||exports):n(A.ko={})})(function(S,T){function K(a,c){return null===a||typeof a in W?a===c:!1}function X(b,c){var d;return function(){d||(d=a.a.setTimeout(function(){d=n;b()},c))}}function Y(b,c){var d;return function(){clearTimeout(d);\nd=a.a.setTimeout(b,c)}}function Z(a,c){c&&\"change\"!==c?\"beforeChange\"===c?this.pc(a):this.gb(a,c):this.qc(a)}function aa(a,c){null!==c&&c.s&&c.s()}function ba(a,c){var d=this.qd,e=d[r];e.ra||(this.Qb&&this.mb[c]?(d.uc(c,a,this.mb[c]),this.mb[c]=null,--this.Qb):e.I[c]||d.uc(c,a,e.J?{da:a}:d.$c(a)),a.Ja&&a.gd())}var a=\"undefined\"!==typeof S?S:{};a.b=function(b,c){for(var d=b.split(\".\"),e=a,f=0;fa.a.A(c,b)&&c.push(b)});return c},Mb:function(a,\nb,c){var d=[];if(a)for(var e=0,l=a.length;ee?d&&b.push(c):d||b.splice(e,1)},Ba:g,extend:c,setPrototypeOf:d,Ab:g?d:c,P:b,Ga:function(a,b,c){if(!a)return a;var d={},e;for(e in a)f.call(a,e)&&(d[e]=\nb.call(c,a[e],e,a));return d},Tb:function(b){for(;b.firstChild;)a.removeNode(b.firstChild)},Yb:function(b){b=a.a.la(b);for(var c=(b[0]&&b[0].ownerDocument||w).createElement(\"div\"),d=0,e=b.length;dp?a.setAttribute(\"selected\",b):a.selected=b},Db:function(a){return null===a||a===n?\"\":a.trim?\na.trim():a.toString().replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")},Ud:function(a,b){a=a||\"\";return b.length>a.length?!1:a.substring(0,b.length)===b},vd:function(a,b){if(a===b)return!0;if(11===a.nodeType)return!1;if(b.contains)return b.contains(1!==a.nodeType?a.parentNode:a);if(b.compareDocumentPosition)return 16==(b.compareDocumentPosition(a)&16);for(;a&&a!=b;)a=a.parentNode;return!!a},Sb:function(b){return a.a.vd(b,b.ownerDocument.documentElement)},kd:function(b){return!!a.a.Lb(b,a.a.Sb)},R:function(a){return a&&\na.tagName&&a.tagName.toLowerCase()},Ac:function(b){return a.onError?function(){try{return b.apply(this,arguments)}catch(c){throw a.onError&&a.onError(c),c;}}:b},setTimeout:function(b,c){return setTimeout(a.a.Ac(b),c)},Gc:function(b){setTimeout(function(){a.onError&&a.onError(b);throw b;},0)},B:function(b,c,d){var e=a.a.Ac(d);d=l[c];if(a.options.useOnlyNativeEvents||d||!v)if(d||\"function\"!=typeof b.addEventListener)if(\"undefined\"!=typeof b.attachEvent){var k=function(a){e.call(b,a)},f=\"on\"+c;b.attachEvent(f,\nk);a.a.K.za(b,function(){b.detachEvent(f,k)})}else throw Error(\"Browser doesn't support addEventListener or attachEvent\");else b.addEventListener(c,e,!1);else t||(t=\"function\"==typeof v(b).on?\"on\":\"bind\"),v(b)[t](c,e)},Fb:function(b,c){if(!b||!b.nodeType)throw Error(\"element must be a DOM node when calling triggerEvent\");var d;\"input\"===a.a.R(b)&&b.type&&\"click\"==c.toLowerCase()?(d=b.type,d=\"checkbox\"==d||\"radio\"==d):d=!1;if(a.options.useOnlyNativeEvents||!v||d)if(\"function\"==typeof w.createEvent)if(\"function\"==\ntypeof b.dispatchEvent)d=w.createEvent(k[c]||\"HTMLEvents\"),d.initEvent(c,!0,!0,A,0,0,0,0,0,!1,!1,!1,!1,0,b),b.dispatchEvent(d);else throw Error(\"The supplied element doesn't support dispatchEvent\");else if(d&&b.click)b.click();else if(\"undefined\"!=typeof b.fireEvent)b.fireEvent(\"on\"+c);else throw Error(\"Browser doesn't support triggering events\");else v(b).trigger(c)},f:function(b){return a.O(b)?b():b},bc:function(b){return a.O(b)?b.v():b},Eb:function(b,c,d){var l;c&&(\"object\"===typeof b.classList?\n(l=b.classList[d?\"add\":\"remove\"],a.a.D(c.match(q),function(a){l.call(b.classList,a)})):\"string\"===typeof b.className.baseVal?e(b.className,\"baseVal\",c,d):e(b,\"className\",c,d))},Bb:function(b,c){var d=a.a.f(c);if(null===d||d===n)d=\"\";var e=a.h.firstChild(b);!e||3!=e.nodeType||a.h.nextSibling(e)?a.h.va(b,[b.ownerDocument.createTextNode(d)]):e.data=d;a.a.Ad(b)},Yc:function(a,b){a.name=b;if(7>=p)try{var c=a.name.replace(/[&<>'\"]/g,function(a){return\"&#\"+a.charCodeAt(0)+\";\"});a.mergeAttributes(w.createElement(\"\"),!1)}catch(d){}},Ad:function(a){9<=p&&(a=1==a.nodeType?a:a.parentNode,a.style&&(a.style.zoom=a.style.zoom))},wd:function(a){if(p){var b=a.style.width;a.style.width=0;a.style.width=b}},Pd:function(b,c){b=a.a.f(b);c=a.a.f(c);for(var d=[],e=b;e<=c;e++)d.push(e);return d},la:function(a){for(var b=[],c=0,d=a.length;c\",\"\"],d=[3,\"\",\"
\"],e=[1,\"\"],f={thead:c,tbody:c,tfoot:c,tr:[2,\"\",\"
\"],td:d,th:d,option:e,optgroup:e},g=8>=a.a.W;a.a.ua=function(c,d){var e;if(v)if(v.parseHTML)e=v.parseHTML(c,d)||[];else{if((e=v.clean([c],d))&&e[0]){for(var l=e[0];l.parentNode&&11!==l.parentNode.nodeType;)l=l.parentNode;\nl.parentNode&&l.parentNode.removeChild(l)}}else{(e=d)||(e=w);var l=e.parentWindow||e.defaultView||A,p=a.a.Db(c).toLowerCase(),q=e.createElement(\"div\"),t;t=(p=p.match(/^(?:\\x3c!--.*?--\\x3e\\s*?)*?<([a-z]+)[\\s>]/))&&f[p[1]]||b;p=t[0];t=\"ignored
\"+t[1]+c+t[2]+\"
\";\"function\"==typeof l.innerShiv?q.appendChild(l.innerShiv(t)):(g&&e.body.appendChild(q),q.innerHTML=t,g&&q.parentNode.removeChild(q));for(;p--;)q=q.lastChild;e=a.a.la(q.lastChild.childNodes)}return e};a.a.Md=function(b,c){var d=a.a.ua(b,\nc);return d.length&&d[0].parentElement||a.a.Yb(d)};a.a.fc=function(b,c){a.a.Tb(b);c=a.a.f(c);if(null!==c&&c!==n)if(\"string\"!=typeof c&&(c=c.toString()),v)v(b).html(c);else for(var d=a.a.ua(c,b.ownerDocument),e=0;eb){if(5E3<=\n++c){h=f;a.a.Gc(Error(\"'Too much recursion' after processing \"+c+\" task groups.\"));break}b=f}try{d()}catch(p){a.a.Gc(p)}}}function c(){b();h=f=e.length=0}var d,e=[],f=0,g=1,h=0;A.MutationObserver?d=function(a){var b=w.createElement(\"div\");(new MutationObserver(a)).observe(b,{attributes:!0});return function(){b.classList.toggle(\"foo\")}}(c):d=w&&\"onreadystatechange\"in w.createElement(\"script\")?function(a){var b=w.createElement(\"script\");b.onreadystatechange=function(){b.onreadystatechange=null;w.documentElement.removeChild(b);\nb=null;a()};w.documentElement.appendChild(b)}:function(a){setTimeout(a,0)};return{scheduler:d,zb:function(b){f||a.na.scheduler(c);e[f++]=b;return g++},cancel:function(a){a=a-(g-f);a>=h&&ad[0]?p+d[0]:\nd[0]),p);for(var p=1===g?p:Math.min(c+(d[1]||0),p),g=c+g-2,h=Math.max(p,g),U=[],L=[],n=2;cc;c++)b=b();return b})};a.toJSON=function(b,c,d){b=a.ad(b);return a.a.hc(b,c,d)};d.prototype={constructor:d,save:function(b,c){var d=a.a.A(this.keys,\nb);0<=d?this.values[d]=c:(this.keys.push(b),this.values.push(c))},get:function(b){b=a.a.A(this.keys,b);return 0<=b?this.values[b]:n}}})();a.b(\"toJS\",a.ad);a.b(\"toJSON\",a.toJSON);a.Wd=function(b,c,d){function e(c){var e=a.xb(b,d).extend({ma:\"always\"}),h=e.subscribe(function(a){a&&(h.s(),c(a))});e.notifySubscribers(e.v());return h}return\"function\"!==typeof Promise||c?e(c.bind(d)):new Promise(e)};a.b(\"when\",a.Wd);(function(){a.w={M:function(b){switch(a.a.R(b)){case \"option\":return!0===b.__ko__hasDomDataOptionValue__?\na.a.g.get(b,a.c.options.$b):7>=a.a.W?b.getAttributeNode(\"value\")&&b.getAttributeNode(\"value\").specified?b.value:b.text:b.value;case \"select\":return 0<=b.selectedIndex?a.w.M(b.options[b.selectedIndex]):n;default:return b.value}},cb:function(b,c,d){switch(a.a.R(b)){case \"option\":\"string\"===typeof c?(a.a.g.set(b,a.c.options.$b,n),\"__ko__hasDomDataOptionValue__\"in b&&delete b.__ko__hasDomDataOptionValue__,b.value=c):(a.a.g.set(b,a.c.options.$b,c),b.__ko__hasDomDataOptionValue__=!0,b.value=\"number\"===\ntypeof c?c:\"\");break;case \"select\":if(\"\"===c||null===c)c=n;for(var e=-1,f=0,g=b.options.length,h;f=h){c.push(p&&q.length?{key:p,value:q.join(\"\")}:{unknown:p||q.join(\"\")});p=h=0;q=[];continue}}else if(58===u){if(!h&&!p&&1===q.length){p=q.pop();continue}}else if(47===u&&1arguments.length){if(b=w.body,!b)throw Error(\"ko.applyBindings: could not find document.body; has the document been loaded?\");\n}else if(!b||1!==b.nodeType&&8!==b.nodeType)throw Error(\"ko.applyBindings: first parameter should be your view model; second parameter should be a DOM node\");k(q(a,c),b)};a.Dc=function(b){return!b||1!==b.nodeType&&8!==b.nodeType?n:a.Td(b)};a.Ec=function(b){return(b=a.Dc(b))?b.$data:n};a.b(\"bindingHandlers\",a.c);a.b(\"bindingEvent\",a.i);a.b(\"bindingEvent.subscribe\",a.i.subscribe);a.b(\"bindingEvent.startPossiblyAsyncContentBinding\",a.i.Cb);a.b(\"applyBindings\",a.vc);a.b(\"applyBindingsToDescendants\",a.Oa);\na.b(\"applyBindingAccessorsToNode\",a.ib);a.b(\"applyBindingsToNode\",a.ld);a.b(\"contextFor\",a.Dc);a.b(\"dataFor\",a.Ec)})();(function(b){function c(c,e){var k=Object.prototype.hasOwnProperty.call(f,c)?f[c]:b,l;k?k.subscribe(e):(k=f[c]=new a.T,k.subscribe(e),d(c,function(b,d){var e=!(!d||!d.synchronous);g[c]={definition:b,Gd:e};delete f[c];l||e?k.notifySubscribers(b):a.na.zb(function(){k.notifySubscribers(b)})}),l=!0)}function d(a,b){e(\"getConfig\",[a],function(c){c?e(\"loadComponent\",[a,c],function(a){b(a,\nc)}):b(null,null)})}function e(c,d,f,l){l||(l=a.j.loaders.slice(0));var g=l.shift();if(g){var q=g[c];if(q){var t=!1;if(q.apply(g,d.concat(function(a){t?f(null):null!==a?f(a):e(c,d,f,l)}))!==b&&(t=!0,!g.suppressLoaderExceptions))throw Error(\"Component loaders must supply values by invoking the callback, not by returning values synchronously.\");}else e(c,d,f,l)}else f(null)}var f={},g={};a.j={get:function(d,e){var f=Object.prototype.hasOwnProperty.call(g,d)?g[d]:b;f?f.Gd?a.u.G(function(){e(f.definition)}):\na.na.zb(function(){e(f.definition)}):c(d,e)},Bc:function(a){delete g[a]},oc:e};a.j.loaders=[];a.b(\"components\",a.j);a.b(\"components.get\",a.j.get);a.b(\"components.clearCachedDefinition\",a.j.Bc)})();(function(){function b(b,c,d,e){function g(){0===--B&&e(h)}var h={},B=2,u=d.template;d=d.viewModel;u?f(c,u,function(c){a.j.oc(\"loadTemplate\",[b,c],function(a){h.template=a;g()})}):g();d?f(c,d,function(c){a.j.oc(\"loadViewModel\",[b,c],function(a){h[m]=a;g()})}):g()}function c(a,b,d){if(\"function\"===typeof b)d(function(a){return new b(a)});\nelse if(\"function\"===typeof b[m])d(b[m]);else if(\"instance\"in b){var e=b.instance;d(function(){return e})}else\"viewModel\"in b?c(a,b.viewModel,d):a(\"Unknown viewModel value: \"+b)}function d(b){switch(a.a.R(b)){case \"script\":return a.a.ua(b.text);case \"textarea\":return a.a.ua(b.value);case \"template\":if(e(b.content))return a.a.Ca(b.content.childNodes)}return a.a.Ca(b.childNodes)}function e(a){return A.DocumentFragment?a instanceof DocumentFragment:a&&11===a.nodeType}function f(a,b,c){\"string\"===typeof b.require?\nT||A.require?(T||A.require)([b.require],function(a){a&&\"object\"===typeof a&&a.Xd&&a[\"default\"]&&(a=a[\"default\"]);c(a)}):a(\"Uses require, but no AMD loader is present\"):c(b)}function g(a){return function(b){throw Error(\"Component '\"+a+\"': \"+b);}}var h={};a.j.register=function(b,c){if(!c)throw Error(\"Invalid configuration for \"+b);if(a.j.tb(b))throw Error(\"Component \"+b+\" is already registered\");h[b]=c};a.j.tb=function(a){return Object.prototype.hasOwnProperty.call(h,a)};a.j.unregister=function(b){delete h[b];\na.j.Bc(b)};a.j.Fc={getConfig:function(b,c){c(a.j.tb(b)?h[b]:null)},loadComponent:function(a,c,d){var e=g(a);f(e,c,function(c){b(a,e,c,d)})},loadTemplate:function(b,c,f){b=g(b);if(\"string\"===typeof c)f(a.a.ua(c));else if(c instanceof Array)f(c);else if(e(c))f(a.a.la(c.childNodes));else if(c.element)if(c=c.element,A.HTMLElement?c instanceof HTMLElement:c&&c.tagName&&1===c.nodeType)f(d(c));else if(\"string\"===typeof c){var h=w.getElementById(c);h?f(d(h)):b(\"Cannot find element with ID \"+c)}else b(\"Unknown element type: \"+\nc);else b(\"Unknown template value: \"+c)},loadViewModel:function(a,b,d){c(g(a),b,d)}};var m=\"createViewModel\";a.b(\"components.register\",a.j.register);a.b(\"components.isRegistered\",a.j.tb);a.b(\"components.unregister\",a.j.unregister);a.b(\"components.defaultLoader\",a.j.Fc);a.j.loaders.push(a.j.Fc);a.j.dd=h})();(function(){function b(b,e){var f=b.getAttribute(\"params\");if(f){var f=c.parseBindingsString(f,e,b,{valueAccessors:!0,bindingParams:!0}),f=a.a.Ga(f,function(c){return a.o(c,null,{l:b})}),g=a.a.Ga(f,\nfunction(c){var e=c.v();return c.ja()?a.o({read:function(){return a.a.f(c())},write:a.Za(e)&&function(a){c()(a)},l:b}):e});Object.prototype.hasOwnProperty.call(g,\"$raw\")||(g.$raw=f);return g}return{$raw:{}}}a.j.getComponentNameForNode=function(b){var c=a.a.R(b);if(a.j.tb(c)&&(-1!=c.indexOf(\"-\")||\"[object HTMLUnknownElement]\"==\"\"+b||8>=a.a.W&&b.tagName===c))return c};a.j.tc=function(c,e,f,g){if(1===e.nodeType){var h=a.j.getComponentNameForNode(e);if(h){c=c||{};if(c.component)throw Error('Cannot use the \"component\" binding on a custom element matching a component');\nvar m={name:h,params:b(e,f)};c.component=g?function(){return m}:m}}return c};var c=new a.ga;9>a.a.W&&(a.j.register=function(a){return function(b){return a.apply(this,arguments)}}(a.j.register),w.createDocumentFragment=function(b){return function(){var c=b(),f=a.j.dd,g;for(g in f);return c}}(w.createDocumentFragment))})();(function(){function b(b,c,d){c=c.template;if(!c)throw Error(\"Component '\"+b+\"' has no template\");b=a.a.Ca(c);a.h.va(d,b)}function c(a,b,c){var d=a.createViewModel;return d?d.call(a,\nb,c):b}var d=0;a.c.component={init:function(e,f,g,h,m){function k(){var a=l&&l.dispose;\"function\"===typeof a&&a.call(l);q&&q.s();p=l=q=null}var l,p,q,t=a.a.la(a.h.childNodes(e));a.h.Ea(e);a.a.K.za(e,k);a.o(function(){var g=a.a.f(f()),h,u;\"string\"===typeof g?h=g:(h=a.a.f(g.name),u=a.a.f(g.params));if(!h)throw Error(\"No component name specified\");var n=a.i.Cb(e,m),z=p=++d;a.j.get(h,function(d){if(p===z){k();if(!d)throw Error(\"Unknown component '\"+h+\"'\");b(h,d,e);var f=c(d,u,{element:e,templateNodes:t});\nd=n.createChildContext(f,{extend:function(a){a.$component=f;a.$componentTemplateNodes=t}});f&&f.koDescendantsComplete&&(q=a.i.subscribe(e,a.i.pa,f.koDescendantsComplete,f));l=f;a.Oa(d,e)}})},null,{l:e});return{controlsDescendantBindings:!0}}};a.h.ea.component=!0})();var V={\"class\":\"className\",\"for\":\"htmlFor\"};a.c.attr={update:function(b,c){var d=a.a.f(c())||{};a.a.P(d,function(c,d){d=a.a.f(d);var g=c.indexOf(\":\"),g=\"lookupNamespaceURI\"in b&&0=a.a.W&&c in V?(c=V[c],h?b.removeAttribute(c):b[c]=d):h||(g?b.setAttributeNS(g,c,d):b.setAttribute(c,d));\"name\"===c&&a.a.Yc(b,h?\"\":d)})}};(function(){a.c.checked={after:[\"value\",\"attr\"],init:function(b,c,d){function e(){var e=b.checked,f=g();if(!a.S.Ya()&&(e||!m&&!a.S.qa())){var k=a.u.G(c);if(l){var q=p?k.v():k,z=t;t=f;z!==f?e&&(a.a.Na(q,f,!0),a.a.Na(q,z,!1)):a.a.Na(q,f,e);p&&a.Za(k)&&k(q)}else h&&(f===n?f=e:e||(f=n)),a.m.eb(k,\nd,\"checked\",f,!0)}}function f(){var d=a.a.f(c()),e=g();l?(b.checked=0<=a.a.A(d,e),t=e):b.checked=h&&e===n?!!d:g()===d}var g=a.xb(function(){if(d.has(\"checkedValue\"))return a.a.f(d.get(\"checkedValue\"));if(q)return d.has(\"value\")?a.a.f(d.get(\"value\")):b.value}),h=\"checkbox\"==b.type,m=\"radio\"==b.type;if(h||m){var k=c(),l=h&&a.a.f(k)instanceof Array,p=!(l&&k.push&&k.splice),q=m||l,t=l?g():n;m&&!b.name&&a.c.uniqueName.init(b,function(){return!0});a.o(e,null,{l:b});a.a.B(b,\"click\",e);a.o(f,null,{l:b});\nk=n}}};a.m.wa.checked=!0;a.c.checkedValue={update:function(b,c){b.value=a.a.f(c())}}})();a.c[\"class\"]={update:function(b,c){var d=a.a.Db(a.a.f(c()));a.a.Eb(b,b.__ko__cssValue,!1);b.__ko__cssValue=d;a.a.Eb(b,d,!0)}};a.c.css={update:function(b,c){var d=a.a.f(c());null!==d&&\"object\"==typeof d?a.a.P(d,function(c,d){d=a.a.f(d);a.a.Eb(b,c,d)}):a.c[\"class\"].update(b,c)}};a.c.enable={update:function(b,c){var d=a.a.f(c());d&&b.disabled?b.removeAttribute(\"disabled\"):d||b.disabled||(b.disabled=!0)}};a.c.disable=\n{update:function(b,c){a.c.enable.update(b,function(){return!a.a.f(c())})}};a.c.event={init:function(b,c,d,e,f){var g=c()||{};a.a.P(g,function(g){\"string\"==typeof g&&a.a.B(b,g,function(b){var k,l=c()[g];if(l){try{var p=a.a.la(arguments);e=f.$data;p.unshift(e);k=l.apply(e,p)}finally{!0!==k&&(b.preventDefault?b.preventDefault():b.returnValue=!1)}!1===d.get(g+\"Bubble\")&&(b.cancelBubble=!0,b.stopPropagation&&b.stopPropagation())}})})}};a.c.foreach={Rc:function(b){return function(){var c=b(),d=a.a.bc(c);\nif(!d||\"number\"==typeof d.length)return{foreach:c,templateEngine:a.ba.Ma};a.a.f(c);return{foreach:d.data,as:d.as,noChildContext:d.noChildContext,includeDestroyed:d.includeDestroyed,afterAdd:d.afterAdd,beforeRemove:d.beforeRemove,afterRender:d.afterRender,beforeMove:d.beforeMove,afterMove:d.afterMove,templateEngine:a.ba.Ma}}},init:function(b,c){return a.c.template.init(b,a.c.foreach.Rc(c))},update:function(b,c,d,e,f){return a.c.template.update(b,a.c.foreach.Rc(c),d,e,f)}};a.m.Ra.foreach=!1;a.h.ea.foreach=\n!0;a.c.hasfocus={init:function(b,c,d){function e(e){b.__ko_hasfocusUpdating=!0;var f=b.ownerDocument;if(\"activeElement\"in f){var g;try{g=f.activeElement}catch(l){g=f.body}e=g===b}f=c();a.m.eb(f,d,\"hasfocus\",e,!0);b.__ko_hasfocusLastValue=e;b.__ko_hasfocusUpdating=!1}var f=e.bind(null,!0),g=e.bind(null,!1);a.a.B(b,\"focus\",f);a.a.B(b,\"focusin\",f);a.a.B(b,\"blur\",g);a.a.B(b,\"focusout\",g);b.__ko_hasfocusLastValue=!1},update:function(b,c){var d=!!a.a.f(c());b.__ko_hasfocusUpdating||b.__ko_hasfocusLastValue===\nd||(d?b.focus():b.blur(),!d&&b.__ko_hasfocusLastValue&&b.ownerDocument.body.focus(),a.u.G(a.a.Fb,null,[b,d?\"focusin\":\"focusout\"]))}};a.m.wa.hasfocus=!0;a.c.hasFocus=a.c.hasfocus;a.m.wa.hasFocus=\"hasfocus\";a.c.html={init:function(){return{controlsDescendantBindings:!0}},update:function(b,c){a.a.fc(b,c())}};(function(){function b(b,d,e){a.c[b]={init:function(b,c,h,m,k){var l,p,q={},t,x,n;if(d){m=h.get(\"as\");var u=h.get(\"noChildContext\");n=!(m&&u);q={as:m,noChildContext:u,exportDependencies:n}}x=(t=\n\"render\"==h.get(\"completeOn\"))||h.has(a.i.pa);a.o(function(){var h=a.a.f(c()),m=!e!==!h,u=!p,r;if(n||m!==l){x&&(k=a.i.Cb(b,k));if(m){if(!d||n)q.dataDependency=a.S.o();r=d?k.createChildContext(\"function\"==typeof h?h:c,q):a.S.qa()?k.extend(null,q):k}u&&a.S.qa()&&(p=a.a.Ca(a.h.childNodes(b),!0));m?(u||a.h.va(b,a.a.Ca(p)),a.Oa(r,b)):(a.h.Ea(b),t||a.i.ma(b,a.i.H));l=m}},null,{l:b});return{controlsDescendantBindings:!0}}};a.m.Ra[b]=!1;a.h.ea[b]=!0}b(\"if\");b(\"ifnot\",!1,!0);b(\"with\",!0)})();a.c.let={init:function(b,\nc,d,e,f){c=f.extend(c);a.Oa(c,b);return{controlsDescendantBindings:!0}}};a.h.ea.let=!0;var Q={};a.c.options={init:function(b){if(\"select\"!==a.a.R(b))throw Error(\"options binding applies only to SELECT elements\");for(;0g)var m=a.a.g.Z(),k=a.a.g.Z(),l=function(b){var c=this.activeElement;(c=c&&a.a.g.get(c,k))&&c(b)},p=function(b,c){var d=b.ownerDocument;a.a.g.get(d,m)||(a.a.g.set(d,m,!0),a.a.B(d,\"selectionchange\",l));a.a.g.set(b,k,c)};a.c.textInput={init:function(b,c,k){function l(c,d){a.a.B(b,c,d)}function m(){var d=a.a.f(c());if(null===d||d===n)d=\"\";L!==n&&d===L?a.a.setTimeout(m,4):b.value!==d&&(y=!0,b.value=d,y=!1,v=b.value)}function r(){w||(L=b.value,w=a.a.setTimeout(z,\n4))}function z(){clearTimeout(w);L=w=n;var d=b.value;v!==d&&(v=d,a.m.eb(c(),k,\"textInput\",d))}var v=b.value,w,L,A=9==a.a.W?r:z,y=!1;g&&l(\"keypress\",z);11>g&&l(\"propertychange\",function(a){y||\"value\"!==a.propertyName||A(a)});8==g&&(l(\"keyup\",z),l(\"keydown\",z));p&&(p(b,A),l(\"dragend\",r));(!g||9<=g)&&l(\"input\",A);5>e&&\"textarea\"===a.a.R(b)?(l(\"keydown\",r),l(\"paste\",r),l(\"cut\",r)):11>d?l(\"keydown\",r):4>f?(l(\"DOMAutoComplete\",z),l(\"dragdrop\",z),l(\"drop\",z)):h&&\"number\"===b.type&&l(\"keydown\",r);l(\"change\",\nz);l(\"blur\",z);a.o(m,null,{l:b})}};a.m.wa.textInput=!0;a.c.textinput={preprocess:function(a,b,c){c(\"textInput\",a)}}})();a.c.uniqueName={init:function(b,c){if(c()){var d=\"ko_unique_\"+ ++a.c.uniqueName.rd;a.a.Yc(b,d)}}};a.c.uniqueName.rd=0;a.c.using={init:function(b,c,d,e,f){var g;d.has(\"as\")&&(g={as:d.get(\"as\"),noChildContext:d.get(\"noChildContext\")});c=f.createChildContext(c,g);a.Oa(c,b);return{controlsDescendantBindings:!0}}};a.h.ea.using=!0;a.c.value={init:function(b,c,d){var e=a.a.R(b),f=\"input\"==\ne;if(!f||\"checkbox\"!=b.type&&\"radio\"!=b.type){var g=[],h=d.get(\"valueUpdate\"),m=!1,k=null;h&&(\"string\"==typeof h?g=[h]:g=a.a.wc(h),a.a.Pa(g,\"change\"));var l=function(){k=null;m=!1;var e=c(),f=a.w.M(b);a.m.eb(e,d,\"value\",f)};!a.a.W||!f||\"text\"!=b.type||\"off\"==b.autocomplete||b.form&&\"off\"==b.form.autocomplete||-1!=a.a.A(g,\"propertychange\")||(a.a.B(b,\"propertychange\",function(){m=!0}),a.a.B(b,\"focus\",function(){m=!1}),a.a.B(b,\"blur\",function(){m&&l()}));a.a.D(g,function(c){var d=l;a.a.Ud(c,\"after\")&&\n(d=function(){k=a.w.M(b);a.a.setTimeout(l,0)},c=c.substring(5));a.a.B(b,c,d)});var p;p=f&&\"file\"==b.type?function(){var d=a.a.f(c());null===d||d===n||\"\"===d?b.value=\"\":a.u.G(l)}:function(){var f=a.a.f(c()),g=a.w.M(b);if(null!==k&&f===k)a.a.setTimeout(p,0);else if(f!==g||g===n)\"select\"===e?(g=d.get(\"valueAllowUnset\"),a.w.cb(b,f,g),g||f===a.w.M(b)||a.u.G(l)):a.w.cb(b,f)};if(\"select\"===e){var q;a.i.subscribe(b,a.i.H,function(){q?d.get(\"valueAllowUnset\")?p():l():(a.a.B(b,\"change\",l),q=a.o(p,null,{l:b}))},\nnull,{notifyImmediately:!0})}else a.a.B(b,\"change\",l),a.o(p,null,{l:b})}else a.ib(b,{checkedValue:c})},update:function(){}};a.m.wa.value=!0;a.c.visible={update:function(b,c){var d=a.a.f(c()),e=\"none\"!=b.style.display;d&&!e?b.style.display=\"\":!d&&e&&(b.style.display=\"none\")}};a.c.hidden={update:function(b,c){a.c.visible.update(b,function(){return!a.a.f(c())})}};(function(b){a.c[b]={init:function(c,d,e,f,g){return a.c.event.init.call(this,c,function(){var a={};a[b]=d();return a},e,f,g)}}})(\"click\");\na.ca=function(){};a.ca.prototype.renderTemplateSource=function(){throw Error(\"Override renderTemplateSource\");};a.ca.prototype.createJavaScriptEvaluatorBlock=function(){throw Error(\"Override createJavaScriptEvaluatorBlock\");};a.ca.prototype.makeTemplateSource=function(b,c){if(\"string\"==typeof b){c=c||w;var d=c.getElementById(b);if(!d)throw Error(\"Cannot find template with ID \"+b);return new a.C.F(d)}if(1==b.nodeType||8==b.nodeType)return new a.C.ia(b);throw Error(\"Unknown template type: \"+b);};a.ca.prototype.renderTemplate=\nfunction(a,c,d,e){a=this.makeTemplateSource(a,e);return this.renderTemplateSource(a,c,d,e)};a.ca.prototype.isTemplateRewritten=function(a,c){return!1===this.allowTemplateRewriting?!0:this.makeTemplateSource(a,c).data(\"isRewritten\")};a.ca.prototype.rewriteTemplate=function(a,c,d){a=this.makeTemplateSource(a,d);c=c(a.text());a.text(c);a.data(\"isRewritten\",!0)};a.b(\"templateEngine\",a.ca);a.kc=function(){function b(b,c,d,h){b=a.m.ac(b);for(var m=a.m.Ra,k=0;k]*))?)*\\s+)data-bind\\s*=\\s*([\"'])([\\s\\S]*?)\\3/gi,\nd=/\\x3c!--\\s*ko\\b\\s*([\\s\\S]*?)\\s*--\\x3e/g;return{xd:function(b,c,d){c.isTemplateRewritten(b,d)||c.rewriteTemplate(b,function(b){return a.kc.Ld(b,c)},d)},Ld:function(a,f){return a.replace(c,function(a,c,d,e,l){return b(l,c,d,f)}).replace(d,function(a,c){return b(c,\"\\x3c!-- ko --\\x3e\",\"#comment\",f)})},md:function(b,c){return a.aa.Xb(function(d,h){var m=d.nextSibling;m&&m.nodeName.toLowerCase()===c&&a.ib(m,b,h)})}}}();a.b(\"__tr_ambtns\",a.kc.md);(function(){a.C={};a.C.F=function(b){if(this.F=b){var c=\na.a.R(b);this.ab=\"script\"===c?1:\"textarea\"===c?2:\"template\"==c&&b.content&&11===b.content.nodeType?3:4}};a.C.F.prototype.text=function(){var b=1===this.ab?\"text\":2===this.ab?\"value\":\"innerHTML\";if(0==arguments.length)return this.F[b];var c=arguments[0];\"innerHTML\"===b?a.a.fc(this.F,c):this.F[b]=c};var b=a.a.g.Z()+\"_\";a.C.F.prototype.data=function(c){if(1===arguments.length)return a.a.g.get(this.F,b+c);a.a.g.set(this.F,b+c,arguments[1])};var c=a.a.g.Z();a.C.F.prototype.nodes=function(){var b=this.F;\nif(0==arguments.length){var e=a.a.g.get(b,c)||{},f=e.lb||(3===this.ab?b.content:4===this.ab?b:n);if(!f||e.jd){var g=this.text();g&&g!==e.bb&&(f=a.a.Md(g,b.ownerDocument),a.a.g.set(b,c,{lb:f,bb:g,jd:!0}))}return f}e=arguments[0];this.ab!==n&&this.text(\"\");a.a.g.set(b,c,{lb:e})};a.C.ia=function(a){this.F=a};a.C.ia.prototype=new a.C.F;a.C.ia.prototype.constructor=a.C.ia;a.C.ia.prototype.text=function(){if(0==arguments.length){var b=a.a.g.get(this.F,c)||{};b.bb===n&&b.lb&&(b.bb=b.lb.innerHTML);return b.bb}a.a.g.set(this.F,\nc,{bb:arguments[0]})};a.b(\"templateSources\",a.C);a.b(\"templateSources.domElement\",a.C.F);a.b(\"templateSources.anonymousTemplate\",a.C.ia)})();(function(){function b(b,c,d){var e;for(c=a.h.nextSibling(c);b&&(e=b)!==c;)b=a.h.nextSibling(e),d(e,b)}function c(c,d){if(c.length){var e=c[0],f=c[c.length-1],g=e.parentNode,h=a.ga.instance,m=h.preprocessNode;if(m){b(e,f,function(a,b){var c=a.previousSibling,d=m.call(h,a);d&&(a===e&&(e=d[0]||b),a===f&&(f=d[d.length-1]||c))});c.length=0;if(!e)return;e===f?c.push(e):\n(c.push(e,f),a.a.Ua(c,g))}b(e,f,function(b){1!==b.nodeType&&8!==b.nodeType||a.vc(d,b)});b(e,f,function(b){1!==b.nodeType&&8!==b.nodeType||a.aa.cd(b,[d])});a.a.Ua(c,g)}}function d(a){return a.nodeType?a:0a.a.W?0:b.nodes)?b.nodes():null)return a.a.la(c.cloneNode(!0).childNodes);b=b.text();return a.a.ua(b,e)};a.ba.Ma=new a.ba;a.gc(a.ba.Ma);a.b(\"nativeTemplateEngine\",a.ba);(function(){a.$a=function(){var a=this.Hd=function(){if(!v||!v.tmpl)return 0;try{if(0<=v.tmpl.tag.tmpl.open.toString().indexOf(\"__\"))return 2}catch(a){}return 1}();\nthis.renderTemplateSource=function(b,e,f,g){g=g||w;f=f||{};if(2>a)throw Error(\"Your version of jQuery.tmpl is too old. Please upgrade to jQuery.tmpl 1.0.0pre or later.\");var h=b.data(\"precompiled\");h||(h=b.text()||\"\",h=v.template(null,\"{{ko_with $item.koBindingContext}}\"+h+\"{{/ko_with}}\"),b.data(\"precompiled\",h));b=[e.$data];e=v.extend({koBindingContext:e},f.templateOptions);e=v.tmpl(h,b,e);e.appendTo(g.createElement(\"div\"));v.fragments={};return e};this.createJavaScriptEvaluatorBlock=function(a){return\"{{ko_code ((function() { return \"+\na+\" })()) }}\"};this.addTemplate=function(a,b){w.write(\"