{"version":3,"file":"vendor-265441bc.prod.bdaa77f08716ef5e8f3c.js","mappings":"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","sources":["webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/encode/Base64Decode.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/encode/Base64Encode.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/error/BrowserAuthError.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/error/BrowserConfigurationAuthError.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/event/EventHandler.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/event/EventMessage.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/event/EventType.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_handler/PopupHandler.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/PopupClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_handler/RedirectHandler.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/RedirectClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/SilentCacheClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_handler/SilentHandler.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/SilentIframeClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/SilentRefreshClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/BaseInteractionClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_client/StandardInteractionClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/interaction_handler/InteractionHandler.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/navigation/NavigationClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/network/FetchClient.js","webpack://landing-page/./.yarn/cache/@azure-msal-browser-npm-2.17.0-cea8a3288a-b9428cbca0.zip/node_modules/@azure/msal-browser/dist/network/XhrClient.js"],"sourcesContent":["/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { BrowserStringUtils } from '../utils/BrowserStringUtils.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * Class which exposes APIs to decode base64 strings to plaintext. See here for implementation details:\r\n * https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#Solution_2_%E2%80%93_JavaScript's_UTF-16_%3E_UTF-8_%3E_base64\r\n */\r\nvar Base64Decode = /** @class */ (function () {\r\n function Base64Decode() {\r\n }\r\n /**\r\n * Returns a URL-safe plaintext decoded string from b64 encoded input.\r\n * @param input\r\n */\r\n Base64Decode.prototype.decode = function (input) {\r\n var encodedString = input.replace(/-/g, \"+\").replace(/_/g, \"/\");\r\n switch (encodedString.length % 4) {\r\n case 0:\r\n break;\r\n case 2:\r\n encodedString += \"==\";\r\n break;\r\n case 3:\r\n encodedString += \"=\";\r\n break;\r\n default:\r\n throw new Error(\"Invalid base64 string\");\r\n }\r\n var inputUtf8Arr = this.base64DecToArr(encodedString);\r\n return BrowserStringUtils.utf8ArrToString(inputUtf8Arr);\r\n };\r\n /**\r\n * Decodes base64 into Uint8Array\r\n * @param base64String\r\n * @param nBlockSize\r\n */\r\n Base64Decode.prototype.base64DecToArr = function (base64String, nBlockSize) {\r\n var sB64Enc = base64String.replace(/[^A-Za-z0-9\\+\\/]/g, \"\");\r\n var nInLen = sB64Enc.length;\r\n var nOutLen = nBlockSize ? Math.ceil((nInLen * 3 + 1 >>> 2) / nBlockSize) * nBlockSize : nInLen * 3 + 1 >>> 2;\r\n var aBytes = new Uint8Array(nOutLen);\r\n for (var nMod3 = void 0, nMod4 = void 0, nUint24 = 0, nOutIdx = 0, nInIdx = 0; nInIdx < nInLen; nInIdx++) {\r\n nMod4 = nInIdx & 3;\r\n nUint24 |= this.b64ToUint6(sB64Enc.charCodeAt(nInIdx)) << 18 - 6 * nMod4;\r\n if (nMod4 === 3 || nInLen - nInIdx === 1) {\r\n for (nMod3 = 0; nMod3 < 3 && nOutIdx < nOutLen; nMod3++, nOutIdx++) {\r\n aBytes[nOutIdx] = nUint24 >>> (16 >>> nMod3 & 24) & 255;\r\n }\r\n nUint24 = 0;\r\n }\r\n }\r\n return aBytes;\r\n };\r\n /**\r\n * Base64 string to array decoding helper\r\n * @param charNum\r\n */\r\n Base64Decode.prototype.b64ToUint6 = function (charNum) {\r\n return charNum > 64 && charNum < 91 ?\r\n charNum - 65\r\n : charNum > 96 && charNum < 123 ?\r\n charNum - 71\r\n : charNum > 47 && charNum < 58 ?\r\n charNum + 4\r\n : charNum === 43 ?\r\n 62\r\n : charNum === 47 ?\r\n 63\r\n :\r\n 0;\r\n };\r\n return Base64Decode;\r\n}());\n\nexport { Base64Decode };\n//# sourceMappingURL=Base64Decode.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { BrowserStringUtils } from '../utils/BrowserStringUtils.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * Class which exposes APIs to encode plaintext to base64 encoded string. See here for implementation details:\r\n * https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#Solution_2_%E2%80%93_JavaScript's_UTF-16_%3E_UTF-8_%3E_base64\r\n */\r\nvar Base64Encode = /** @class */ (function () {\r\n function Base64Encode() {\r\n }\r\n /**\r\n * Returns URL Safe b64 encoded string from a plaintext string.\r\n * @param input\r\n */\r\n Base64Encode.prototype.urlEncode = function (input) {\r\n return encodeURIComponent(this.encode(input)\r\n .replace(/=/g, \"\")\r\n .replace(/\\+/g, \"-\")\r\n .replace(/\\//g, \"_\"));\r\n };\r\n /**\r\n * Returns URL Safe b64 encoded string from an int8Array.\r\n * @param inputArr\r\n */\r\n Base64Encode.prototype.urlEncodeArr = function (inputArr) {\r\n return this.base64EncArr(inputArr)\r\n .replace(/=/g, \"\")\r\n .replace(/\\+/g, \"-\")\r\n .replace(/\\//g, \"_\");\r\n };\r\n /**\r\n * Returns b64 encoded string from plaintext string.\r\n * @param input\r\n */\r\n Base64Encode.prototype.encode = function (input) {\r\n var inputUtf8Arr = BrowserStringUtils.stringToUtf8Arr(input);\r\n return this.base64EncArr(inputUtf8Arr);\r\n };\r\n /**\r\n * Base64 encode byte array\r\n * @param aBytes\r\n */\r\n Base64Encode.prototype.base64EncArr = function (aBytes) {\r\n var eqLen = (3 - (aBytes.length % 3)) % 3;\r\n var sB64Enc = \"\";\r\n for (var nMod3 = void 0, nLen = aBytes.length, nUint24 = 0, nIdx = 0; nIdx < nLen; nIdx++) {\r\n nMod3 = nIdx % 3;\r\n /* Uncomment the following line in order to split the output in lines 76-character long: */\r\n /*\r\n *if (nIdx > 0 && (nIdx * 4 / 3) % 76 === 0) { sB64Enc += \"\\r\\n\"; }\r\n */\r\n nUint24 |= aBytes[nIdx] << (16 >>> nMod3 & 24);\r\n if (nMod3 === 2 || aBytes.length - nIdx === 1) {\r\n sB64Enc += String.fromCharCode(this.uint6ToB64(nUint24 >>> 18 & 63), this.uint6ToB64(nUint24 >>> 12 & 63), this.uint6ToB64(nUint24 >>> 6 & 63), this.uint6ToB64(nUint24 & 63));\r\n nUint24 = 0;\r\n }\r\n }\r\n return eqLen === 0 ? sB64Enc : sB64Enc.substring(0, sB64Enc.length - eqLen) + (eqLen === 1 ? \"=\" : \"==\");\r\n };\r\n /**\r\n * Base64 string to array encoding helper\r\n * @param nUint6\r\n */\r\n Base64Encode.prototype.uint6ToB64 = function (nUint6) {\r\n return nUint6 < 26 ?\r\n nUint6 + 65\r\n : nUint6 < 52 ?\r\n nUint6 + 71\r\n : nUint6 < 62 ?\r\n nUint6 - 4\r\n : nUint6 === 62 ?\r\n 43\r\n : nUint6 === 63 ?\r\n 47\r\n :\r\n 65;\r\n };\r\n return Base64Encode;\r\n}());\n\nexport { Base64Encode };\n//# sourceMappingURL=Base64Encode.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends } from '../_virtual/_tslib.js';\nimport { StringUtils, AuthError } from '@azure/msal-common';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * BrowserAuthErrorMessage class containing string constants used by error codes and messages.\r\n */\r\nvar BrowserAuthErrorMessage = {\r\n pkceNotGenerated: {\r\n code: \"pkce_not_created\",\r\n desc: \"The PKCE code challenge and verifier could not be generated.\"\r\n },\r\n cryptoDoesNotExist: {\r\n code: \"crypto_nonexistent\",\r\n desc: \"The crypto object or function is not available.\"\r\n },\r\n httpMethodNotImplementedError: {\r\n code: \"http_method_not_implemented\",\r\n desc: \"The HTTP method given has not been implemented in this library.\"\r\n },\r\n emptyNavigateUriError: {\r\n code: \"empty_navigate_uri\",\r\n desc: \"Navigation URI is empty. Please check stack trace for more info.\"\r\n },\r\n hashEmptyError: {\r\n code: \"hash_empty_error\",\r\n desc: \"Hash value cannot be processed because it is empty. Please verify that your redirectUri is not clearing the hash.\"\r\n },\r\n hashDoesNotContainStateError: {\r\n code: \"no_state_in_hash\",\r\n desc: \"Hash does not contain state. Please verify that the request originated from msal.\"\r\n },\r\n hashDoesNotContainKnownPropertiesError: {\r\n code: \"hash_does_not_contain_known_properties\",\r\n desc: \"Hash does not contain known properites. Please verify that your redirectUri is not changing the hash.\"\r\n },\r\n unableToParseStateError: {\r\n code: \"unable_to_parse_state\",\r\n desc: \"Unable to parse state. Please verify that the request originated from msal.\"\r\n },\r\n stateInteractionTypeMismatchError: {\r\n code: \"state_interaction_type_mismatch\",\r\n desc: \"Hash contains state but the interaction type does not match the caller.\"\r\n },\r\n interactionInProgress: {\r\n code: \"interaction_in_progress\",\r\n desc: \"Interaction is currently in progress. Please ensure that this interaction has been completed before calling an interactive API. For more visit: aka.ms/msaljs/browser-errors.\"\r\n },\r\n popupWindowError: {\r\n code: \"popup_window_error\",\r\n desc: \"Error opening popup window. This can happen if you are using IE or if popups are blocked in the browser.\"\r\n },\r\n emptyWindowError: {\r\n code: \"empty_window_error\",\r\n desc: \"window.open returned null or undefined window object.\"\r\n },\r\n userCancelledError: {\r\n code: \"user_cancelled\",\r\n desc: \"User cancelled the flow.\"\r\n },\r\n monitorPopupTimeoutError: {\r\n code: \"monitor_window_timeout\",\r\n desc: \"Token acquisition in popup failed due to timeout. For more visit: aka.ms/msaljs/browser-errors.\"\r\n },\r\n monitorIframeTimeoutError: {\r\n code: \"monitor_window_timeout\",\r\n desc: \"Token acquisition in iframe failed due to timeout. For more visit: aka.ms/msaljs/browser-errors.\"\r\n },\r\n redirectInIframeError: {\r\n code: \"redirect_in_iframe\",\r\n desc: \"Code flow is not supported inside an iframe. Please ensure you are using MSAL.js in a top frame of the window if using the redirect APIs, or use the popup APIs.\"\r\n },\r\n blockTokenRequestsInHiddenIframeError: {\r\n code: \"block_iframe_reload\",\r\n desc: \"Request was blocked inside an iframe because MSAL detected an authentication response. For more visit: aka.ms/msaljs/browser-errors\"\r\n },\r\n blockAcquireTokenInPopupsError: {\r\n code: \"block_nested_popups\",\r\n desc: \"Request was blocked inside a popup because MSAL detected it was running in a popup.\"\r\n },\r\n iframeClosedPrematurelyError: {\r\n code: \"iframe_closed_prematurely\",\r\n desc: \"The iframe being monitored was closed prematurely.\"\r\n },\r\n silentSSOInsufficientInfoError: {\r\n code: \"silent_sso_error\",\r\n desc: \"Silent SSO could not be completed - insufficient information was provided. Please provide either a loginHint or sid.\"\r\n },\r\n silentLogoutUnsupportedError: {\r\n code: \"silent_logout_unsupported\",\r\n desc: \"Silent logout not supported. Please call logoutRedirect or logoutPopup instead.\"\r\n },\r\n noAccountError: {\r\n code: \"no_account_error\",\r\n desc: \"No account object provided to acquireTokenSilent and no active account has been set. Please call setActiveAccount or provide an account on the request.\"\r\n },\r\n silentPromptValueError: {\r\n code: \"silent_prompt_value_error\",\r\n desc: \"The value given for the prompt value is not valid for silent requests - must be set to 'none'.\"\r\n },\r\n noTokenRequestCacheError: {\r\n code: \"no_token_request_cache_error\",\r\n desc: \"No token request in found in cache.\"\r\n },\r\n unableToParseTokenRequestCacheError: {\r\n code: \"unable_to_parse_token_request_cache_error\",\r\n desc: \"The cached token request could not be parsed.\"\r\n },\r\n noCachedAuthorityError: {\r\n code: \"no_cached_authority_error\",\r\n desc: \"No cached authority found.\"\r\n },\r\n authRequestNotSet: {\r\n code: \"auth_request_not_set_error\",\r\n desc: \"Auth Request not set. Please ensure initiateAuthRequest was called from the InteractionHandler\"\r\n },\r\n invalidCacheType: {\r\n code: \"invalid_cache_type\",\r\n desc: \"Invalid cache type\"\r\n },\r\n notInBrowserEnvironment: {\r\n code: \"non_browser_environment\",\r\n desc: \"Login and token requests are not supported in non-browser environments.\"\r\n },\r\n databaseNotOpen: {\r\n code: \"database_not_open\",\r\n desc: \"Database is not open!\"\r\n },\r\n noNetworkConnectivity: {\r\n code: \"no_network_connectivity\",\r\n desc: \"No network connectivity. Check your internet connection.\"\r\n },\r\n postRequestFailed: {\r\n code: \"post_request_failed\",\r\n desc: \"Network request failed: If the browser threw a CORS error, check that the redirectUri is registered in the Azure App Portal as type 'SPA'\"\r\n },\r\n getRequestFailed: {\r\n code: \"get_request_failed\",\r\n desc: \"Network request failed. Please check the network trace to determine root cause.\"\r\n },\r\n failedToParseNetworkResponse: {\r\n code: \"failed_to_parse_response\",\r\n desc: \"Failed to parse network response. Check network trace.\"\r\n },\r\n unableToLoadTokenError: {\r\n code: \"unable_to_load_token\",\r\n desc: \"Error loading token to cache.\"\r\n },\r\n signingKeyNotFoundInStorage: {\r\n code: \"crypto_key_not_found\",\r\n desc: \"Cryptographic Key or Keypair not found in browser storage.\"\r\n }\r\n};\r\n/**\r\n * Browser library error class thrown by the MSAL.js library for SPAs\r\n */\r\nvar BrowserAuthError = /** @class */ (function (_super) {\r\n __extends(BrowserAuthError, _super);\r\n function BrowserAuthError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorCode, errorMessage) || this;\r\n Object.setPrototypeOf(_this, BrowserAuthError.prototype);\r\n _this.name = \"BrowserAuthError\";\r\n return _this;\r\n }\r\n /**\r\n * Creates an error thrown when PKCE is not implemented.\r\n * @param errDetail\r\n */\r\n BrowserAuthError.createPkceNotGeneratedError = function (errDetail) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.pkceNotGenerated.code, BrowserAuthErrorMessage.pkceNotGenerated.desc + \" Detail:\" + errDetail);\r\n };\r\n /**\r\n * Creates an error thrown when the crypto object is unavailable.\r\n * @param errDetail\r\n */\r\n BrowserAuthError.createCryptoNotAvailableError = function (errDetail) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.cryptoDoesNotExist.code, BrowserAuthErrorMessage.cryptoDoesNotExist.desc + \" Detail:\" + errDetail);\r\n };\r\n /**\r\n * Creates an error thrown when an HTTP method hasn't been implemented by the browser class.\r\n * @param method\r\n */\r\n BrowserAuthError.createHttpMethodNotImplementedError = function (method) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.httpMethodNotImplementedError.code, BrowserAuthErrorMessage.httpMethodNotImplementedError.desc + \" Given Method: \" + method);\r\n };\r\n /**\r\n * Creates an error thrown when the navigation URI is empty.\r\n */\r\n BrowserAuthError.createEmptyNavigationUriError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.emptyNavigateUriError.code, BrowserAuthErrorMessage.emptyNavigateUriError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the hash string value is unexpectedly empty.\r\n * @param hashValue\r\n */\r\n BrowserAuthError.createEmptyHashError = function (hashValue) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.hashEmptyError.code, BrowserAuthErrorMessage.hashEmptyError.desc + \" Given Url: \" + hashValue);\r\n };\r\n /**\r\n * Creates an error thrown when the hash string value is unexpectedly empty.\r\n */\r\n BrowserAuthError.createHashDoesNotContainStateError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.hashDoesNotContainStateError.code, BrowserAuthErrorMessage.hashDoesNotContainStateError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the hash string value does not contain known properties\r\n */\r\n BrowserAuthError.createHashDoesNotContainKnownPropertiesError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.hashDoesNotContainKnownPropertiesError.code, BrowserAuthErrorMessage.hashDoesNotContainKnownPropertiesError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the hash string value is unexpectedly empty.\r\n */\r\n BrowserAuthError.createUnableToParseStateError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.unableToParseStateError.code, BrowserAuthErrorMessage.unableToParseStateError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the state value in the hash does not match the interaction type of the API attempting to consume it.\r\n */\r\n BrowserAuthError.createStateInteractionTypeMismatchError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.stateInteractionTypeMismatchError.code, BrowserAuthErrorMessage.stateInteractionTypeMismatchError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when a browser interaction (redirect or popup) is in progress.\r\n */\r\n BrowserAuthError.createInteractionInProgressError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.interactionInProgress.code, BrowserAuthErrorMessage.interactionInProgress.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the popup window could not be opened.\r\n * @param errDetail\r\n */\r\n BrowserAuthError.createPopupWindowError = function (errDetail) {\r\n var errorMessage = BrowserAuthErrorMessage.popupWindowError.desc;\r\n errorMessage = !StringUtils.isEmpty(errDetail) ? errorMessage + \" Details: \" + errDetail : errorMessage;\r\n return new BrowserAuthError(BrowserAuthErrorMessage.popupWindowError.code, errorMessage);\r\n };\r\n /**\r\n * Creates an error thrown when window.open returns an empty window object.\r\n * @param errDetail\r\n */\r\n BrowserAuthError.createEmptyWindowCreatedError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.emptyWindowError.code, BrowserAuthErrorMessage.emptyWindowError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the user closes a popup.\r\n */\r\n BrowserAuthError.createUserCancelledError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.userCancelledError.code, BrowserAuthErrorMessage.userCancelledError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when monitorPopupFromHash times out for a given popup.\r\n */\r\n BrowserAuthError.createMonitorPopupTimeoutError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.monitorPopupTimeoutError.code, BrowserAuthErrorMessage.monitorPopupTimeoutError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when monitorIframeFromHash times out for a given iframe.\r\n */\r\n BrowserAuthError.createMonitorIframeTimeoutError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.monitorIframeTimeoutError.code, BrowserAuthErrorMessage.monitorIframeTimeoutError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when navigateWindow is called inside an iframe.\r\n * @param windowParentCheck\r\n */\r\n BrowserAuthError.createRedirectInIframeError = function (windowParentCheck) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.redirectInIframeError.code, BrowserAuthErrorMessage.redirectInIframeError.desc + \" (window.parent !== window) => \" + windowParentCheck);\r\n };\r\n /**\r\n * Creates an error thrown when an auth reload is done inside an iframe.\r\n */\r\n BrowserAuthError.createBlockReloadInHiddenIframeError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.blockTokenRequestsInHiddenIframeError.code, BrowserAuthErrorMessage.blockTokenRequestsInHiddenIframeError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when a popup attempts to call an acquireToken API\r\n * @returns\r\n */\r\n BrowserAuthError.createBlockAcquireTokenInPopupsError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.blockAcquireTokenInPopupsError.code, BrowserAuthErrorMessage.blockAcquireTokenInPopupsError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when an iframe is found to be closed before the timeout is reached.\r\n */\r\n BrowserAuthError.createIframeClosedPrematurelyError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.iframeClosedPrematurelyError.code, BrowserAuthErrorMessage.iframeClosedPrematurelyError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the login_hint, sid or account object is not provided in the ssoSilent API.\r\n */\r\n BrowserAuthError.createSilentSSOInsufficientInfoError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.silentSSOInsufficientInfoError.code, BrowserAuthErrorMessage.silentSSOInsufficientInfoError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the logout API is called on any of the silent interaction clients\r\n */\r\n BrowserAuthError.createSilentLogoutUnsupportedError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.silentLogoutUnsupportedError.code, BrowserAuthErrorMessage.silentLogoutUnsupportedError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the account object is not provided in the acquireTokenSilent API.\r\n */\r\n BrowserAuthError.createNoAccountError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.noAccountError.code, BrowserAuthErrorMessage.noAccountError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when a given prompt value is invalid for silent requests.\r\n */\r\n BrowserAuthError.createSilentPromptValueError = function (givenPrompt) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.silentPromptValueError.code, BrowserAuthErrorMessage.silentPromptValueError.desc + \" Given value: \" + givenPrompt);\r\n };\r\n /**\r\n * Creates an error thrown when the cached token request could not be retrieved from the cache\r\n */\r\n BrowserAuthError.createUnableToParseTokenRequestCacheError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.unableToParseTokenRequestCacheError.code, BrowserAuthErrorMessage.unableToParseTokenRequestCacheError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the token request could not be retrieved from the cache\r\n */\r\n BrowserAuthError.createNoTokenRequestCacheError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.noTokenRequestCacheError.code, BrowserAuthErrorMessage.noTokenRequestCacheError.desc);\r\n };\r\n /**\r\n * Creates an error thrown when handleCodeResponse is called before initiateAuthRequest (InteractionHandler)\r\n */\r\n BrowserAuthError.createAuthRequestNotSetError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.authRequestNotSet.code, BrowserAuthErrorMessage.authRequestNotSet.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the authority could not be retrieved from the cache\r\n */\r\n BrowserAuthError.createNoCachedAuthorityError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.noCachedAuthorityError.code, BrowserAuthErrorMessage.noCachedAuthorityError.desc);\r\n };\r\n /**\r\n * Creates an error thrown if cache type is invalid.\r\n */\r\n BrowserAuthError.createInvalidCacheTypeError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.invalidCacheType.code, \"\" + BrowserAuthErrorMessage.invalidCacheType.desc);\r\n };\r\n /**\r\n * Create an error thrown when login and token requests are made from a non-browser environment\r\n */\r\n BrowserAuthError.createNonBrowserEnvironmentError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.notInBrowserEnvironment.code, BrowserAuthErrorMessage.notInBrowserEnvironment.desc);\r\n };\r\n /**\r\n * Create an error thrown when indexDB database is not open\r\n */\r\n BrowserAuthError.createDatabaseNotOpenError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.databaseNotOpen.code, BrowserAuthErrorMessage.databaseNotOpen.desc);\r\n };\r\n /**\r\n * Create an error thrown when token fetch fails due to no internet\r\n */\r\n BrowserAuthError.createNoNetworkConnectivityError = function () {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.noNetworkConnectivity.code, BrowserAuthErrorMessage.noNetworkConnectivity.desc);\r\n };\r\n /**\r\n * Create an error thrown when token fetch fails due to reasons other than internet connectivity\r\n */\r\n BrowserAuthError.createPostRequestFailedError = function (errorDesc, endpoint) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.postRequestFailed.code, BrowserAuthErrorMessage.postRequestFailed.desc + \" | Network client threw: \" + errorDesc + \" | Attempted to reach: \" + endpoint.split(\"?\")[0]);\r\n };\r\n /**\r\n * Create an error thrown when get request fails due to reasons other than internet connectivity\r\n */\r\n BrowserAuthError.createGetRequestFailedError = function (errorDesc, endpoint) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.getRequestFailed.code, BrowserAuthErrorMessage.getRequestFailed.desc + \" | Network client threw: \" + errorDesc + \" | Attempted to reach: \" + endpoint.split(\"?\")[0]);\r\n };\r\n /**\r\n * Create an error thrown when network client fails to parse network response\r\n */\r\n BrowserAuthError.createFailedToParseNetworkResponseError = function (endpoint) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.failedToParseNetworkResponse.code, BrowserAuthErrorMessage.failedToParseNetworkResponse.desc + \" | Attempted to reach: \" + endpoint.split(\"?\")[0]);\r\n };\r\n /**\r\n * Create an error thrown when the necessary information is not available to sideload tokens\r\n */\r\n BrowserAuthError.createUnableToLoadTokenError = function (errorDetail) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.unableToLoadTokenError.code, BrowserAuthErrorMessage.unableToLoadTokenError.desc + \" | \" + errorDetail);\r\n };\r\n /**\r\n * Create an error thrown when the queried cryptographic key is not found in IndexedDB\r\n */\r\n BrowserAuthError.createSigningKeyNotFoundInStorageError = function (keyId) {\r\n return new BrowserAuthError(BrowserAuthErrorMessage.signingKeyNotFoundInStorage.code, BrowserAuthErrorMessage.signingKeyNotFoundInStorage.desc + \" | No match found for KeyId: \" + keyId);\r\n };\r\n return BrowserAuthError;\r\n}(AuthError));\n\nexport { BrowserAuthError, BrowserAuthErrorMessage };\n//# sourceMappingURL=BrowserAuthError.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends } from '../_virtual/_tslib.js';\nimport { AuthError } from '@azure/msal-common';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * BrowserAuthErrorMessage class containing string constants used by error codes and messages.\r\n */\r\nvar BrowserConfigurationAuthErrorMessage = {\r\n redirectUriNotSet: {\r\n code: \"redirect_uri_empty\",\r\n desc: \"A redirect URI is required for all calls, and none has been set.\"\r\n },\r\n postLogoutUriNotSet: {\r\n code: \"post_logout_uri_empty\",\r\n desc: \"A post logout redirect has not been set.\"\r\n },\r\n storageNotSupportedError: {\r\n code: \"storage_not_supported\",\r\n desc: \"Given storage configuration option was not supported.\"\r\n },\r\n noRedirectCallbacksSet: {\r\n code: \"no_redirect_callbacks\",\r\n desc: \"No redirect callbacks have been set. Please call setRedirectCallbacks() with the appropriate function arguments before continuing. \" +\r\n \"More information is available here: https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/MSAL-basics.\"\r\n },\r\n invalidCallbackObject: {\r\n code: \"invalid_callback_object\",\r\n desc: \"The object passed for the callback was invalid. \" +\r\n \"More information is available here: https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/MSAL-basics.\"\r\n },\r\n stubPcaInstanceCalled: {\r\n code: \"stubbed_public_client_application_called\",\r\n desc: \"Stub instance of Public Client Application was called. If using msal-react, please ensure context is not used without a provider. For more visit: aka.ms/msaljs/browser-errors\"\r\n },\r\n inMemRedirectUnavailable: {\r\n code: \"in_mem_redirect_unavailable\",\r\n desc: \"Redirect cannot be supported. In-memory storage was selected and storeAuthStateInCookie=false, which would cause the library to be unable to handle the incoming hash. If you would like to use the redirect API, please use session/localStorage or set storeAuthStateInCookie=true.\"\r\n }\r\n};\r\n/**\r\n * Browser library error class thrown by the MSAL.js library for SPAs\r\n */\r\nvar BrowserConfigurationAuthError = /** @class */ (function (_super) {\r\n __extends(BrowserConfigurationAuthError, _super);\r\n function BrowserConfigurationAuthError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorCode, errorMessage) || this;\r\n _this.name = \"BrowserConfigurationAuthError\";\r\n Object.setPrototypeOf(_this, BrowserConfigurationAuthError.prototype);\r\n return _this;\r\n }\r\n /**\r\n * Creates an error thrown when the redirect uri is empty (not set by caller)\r\n */\r\n BrowserConfigurationAuthError.createRedirectUriEmptyError = function () {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.redirectUriNotSet.code, BrowserConfigurationAuthErrorMessage.redirectUriNotSet.desc);\r\n };\r\n /**\r\n * Creates an error thrown when the post-logout redirect uri is empty (not set by caller)\r\n */\r\n BrowserConfigurationAuthError.createPostLogoutRedirectUriEmptyError = function () {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.postLogoutUriNotSet.code, BrowserConfigurationAuthErrorMessage.postLogoutUriNotSet.desc);\r\n };\r\n /**\r\n * Creates error thrown when given storage location is not supported.\r\n * @param givenStorageLocation\r\n */\r\n BrowserConfigurationAuthError.createStorageNotSupportedError = function (givenStorageLocation) {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.storageNotSupportedError.code, BrowserConfigurationAuthErrorMessage.storageNotSupportedError.desc + \" Given Location: \" + givenStorageLocation);\r\n };\r\n /**\r\n * Creates error thrown when redirect callbacks are not set before calling loginRedirect() or acquireTokenRedirect().\r\n */\r\n BrowserConfigurationAuthError.createRedirectCallbacksNotSetError = function () {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.noRedirectCallbacksSet.code, BrowserConfigurationAuthErrorMessage.noRedirectCallbacksSet.desc);\r\n };\r\n /**\r\n * Creates error thrown when the stub instance of PublicClientApplication is called.\r\n */\r\n BrowserConfigurationAuthError.createStubPcaInstanceCalledError = function () {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.stubPcaInstanceCalled.code, BrowserConfigurationAuthErrorMessage.stubPcaInstanceCalled.desc);\r\n };\r\n /*\r\n * Create an error thrown when in-memory storage is used and storeAuthStateInCookie=false.\r\n */\r\n BrowserConfigurationAuthError.createInMemoryRedirectUnavailableError = function () {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.inMemRedirectUnavailable.code, BrowserConfigurationAuthErrorMessage.inMemRedirectUnavailable.desc);\r\n };\r\n return BrowserConfigurationAuthError;\r\n}(AuthError));\n\nexport { BrowserConfigurationAuthError, BrowserConfigurationAuthErrorMessage };\n//# sourceMappingURL=BrowserConfigurationAuthError.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar EventHandler = /** @class */ (function () {\r\n function EventHandler(logger, browserCrypto) {\r\n this.eventCallbacks = new Map();\r\n this.logger = logger;\r\n this.browserCrypto = browserCrypto;\r\n }\r\n /**\r\n * Adds event callbacks to array\r\n * @param callback\r\n */\r\n EventHandler.prototype.addEventCallback = function (callback) {\r\n if (typeof window !== \"undefined\") {\r\n var callbackId = this.browserCrypto.createNewGuid();\r\n this.eventCallbacks.set(callbackId, callback);\r\n this.logger.verbose(\"Event callback registered with id: \" + callbackId);\r\n return callbackId;\r\n }\r\n return null;\r\n };\r\n /**\r\n * Removes callback with provided id from callback array\r\n * @param callbackId\r\n */\r\n EventHandler.prototype.removeEventCallback = function (callbackId) {\r\n this.eventCallbacks.delete(callbackId);\r\n this.logger.verbose(\"Event callback \" + callbackId + \" removed.\");\r\n };\r\n /**\r\n * Emits events by calling callback with event message\r\n * @param eventType\r\n * @param interactionType\r\n * @param payload\r\n * @param error\r\n */\r\n EventHandler.prototype.emitEvent = function (eventType, interactionType, payload, error) {\r\n var _this = this;\r\n if (typeof window !== \"undefined\") {\r\n var message_1 = {\r\n eventType: eventType,\r\n interactionType: interactionType || null,\r\n payload: payload || null,\r\n error: error || null,\r\n timestamp: Date.now()\r\n };\r\n this.logger.info(\"Emitting event: \" + eventType);\r\n this.eventCallbacks.forEach(function (callback, callbackId) {\r\n _this.logger.verbose(\"Emitting event to callback \" + callbackId + \": \" + eventType);\r\n callback.apply(null, [message_1]);\r\n });\r\n }\r\n };\r\n return EventHandler;\r\n}());\n\nexport { EventHandler };\n//# sourceMappingURL=EventHandler.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { EventType } from './EventType.js';\nimport { InteractionType, InteractionStatus } from '../utils/BrowserConstants.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar EventMessageUtils = /** @class */ (function () {\r\n function EventMessageUtils() {\r\n }\r\n /**\r\n * Gets interaction status from event message\r\n * @param message\r\n * @param currentStatus\r\n */\r\n EventMessageUtils.getInteractionStatusFromEvent = function (message, currentStatus) {\r\n switch (message.eventType) {\r\n case EventType.LOGIN_START:\r\n return InteractionStatus.Login;\r\n case EventType.SSO_SILENT_START:\r\n return InteractionStatus.SsoSilent;\r\n case EventType.ACQUIRE_TOKEN_START:\r\n if (message.interactionType === InteractionType.Redirect || message.interactionType === InteractionType.Popup) {\r\n return InteractionStatus.AcquireToken;\r\n }\r\n break;\r\n case EventType.HANDLE_REDIRECT_START:\r\n return InteractionStatus.HandleRedirect;\r\n case EventType.LOGOUT_START:\r\n return InteractionStatus.Logout;\r\n case EventType.SSO_SILENT_SUCCESS:\r\n case EventType.SSO_SILENT_FAILURE:\r\n if (currentStatus && currentStatus !== InteractionStatus.SsoSilent) {\r\n // Prevent this event from clearing any status other than ssoSilent\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n case EventType.LOGOUT_END:\r\n if (currentStatus && currentStatus !== InteractionStatus.Logout) {\r\n // Prevent this event from clearing any status other than logout\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n case EventType.HANDLE_REDIRECT_END:\r\n if (currentStatus && currentStatus !== InteractionStatus.HandleRedirect) {\r\n // Prevent this event from clearing any status other than handleRedirect\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n case EventType.LOGIN_SUCCESS:\r\n case EventType.LOGIN_FAILURE:\r\n case EventType.ACQUIRE_TOKEN_SUCCESS:\r\n case EventType.ACQUIRE_TOKEN_FAILURE:\r\n if (message.interactionType === InteractionType.Redirect || message.interactionType === InteractionType.Popup) {\r\n if (currentStatus && currentStatus !== InteractionStatus.Login && currentStatus !== InteractionStatus.AcquireToken) {\r\n // Prevent this event from clearing any status other than login or acquireToken\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n }\r\n break;\r\n }\r\n return null;\r\n };\r\n return EventMessageUtils;\r\n}());\n\nexport { EventMessageUtils };\n//# sourceMappingURL=EventMessage.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar EventType;\r\n(function (EventType) {\r\n EventType[\"LOGIN_START\"] = \"msal:loginStart\";\r\n EventType[\"LOGIN_SUCCESS\"] = \"msal:loginSuccess\";\r\n EventType[\"LOGIN_FAILURE\"] = \"msal:loginFailure\";\r\n EventType[\"ACQUIRE_TOKEN_START\"] = \"msal:acquireTokenStart\";\r\n EventType[\"ACQUIRE_TOKEN_SUCCESS\"] = \"msal:acquireTokenSuccess\";\r\n EventType[\"ACQUIRE_TOKEN_FAILURE\"] = \"msal:acquireTokenFailure\";\r\n EventType[\"ACQUIRE_TOKEN_NETWORK_START\"] = \"msal:acquireTokenFromNetworkStart\";\r\n EventType[\"SSO_SILENT_START\"] = \"msal:ssoSilentStart\";\r\n EventType[\"SSO_SILENT_SUCCESS\"] = \"msal:ssoSilentSuccess\";\r\n EventType[\"SSO_SILENT_FAILURE\"] = \"msal:ssoSilentFailure\";\r\n EventType[\"HANDLE_REDIRECT_START\"] = \"msal:handleRedirectStart\";\r\n EventType[\"HANDLE_REDIRECT_END\"] = \"msal:handleRedirectEnd\";\r\n EventType[\"POPUP_OPENED\"] = \"msal:popupOpened\";\r\n EventType[\"LOGOUT_START\"] = \"msal:logoutStart\";\r\n EventType[\"LOGOUT_SUCCESS\"] = \"msal:logoutSuccess\";\r\n EventType[\"LOGOUT_FAILURE\"] = \"msal:logoutFailure\";\r\n EventType[\"LOGOUT_END\"] = \"msal:logoutEnd\";\r\n})(EventType || (EventType = {}));\n\nexport { EventType };\n//# sourceMappingURL=EventType.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends } from '../_virtual/_tslib.js';\nimport { StringUtils, UrlString } from '@azure/msal-common';\nimport { InteractionHandler } from './InteractionHandler.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { PopupUtils } from '../utils/PopupUtils.js';\nimport { BrowserUtils } from '../utils/BrowserUtils.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * This class implements the interaction handler base class for browsers. It is written specifically for handling\r\n * popup window scenarios. It includes functions for monitoring the popup window for a hash.\r\n */\r\nvar PopupHandler = /** @class */ (function (_super) {\r\n __extends(PopupHandler, _super);\r\n function PopupHandler(authCodeModule, storageImpl, authCodeRequest, browserRequestLogger) {\r\n var _this = _super.call(this, authCodeModule, storageImpl, authCodeRequest, browserRequestLogger) || this;\r\n // Properly sets this reference for the unload event.\r\n _this.popupUtils = new PopupUtils(storageImpl, browserRequestLogger);\r\n return _this;\r\n }\r\n /**\r\n * Opens a popup window with given request Url.\r\n * @param requestUrl\r\n */\r\n PopupHandler.prototype.initiateAuthRequest = function (requestUrl, params) {\r\n // Check that request url is not empty.\r\n if (!StringUtils.isEmpty(requestUrl)) {\r\n // Set interaction status in the library.\r\n this.browserStorage.setInteractionInProgress(true);\r\n this.browserRequestLogger.infoPii(\"Navigate to: \" + requestUrl);\r\n // Open the popup window to requestUrl.\r\n return this.popupUtils.openPopup(requestUrl, params);\r\n }\r\n else {\r\n // Throw error if request URL is empty.\r\n this.browserRequestLogger.error(\"Navigate url is empty\");\r\n throw BrowserAuthError.createEmptyNavigationUriError();\r\n }\r\n };\r\n /**\r\n * Monitors a window until it loads a url with a known hash, or hits a specified timeout.\r\n * @param popupWindow - window that is being monitored\r\n * @param timeout - milliseconds until timeout\r\n */\r\n PopupHandler.prototype.monitorPopupForHash = function (popupWindow) {\r\n var _this = this;\r\n return this.popupUtils.monitorPopupForSameOrigin(popupWindow).then(function () {\r\n var contentHash = popupWindow.location.hash;\r\n BrowserUtils.clearHash(popupWindow);\r\n _this.popupUtils.cleanPopup(popupWindow);\r\n if (!contentHash) {\r\n throw BrowserAuthError.createEmptyHashError(popupWindow.location.href);\r\n }\r\n if (UrlString.hashContainsKnownProperties(contentHash)) {\r\n return contentHash;\r\n }\r\n else {\r\n throw BrowserAuthError.createHashDoesNotContainKnownPropertiesError();\r\n }\r\n });\r\n };\r\n return PopupHandler;\r\n}(InteractionHandler));\n\nexport { PopupHandler };\n//# sourceMappingURL=PopupHandler.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { AuthError, ThrottlingUtils, UrlString } from '@azure/msal-common';\nimport { StandardInteractionClient } from './StandardInteractionClient.js';\nimport { PopupUtils } from '../utils/PopupUtils.js';\nimport { EventType } from '../event/EventType.js';\nimport { InteractionType, ApiId } from '../utils/BrowserConstants.js';\nimport { PopupHandler } from '../interaction_handler/PopupHandler.js';\nimport { BrowserUtils } from '../utils/BrowserUtils.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar PopupClient = /** @class */ (function (_super) {\r\n __extends(PopupClient, _super);\r\n function PopupClient() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Acquires tokens by opening a popup window to the /authorize endpoint of the authority\r\n * @param request\r\n */\r\n PopupClient.prototype.acquireToken = function (request) {\r\n try {\r\n var validRequest = this.preflightInteractiveRequest(request, InteractionType.Popup);\r\n var popupName = PopupUtils.generatePopupName(this.config.auth.clientId, validRequest);\r\n var popupWindowAttributes = request.popupWindowAttributes || {};\r\n // asyncPopups flag is true. Acquires token without first opening popup. Popup will be opened later asynchronously.\r\n if (this.config.system.asyncPopups) {\r\n this.logger.verbose(\"asyncPopups set to true, acquiring token\");\r\n // Passes on popup position and dimensions if in request\r\n return this.acquireTokenPopupAsync(validRequest, popupName, popupWindowAttributes);\r\n }\r\n else {\r\n // asyncPopups flag is set to false. Opens popup before acquiring token.\r\n this.logger.verbose(\"asyncPopup set to false, opening popup before acquiring token\");\r\n var popup = PopupUtils.openSizedPopup(\"about:blank\", popupName, popupWindowAttributes, this.logger);\r\n return this.acquireTokenPopupAsync(validRequest, popupName, popupWindowAttributes, popup);\r\n }\r\n }\r\n catch (e) {\r\n return Promise.reject(e);\r\n }\r\n };\r\n /**\r\n * Clears local cache for the current user then opens a popup window prompting the user to sign-out of the server\r\n * @param logoutRequest\r\n */\r\n PopupClient.prototype.logout = function (logoutRequest) {\r\n try {\r\n this.logger.verbose(\"logoutPopup called\");\r\n var validLogoutRequest = this.initializeLogoutRequest(logoutRequest);\r\n var popupName = PopupUtils.generateLogoutPopupName(this.config.auth.clientId, validLogoutRequest);\r\n var authority = logoutRequest && logoutRequest.authority;\r\n var mainWindowRedirectUri = logoutRequest && logoutRequest.mainWindowRedirectUri;\r\n var popupWindowAttributes = (logoutRequest === null || logoutRequest === void 0 ? void 0 : logoutRequest.popupWindowAttributes) || {};\r\n // asyncPopups flag is true. Acquires token without first opening popup. Popup will be opened later asynchronously.\r\n if (this.config.system.asyncPopups) {\r\n this.logger.verbose(\"asyncPopups set to true\");\r\n // Passes on popup position and dimensions if in request\r\n return this.logoutPopupAsync(validLogoutRequest, popupName, popupWindowAttributes, authority, undefined, mainWindowRedirectUri);\r\n }\r\n else {\r\n // asyncPopups flag is set to false. Opens popup before logging out.\r\n this.logger.verbose(\"asyncPopup set to false, opening popup\");\r\n var popup = PopupUtils.openSizedPopup(\"about:blank\", popupName, popupWindowAttributes, this.logger);\r\n return this.logoutPopupAsync(validLogoutRequest, popupName, popupWindowAttributes, authority, popup, mainWindowRedirectUri);\r\n }\r\n }\r\n catch (e) {\r\n // Since this function is synchronous we need to reject\r\n return Promise.reject(e);\r\n }\r\n };\r\n /**\r\n * Helper which obtains an access_token for your API via opening a popup window in the user's browser\r\n * @param validRequest\r\n * @param popupName\r\n * @param popup\r\n * @param popupWindowAttributes\r\n *\r\n * @returns A promise that is fulfilled when this function has completed, or rejected if an error was raised.\r\n */\r\n PopupClient.prototype.acquireTokenPopupAsync = function (validRequest, popupName, popupWindowAttributes, popup) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var serverTelemetryManager, authCodeRequest, authClient, navigateUrl, interactionHandler, popupParameters, popupWindow, hash, state, result, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"acquireTokenPopupAsync called\");\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenPopup);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 7, , 8]);\r\n return [4 /*yield*/, this.initializeAuthorizationCodeRequest(validRequest)];\r\n case 2:\r\n authCodeRequest = _a.sent();\r\n return [4 /*yield*/, this.createAuthCodeClient(serverTelemetryManager, validRequest.authority)];\r\n case 3:\r\n authClient = _a.sent();\r\n this.logger.verbose(\"Auth code client created\");\r\n return [4 /*yield*/, authClient.getAuthCodeUrl(validRequest)];\r\n case 4:\r\n navigateUrl = _a.sent();\r\n interactionHandler = new PopupHandler(authClient, this.browserStorage, authCodeRequest, this.logger);\r\n popupParameters = {\r\n popup: popup,\r\n popupName: popupName,\r\n popupWindowAttributes: popupWindowAttributes\r\n };\r\n popupWindow = interactionHandler.initiateAuthRequest(navigateUrl, popupParameters);\r\n this.eventHandler.emitEvent(EventType.POPUP_OPENED, InteractionType.Popup, { popupWindow: popupWindow }, null);\r\n return [4 /*yield*/, interactionHandler.monitorPopupForHash(popupWindow)];\r\n case 5:\r\n hash = _a.sent();\r\n state = this.validateAndExtractStateFromHash(hash, InteractionType.Popup, validRequest.correlationId);\r\n // Remove throttle if it exists\r\n ThrottlingUtils.removeThrottle(this.browserStorage, this.config.auth.clientId, authCodeRequest);\r\n return [4 /*yield*/, interactionHandler.handleCodeResponse(hash, state, authClient.authority, this.networkClient)];\r\n case 6:\r\n result = _a.sent();\r\n return [2 /*return*/, result];\r\n case 7:\r\n e_1 = _a.sent();\r\n if (popup) {\r\n // Close the synchronous popup if an error is thrown before the window unload event is registered\r\n popup.close();\r\n }\r\n if (e_1 instanceof AuthError) {\r\n e_1.setCorrelationId(this.correlationId);\r\n }\r\n serverTelemetryManager.cacheFailedRequest(e_1);\r\n this.browserStorage.cleanRequestByState(validRequest.state);\r\n throw e_1;\r\n case 8: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n *\r\n * @param validRequest\r\n * @param popupName\r\n * @param requestAuthority\r\n * @param popup\r\n * @param mainWindowRedirectUri\r\n * @param popupWindowAttributes\r\n */\r\n PopupClient.prototype.logoutPopupAsync = function (validRequest, popupName, popupWindowAttributes, requestAuthority, popup, mainWindowRedirectUri) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var serverTelemetryManager, authClient, logoutUri, popupUtils, popupWindow, e_2, navigationOptions, absoluteUrl, e_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"logoutPopupAsync called\");\r\n this.eventHandler.emitEvent(EventType.LOGOUT_START, InteractionType.Popup, validRequest);\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.logoutPopup);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 8, , 9]);\r\n // Clear cache on logout\r\n return [4 /*yield*/, this.clearCacheOnLogout(validRequest.account)];\r\n case 2:\r\n // Clear cache on logout\r\n _a.sent();\r\n this.browserStorage.setInteractionInProgress(true);\r\n return [4 /*yield*/, this.createAuthCodeClient(serverTelemetryManager, requestAuthority)];\r\n case 3:\r\n authClient = _a.sent();\r\n this.logger.verbose(\"Auth code client created\");\r\n logoutUri = authClient.getLogoutUri(validRequest);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_SUCCESS, InteractionType.Popup, validRequest);\r\n popupUtils = new PopupUtils(this.browserStorage, this.logger);\r\n popupWindow = popupUtils.openPopup(logoutUri, { popupName: popupName, popupWindowAttributes: popupWindowAttributes, popup: popup });\r\n this.eventHandler.emitEvent(EventType.POPUP_OPENED, InteractionType.Popup, { popupWindow: popupWindow }, null);\r\n _a.label = 4;\r\n case 4:\r\n _a.trys.push([4, 6, , 7]);\r\n // Don't care if this throws an error (User Cancelled)\r\n return [4 /*yield*/, popupUtils.monitorPopupForSameOrigin(popupWindow)];\r\n case 5:\r\n // Don't care if this throws an error (User Cancelled)\r\n _a.sent();\r\n this.logger.verbose(\"Popup successfully redirected to postLogoutRedirectUri\");\r\n return [3 /*break*/, 7];\r\n case 6:\r\n e_2 = _a.sent();\r\n this.logger.verbose(\"Error occurred while monitoring popup for same origin. Session on server may remain active. Error: \" + e_2);\r\n return [3 /*break*/, 7];\r\n case 7:\r\n popupUtils.cleanPopup(popupWindow);\r\n if (mainWindowRedirectUri) {\r\n navigationOptions = {\r\n apiId: ApiId.logoutPopup,\r\n timeout: this.config.system.redirectNavigationTimeout,\r\n noHistory: false\r\n };\r\n absoluteUrl = UrlString.getAbsoluteUrl(mainWindowRedirectUri, BrowserUtils.getCurrentUri());\r\n this.logger.verbose(\"Redirecting main window to url specified in the request\");\r\n this.logger.verbosePii(\"Redirecing main window to: \" + absoluteUrl);\r\n this.navigationClient.navigateInternal(absoluteUrl, navigationOptions);\r\n }\r\n else {\r\n this.logger.verbose(\"No main window navigation requested\");\r\n }\r\n return [3 /*break*/, 9];\r\n case 8:\r\n e_3 = _a.sent();\r\n if (popup) {\r\n // Close the synchronous popup if an error is thrown before the window unload event is registered\r\n popup.close();\r\n }\r\n if (e_3 instanceof AuthError) {\r\n e_3.setCorrelationId(this.correlationId);\r\n }\r\n this.browserStorage.setInteractionInProgress(false);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_FAILURE, InteractionType.Popup, null, e_3);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_END, InteractionType.Popup);\r\n serverTelemetryManager.cacheFailedRequest(e_3);\r\n throw e_3;\r\n case 9:\r\n this.eventHandler.emitEvent(EventType.LOGOUT_END, InteractionType.Popup);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n return PopupClient;\r\n}(StandardInteractionClient));\n\nexport { PopupClient };\n//# sourceMappingURL=PopupClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { StringUtils, ThrottlingUtils, ClientAuthError } from '@azure/msal-common';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { TemporaryCacheKeys, ApiId } from '../utils/BrowserConstants.js';\nimport { InteractionHandler } from './InteractionHandler.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar RedirectHandler = /** @class */ (function (_super) {\r\n __extends(RedirectHandler, _super);\r\n function RedirectHandler(authCodeModule, storageImpl, authCodeRequest, browserRequestLogger, browserCrypto) {\r\n var _this = _super.call(this, authCodeModule, storageImpl, authCodeRequest, browserRequestLogger) || this;\r\n _this.browserCrypto = browserCrypto;\r\n return _this;\r\n }\r\n /**\r\n * Redirects window to given URL.\r\n * @param urlNavigate\r\n */\r\n RedirectHandler.prototype.initiateAuthRequest = function (requestUrl, params) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var navigationOptions, navigate;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.browserRequestLogger.verbose(\"RedirectHandler.initiateAuthRequest called\");\r\n if (!!StringUtils.isEmpty(requestUrl)) return [3 /*break*/, 7];\r\n // Cache start page, returns to this page after redirectUri if navigateToLoginRequestUrl is true\r\n if (params.redirectStartPage) {\r\n this.browserRequestLogger.verbose(\"RedirectHandler.initiateAuthRequest: redirectStartPage set, caching start page\");\r\n this.browserStorage.setTemporaryCache(TemporaryCacheKeys.ORIGIN_URI, params.redirectStartPage, true);\r\n }\r\n // Set interaction status in the library.\r\n this.browserStorage.setInteractionInProgress(true);\r\n this.browserStorage.setTemporaryCache(TemporaryCacheKeys.CORRELATION_ID, this.authCodeRequest.correlationId, true);\r\n this.browserStorage.cacheCodeRequest(this.authCodeRequest, this.browserCrypto);\r\n this.browserRequestLogger.infoPii(\"RedirectHandler.initiateAuthRequest: Navigate to: \" + requestUrl);\r\n navigationOptions = {\r\n apiId: ApiId.acquireTokenRedirect,\r\n timeout: params.redirectTimeout,\r\n noHistory: false\r\n };\r\n if (!(typeof params.onRedirectNavigate === \"function\")) return [3 /*break*/, 4];\r\n this.browserRequestLogger.verbose(\"RedirectHandler.initiateAuthRequest: Invoking onRedirectNavigate callback\");\r\n navigate = params.onRedirectNavigate(requestUrl);\r\n if (!(navigate !== false)) return [3 /*break*/, 2];\r\n this.browserRequestLogger.verbose(\"RedirectHandler.initiateAuthRequest: onRedirectNavigate did not return false, navigating\");\r\n return [4 /*yield*/, params.navigationClient.navigateExternal(requestUrl, navigationOptions)];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n case 2:\r\n this.browserRequestLogger.verbose(\"RedirectHandler.initiateAuthRequest: onRedirectNavigate returned false, stopping navigation\");\r\n return [2 /*return*/];\r\n case 3: return [3 /*break*/, 6];\r\n case 4:\r\n // Navigate window to request URL\r\n this.browserRequestLogger.verbose(\"RedirectHandler.initiateAuthRequest: Navigating window to navigate url\");\r\n return [4 /*yield*/, params.navigationClient.navigateExternal(requestUrl, navigationOptions)];\r\n case 5:\r\n _a.sent();\r\n return [2 /*return*/];\r\n case 6: return [3 /*break*/, 8];\r\n case 7:\r\n // Throw error if request URL is empty.\r\n this.browserRequestLogger.info(\"RedirectHandler.initiateAuthRequest: Navigate url is empty\");\r\n throw BrowserAuthError.createEmptyNavigationUriError();\r\n case 8: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Handle authorization code response in the window.\r\n * @param hash\r\n */\r\n RedirectHandler.prototype.handleCodeResponse = function (locationHash, state, authority, networkModule, clientId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var stateKey, requestState, authCodeResponse, nonceKey, cachedNonce, cachedCcsCred, tokenResponse;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.browserRequestLogger.verbose(\"RedirectHandler.handleCodeResponse called\");\r\n // Check that location hash isn't empty.\r\n if (StringUtils.isEmpty(locationHash)) {\r\n throw BrowserAuthError.createEmptyHashError(locationHash);\r\n }\r\n // Interaction is completed - remove interaction status.\r\n this.browserStorage.setInteractionInProgress(false);\r\n stateKey = this.browserStorage.generateStateKey(state);\r\n requestState = this.browserStorage.getTemporaryCache(stateKey);\r\n if (!requestState) {\r\n throw ClientAuthError.createStateNotFoundError(\"Cached State\");\r\n }\r\n authCodeResponse = this.authModule.handleFragmentResponse(locationHash, requestState);\r\n nonceKey = this.browserStorage.generateNonceKey(requestState);\r\n cachedNonce = this.browserStorage.getTemporaryCache(nonceKey);\r\n // Assign code to request\r\n this.authCodeRequest.code = authCodeResponse.code;\r\n if (!authCodeResponse.cloud_instance_host_name) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.updateTokenEndpointAuthority(authCodeResponse.cloud_instance_host_name, authority, networkModule)];\r\n case 1:\r\n _a.sent();\r\n _a.label = 2;\r\n case 2:\r\n authCodeResponse.nonce = cachedNonce || undefined;\r\n authCodeResponse.state = requestState;\r\n // Add CCS parameters if available\r\n if (authCodeResponse.client_info) {\r\n this.authCodeRequest.clientInfo = authCodeResponse.client_info;\r\n }\r\n else {\r\n cachedCcsCred = this.checkCcsCredentials();\r\n if (cachedCcsCred) {\r\n this.authCodeRequest.ccsCredential = cachedCcsCred;\r\n }\r\n }\r\n // Remove throttle if it exists\r\n if (clientId) {\r\n ThrottlingUtils.removeThrottle(this.browserStorage, clientId, this.authCodeRequest);\r\n }\r\n return [4 /*yield*/, this.authModule.acquireToken(this.authCodeRequest, authCodeResponse)];\r\n case 3:\r\n tokenResponse = _a.sent();\r\n this.browserStorage.cleanRequestByState(state);\r\n return [2 /*return*/, tokenResponse];\r\n }\r\n });\r\n });\r\n };\r\n return RedirectHandler;\r\n}(InteractionHandler));\n\nexport { RedirectHandler };\n//# sourceMappingURL=RedirectHandler.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { AuthError, UrlString } from '@azure/msal-common';\nimport { StandardInteractionClient } from './StandardInteractionClient.js';\nimport { InteractionType, ApiId, TemporaryCacheKeys } from '../utils/BrowserConstants.js';\nimport { RedirectHandler } from '../interaction_handler/RedirectHandler.js';\nimport { BrowserUtils } from '../utils/BrowserUtils.js';\nimport { EventType } from '../event/EventType.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar RedirectClient = /** @class */ (function (_super) {\r\n __extends(RedirectClient, _super);\r\n function RedirectClient() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Redirects the page to the /authorize endpoint of the IDP\r\n * @param request\r\n */\r\n RedirectClient.prototype.acquireToken = function (request) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var validRequest, serverTelemetryManager, authCodeRequest, authClient, interactionHandler, navigateUrl, redirectStartPage, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n validRequest = this.preflightInteractiveRequest(request, InteractionType.Redirect);\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenRedirect);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 6, , 7]);\r\n return [4 /*yield*/, this.initializeAuthorizationCodeRequest(validRequest)];\r\n case 2:\r\n authCodeRequest = _a.sent();\r\n return [4 /*yield*/, this.createAuthCodeClient(serverTelemetryManager, validRequest.authority)];\r\n case 3:\r\n authClient = _a.sent();\r\n this.logger.verbose(\"Auth code client created\");\r\n interactionHandler = new RedirectHandler(authClient, this.browserStorage, authCodeRequest, this.logger, this.browserCrypto);\r\n return [4 /*yield*/, authClient.getAuthCodeUrl(validRequest)];\r\n case 4:\r\n navigateUrl = _a.sent();\r\n redirectStartPage = this.getRedirectStartPage(request.redirectStartPage);\r\n this.logger.verbosePii(\"Redirect start page: \" + redirectStartPage);\r\n return [4 /*yield*/, interactionHandler.initiateAuthRequest(navigateUrl, {\r\n navigationClient: this.navigationClient,\r\n redirectTimeout: this.config.system.redirectNavigationTimeout,\r\n redirectStartPage: redirectStartPage,\r\n onRedirectNavigate: request.onRedirectNavigate\r\n })];\r\n case 5: \r\n // Show the UI once the url has been created. Response will come back in the hash, which will be handled in the handleRedirectCallback function.\r\n return [2 /*return*/, _a.sent()];\r\n case 6:\r\n e_1 = _a.sent();\r\n if (e_1 instanceof AuthError) {\r\n e_1.setCorrelationId(this.correlationId);\r\n }\r\n serverTelemetryManager.cacheFailedRequest(e_1);\r\n this.browserStorage.cleanRequestByState(validRequest.state);\r\n throw e_1;\r\n case 7: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Checks if navigateToLoginRequestUrl is set, and:\r\n * - if true, performs logic to cache and navigate\r\n * - if false, handles hash string and parses response\r\n * @param hash\r\n */\r\n RedirectClient.prototype.handleRedirectPromise = function (hash) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var serverTelemetryManager, responseHash, state, loginRequestUrl, loginRequestUrlNormalized, currentUrlNormalized, handleHashResult, navigationOptions, processHashOnRedirect, homepage, e_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.handleRedirectPromise);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 10, , 11]);\r\n if (!this.browserStorage.isInteractionInProgress(true)) {\r\n this.logger.info(\"handleRedirectPromise called but there is no interaction in progress, returning null.\");\r\n return [2 /*return*/, null];\r\n }\r\n responseHash = this.getRedirectResponseHash(hash || window.location.hash);\r\n if (!responseHash) {\r\n // Not a recognized server response hash or hash not associated with a redirect request\r\n this.logger.info(\"handleRedirectPromise did not detect a response hash as a result of a redirect. Cleaning temporary cache.\");\r\n this.browserStorage.cleanRequestByInteractionType(InteractionType.Redirect);\r\n return [2 /*return*/, null];\r\n }\r\n state = void 0;\r\n try {\r\n state = this.validateAndExtractStateFromHash(responseHash, InteractionType.Redirect);\r\n BrowserUtils.clearHash(window);\r\n this.logger.verbose(\"State extracted from hash\");\r\n }\r\n catch (e) {\r\n this.logger.info(\"handleRedirectPromise was unable to extract state due to: \" + e);\r\n this.browserStorage.cleanRequestByInteractionType(InteractionType.Redirect);\r\n return [2 /*return*/, null];\r\n }\r\n loginRequestUrl = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.ORIGIN_URI, true) || \"\";\r\n loginRequestUrlNormalized = UrlString.removeHashFromUrl(loginRequestUrl);\r\n currentUrlNormalized = UrlString.removeHashFromUrl(window.location.href);\r\n if (!(loginRequestUrlNormalized === currentUrlNormalized && this.config.auth.navigateToLoginRequestUrl)) return [3 /*break*/, 3];\r\n // We are on the page we need to navigate to - handle hash\r\n this.logger.verbose(\"Current page is loginRequestUrl, handling hash\");\r\n return [4 /*yield*/, this.handleHash(responseHash, state, serverTelemetryManager)];\r\n case 2:\r\n handleHashResult = _a.sent();\r\n if (loginRequestUrl.indexOf(\"#\") > -1) {\r\n // Replace current hash with non-msal hash, if present\r\n BrowserUtils.replaceHash(loginRequestUrl);\r\n }\r\n return [2 /*return*/, handleHashResult];\r\n case 3:\r\n if (!!this.config.auth.navigateToLoginRequestUrl) return [3 /*break*/, 4];\r\n this.logger.verbose(\"NavigateToLoginRequestUrl set to false, handling hash\");\r\n return [2 /*return*/, this.handleHash(responseHash, state, serverTelemetryManager)];\r\n case 4:\r\n if (!!BrowserUtils.isInIframe()) return [3 /*break*/, 9];\r\n /*\r\n * Returned from authority using redirect - need to perform navigation before processing response\r\n * Cache the hash to be retrieved after the next redirect\r\n */\r\n this.browserStorage.setTemporaryCache(TemporaryCacheKeys.URL_HASH, responseHash, true);\r\n navigationOptions = {\r\n apiId: ApiId.handleRedirectPromise,\r\n timeout: this.config.system.redirectNavigationTimeout,\r\n noHistory: true\r\n };\r\n processHashOnRedirect = true;\r\n if (!(!loginRequestUrl || loginRequestUrl === \"null\")) return [3 /*break*/, 6];\r\n homepage = BrowserUtils.getHomepage();\r\n // Cache the homepage under ORIGIN_URI to ensure cached hash is processed on homepage\r\n this.browserStorage.setTemporaryCache(TemporaryCacheKeys.ORIGIN_URI, homepage, true);\r\n this.logger.warning(\"Unable to get valid login request url from cache, redirecting to home page\");\r\n return [4 /*yield*/, this.navigationClient.navigateInternal(homepage, navigationOptions)];\r\n case 5:\r\n processHashOnRedirect = _a.sent();\r\n return [3 /*break*/, 8];\r\n case 6:\r\n // Navigate to page that initiated the redirect request\r\n this.logger.verbose(\"Navigating to loginRequestUrl: \" + loginRequestUrl);\r\n return [4 /*yield*/, this.navigationClient.navigateInternal(loginRequestUrl, navigationOptions)];\r\n case 7:\r\n processHashOnRedirect = _a.sent();\r\n _a.label = 8;\r\n case 8:\r\n // If navigateInternal implementation returns false, handle the hash now\r\n if (!processHashOnRedirect) {\r\n return [2 /*return*/, this.handleHash(responseHash, state, serverTelemetryManager)];\r\n }\r\n _a.label = 9;\r\n case 9: return [2 /*return*/, null];\r\n case 10:\r\n e_2 = _a.sent();\r\n if (e_2 instanceof AuthError) {\r\n e_2.setCorrelationId(this.correlationId);\r\n }\r\n serverTelemetryManager.cacheFailedRequest(e_2);\r\n this.browserStorage.cleanRequestByInteractionType(InteractionType.Redirect);\r\n throw e_2;\r\n case 11: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the response hash for a redirect request\r\n * Returns null if interactionType in the state value is not \"redirect\" or the hash does not contain known properties\r\n * @param hash\r\n */\r\n RedirectClient.prototype.getRedirectResponseHash = function (hash) {\r\n this.logger.verbose(\"getRedirectResponseHash called\");\r\n // Get current location hash from window or cache.\r\n var isResponseHash = UrlString.hashContainsKnownProperties(hash);\r\n var cachedHash = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.URL_HASH, true);\r\n this.browserStorage.removeItem(this.browserStorage.generateCacheKey(TemporaryCacheKeys.URL_HASH));\r\n if (isResponseHash) {\r\n this.logger.verbose(\"Hash contains known properties, returning response hash\");\r\n return hash;\r\n }\r\n this.logger.verbose(\"Hash does not contain known properties, returning cached hash\");\r\n return cachedHash;\r\n };\r\n /**\r\n * Checks if hash exists and handles in window.\r\n * @param hash\r\n * @param state\r\n */\r\n RedirectClient.prototype.handleHash = function (hash, state, serverTelemetryManager) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var cachedRequest, currentAuthority, authClient, interactionHandler;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n cachedRequest = this.browserStorage.getCachedRequest(state, this.browserCrypto);\r\n this.logger.verbose(\"handleHash called, retrieved cached request\");\r\n currentAuthority = this.browserStorage.getCachedAuthority(state);\r\n if (!currentAuthority) {\r\n throw BrowserAuthError.createNoCachedAuthorityError();\r\n }\r\n return [4 /*yield*/, this.createAuthCodeClient(serverTelemetryManager, currentAuthority)];\r\n case 1:\r\n authClient = _a.sent();\r\n this.logger.verbose(\"Auth code client created\");\r\n interactionHandler = new RedirectHandler(authClient, this.browserStorage, cachedRequest, this.logger, this.browserCrypto);\r\n return [4 /*yield*/, interactionHandler.handleCodeResponse(hash, state, authClient.authority, this.networkClient, this.config.auth.clientId)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Use to log out the current user, and redirect the user to the postLogoutRedirectUri.\r\n * Default behaviour is to redirect the user to `window.location.href`.\r\n * @param logoutRequest\r\n */\r\n RedirectClient.prototype.logout = function (logoutRequest) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var validLogoutRequest, serverTelemetryManager, navigationOptions, authClient, logoutUri, navigate, e_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"logoutRedirect called\");\r\n validLogoutRequest = this.initializeLogoutRequest(logoutRequest);\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.logout);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 10, , 11]);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_START, InteractionType.Redirect, logoutRequest);\r\n // Clear cache on logout\r\n return [4 /*yield*/, this.clearCacheOnLogout(validLogoutRequest.account)];\r\n case 2:\r\n // Clear cache on logout\r\n _a.sent();\r\n navigationOptions = {\r\n apiId: ApiId.logout,\r\n timeout: this.config.system.redirectNavigationTimeout,\r\n noHistory: false\r\n };\r\n return [4 /*yield*/, this.createAuthCodeClient(serverTelemetryManager, logoutRequest && logoutRequest.authority)];\r\n case 3:\r\n authClient = _a.sent();\r\n this.logger.verbose(\"Auth code client created\");\r\n logoutUri = authClient.getLogoutUri(validLogoutRequest);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_SUCCESS, InteractionType.Redirect, validLogoutRequest);\r\n if (!(logoutRequest && typeof logoutRequest.onRedirectNavigate === \"function\")) return [3 /*break*/, 7];\r\n navigate = logoutRequest.onRedirectNavigate(logoutUri);\r\n if (!(navigate !== false)) return [3 /*break*/, 5];\r\n this.logger.verbose(\"Logout onRedirectNavigate did not return false, navigating\");\r\n return [4 /*yield*/, this.navigationClient.navigateExternal(logoutUri, navigationOptions)];\r\n case 4:\r\n _a.sent();\r\n return [2 /*return*/];\r\n case 5:\r\n this.logger.verbose(\"Logout onRedirectNavigate returned false, stopping navigation\");\r\n _a.label = 6;\r\n case 6: return [3 /*break*/, 9];\r\n case 7: return [4 /*yield*/, this.navigationClient.navigateExternal(logoutUri, navigationOptions)];\r\n case 8:\r\n _a.sent();\r\n return [2 /*return*/];\r\n case 9: return [3 /*break*/, 11];\r\n case 10:\r\n e_3 = _a.sent();\r\n if (e_3 instanceof AuthError) {\r\n e_3.setCorrelationId(this.correlationId);\r\n }\r\n serverTelemetryManager.cacheFailedRequest(e_3);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_FAILURE, InteractionType.Redirect, null, e_3);\r\n this.eventHandler.emitEvent(EventType.LOGOUT_END, InteractionType.Redirect);\r\n throw e_3;\r\n case 11:\r\n this.eventHandler.emitEvent(EventType.LOGOUT_END, InteractionType.Redirect);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Use to get the redirectStartPage either from request or use current window\r\n * @param requestStartPage\r\n */\r\n RedirectClient.prototype.getRedirectStartPage = function (requestStartPage) {\r\n var redirectStartPage = requestStartPage || window.location.href;\r\n return UrlString.getAbsoluteUrl(redirectStartPage, BrowserUtils.getCurrentUri());\r\n };\r\n return RedirectClient;\r\n}(StandardInteractionClient));\n\nexport { RedirectClient };\n//# sourceMappingURL=RedirectClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator, __assign } from '../_virtual/_tslib.js';\nimport { StandardInteractionClient } from './StandardInteractionClient.js';\nimport { SilentFlowClient } from '@azure/msal-common';\nimport { EventType } from '../event/EventType.js';\nimport { InteractionType, ApiId } from '../utils/BrowserConstants.js';\nimport { BrowserAuthError, BrowserAuthErrorMessage } from '../error/BrowserAuthError.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar SilentCacheClient = /** @class */ (function (_super) {\r\n __extends(SilentCacheClient, _super);\r\n function SilentCacheClient() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Returns unexpired tokens from the cache, if available\r\n * @param silentRequest\r\n */\r\n SilentCacheClient.prototype.acquireToken = function (silentRequest) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var serverTelemetryManager, silentAuthClient, cachedToken, error_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenSilent_silentFlow);\r\n return [4 /*yield*/, this.createSilentFlowClient(serverTelemetryManager, silentRequest.authority)];\r\n case 1:\r\n silentAuthClient = _a.sent();\r\n this.logger.verbose(\"Silent auth client created\");\r\n _a.label = 2;\r\n case 2:\r\n _a.trys.push([2, 4, , 5]);\r\n return [4 /*yield*/, silentAuthClient.acquireCachedToken(silentRequest)];\r\n case 3:\r\n cachedToken = _a.sent();\r\n this.eventHandler.emitEvent(EventType.ACQUIRE_TOKEN_SUCCESS, InteractionType.Silent, cachedToken);\r\n return [2 /*return*/, cachedToken];\r\n case 4:\r\n error_1 = _a.sent();\r\n if (error_1 instanceof BrowserAuthError && error_1.errorCode === BrowserAuthErrorMessage.signingKeyNotFoundInStorage.code) {\r\n this.logger.verbose(\"Signing keypair for bound access token not found. Refreshing bound access token and generating a new crypto keypair.\");\r\n }\r\n throw error_1;\r\n case 5: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Currently Unsupported\r\n */\r\n SilentCacheClient.prototype.logout = function () {\r\n // Synchronous so we must reject\r\n return Promise.reject(BrowserAuthError.createSilentLogoutUnsupportedError());\r\n };\r\n /**\r\n * Creates an Silent Flow Client with the given authority, or the default authority.\r\n * @param serverTelemetryManager\r\n * @param authorityUrl\r\n */\r\n SilentCacheClient.prototype.createSilentFlowClient = function (serverTelemetryManager, authorityUrl) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var clientConfig;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.getClientConfiguration(serverTelemetryManager, authorityUrl)];\r\n case 1:\r\n clientConfig = _a.sent();\r\n return [2 /*return*/, new SilentFlowClient(clientConfig)];\r\n }\r\n });\r\n });\r\n };\r\n SilentCacheClient.prototype.initializeSilentRequest = function (request, account) {\r\n return __assign(__assign(__assign({}, request), this.initializeBaseRequest(request)), { account: account, forceRefresh: request.forceRefresh || false });\r\n };\r\n return SilentCacheClient;\r\n}(StandardInteractionClient));\n\nexport { SilentCacheClient };\n//# sourceMappingURL=SilentCacheClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { StringUtils, Constants, UrlString } from '@azure/msal-common';\nimport { InteractionHandler } from './InteractionHandler.js';\nimport { BrowserConstants } from '../utils/BrowserConstants.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { DEFAULT_IFRAME_TIMEOUT_MS } from '../config/Configuration.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar SilentHandler = /** @class */ (function (_super) {\r\n __extends(SilentHandler, _super);\r\n function SilentHandler(authCodeModule, storageImpl, authCodeRequest, browserRequestLogger, navigateFrameWait) {\r\n var _this = _super.call(this, authCodeModule, storageImpl, authCodeRequest, browserRequestLogger) || this;\r\n _this.navigateFrameWait = navigateFrameWait;\r\n return _this;\r\n }\r\n /**\r\n * Creates a hidden iframe to given URL using user-requested scopes as an id.\r\n * @param urlNavigate\r\n * @param userRequestScopes\r\n */\r\n SilentHandler.prototype.initiateAuthRequest = function (requestUrl) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n if (StringUtils.isEmpty(requestUrl)) {\r\n // Throw error if request URL is empty.\r\n this.browserRequestLogger.info(\"Navigate url is empty\");\r\n throw BrowserAuthError.createEmptyNavigationUriError();\r\n }\r\n if (!this.navigateFrameWait) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.loadFrame(requestUrl)];\r\n case 1:\r\n _a = _b.sent();\r\n return [3 /*break*/, 3];\r\n case 2:\r\n _a = this.loadFrameSync(requestUrl);\r\n _b.label = 3;\r\n case 3: return [2 /*return*/, _a];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Monitors an iframe content window until it loads a url with a known hash, or hits a specified timeout.\r\n * @param iframe\r\n * @param timeout\r\n */\r\n SilentHandler.prototype.monitorIframeForHash = function (iframe, timeout) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n if (timeout < DEFAULT_IFRAME_TIMEOUT_MS) {\r\n _this.browserRequestLogger.warning(\"system.loadFrameTimeout or system.iframeHashTimeout set to lower (\" + timeout + \"ms) than the default (\" + DEFAULT_IFRAME_TIMEOUT_MS + \"ms). This may result in timeouts.\");\r\n }\r\n /*\r\n * Polling for iframes can be purely timing based,\r\n * since we don't need to account for interaction.\r\n */\r\n var nowMark = window.performance.now();\r\n var timeoutMark = nowMark + timeout;\r\n var intervalId = setInterval(function () {\r\n if (window.performance.now() > timeoutMark) {\r\n _this.removeHiddenIframe(iframe);\r\n clearInterval(intervalId);\r\n reject(BrowserAuthError.createMonitorIframeTimeoutError());\r\n return;\r\n }\r\n var href = Constants.EMPTY_STRING;\r\n var contentWindow = iframe.contentWindow;\r\n try {\r\n /*\r\n * Will throw if cross origin,\r\n * which should be caught and ignored\r\n * since we need the interval to keep running while on STS UI.\r\n */\r\n href = contentWindow ? contentWindow.location.href : Constants.EMPTY_STRING;\r\n }\r\n catch (e) { }\r\n if (StringUtils.isEmpty(href)) {\r\n return;\r\n }\r\n var contentHash = contentWindow ? contentWindow.location.hash : Constants.EMPTY_STRING;\r\n if (UrlString.hashContainsKnownProperties(contentHash)) {\r\n // Success case\r\n _this.removeHiddenIframe(iframe);\r\n clearInterval(intervalId);\r\n resolve(contentHash);\r\n return;\r\n }\r\n }, BrowserConstants.POLL_INTERVAL_MS);\r\n });\r\n };\r\n /**\r\n * @hidden\r\n * Loads iframe with authorization endpoint URL\r\n * @ignore\r\n */\r\n SilentHandler.prototype.loadFrame = function (urlNavigate) {\r\n /*\r\n * This trick overcomes iframe navigation in IE\r\n * IE does not load the page consistently in iframe\r\n */\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n var frameHandle = _this.createHiddenIframe();\r\n setTimeout(function () {\r\n if (!frameHandle) {\r\n reject(\"Unable to load iframe\");\r\n return;\r\n }\r\n frameHandle.src = urlNavigate;\r\n resolve(frameHandle);\r\n }, _this.navigateFrameWait);\r\n });\r\n };\r\n /**\r\n * @hidden\r\n * Loads the iframe synchronously when the navigateTimeFrame is set to `0`\r\n * @param urlNavigate\r\n * @param frameName\r\n * @param logger\r\n */\r\n SilentHandler.prototype.loadFrameSync = function (urlNavigate) {\r\n var frameHandle = this.createHiddenIframe();\r\n frameHandle.src = urlNavigate;\r\n return frameHandle;\r\n };\r\n /**\r\n * @hidden\r\n * Creates a new hidden iframe or gets an existing one for silent token renewal.\r\n * @ignore\r\n */\r\n SilentHandler.prototype.createHiddenIframe = function () {\r\n var authFrame = document.createElement(\"iframe\");\r\n authFrame.style.visibility = \"hidden\";\r\n authFrame.style.position = \"absolute\";\r\n authFrame.style.width = authFrame.style.height = \"0\";\r\n authFrame.style.border = \"0\";\r\n authFrame.setAttribute(\"sandbox\", \"allow-scripts allow-same-origin allow-forms\");\r\n document.getElementsByTagName(\"body\")[0].appendChild(authFrame);\r\n return authFrame;\r\n };\r\n /**\r\n * @hidden\r\n * Removes a hidden iframe from the page.\r\n * @ignore\r\n */\r\n SilentHandler.prototype.removeHiddenIframe = function (iframe) {\r\n if (document.body === iframe.parentNode) {\r\n document.body.removeChild(iframe);\r\n }\r\n };\r\n return SilentHandler;\r\n}(InteractionHandler));\n\nexport { SilentHandler };\n//# sourceMappingURL=SilentHandler.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator, __assign } from '../_virtual/_tslib.js';\nimport { AuthError, StringUtils, PromptValue } from '@azure/msal-common';\nimport { StandardInteractionClient } from './StandardInteractionClient.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { InteractionType } from '../utils/BrowserConstants.js';\nimport { SilentHandler } from '../interaction_handler/SilentHandler.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar SilentIframeClient = /** @class */ (function (_super) {\r\n __extends(SilentIframeClient, _super);\r\n function SilentIframeClient(config, storageImpl, browserCrypto, logger, eventHandler, navigationClient, apiId, correlationId) {\r\n var _this = _super.call(this, config, storageImpl, browserCrypto, logger, eventHandler, navigationClient, correlationId) || this;\r\n _this.apiId = apiId;\r\n return _this;\r\n }\r\n /**\r\n * Acquires a token silently by opening a hidden iframe to the /authorize endpoint with prompt=none\r\n * @param request\r\n */\r\n SilentIframeClient.prototype.acquireToken = function (request) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var silentRequest, serverTelemetryManager, authCodeRequest, authClient, navigateUrl, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"acquireTokenByIframe called\");\r\n // Check that we have some SSO data\r\n if (StringUtils.isEmpty(request.loginHint) && StringUtils.isEmpty(request.sid) && (!request.account || StringUtils.isEmpty(request.account.username))) {\r\n throw BrowserAuthError.createSilentSSOInsufficientInfoError();\r\n }\r\n // Check that prompt is set to none, throw error if it is set to anything else.\r\n if (request.prompt && request.prompt !== PromptValue.NONE) {\r\n throw BrowserAuthError.createSilentPromptValueError(request.prompt);\r\n }\r\n silentRequest = this.initializeAuthorizationRequest(__assign(__assign({}, request), { prompt: PromptValue.NONE }), InteractionType.Silent);\r\n serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 6, , 7]);\r\n return [4 /*yield*/, this.initializeAuthorizationCodeRequest(silentRequest)];\r\n case 2:\r\n authCodeRequest = _a.sent();\r\n return [4 /*yield*/, this.createAuthCodeClient(serverTelemetryManager, silentRequest.authority)];\r\n case 3:\r\n authClient = _a.sent();\r\n this.logger.verbose(\"Auth code client created\");\r\n return [4 /*yield*/, authClient.getAuthCodeUrl(silentRequest)];\r\n case 4:\r\n navigateUrl = _a.sent();\r\n return [4 /*yield*/, this.silentTokenHelper(navigateUrl, authCodeRequest, authClient, this.logger)];\r\n case 5: return [2 /*return*/, _a.sent()];\r\n case 6:\r\n e_1 = _a.sent();\r\n if (e_1 instanceof AuthError) {\r\n e_1.setCorrelationId(this.correlationId);\r\n }\r\n serverTelemetryManager.cacheFailedRequest(e_1);\r\n this.browserStorage.cleanRequestByState(silentRequest.state);\r\n throw e_1;\r\n case 7: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Currently Unsupported\r\n */\r\n SilentIframeClient.prototype.logout = function () {\r\n // Synchronous so we must reject\r\n return Promise.reject(BrowserAuthError.createSilentLogoutUnsupportedError());\r\n };\r\n /**\r\n * Helper which acquires an authorization code silently using a hidden iframe from given url\r\n * using the scopes requested as part of the id, and exchanges the code for a set of OAuth tokens.\r\n * @param navigateUrl\r\n * @param userRequestScopes\r\n */\r\n SilentIframeClient.prototype.silentTokenHelper = function (navigateUrl, authCodeRequest, authClient, browserRequestLogger) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var silentHandler, msalFrame, hash, state;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n silentHandler = new SilentHandler(authClient, this.browserStorage, authCodeRequest, browserRequestLogger, this.config.system.navigateFrameWait);\r\n return [4 /*yield*/, silentHandler.initiateAuthRequest(navigateUrl)];\r\n case 1:\r\n msalFrame = _a.sent();\r\n return [4 /*yield*/, silentHandler.monitorIframeForHash(msalFrame, this.config.system.iframeHashTimeout)];\r\n case 2:\r\n hash = _a.sent();\r\n state = this.validateAndExtractStateFromHash(hash, InteractionType.Silent, authCodeRequest.correlationId);\r\n // Handle response from hash string\r\n return [2 /*return*/, silentHandler.handleCodeResponse(hash, state, authClient.authority, this.networkClient)];\r\n }\r\n });\r\n });\r\n };\r\n return SilentIframeClient;\r\n}(StandardInteractionClient));\n\nexport { SilentIframeClient };\n//# sourceMappingURL=SilentIframeClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator, __assign } from '../_virtual/_tslib.js';\nimport { StandardInteractionClient } from './StandardInteractionClient.js';\nimport { AuthError, RefreshTokenClient } from '@azure/msal-common';\nimport { ApiId } from '../utils/BrowserConstants.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar SilentRefreshClient = /** @class */ (function (_super) {\r\n __extends(SilentRefreshClient, _super);\r\n function SilentRefreshClient() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Exchanges the refresh token for new tokens\r\n * @param request\r\n */\r\n SilentRefreshClient.prototype.acquireToken = function (request) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var silentRequest, serverTelemetryManager, refreshTokenClient;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n silentRequest = __assign(__assign({}, request), this.initializeBaseRequest(request));\r\n serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenSilent_silentFlow);\r\n return [4 /*yield*/, this.createRefreshTokenClient(serverTelemetryManager, silentRequest.authority)];\r\n case 1:\r\n refreshTokenClient = _a.sent();\r\n this.logger.verbose(\"Refresh token client created\");\r\n // Send request to renew token. Auth module will throw errors if token cannot be renewed.\r\n return [2 /*return*/, refreshTokenClient.acquireTokenByRefreshToken(silentRequest).catch(function (e) {\r\n if (e instanceof AuthError) {\r\n e.setCorrelationId(_this.correlationId);\r\n }\r\n serverTelemetryManager.cacheFailedRequest(e);\r\n throw e;\r\n })];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Currently Unsupported\r\n */\r\n SilentRefreshClient.prototype.logout = function () {\r\n // Synchronous so we must reject\r\n return Promise.reject(BrowserAuthError.createSilentLogoutUnsupportedError());\r\n };\r\n /**\r\n * Creates a Refresh Client with the given authority, or the default authority.\r\n * @param serverTelemetryManager\r\n * @param authorityUrl\r\n */\r\n SilentRefreshClient.prototype.createRefreshTokenClient = function (serverTelemetryManager, authorityUrl) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var clientConfig;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.getClientConfiguration(serverTelemetryManager, authorityUrl)];\r\n case 1:\r\n clientConfig = _a.sent();\r\n return [2 /*return*/, new RefreshTokenClient(clientConfig)];\r\n }\r\n });\r\n });\r\n };\r\n return SilentRefreshClient;\r\n}(StandardInteractionClient));\n\nexport { SilentRefreshClient };\n//# sourceMappingURL=SilentRefreshClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { AccountEntity } from '@azure/msal-common';\nimport { version } from '../packageMetadata.js';\nimport { BrowserConstants } from '../utils/BrowserConstants.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar BaseInteractionClient = /** @class */ (function () {\r\n function BaseInteractionClient(config, storageImpl, browserCrypto, logger, eventHandler, correlationId) {\r\n this.config = config;\r\n this.browserStorage = storageImpl;\r\n this.browserCrypto = browserCrypto;\r\n this.networkClient = this.config.system.networkClient;\r\n this.eventHandler = eventHandler;\r\n this.correlationId = correlationId || this.browserCrypto.createNewGuid();\r\n this.logger = logger.clone(BrowserConstants.MSAL_SKU, version, this.correlationId);\r\n }\r\n BaseInteractionClient.prototype.clearCacheOnLogout = function (account) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!account) return [3 /*break*/, 5];\r\n if (AccountEntity.accountInfoIsEqual(account, this.browserStorage.getActiveAccount(), false)) {\r\n this.logger.verbose(\"Setting active account to null\");\r\n this.browserStorage.setActiveAccount(null);\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.browserStorage.removeAccount(AccountEntity.generateAccountCacheKey(account))];\r\n case 2:\r\n _a.sent();\r\n this.logger.verbose(\"Cleared cache items belonging to the account provided in the logout request.\");\r\n return [3 /*break*/, 4];\r\n case 3:\r\n _a.sent();\r\n this.logger.error(\"Account provided in logout request was not found. Local cache unchanged.\");\r\n return [3 /*break*/, 4];\r\n case 4: return [3 /*break*/, 9];\r\n case 5:\r\n _a.trys.push([5, 8, , 9]);\r\n // Clear all accounts and tokens\r\n return [4 /*yield*/, this.browserStorage.clear()];\r\n case 6:\r\n // Clear all accounts and tokens\r\n _a.sent();\r\n // Clear any stray keys from IndexedDB\r\n return [4 /*yield*/, this.browserCrypto.clearKeystore()];\r\n case 7:\r\n // Clear any stray keys from IndexedDB\r\n _a.sent();\r\n this.logger.verbose(\"No account provided in logout request, clearing all cache items.\");\r\n return [3 /*break*/, 9];\r\n case 8:\r\n _a.sent();\r\n this.logger.error(\"Attempted to clear all MSAL cache items and failed. Local cache unchanged.\");\r\n return [3 /*break*/, 9];\r\n case 9: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n return BaseInteractionClient;\r\n}());\n\nexport { BaseInteractionClient };\n//# sourceMappingURL=BaseInteractionClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __extends, __awaiter, __generator, __assign, __spread } from '../_virtual/_tslib.js';\nimport { Constants, UrlString, AuthorizationCodeClient, AuthorityFactory, ServerTelemetryManager, ProtocolUtils, ResponseMode, StringUtils, PersistentCacheKeys, IdToken, AuthenticationScheme } from '@azure/msal-common';\nimport { BaseInteractionClient } from './BaseInteractionClient.js';\nimport { BrowserConstants } from '../utils/BrowserConstants.js';\nimport { version } from '../packageMetadata.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { BrowserProtocolUtils } from '../utils/BrowserProtocolUtils.js';\nimport { BrowserUtils } from '../utils/BrowserUtils.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * Defines the class structure and helper functions used by the \"standard\", non-brokered auth flows (popup, redirect, silent (RT), silent (iframe))\r\n */\r\nvar StandardInteractionClient = /** @class */ (function (_super) {\r\n __extends(StandardInteractionClient, _super);\r\n function StandardInteractionClient(config, storageImpl, browserCrypto, logger, eventHandler, navigationClient, correlationId) {\r\n var _this = _super.call(this, config, storageImpl, browserCrypto, logger, eventHandler, correlationId) || this;\r\n _this.navigationClient = navigationClient;\r\n return _this;\r\n }\r\n /**\r\n * Generates an auth code request tied to the url request.\r\n * @param request\r\n */\r\n StandardInteractionClient.prototype.initializeAuthorizationCodeRequest = function (request) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var generatedPkceParams, authCodeRequest;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"initializeAuthorizationRequest called\", request.correlationId);\r\n return [4 /*yield*/, this.browserCrypto.generatePkceCodes()];\r\n case 1:\r\n generatedPkceParams = _a.sent();\r\n authCodeRequest = __assign(__assign({}, request), { redirectUri: request.redirectUri, code: \"\", codeVerifier: generatedPkceParams.verifier });\r\n request.codeChallenge = generatedPkceParams.challenge;\r\n request.codeChallengeMethod = Constants.S256_CODE_CHALLENGE_METHOD;\r\n return [2 /*return*/, authCodeRequest];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Initializer for the logout request.\r\n * @param logoutRequest\r\n */\r\n StandardInteractionClient.prototype.initializeLogoutRequest = function (logoutRequest) {\r\n this.logger.verbose(\"initializeLogoutRequest called\", logoutRequest === null || logoutRequest === void 0 ? void 0 : logoutRequest.correlationId);\r\n // Check if interaction is in progress. Throw error if true.\r\n if (this.browserStorage.isInteractionInProgress()) {\r\n throw BrowserAuthError.createInteractionInProgressError();\r\n }\r\n var validLogoutRequest = __assign({ correlationId: this.browserCrypto.createNewGuid() }, logoutRequest);\r\n /*\r\n * Only set redirect uri if logout request isn't provided or the set uri isn't null.\r\n * Otherwise, use passed uri, config, or current page.\r\n */\r\n if (!logoutRequest || logoutRequest.postLogoutRedirectUri !== null) {\r\n if (logoutRequest && logoutRequest.postLogoutRedirectUri) {\r\n this.logger.verbose(\"Setting postLogoutRedirectUri to uri set on logout request\", validLogoutRequest.correlationId);\r\n validLogoutRequest.postLogoutRedirectUri = UrlString.getAbsoluteUrl(logoutRequest.postLogoutRedirectUri, BrowserUtils.getCurrentUri());\r\n }\r\n else if (this.config.auth.postLogoutRedirectUri === null) {\r\n this.logger.verbose(\"postLogoutRedirectUri configured as null and no uri set on request, not passing post logout redirect\", validLogoutRequest.correlationId);\r\n }\r\n else if (this.config.auth.postLogoutRedirectUri) {\r\n this.logger.verbose(\"Setting postLogoutRedirectUri to configured uri\", validLogoutRequest.correlationId);\r\n validLogoutRequest.postLogoutRedirectUri = UrlString.getAbsoluteUrl(this.config.auth.postLogoutRedirectUri, BrowserUtils.getCurrentUri());\r\n }\r\n else {\r\n this.logger.verbose(\"Setting postLogoutRedirectUri to current page\", validLogoutRequest.correlationId);\r\n validLogoutRequest.postLogoutRedirectUri = UrlString.getAbsoluteUrl(BrowserUtils.getCurrentUri(), BrowserUtils.getCurrentUri());\r\n }\r\n }\r\n else {\r\n this.logger.verbose(\"postLogoutRedirectUri passed as null, not setting post logout redirect uri\", validLogoutRequest.correlationId);\r\n }\r\n return validLogoutRequest;\r\n };\r\n /**\r\n * Creates an Authorization Code Client with the given authority, or the default authority.\r\n * @param serverTelemetryManager\r\n * @param authorityUrl\r\n */\r\n StandardInteractionClient.prototype.createAuthCodeClient = function (serverTelemetryManager, authorityUrl) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var clientConfig;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.getClientConfiguration(serverTelemetryManager, authorityUrl)];\r\n case 1:\r\n clientConfig = _a.sent();\r\n return [2 /*return*/, new AuthorizationCodeClient(clientConfig)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Creates a Client Configuration object with the given request authority, or the default authority.\r\n * @param serverTelemetryManager\r\n * @param requestAuthority\r\n * @param requestCorrelationId\r\n */\r\n StandardInteractionClient.prototype.getClientConfiguration = function (serverTelemetryManager, requestAuthority) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var discoveredAuthority;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"getClientConfiguration called\");\r\n return [4 /*yield*/, this.getDiscoveredAuthority(requestAuthority)];\r\n case 1:\r\n discoveredAuthority = _a.sent();\r\n return [2 /*return*/, {\r\n authOptions: {\r\n clientId: this.config.auth.clientId,\r\n authority: discoveredAuthority,\r\n clientCapabilities: this.config.auth.clientCapabilities\r\n },\r\n systemOptions: {\r\n tokenRenewalOffsetSeconds: this.config.system.tokenRenewalOffsetSeconds,\r\n preventCorsPreflight: true\r\n },\r\n loggerOptions: {\r\n loggerCallback: this.config.system.loggerOptions.loggerCallback,\r\n piiLoggingEnabled: this.config.system.loggerOptions.piiLoggingEnabled,\r\n logLevel: this.config.system.loggerOptions.logLevel,\r\n correlationId: this.correlationId\r\n },\r\n cryptoInterface: this.browserCrypto,\r\n networkInterface: this.networkClient,\r\n storageInterface: this.browserStorage,\r\n serverTelemetryManager: serverTelemetryManager,\r\n libraryInfo: {\r\n sku: BrowserConstants.MSAL_SKU,\r\n version: version,\r\n cpu: \"\",\r\n os: \"\"\r\n }\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * @param hash\r\n * @param interactionType\r\n */\r\n StandardInteractionClient.prototype.validateAndExtractStateFromHash = function (hash, interactionType, requestCorrelationId) {\r\n this.logger.verbose(\"validateAndExtractStateFromHash called\", requestCorrelationId);\r\n // Deserialize hash fragment response parameters.\r\n var serverParams = UrlString.getDeserializedHash(hash);\r\n if (!serverParams.state) {\r\n throw BrowserAuthError.createHashDoesNotContainStateError();\r\n }\r\n var platformStateObj = BrowserProtocolUtils.extractBrowserRequestState(this.browserCrypto, serverParams.state);\r\n if (!platformStateObj) {\r\n throw BrowserAuthError.createUnableToParseStateError();\r\n }\r\n if (platformStateObj.interactionType !== interactionType) {\r\n throw BrowserAuthError.createStateInteractionTypeMismatchError();\r\n }\r\n this.logger.verbose(\"Returning state from hash\", requestCorrelationId);\r\n return serverParams.state;\r\n };\r\n /**\r\n * Used to get a discovered version of the default authority.\r\n * @param requestAuthority\r\n * @param requestCorrelationId\r\n */\r\n StandardInteractionClient.prototype.getDiscoveredAuthority = function (requestAuthority) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var authorityOptions;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"getDiscoveredAuthority called\");\r\n authorityOptions = {\r\n protocolMode: this.config.auth.protocolMode,\r\n knownAuthorities: this.config.auth.knownAuthorities,\r\n cloudDiscoveryMetadata: this.config.auth.cloudDiscoveryMetadata,\r\n authorityMetadata: this.config.auth.authorityMetadata\r\n };\r\n if (!requestAuthority) return [3 /*break*/, 2];\r\n this.logger.verbose(\"Creating discovered authority with request authority\");\r\n return [4 /*yield*/, AuthorityFactory.createDiscoveredInstance(requestAuthority, this.config.system.networkClient, this.browserStorage, authorityOptions)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n this.logger.verbose(\"Creating discovered authority with configured authority\");\r\n return [4 /*yield*/, AuthorityFactory.createDiscoveredInstance(this.config.auth.authority, this.config.system.networkClient, this.browserStorage, authorityOptions)];\r\n case 3: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n *\r\n * @param apiId\r\n * @param correlationId\r\n * @param forceRefresh\r\n */\r\n StandardInteractionClient.prototype.initializeServerTelemetryManager = function (apiId, forceRefresh) {\r\n this.logger.verbose(\"initializeServerTelemetryManager called\");\r\n var telemetryPayload = {\r\n clientId: this.config.auth.clientId,\r\n correlationId: this.correlationId,\r\n apiId: apiId,\r\n forceRefresh: forceRefresh || false,\r\n wrapperSKU: this.browserStorage.getWrapperMetadata()[0],\r\n wrapperVer: this.browserStorage.getWrapperMetadata()[1]\r\n };\r\n return new ServerTelemetryManager(telemetryPayload, this.browserStorage);\r\n };\r\n /**\r\n * Helper to validate app environment before making a request.\r\n * @param request\r\n * @param interactionType\r\n */\r\n StandardInteractionClient.prototype.preflightInteractiveRequest = function (request, interactionType) {\r\n this.logger.verbose(\"preflightInteractiveRequest called, validating app environment\", request === null || request === void 0 ? void 0 : request.correlationId);\r\n // block the reload if it occurred inside a hidden iframe\r\n BrowserUtils.blockReloadInHiddenIframes();\r\n // Check if interaction is in progress. Throw error if true.\r\n if (this.browserStorage.isInteractionInProgress(false)) {\r\n throw BrowserAuthError.createInteractionInProgressError();\r\n }\r\n return this.initializeAuthorizationRequest(request, interactionType);\r\n };\r\n /**\r\n * Helper to initialize required request parameters for interactive APIs and ssoSilent()\r\n * @param request\r\n * @param interactionType\r\n */\r\n StandardInteractionClient.prototype.initializeAuthorizationRequest = function (request, interactionType) {\r\n this.logger.verbose(\"initializeAuthorizationRequest called\");\r\n var redirectUri = this.getRedirectUri(request.redirectUri);\r\n var browserState = {\r\n interactionType: interactionType\r\n };\r\n var state = ProtocolUtils.setRequestState(this.browserCrypto, (request && request.state) || \"\", browserState);\r\n var validatedRequest = __assign(__assign({}, this.initializeBaseRequest(request)), { redirectUri: redirectUri, state: state, nonce: request.nonce || this.browserCrypto.createNewGuid(), responseMode: ResponseMode.FRAGMENT });\r\n var account = request.account || this.browserStorage.getActiveAccount();\r\n if (account) {\r\n this.logger.verbose(\"Setting validated request account\");\r\n this.logger.verbosePii(\"Setting validated request account: \" + account);\r\n validatedRequest.account = account;\r\n }\r\n // Check for ADAL/MSAL v1 SSO\r\n if (StringUtils.isEmpty(validatedRequest.loginHint) && !account) {\r\n // Only check for adal/msal token if no SSO params are being used\r\n var adalIdTokenString = this.browserStorage.getTemporaryCache(PersistentCacheKeys.ADAL_ID_TOKEN);\r\n if (adalIdTokenString) {\r\n this.browserStorage.removeItem(PersistentCacheKeys.ADAL_ID_TOKEN);\r\n this.logger.verbose(\"Cached ADAL id token retrieved.\");\r\n }\r\n // Check for cached MSAL v1 id token\r\n var msalIdTokenString = this.browserStorage.getTemporaryCache(PersistentCacheKeys.ID_TOKEN, true);\r\n if (msalIdTokenString) {\r\n this.browserStorage.removeItem(this.browserStorage.generateCacheKey(PersistentCacheKeys.ID_TOKEN));\r\n this.logger.verbose(\"Cached MSAL.js v1 id token retrieved\");\r\n }\r\n var cachedIdTokenString = msalIdTokenString || adalIdTokenString;\r\n if (cachedIdTokenString) {\r\n var cachedIdToken = new IdToken(cachedIdTokenString, this.browserCrypto);\r\n if (cachedIdToken.claims && cachedIdToken.claims.preferred_username) {\r\n this.logger.verbose(\"No SSO params used and ADAL/MSAL v1 token retrieved, setting ADAL/MSAL v1 preferred_username as loginHint\");\r\n validatedRequest.loginHint = cachedIdToken.claims.preferred_username;\r\n }\r\n else if (cachedIdToken.claims && cachedIdToken.claims.upn) {\r\n this.logger.verbose(\"No SSO params used and ADAL/MSAL v1 token retrieved, setting ADAL/MSAL v1 upn as loginHint\");\r\n validatedRequest.loginHint = cachedIdToken.claims.upn;\r\n }\r\n else {\r\n this.logger.verbose(\"No SSO params used and ADAL/MSAL v1 token retrieved, however, no account hint claim found. Enable preferred_username or upn id token claim to get SSO.\");\r\n }\r\n }\r\n }\r\n this.browserStorage.updateCacheEntries(validatedRequest.state, validatedRequest.nonce, validatedRequest.authority, validatedRequest.loginHint || \"\", validatedRequest.account || null);\r\n return validatedRequest;\r\n };\r\n /**\r\n * Initializer function for all request APIs\r\n * @param request\r\n */\r\n StandardInteractionClient.prototype.initializeBaseRequest = function (request) {\r\n this.logger.verbose(\"Initializing BaseAuthRequest\");\r\n var authority = request.authority || this.config.auth.authority;\r\n var scopes = __spread(((request && request.scopes) || []));\r\n // Set authenticationScheme to BEARER if not explicitly set in the request\r\n if (!request.authenticationScheme) {\r\n request.authenticationScheme = AuthenticationScheme.BEARER;\r\n this.logger.verbose(\"Authentication Scheme wasn't explicitly set in request, defaulting to \\\"Bearer\\\" request\");\r\n }\r\n else {\r\n this.logger.verbose(\"Authentication Scheme set to \\\"\" + request.authenticationScheme + \"\\\" as configured in Auth request\");\r\n }\r\n var validatedRequest = __assign(__assign({}, request), { correlationId: this.correlationId, authority: authority,\r\n scopes: scopes });\r\n return validatedRequest;\r\n };\r\n /**\r\n *\r\n * Use to get the redirect uri configured in MSAL or null.\r\n * @param requestRedirectUri\r\n * @returns Redirect URL\r\n *\r\n */\r\n StandardInteractionClient.prototype.getRedirectUri = function (requestRedirectUri) {\r\n this.logger.verbose(\"getRedirectUri called\");\r\n var redirectUri = requestRedirectUri || this.config.auth.redirectUri || BrowserUtils.getCurrentUri();\r\n return UrlString.getAbsoluteUrl(redirectUri, BrowserUtils.getCurrentUri());\r\n };\r\n return StandardInteractionClient;\r\n}(BaseInteractionClient));\n\nexport { StandardInteractionClient };\n//# sourceMappingURL=StandardInteractionClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { StringUtils, ClientAuthError, AuthorityFactory } from '@azure/msal-common';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { TemporaryCacheKeys } from '../utils/BrowserConstants.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * Abstract class which defines operations for a browser interaction handling class.\r\n */\r\nvar InteractionHandler = /** @class */ (function () {\r\n function InteractionHandler(authCodeModule, storageImpl, authCodeRequest, browserRequestLogger) {\r\n this.authModule = authCodeModule;\r\n this.browserStorage = storageImpl;\r\n this.authCodeRequest = authCodeRequest;\r\n this.browserRequestLogger = browserRequestLogger;\r\n }\r\n /**\r\n * Function to handle response parameters from hash.\r\n * @param locationHash\r\n */\r\n InteractionHandler.prototype.handleCodeResponse = function (locationHash, state, authority, networkModule) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var stateKey, requestState, authCodeResponse, nonceKey, cachedNonce, cachedCcsCred, tokenResponse;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.browserRequestLogger.verbose(\"InteractionHandler.handleCodeResponse called\");\r\n // Check that location hash isn't empty.\r\n if (StringUtils.isEmpty(locationHash)) {\r\n throw BrowserAuthError.createEmptyHashError(locationHash);\r\n }\r\n stateKey = this.browserStorage.generateStateKey(state);\r\n requestState = this.browserStorage.getTemporaryCache(stateKey);\r\n if (!requestState) {\r\n throw ClientAuthError.createStateNotFoundError(\"Cached State\");\r\n }\r\n authCodeResponse = this.authModule.handleFragmentResponse(locationHash, requestState);\r\n nonceKey = this.browserStorage.generateNonceKey(requestState);\r\n cachedNonce = this.browserStorage.getTemporaryCache(nonceKey);\r\n // Assign code to request\r\n this.authCodeRequest.code = authCodeResponse.code;\r\n if (!authCodeResponse.cloud_instance_host_name) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.updateTokenEndpointAuthority(authCodeResponse.cloud_instance_host_name, authority, networkModule)];\r\n case 1:\r\n _a.sent();\r\n _a.label = 2;\r\n case 2:\r\n authCodeResponse.nonce = cachedNonce || undefined;\r\n authCodeResponse.state = requestState;\r\n // Add CCS parameters if available\r\n if (authCodeResponse.client_info) {\r\n this.authCodeRequest.clientInfo = authCodeResponse.client_info;\r\n }\r\n else {\r\n cachedCcsCred = this.checkCcsCredentials();\r\n if (cachedCcsCred) {\r\n this.authCodeRequest.ccsCredential = cachedCcsCred;\r\n }\r\n }\r\n return [4 /*yield*/, this.authModule.acquireToken(this.authCodeRequest, authCodeResponse)];\r\n case 3:\r\n tokenResponse = _a.sent();\r\n this.browserStorage.cleanRequestByState(state);\r\n return [2 /*return*/, tokenResponse];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates authority based on cloudInstanceHostname\r\n * @param cloudInstanceHostname\r\n * @param authority\r\n * @param networkModule\r\n */\r\n InteractionHandler.prototype.updateTokenEndpointAuthority = function (cloudInstanceHostname, authority, networkModule) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var cloudInstanceAuthorityUri, cloudInstanceAuthority;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n cloudInstanceAuthorityUri = \"https://\" + cloudInstanceHostname + \"/\" + authority.tenant + \"/\";\r\n return [4 /*yield*/, AuthorityFactory.createDiscoveredInstance(cloudInstanceAuthorityUri, networkModule, this.browserStorage, authority.options)];\r\n case 1:\r\n cloudInstanceAuthority = _a.sent();\r\n this.authModule.updateAuthority(cloudInstanceAuthority);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Looks up ccs creds in the cache\r\n */\r\n InteractionHandler.prototype.checkCcsCredentials = function () {\r\n // Look up ccs credential in temp cache\r\n var cachedCcsCred = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.CCS_CREDENTIAL, true);\r\n if (cachedCcsCred) {\r\n try {\r\n return JSON.parse(cachedCcsCred);\r\n }\r\n catch (e) {\r\n this.authModule.logger.error(\"Cache credential could not be parsed\");\r\n this.authModule.logger.errorPii(\"Cache credential could not be parsed: \" + cachedCcsCred);\r\n }\r\n }\r\n return null;\r\n };\r\n return InteractionHandler;\r\n}());\n\nexport { InteractionHandler };\n//# sourceMappingURL=InteractionHandler.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar NavigationClient = /** @class */ (function () {\r\n function NavigationClient() {\r\n }\r\n /**\r\n * Navigates to other pages within the same web application\r\n * @param url\r\n * @param options\r\n */\r\n NavigationClient.prototype.navigateInternal = function (url, options) {\r\n return NavigationClient.defaultNavigateWindow(url, options);\r\n };\r\n /**\r\n * Navigates to other pages outside the web application i.e. the Identity Provider\r\n * @param url\r\n * @param options\r\n */\r\n NavigationClient.prototype.navigateExternal = function (url, options) {\r\n return NavigationClient.defaultNavigateWindow(url, options);\r\n };\r\n /**\r\n * Default navigation implementation invoked by the internal and external functions\r\n * @param url\r\n * @param options\r\n */\r\n NavigationClient.defaultNavigateWindow = function (url, options) {\r\n if (options.noHistory) {\r\n window.location.replace(url);\r\n }\r\n else {\r\n window.location.assign(url);\r\n }\r\n return new Promise(function (resolve) {\r\n setTimeout(function () {\r\n resolve(true);\r\n }, options.timeout);\r\n });\r\n };\r\n return NavigationClient;\r\n}());\n\nexport { NavigationClient };\n//# sourceMappingURL=NavigationClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { HTTP_REQUEST_TYPE } from '../utils/BrowserConstants.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * This class implements the Fetch API for GET and POST requests. See more here: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API\r\n */\r\nvar FetchClient = /** @class */ (function () {\r\n function FetchClient() {\r\n }\r\n /**\r\n * Fetch Client for REST endpoints - Get request\r\n * @param url\r\n * @param headers\r\n * @param body\r\n */\r\n FetchClient.prototype.sendGetRequestAsync = function (url, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, e_1, _a;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n _b.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, fetch(url, {\r\n method: HTTP_REQUEST_TYPE.GET,\r\n headers: this.getFetchHeaders(options)\r\n })];\r\n case 1:\r\n response = _b.sent();\r\n return [3 /*break*/, 3];\r\n case 2:\r\n e_1 = _b.sent();\r\n if (window.navigator.onLine) {\r\n throw BrowserAuthError.createGetRequestFailedError(e_1, url);\r\n }\r\n else {\r\n throw BrowserAuthError.createNoNetworkConnectivityError();\r\n }\r\n case 3:\r\n _b.trys.push([3, 5, , 6]);\r\n _a = {\r\n headers: this.getHeaderDict(response.headers)\r\n };\r\n return [4 /*yield*/, response.json()];\r\n case 4: return [2 /*return*/, (_a.body = (_b.sent()),\r\n _a.status = response.status,\r\n _a)];\r\n case 5:\r\n _b.sent();\r\n throw BrowserAuthError.createFailedToParseNetworkResponseError(url);\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Fetch Client for REST endpoints - Post request\r\n * @param url\r\n * @param headers\r\n * @param body\r\n */\r\n FetchClient.prototype.sendPostRequestAsync = function (url, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var reqBody, response, e_3, _a;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n reqBody = (options && options.body) || \"\";\r\n _b.label = 1;\r\n case 1:\r\n _b.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, fetch(url, {\r\n method: HTTP_REQUEST_TYPE.POST,\r\n headers: this.getFetchHeaders(options),\r\n body: reqBody\r\n })];\r\n case 2:\r\n response = _b.sent();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_3 = _b.sent();\r\n if (window.navigator.onLine) {\r\n throw BrowserAuthError.createPostRequestFailedError(e_3, url);\r\n }\r\n else {\r\n throw BrowserAuthError.createNoNetworkConnectivityError();\r\n }\r\n case 4:\r\n _b.trys.push([4, 6, , 7]);\r\n _a = {\r\n headers: this.getHeaderDict(response.headers)\r\n };\r\n return [4 /*yield*/, response.json()];\r\n case 5: return [2 /*return*/, (_a.body = (_b.sent()),\r\n _a.status = response.status,\r\n _a)];\r\n case 6:\r\n _b.sent();\r\n throw BrowserAuthError.createFailedToParseNetworkResponseError(url);\r\n case 7: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Get Fetch API Headers object from string map\r\n * @param inputHeaders\r\n */\r\n FetchClient.prototype.getFetchHeaders = function (options) {\r\n var headers = new Headers();\r\n if (!(options && options.headers)) {\r\n return headers;\r\n }\r\n var optionsHeaders = options.headers;\r\n Object.keys(optionsHeaders).forEach(function (key) {\r\n headers.append(key, optionsHeaders[key]);\r\n });\r\n return headers;\r\n };\r\n FetchClient.prototype.getHeaderDict = function (headers) {\r\n var headerDict = {};\r\n headers.forEach(function (value, key) {\r\n headerDict[key] = value;\r\n });\r\n return headerDict;\r\n };\r\n return FetchClient;\r\n}());\n\nexport { FetchClient };\n//# sourceMappingURL=FetchClient.js.map\n","/*! @azure/msal-browser v2.17.0 2021-09-08 */\n'use strict';\nimport { __awaiter, __generator } from '../_virtual/_tslib.js';\nimport { BrowserAuthError } from '../error/BrowserAuthError.js';\nimport { HTTP_REQUEST_TYPE } from '../utils/BrowserConstants.js';\n\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * This client implements the XMLHttpRequest class to send GET and POST requests.\r\n */\r\nvar XhrClient = /** @class */ (function () {\r\n function XhrClient() {\r\n }\r\n /**\r\n * XhrClient for REST endpoints - Get request\r\n * @param url\r\n * @param headers\r\n * @param body\r\n */\r\n XhrClient.prototype.sendGetRequestAsync = function (url, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.sendRequestAsync(url, HTTP_REQUEST_TYPE.GET, options)];\r\n });\r\n });\r\n };\r\n /**\r\n * XhrClient for REST endpoints - Post request\r\n * @param url\r\n * @param headers\r\n * @param body\r\n */\r\n XhrClient.prototype.sendPostRequestAsync = function (url, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.sendRequestAsync(url, HTTP_REQUEST_TYPE.POST, options)];\r\n });\r\n });\r\n };\r\n /**\r\n * Helper for XhrClient requests.\r\n * @param url\r\n * @param method\r\n * @param options\r\n */\r\n XhrClient.prototype.sendRequestAsync = function (url, method, options) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n var xhr = new XMLHttpRequest();\r\n xhr.open(method, url, /* async: */ true);\r\n _this.setXhrHeaders(xhr, options);\r\n xhr.onload = function () {\r\n if (xhr.status < 200 || xhr.status >= 300) {\r\n if (method === HTTP_REQUEST_TYPE.POST) {\r\n reject(BrowserAuthError.createPostRequestFailedError(\"Failed with status \" + xhr.status, url));\r\n }\r\n else {\r\n reject(BrowserAuthError.createGetRequestFailedError(\"Failed with status \" + xhr.status, url));\r\n }\r\n }\r\n try {\r\n var jsonResponse = JSON.parse(xhr.responseText);\r\n var networkResponse = {\r\n headers: _this.getHeaderDict(xhr),\r\n body: jsonResponse,\r\n status: xhr.status\r\n };\r\n resolve(networkResponse);\r\n }\r\n catch (e) {\r\n reject(BrowserAuthError.createFailedToParseNetworkResponseError(url));\r\n }\r\n };\r\n xhr.onerror = function () {\r\n if (window.navigator.onLine) {\r\n if (method === HTTP_REQUEST_TYPE.POST) {\r\n reject(BrowserAuthError.createPostRequestFailedError(\"Failed with status \" + xhr.status, url));\r\n }\r\n else {\r\n reject(BrowserAuthError.createGetRequestFailedError(\"Failed with status \" + xhr.status, url));\r\n }\r\n }\r\n else {\r\n reject(BrowserAuthError.createNoNetworkConnectivityError());\r\n }\r\n };\r\n if (method === HTTP_REQUEST_TYPE.POST && options && options.body) {\r\n xhr.send(options.body);\r\n }\r\n else if (method === HTTP_REQUEST_TYPE.GET) {\r\n xhr.send();\r\n }\r\n else {\r\n throw BrowserAuthError.createHttpMethodNotImplementedError(method);\r\n }\r\n });\r\n };\r\n /**\r\n * Helper to set XHR headers for request.\r\n * @param xhr\r\n * @param options\r\n */\r\n XhrClient.prototype.setXhrHeaders = function (xhr, options) {\r\n if (options && options.headers) {\r\n var headers_1 = options.headers;\r\n Object.keys(headers_1).forEach(function (key) {\r\n xhr.setRequestHeader(key, headers_1[key]);\r\n });\r\n }\r\n };\r\n /**\r\n * Gets a string map of the headers received in the response.\r\n *\r\n * Algorithm comes from https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders\r\n * @param xhr\r\n */\r\n XhrClient.prototype.getHeaderDict = function (xhr) {\r\n var headerString = xhr.getAllResponseHeaders();\r\n var headerArr = headerString.trim().split(/[\\r\\n]+/);\r\n var headerDict = {};\r\n headerArr.forEach(function (value) {\r\n var parts = value.split(\": \");\r\n var headerName = parts.shift();\r\n var headerVal = parts.join(\": \");\r\n if (headerName && headerVal) {\r\n headerDict[headerName] = headerVal;\r\n }\r\n });\r\n return headerDict;\r\n };\r\n return XhrClient;\r\n}());\n\nexport { XhrClient };\n//# sourceMappingURL=XhrClient.js.map\n"],"names":["Base64Decode","prototype","decode","input","encodedString","replace","length","Error","inputUtf8Arr","this","base64DecToArr","base64String","nBlockSize","sB64Enc","nInLen","nOutLen","Math","ceil","aBytes","Uint8Array","nMod3","nMod4","nUint24","nOutIdx","nInIdx","b64ToUint6","charCodeAt","charNum","Base64Encode","urlEncode","encodeURIComponent","encode","urlEncodeArr","inputArr","base64EncArr","eqLen","nLen","nIdx","String","fromCharCode","uint6ToB64","substring","nUint6","BrowserAuthErrorMessage","pkceNotGenerated","code","desc","cryptoDoesNotExist","httpMethodNotImplementedError","emptyNavigateUriError","hashEmptyError","hashDoesNotContainStateError","hashDoesNotContainKnownPropertiesError","unableToParseStateError","stateInteractionTypeMismatchError","interactionInProgress","popupWindowError","emptyWindowError","userCancelledError","monitorPopupTimeoutError","monitorIframeTimeoutError","redirectInIframeError","blockTokenRequestsInHiddenIframeError","blockAcquireTokenInPopupsError","iframeClosedPrematurelyError","silentSSOInsufficientInfoError","silentLogoutUnsupportedError","noAccountError","silentPromptValueError","noTokenRequestCacheError","unableToParseTokenRequestCacheError","noCachedAuthorityError","authRequestNotSet","invalidCacheType","notInBrowserEnvironment","databaseNotOpen","noNetworkConnectivity","postRequestFailed","getRequestFailed","failedToParseNetworkResponse","unableToLoadTokenError","signingKeyNotFoundInStorage","BrowserAuthError","_super","errorCode","errorMessage","_this","call","Object","setPrototypeOf","name","createPkceNotGeneratedError","errDetail","createCryptoNotAvailableError","createHttpMethodNotImplementedError","method","createEmptyNavigationUriError","createEmptyHashError","hashValue","createHashDoesNotContainStateError","createHashDoesNotContainKnownPropertiesError","createUnableToParseStateError","createStateInteractionTypeMismatchError","createInteractionInProgressError","createPopupWindowError","createEmptyWindowCreatedError","createUserCancelledError","createMonitorPopupTimeoutError","createMonitorIframeTimeoutError","createRedirectInIframeError","windowParentCheck","createBlockReloadInHiddenIframeError","createBlockAcquireTokenInPopupsError","createIframeClosedPrematurelyError","createSilentSSOInsufficientInfoError","createSilentLogoutUnsupportedError","createNoAccountError","createSilentPromptValueError","givenPrompt","createUnableToParseTokenRequestCacheError","createNoTokenRequestCacheError","createAuthRequestNotSetError","createNoCachedAuthorityError","createInvalidCacheTypeError","createNonBrowserEnvironmentError","createDatabaseNotOpenError","createNoNetworkConnectivityError","createPostRequestFailedError","errorDesc","endpoint","split","createGetRequestFailedError","createFailedToParseNetworkResponseError","createUnableToLoadTokenError","errorDetail","createSigningKeyNotFoundInStorageError","keyId","BrowserConfigurationAuthErrorMessage","BrowserConfigurationAuthError","createRedirectUriEmptyError","createPostLogoutRedirectUriEmptyError","createStorageNotSupportedError","givenStorageLocation","createRedirectCallbacksNotSetError","createStubPcaInstanceCalledError","createInMemoryRedirectUnavailableError","EventHandler","logger","browserCrypto","eventCallbacks","Map","addEventCallback","callback","window","callbackId","createNewGuid","set","verbose","removeEventCallback","delete","emitEvent","eventType","interactionType","payload","error","message_1","timestamp","Date","now","info","forEach","apply","EventMessageUtils","getInteractionStatusFromEvent","message","currentStatus","EventType","PopupHandler","authCodeModule","storageImpl","authCodeRequest","browserRequestLogger","popupUtils","PopupUtils","initiateAuthRequest","requestUrl","params","StringUtils","browserStorage","setInteractionInProgress","infoPii","openPopup","monitorPopupForHash","popupWindow","monitorPopupForSameOrigin","then","contentHash","location","hash","BrowserUtils","cleanPopup","href","UrlString","InteractionHandler","I","PopupClient","arguments","acquireToken","request","validRequest","preflightInteractiveRequest","popupName","config","auth","clientId","popupWindowAttributes","system","asyncPopups","acquireTokenPopupAsync","popup","e","Promise","reject","logout","logoutRequest","validLogoutRequest","initializeLogoutRequest","authority","mainWindowRedirectUri","logoutPopupAsync","undefined","serverTelemetryManager","authClient","navigateUrl","interactionHandler","popupParameters","state","e_1","_a","label","initializeServerTelemetryManager","trys","push","initializeAuthorizationCodeRequest","sent","createAuthCodeClient","getAuthCodeUrl","eventHandler","validateAndExtractStateFromHash","correlationId","ThrottlingUtils","handleCodeResponse","networkClient","close","AuthError","setCorrelationId","cacheFailedRequest","cleanRequestByState","requestAuthority","logoutUri","e_2","navigationOptions","absoluteUrl","e_3","clearCacheOnLogout","account","getLogoutUri","apiId","timeout","redirectNavigationTimeout","noHistory","verbosePii","navigationClient","navigateInternal","StandardInteractionClient","RedirectHandler","redirectStartPage","setTemporaryCache","cacheCodeRequest","redirectTimeout","onRedirectNavigate","navigateExternal","locationHash","networkModule","stateKey","requestState","authCodeResponse","nonceKey","cachedNonce","cachedCcsCred","tokenResponse","generateStateKey","getTemporaryCache","ClientAuthError","authModule","handleFragmentResponse","generateNonceKey","cloud_instance_host_name","updateTokenEndpointAuthority","nonce","client_info","clientInfo","checkCcsCredentials","ccsCredential","RedirectClient","getRedirectStartPage","handleRedirectPromise","responseHash","loginRequestUrl","loginRequestUrlNormalized","currentUrlNormalized","handleHashResult","processHashOnRedirect","homepage","isInteractionInProgress","getRedirectResponseHash","cleanRequestByInteractionType","navigateToLoginRequestUrl","handleHash","indexOf","warning","isResponseHash","cachedHash","removeItem","generateCacheKey","cachedRequest","currentAuthority","getCachedRequest","getCachedAuthority","requestStartPage","SilentCacheClient","silentRequest","silentAuthClient","cachedToken","error_1","createSilentFlowClient","acquireCachedToken","authorityUrl","clientConfig","getClientConfiguration","initializeSilentRequest","initializeBaseRequest","forceRefresh","SilentHandler","navigateFrameWait","_b","loadFrame","loadFrameSync","monitorIframeForHash","iframe","resolve","timeoutMark","performance","intervalId","setInterval","removeHiddenIframe","clearInterval","Constants","contentWindow","BrowserConstants","urlNavigate","frameHandle","createHiddenIframe","setTimeout","src","authFrame","document","createElement","style","visibility","position","width","height","border","setAttribute","getElementsByTagName","appendChild","body","parentNode","removeChild","SilentIframeClient","loginHint","sid","username","prompt","initializeAuthorizationRequest","silentTokenHelper","silentHandler","msalFrame","iframeHashTimeout","SilentRefreshClient","refreshTokenClient","createRefreshTokenClient","acquireTokenByRefreshToken","catch","BaseInteractionClient","clone","AccountEntity","getActiveAccount","setActiveAccount","removeAccount","clear","clearKeystore","generatedPkceParams","generatePkceCodes","redirectUri","codeVerifier","verifier","codeChallenge","challenge","codeChallengeMethod","postLogoutRedirectUri","AuthorizationCodeClient","discoveredAuthority","getDiscoveredAuthority","authOptions","clientCapabilities","systemOptions","tokenRenewalOffsetSeconds","preventCorsPreflight","loggerOptions","loggerCallback","piiLoggingEnabled","logLevel","cryptoInterface","networkInterface","storageInterface","libraryInfo","sku","version","cpu","os","requestCorrelationId","serverParams","platformStateObj","BrowserProtocolUtils","authorityOptions","protocolMode","knownAuthorities","cloudDiscoveryMetadata","authorityMetadata","AuthorityFactory","A","telemetryPayload","wrapperSKU","getWrapperMetadata","wrapperVer","ServerTelemetryManager","getRedirectUri","browserState","ProtocolUtils","validatedRequest","responseMode","adalIdTokenString","msalIdTokenString","cachedIdTokenString","cachedIdToken","claims","preferred_username","upn","updateCacheEntries","scopes","authenticationScheme","requestRedirectUri","cloudInstanceHostname","cloudInstanceAuthorityUri","cloudInstanceAuthority","tenant","options","updateAuthority","JSON","parse","errorPii","NavigationClient","url","defaultNavigateWindow","assign","FetchClient","sendGetRequestAsync","response","fetch","headers","getFetchHeaders","navigator","onLine","getHeaderDict","json","status","sendPostRequestAsync","reqBody","Headers","optionsHeaders","keys","key","append","headerDict","value","XhrClient","sendRequestAsync","xhr","XMLHttpRequest","open","setXhrHeaders","onload","jsonResponse","responseText","networkResponse","onerror","send","headers_1","setRequestHeader","headerArr","getAllResponseHeaders","trim","parts","headerName","shift","headerVal","join"],"sourceRoot":""}