evals-lab 0.16.1 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/README.md +12 -11
- package/bin/evals-lab.js +5 -1
- package/bin/update.js +65 -0
- package/lab/VERSION +1 -1
- package/lab/demo/CREDITS.md +4 -3
- package/lab/demo/datasets/recorded-replies.json +39 -0
- package/lab/demo/manifest.json +2 -2
- package/lab/demo/pipelines/recorded-replies.json +89 -0
- package/lab/demo/sources/Demo 1/basketball-hoop.jpg +0 -0
- package/lab/demo/sources/Demo 1/blue-boardwalk.jpg +0 -0
- package/lab/demo/sources/Demo 1/busy-beach.jpg +0 -0
- package/lab/demo/sources/Demo 1/butcher-sign.jpg +0 -0
- package/lab/demo/sources/Demo 1/cactus-flower.jpg +0 -0
- package/lab/demo/sources/Demo 1/corner-shop.jpg +0 -0
- package/lab/demo/sources/Demo 1/crosswalk-cyclist-panorama.jpg +0 -0
- package/lab/demo/sources/Demo 1/cyanotype-room.jpg +0 -0
- package/lab/demo/sources/Demo 1/dead-end-sign.jpg +0 -0
- package/lab/demo/sources/Demo 1/dog-in-snow.jpg +0 -0
- package/lab/demo/sources/Demo 1/empty-bedroom.jpg +0 -0
- package/lab/demo/sources/Demo 1/farmers-market-stall.jpg +0 -0
- package/lab/demo/sources/Demo 1/four-jets.jpg +0 -0
- package/lab/demo/sources/Demo 1/german-shepherd.jpg +0 -0
- package/lab/demo/sources/Demo 1/harbour-bridge-dusk.jpg +0 -0
- package/lab/demo/sources/Demo 1/harrow-on-the-hill-sign.jpg +0 -0
- package/lab/demo/sources/Demo 1/hong-kong-street.jpg +0 -0
- package/lab/demo/sources/Demo 1/house-salisbury-street.jpg +0 -0
- package/lab/demo/sources/Demo 1/infrared-orchard.jpg +0 -0
- package/lab/demo/sources/Demo 1/keyboard-desk.jpg +0 -0
- package/lab/demo/sources/Demo 1/lighthouse-dunes.jpg +0 -0
- package/lab/demo/sources/Demo 1/mountain-lake.jpg +0 -0
- package/lab/demo/sources/Demo 1/museum-skeleton.jpg +0 -0
- package/lab/demo/sources/Demo 1/music-room.jpg +0 -0
- package/lab/demo/sources/Demo 1/old-red-car.jpg +0 -0
- package/lab/demo/sources/Demo 1/parked-car-plate.jpg +0 -0
- package/lab/demo/sources/Demo 1/phone-and-wallet.png +0 -0
- package/lab/demo/sources/Demo 1/phone-box.jpg +0 -0
- package/lab/demo/sources/Demo 1/pink-flamingo.jpg +0 -0
- package/lab/demo/sources/Demo 1/postcards.jpg +0 -0
- package/lab/demo/sources/Demo 1/red-roof-church.jpg +0 -0
- package/lab/demo/sources/Demo 1/roadside-mailboxes.jpg +0 -0
- package/lab/demo/sources/Demo 1/rodeo.jpg +0 -0
- package/lab/demo/sources/Demo 1/running-tap.tif +0 -0
- package/lab/demo/sources/Demo 1/snail-on-stem.jpg +0 -0
- package/lab/demo/sources/Demo 1/two-horses-field.jpg +0 -0
- package/lab/demo/sources/Demo 1/university-sign.jpg +0 -0
- package/lab/demo/sources/Demo 1/vegetable-crates.jpg +0 -0
- package/lab/demo/sources/Demo 1/watermarked-car.jpg +0 -0
- package/lab/demo/sources/Demo 1/watermarked-pills.jpg +0 -0
- package/lab/demo/sources/Demo 1/whiteboard-delegate.jpg +0 -0
- package/lab/demo/sources/Demo 1/whiteboard-germ-layers.jpg +0 -0
- package/lab/demo/sources/Demo 2/aerial-city.jpg +0 -0
- package/lab/demo/sources/Demo 2/alligator-pen.jpg +0 -0
- package/lab/demo/sources/Demo 2/arm-tattoo.jpg +0 -0
- package/lab/demo/sources/Demo 2/bed-and-plant.jpg +0 -0
- package/lab/demo/sources/Demo 2/bright-bedroom.jpg +0 -0
- package/lab/demo/sources/Demo 2/car-headlight.jpg +0 -0
- package/lab/demo/sources/Demo 2/child-in-surf.jpg +0 -0
- package/lab/demo/sources/Demo 2/city-highway.jpg +0 -0
- package/lab/demo/sources/Demo 2/corner-bakery.jpg +0 -0
- package/lab/demo/sources/Demo 2/cyclist-yellow-jacket.jpg +0 -0
- package/lab/demo/sources/Demo 2/excavator-street-signs.jpg +0 -0
- package/lab/demo/sources/Demo 2/globe-closeup.jpg +0 -0
- package/lab/demo/sources/Demo 2/harbour-village.jpg +0 -0
- package/lab/demo/sources/Demo 2/high-street-walkers.jpg +0 -0
- package/lab/demo/sources/Demo 2/hillside-rooftops.jpg +0 -0
- package/lab/demo/sources/Demo 2/house-at-night.jpg +0 -0
- package/lab/demo/sources/Demo 2/ivy-leaves.jpg +0 -0
- package/lab/demo/sources/Demo 2/man-with-alligator.jpg +0 -0
- package/lab/demo/sources/Demo 2/orange-mailbox-hedge.jpg +0 -0
- package/lab/demo/sources/Demo 2/pedal-boats.jpg +0 -0
- package/lab/demo/sources/Demo 2/pink-trees-vignette.jpg +0 -0
- package/lab/demo/sources/Demo 2/please-leave-quietly-sign.jpg +0 -0
- package/lab/demo/sources/Demo 2/railroad-crossing-sign.jpg +0 -0
- package/lab/demo/sources/Demo 2/roadworks-sign.jpg +0 -0
- package/lab/demo/sources/Demo 2/roundabout-sign.jpg +0 -0
- package/lab/demo/sources/Demo 2/sea-cave.jpg +0 -0
- package/lab/demo/sources/Demo 2/shadow-on-sand.jpg +0 -0
- package/lab/demo/sources/Demo 2/signpost-a404.jpg +0 -0
- package/lab/demo/sources/Demo 2/street-fruit-cart.jpg +0 -0
- package/lab/demo/sources/Demo 2/street-sign-parnassusweg.jpg +0 -0
- package/lab/demo/sources/Demo 2/two-horses-close.jpg +0 -0
- package/lab/demo/sources/Demo 2/victorian-house.jpg +0 -0
- package/lab/demo/sources/Demo 2/vintage-dashboard.jpg +0 -0
- package/lab/demo/sources/Demo 2/volcano-at-dusk.jpg +0 -0
- package/lab/demo/sources/Demo 2/wall-camera.jpg +0 -0
- package/lab/demo/sources/Demo 2/watch-for-rocks-sign.jpg +0 -0
- package/lab/demo/sources/Demo 2/waterfall.jpg +0 -0
- package/lab/demo/sources/Demo 2/white-domes.jpg +0 -0
- package/lab/demo/sources/Demo 2/whiteboard-meeting-notes.jpg +0 -0
- package/lab/demo/sources/Demo 2/whiteboard-messages.jpg +0 -0
- package/lab/demo/sources/Demo 2/wooden-house-fence.jpg +0 -0
- package/lab/kinds/list.mjs +11 -3
- package/lab/server.py +19 -1
- package/lab/web/dist/assets/dist-BfJnsQb9.js +1 -0
- package/lab/web/dist/assets/gallery-Dv7iXLfa.js +5 -0
- package/lab/web/dist/assets/main-DS76udej.css +1 -0
- package/lab/web/dist/assets/main-DaObzKJz.js +18 -0
- package/lab/web/dist/assets/tokens-z9rSXnjM.js +64 -0
- package/lab/web/dist/gallery.html +2 -2
- package/lab/web/dist/index.html +3 -3
- package/package.json +3 -3
- package/lab/web/dist/assets/dist-DI3ewZYj.js +0 -1
- package/lab/web/dist/assets/gallery-ICJNZQIZ.js +0 -5
- package/lab/web/dist/assets/main-Crw-d4cy.js +0 -18
- package/lab/web/dist/assets/main-Dxf5iQLA.css +0 -1
- package/lab/web/dist/assets/tokens-C5ist-xG.js +0 -64
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`client_id`,t=`redirect_uri`,n=`token_type`,r=`req_cnf`,i=`brk_client_id`,a=`brk_redirect_uri`,o=`attribute_tokens`,s=`pocd`,c=`msal.js.common`,l=`https://login.microsoftonline.com/common/`,u=`common`,d=`${l}discovery/instance?api-version=1.1&authorization_endpoint=`,f=`.ciamlogin.com`,p=`.onmicrosoft.com`,m=`openid`,h=`profile`,g=`offline_access`,_=`email`,ee=`S256`,te=`application/x-www-form-urlencoded;charset=utf-8`,ne=`http://169.254.169.254/metadata/instance/compute`,re=`2021-02-01`,ie=2e3,ae=`login.microsoft.com`,oe=[`login.microsoftonline.com`,`login.windows.net`,`login.microsoft.com`,`sts.windows.net`],se={GET:`GET`,POST:`POST`},ce=[m,h,g],le=[...ce,_],v={CONTENT_TYPE:`Content-Type`,CONTENT_LENGTH:`Content-Length`,DPOP:`DPoP`,RETRY_AFTER:`Retry-After`,CCS_HEADER:`X-AnchorMailbox`,WWWAuthenticate:`WWW-Authenticate`,AuthenticationInfo:`Authentication-Info`,X_MS_REQUEST_ID:`x-ms-request-id`,X_MS_HTTP_VERSION:`x-ms-httpver`},ue={ACTIVE_ACCOUNT_FILTERS:`active-account-filters`},de={COMMON:`common`,ORGANIZATIONS:`organizations`,CONSUMERS:`consumers`},fe={ACCESS_TOKEN:`access_token`,XMS_CC:`xms_cc`,ID_TOKEN:`id_token`,SIGNIN_STATE:`signin_state`,LOGIN_HINT:`login_hint`,TENANT_REGION_SUB_SCOPE:`tenant_region_sub_scope`},y={LOGIN:`login`,SELECT_ACCOUNT:`select_account`,CONSENT:`consent`,NONE:`none`,CREATE:`create`,NO_SESSION:`no_session`},pe={CODE:`code`,IDTOKEN_TOKEN:`id_token token`,IDTOKEN_TOKEN_REFRESHTOKEN:`id_token token refresh_token`},b={QUERY:`query`,FRAGMENT:`fragment`,FORM_POST:`form_post`},me={IMPLICIT_GRANT:`implicit`,AUTHORIZATION_CODE_GRANT:`authorization_code`,CLIENT_CREDENTIALS_GRANT:`client_credentials`,RESOURCE_OWNER_PASSWORD_GRANT:`password`,REFRESH_TOKEN_GRANT:`refresh_token`,DEVICE_CODE_GRANT:`device_code`,JWT_BEARER:`urn:ietf:params:oauth:grant-type:jwt-bearer`,USER_FIC:`user_fic`},he=`MSSTS`,ge=`ADFS`,_e=`Generic`,x={ID_TOKEN:`IdToken`,ACCESS_TOKEN:`AccessToken`,ACCESS_TOKEN_WITH_AUTH_SCHEME:`AccessToken_With_AuthScheme`,REFRESH_TOKEN:`RefreshToken`},ve=`appmetadata`,ye=`client_info`,be=`authority-metadata`,xe=86400,S={CONFIG:`config`,CACHE:`cache`,NETWORK:`network`,HARDCODED_VALUES:`hardcoded_values`},Se=`server-telemetry`,Ce=`unknown_error`,C={BEARER:`Bearer`,POP:`pop`,DPOP:`DPoP`,SSH:`ssh-cert`},we=3600,Te=`throttling`,Ee=`retry-after, h429`,De={FAILED_AUTO_DETECTION:`1`,INTERNAL_CACHE:`2`,ENVIRONMENT_VARIABLE:`3`,IMDS:`4`},Oe={CONFIGURED_MATCHES_DETECTED:`1`,CONFIGURED_NO_AUTO_DETECTION:`2`,CONFIGURED_NOT_DETECTED:`3`,AUTO_DETECTION_REQUESTED_SUCCESSFUL:`4`,AUTO_DETECTION_REQUESTED_FAILED:`5`},ke={NOT_APPLICABLE:`0`,FORCE_REFRESH_OR_CLAIMS:`1`,NO_CACHED_ACCESS_TOKEN:`2`,CACHED_ACCESS_TOKEN_EXPIRED:`3`,PROACTIVELY_REFRESHED:`4`},Ae={Jwt:`JWT`,Jwk:`JWK`,Pop:`pop`,Dpop:`dpop+jwt`};function je(e){return`See https://aka.ms/msal.js.errors#${e} for details`}var w=class e extends Error{constructor(t,n,r,i){let a=r||(t?je(t):``),o=a?`${t}: ${a}`:t;super(o),Object.setPrototypeOf(this,e.prototype),this.errorCode=t||``,this.errorMessage=a||``,this.subError=i||``,this.correlationId=n,this.name=`AuthError`}};function T(e,t,n){return new w(e,t,n||je(e))}var Me=class e extends w{constructor(t,n,r){super(t,n,r),this.name=`ClientAuthError`,Object.setPrototypeOf(this,e.prototype)}};function E(e,t,n){return new Me(e,t,n)}var Ne=`client_info_decoding_error`,Pe=`client_info_empty_error`,Fe=`token_parsing_error`,Ie=`null_or_empty_token`,Le=`endpoints_resolution_error`,Re=`network_error`,ze=`openid_config_error`,Be=`hash_not_deserialized`,Ve=`invalid_state`,He=`state_mismatch`,Ue=`state_not_found`,We=`nonce_mismatch`,Ge=`multiple_matching_appMetadata`,Ke=`request_cannot_be_made`,qe=`cannot_remove_empty_scope`,Je=`cannot_append_scopeset`,Ye=`empty_input_scopeset`,Xe=`no_account_in_silent_request`,Ze=`invalid_cache_record`,Qe=`invalid_cache_environment`,$e=`no_account_found`,et=`no_crypto_object`,tt=`dpop_token_type_mismatch`,nt=`token_refresh_required`,rt=`token_claims_cnf_required_for_signedjwt`,it=`authorization_code_missing_from_server_response`,at=`binding_key_not_removed`,ot=`end_session_endpoint_not_supported`,st=`key_id_missing`,D=`method_not_implemented`,ct=`resource_parameter_required`,lt=`misplaced_resource_parameter`;function ut(e,t){if(!e)throw E(Pe,``);try{let n=t(e);return JSON.parse(n)}catch{throw E(Ne,``)}}function dt(e){if(!e)throw E(Ne,``);let t=e.split(`.`,2);return{uid:t[0],utid:t.length<2?``:t[1]}}function O(e,t,n){let r=ft(e,n);try{let e=t(r);return JSON.parse(e)}catch{throw E(Fe,n)}}function k(e){if(!e.signin_state)return!1;let t=[`kmsi`,`dvc_dmjd`];return e.signin_state.some(e=>t.includes(e.trim().toLowerCase()))}function ft(e,t){if(!e)throw E(Ie,t);let n=/^([^\.\s]*)\.([^\.\s]+)\.([^\.\s]*)$/.exec(e);if(!n||n.length<4)throw E(Fe,t);return n[2]}function pt(e,t){return!!e&&!!t&&e===t.split(`.`)[1]}function mt(e,t,n,r,i){if(i){let{oid:t,sub:n,tid:a,name:o,tfp:s,acr:c,preferred_username:l,upn:u,login_hint:d}=i,f=a||s||c||``;return{tenantId:f,localAccountId:t||n||``,name:o,username:l||u||``,loginHint:d,isHomeTenant:pt(f,e),upn:u,...r&&{nativeAccountId:r}}}return{tenantId:n,localAccountId:t,username:``,isHomeTenant:pt(n,e),...r&&{nativeAccountId:r}}}function ht(e,t,n,r){let i=e;if(t){let{isHomeTenant:n,...r}=t;i={...e,...r}}if(n){let{isHomeTenant:t,...a}=mt(e.homeAccountId,e.localAccountId,e.tenantId,i.nativeAccountId,n);return i={...i,...a,idTokenClaims:n,idToken:r,kmsi:k(n)},i}return i}var gt={Default:0,Adfs:1,Ciam:3};function _t(e){return e&&(e.tid||e.tfp||e.acr)||null}var A={AAD:`AAD`,OIDC:`OIDC`,EAR:`EAR`};function vt(e){let t=e.tenantProfiles||[];t.length===0&&e.realm&&e.localAccountId&&t.push(mt(e.homeAccountId,e.localAccountId,e.realm,e.nativeAccountId));let n=t.find(t=>t.tenantId===e.realm)?.nativeAccountId||e.nativeAccountId;return{homeAccountId:e.homeAccountId,environment:e.environment,tenantId:e.realm,username:e.username,localAccountId:e.localAccountId,loginHint:e.loginHint,name:e.name,nativeAccountId:n,authorityType:e.authorityType,tenantProfiles:new Map(t.map(e=>[e.tenantId,e])),dataBoundary:e.dataBoundary}}function yt(e,t,n,r){let i;i=t.authorityType===gt.Adfs?ge:t.protocolMode===A.OIDC?_e:he;let a,o;e.clientInfo&&r&&(a=ut(e.clientInfo,r),a.xms_tdbr&&(o=a.xms_tdbr===`EU`?`EU`:`None`));let s=e.environment||t&&t.getPreferredCache();if(!s)throw E(Qe,n);let c=e.idTokenClaims?.preferred_username||e.idTokenClaims?.upn,l=e.idTokenClaims?.emails?e.idTokenClaims.emails[0]:null,u=c||l||``,d=e.idTokenClaims?.login_hint,f=a?.utid||_t(e.idTokenClaims)||``,p=a?.uid||e.idTokenClaims?.oid||e.idTokenClaims?.sub||``,m;return m=e.tenantProfiles?e.tenantProfiles:[mt(e.homeAccountId,p,f,e.nativeAccountId,e.idTokenClaims)],{homeAccountId:e.homeAccountId,environment:s,realm:f,localAccountId:p,username:u,authorityType:i,loginHint:d,clientInfo:e.clientInfo,name:e.idTokenClaims?.name||``,lastModificationTime:void 0,lastModificationApp:void 0,cloudGraphHostName:e.cloudGraphHostName,msGraphHost:e.msGraphHost,nativeAccountId:e.nativeAccountId,tenantProfiles:m,dataBoundary:o}}function bt(e,t,n){let r=Array.from(e.tenantProfiles?.values()||[]);if(r.length===0&&e.tenantId&&e.localAccountId)r.push(mt(e.homeAccountId,e.localAccountId,e.tenantId,e.nativeAccountId,e.idTokenClaims));else if(e.nativeAccountId){let t=r.find(t=>t.tenantId===e.tenantId);t&&!t.nativeAccountId&&(t.nativeAccountId=e.nativeAccountId)}return{authorityType:e.authorityType||`Generic`,homeAccountId:e.homeAccountId,localAccountId:e.localAccountId,nativeAccountId:e.nativeAccountId,realm:e.tenantId,environment:e.environment,username:e.username,loginHint:e.loginHint,name:e.name,cloudGraphHostName:t,msGraphHost:n,tenantProfiles:r,dataBoundary:e.dataBoundary}}function xt(e,t,n,r,i,a){if(t!==gt.Adfs){if(e)try{let t=ut(e,r.base64Decode);if(t.uid&&t.utid)return`${t.uid}.${t.utid}`}catch{}n.warning(`1ub6wv`,i)}return a?.sub||``}function St(e){return e?e.hasOwnProperty(`homeAccountId`)&&e.hasOwnProperty(`environment`)&&e.hasOwnProperty(`realm`)&&e.hasOwnProperty(`localAccountId`)&&e.hasOwnProperty(`username`)&&e.hasOwnProperty(`authorityType`):!1}var j=`unexpected_error`,Ct=class e extends w{constructor(t,n){super(t,n),this.name=`ClientConfigurationError`,Object.setPrototypeOf(this,e.prototype)}};function M(e,t){return new Ct(e,t)}var wt=new WeakSet;function Tt(e){if(wt.has(e))return e;let t=Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLowerCase(),t]));return wt.add(t),t}function Et(e,t){let n=t.toLowerCase();if(Object.prototype.hasOwnProperty.call(e,n))return e[n];if(wt.has(e))return;let r=Object.keys(e).find(e=>e.toLowerCase()===n);return r===void 0?void 0:e[r]}var Dt=`redirect_uri_empty`,Ot=`authority_uri_insecure`,kt=`url_parse_error`,At=`empty_url_error`,jt=`empty_input_scopes_error`,Mt=`invalid_claims`,Nt=`token_request_empty`,Pt=`logout_request_empty`,Ft=`pkce_params_missing`,It=`invalid_cloud_discovery_metadata`,Lt=`invalid_authority_metadata`,Rt=`untrusted_authority`,zt=`missing_ssh_jwk`,Bt=`missing_ssh_kid`,Vt=`unsupported_authentication_scheme`,Ht=`cannot_set_OIDCOptions`,Ut=`cannot_allow_platform_broker`,Wt=`authority_mismatch`,Gt=`invalid_request_method_for_EAR`,Kt=`invalid_platform_broker_configuration`,qt=`issuer_validation_failed`,Jt=`invalid_dpop_htm`,Yt=`invalid_dpop_htu`,Xt=`invalid_dpop_nonce`,Zt=`dpop_missing_resource_context`;function Qt(e){return e.hasOwnProperty(`authorization_endpoint`)&&e.hasOwnProperty(`token_endpoint`)&&e.hasOwnProperty(`issuer`)&&e.hasOwnProperty(`jwks_uri`)}var $t=class{static isEmptyObj(e){if(e)try{let t=JSON.parse(e);return Object.keys(t).length===0}catch{}return!0}static startsWith(e,t){return e.indexOf(t)===0}static endsWith(e,t){return e.length>=t.length&&e.lastIndexOf(t)===e.length-t.length}static queryStringToObject(e){let t={},n=e.split(`&`),r=e=>decodeURIComponent(e.replace(/\+/g,` `));return n.forEach(e=>{if(e.trim()){let[n,i]=e.split(/=(.+)/g,2);n&&i&&(t[r(n)]=r(i))}}),t}static trimArrayEntries(e){return e.map(e=>e.trim())}static removeEmptyStringsFromArray(e){return e.filter(e=>!!e)}static jsonParseHelper(e){try{return JSON.parse(e)}catch{return null}}},N=class e{get urlString(){return this._urlString}constructor(t,n){if(this._urlString=t,this.correlationId=n,!this._urlString)throw M(At,n);t.includes(`#`)||(this._urlString=e.canonicalizeUri(t))}static canonicalizeUri(e){if(e){let t=e.toLowerCase();return $t.endsWith(t,`?`)?t=t.slice(0,-1):$t.endsWith(t,`?/`)&&(t=t.slice(0,-2)),$t.endsWith(t,`/`)||(t+=`/`),t}return e}validateAsUri(){let e;try{e=this.getUrlComponents()}catch{throw M(kt,this.correlationId)}if(!e.HostNameAndPort||!e.PathSegments)throw M(kt,this.correlationId);if(!e.Protocol||e.Protocol.toLowerCase()!==`https:`)throw M(Ot,this.correlationId)}static appendQueryString(e,t){return t?e.indexOf(`?`)<0?`${e}?${t}`:`${e}&${t}`:e}static removeHashFromUrl(t){return e.canonicalizeUri(t.split(`#`)[0])}replaceTenantPath(t){let n=this.getUrlComponents(),r=n.PathSegments;return t&&r.length!==0&&(r[0]===de.COMMON||r[0]===de.ORGANIZATIONS)&&(r[0]=t),e.constructAuthorityUriFromObject(n,this.correlationId)}getUrlComponents(){let e=RegExp(`^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?`),t=this.urlString.match(e);if(!t)throw M(kt,this.correlationId);let n={Protocol:t[1],HostNameAndPort:t[4],AbsolutePath:t[5],QueryString:t[7]},r=n.AbsolutePath.split(`/`);return r=r.filter(e=>e&&e.length>0),n.PathSegments=r,n.QueryString&&n.QueryString.endsWith(`/`)&&(n.QueryString=n.QueryString.substring(0,n.QueryString.length-1)),n}static getDomainFromUrl(e,t){let n=RegExp(`^([^:/?#]+://)?([^/?#]*)`),r=e.match(n);if(!r)throw M(kt,t);return r[2]}static getAbsoluteUrl(t,n,r){if(t[0]===`/`){let i=new e(n,r).getUrlComponents();return i.Protocol+`//`+i.HostNameAndPort+t}return t}static constructAuthorityUriFromObject(t,n){return new e(t.Protocol+`//`+t.HostNameAndPort+`/`+t.PathSegments.join(`/`),n)}},en=[{host:`login.microsoftonline.com`},{host:`login.partner.microsoftonline.cn`},{host:`login.microsoftonline.us`},{host:`login.sovcloud-identity.fr`},{host:`login.sovcloud-identity.de`},{host:`login.sovcloud-identity.sg`}];function tn(e,t){return{token_endpoint:`https://${e}/{tenantid}/oauth2/v2.0/token`,jwks_uri:`https://${e}/{tenantid}/discovery/v2.0/keys`,issuer:`https://${t}/{tenantid}/v2.0`,authorization_endpoint:`https://${e}/{tenantid}/oauth2/v2.0/authorize`,end_session_endpoint:`https://${e}/{tenantid}/oauth2/v2.0/logout`}}var nn={endpointMetadata:en.reduce((e,{host:t,issuerHost:n})=>(e[t]=tn(t,n||t),e),{}),instanceDiscoveryMetadata:{metadata:[{preferred_network:`login.microsoftonline.com`,preferred_cache:`login.windows.net`,aliases:[`login.microsoftonline.com`,`login.windows.net`,`login.microsoft.com`,`sts.windows.net`]},{preferred_network:`login.partner.microsoftonline.cn`,preferred_cache:`login.partner.microsoftonline.cn`,aliases:[`login.partner.microsoftonline.cn`,`login.chinacloudapi.cn`]},{preferred_network:`login.microsoftonline.de`,preferred_cache:`login.microsoftonline.de`,aliases:[`login.microsoftonline.de`]},{preferred_network:`login.microsoftonline.us`,preferred_cache:`login.microsoftonline.us`,aliases:[`login.microsoftonline.us`,`login.usgovcloudapi.net`]},{preferred_network:`login-us.microsoftonline.com`,preferred_cache:`login-us.microsoftonline.com`,aliases:[`login-us.microsoftonline.com`]},{preferred_network:`login.sovcloud-identity.fr`,preferred_cache:`login.sovcloud-identity.fr`,aliases:[`login.sovcloud-identity.fr`]},{preferred_network:`login.sovcloud-identity.de`,preferred_cache:`login.sovcloud-identity.de`,aliases:[`login.sovcloud-identity.de`]},{preferred_network:`login.sovcloud-identity.sg`,preferred_cache:`login.sovcloud-identity.sg`,aliases:[`login.sovcloud-identity.sg`]}]}},rn=nn.endpointMetadata,an=nn.instanceDiscoveryMetadata,on=new Set;an.metadata.forEach(e=>{e.aliases.forEach(e=>{on.add(e)})});function sn(e,t,n){let r,i=e.canonicalAuthority;if(i){let a=new N(i,n).getUrlComponents().HostNameAndPort;r=cn(t,n,a,e.cloudDiscoveryMetadata?.metadata,S.CONFIG)||cn(t,n,a,an.metadata,S.HARDCODED_VALUES)||e.knownAuthorities}return r||[]}function cn(e,t,n,r,i){if(e.trace(`1bmquz ${i}`,t),n&&r){let a=un(r,n);if(a)return e.trace(`1fotbt ${i}`,t),a.aliases;e.trace(`14avvj ${i}`,t)}return null}function ln(e){return un(an.metadata,e)}function un(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.aliases.includes(t))return r}return null}var dn={None:`none`,AzurePublic:`https://login.microsoftonline.com`,AzureChina:`https://login.chinacloudapi.cn`,AzureGermany:`https://login.microsoftonline.de`,AzureUsGovernment:`https://login.microsoftonline.us`};function fn(e){return e.hasOwnProperty(`tenant_discovery_endpoint`)&&e.hasOwnProperty(`metadata`)}function pn(e){return e.hasOwnProperty(`error`)&&e.hasOwnProperty(`error_description`)}var mn=`networkClientSendPostRequestAsync`,hn=`refreshTokenClientExecutePostToTokenEndpoint`,gn=`authorizationCodeClientExecutePostToTokenEndpoint`,_n=`refreshTokenClientExecuteTokenRequest`,vn=`refreshTokenClientAcquireToken`,yn=`refreshTokenClientAcquireTokenWithCachedRefreshToken`,bn=`refreshTokenClientCreateTokenRequestBody`,xn=`silentFlowClientGenerateResultFromCacheRecord`,Sn=`getAuthCodeUrl`,Cn=`handleCodeResponseFromServer`,wn=`authClientExecuteTokenRequest`,Tn=`authClientCreateTokenRequestBody`,En=`updateTokenEndpointAuthority`,Dn=`popTokenGenerateCnf`,On=`handleServerTokenResponse`,kn=`authorityResolveEndpointsAsync`,An=`authorityGetCloudDiscoveryMetadataFromNetwork`,jn=`authorityUpdateCloudDiscoveryMetadata`,Mn=`authorityGetEndpointMetadataFromNetwork`,Nn=`authorityUpdateEndpointMetadata`,Pn=`authorityUpdateMetadataWithRegionalInformation`,Fn=`regionDiscoveryDetectRegion`,In=`regionDiscoveryGetRegionFromIMDS`,Ln=`regionDiscoveryGetCurrentVersion`,Rn=`cacheManagerGetRefreshToken`,zn=`setUserData`,P=(e,t,n,r,i)=>(...a)=>{n.trace(`1plfzx ${t}`,i);let o=r.startMeasurement(t,i);i&&r.incrementFields({[`ext.${t}CallCount`]:1},i);try{let r=e(...a);return o.end({success:!0}),n.trace(`1g8n6a ${t}`,i),r}catch(e){n.trace(`0cfd8i ${t}`,i);try{n.trace(JSON.stringify(e),i)}catch{n.trace(`00dty7`,i)}throw o.end({success:!1},e),e}},F=(e,t,n,r,i)=>(...a)=>{n.trace(`1plfzx ${t}`,i);let o=r.startMeasurement(t,i);return i&&r.incrementFields({[`ext.${t}CallCount`]:1},i),e(...a).then(e=>(n.trace(`1g8n6a ${t}`,i),o.end({success:!0}),e)).catch(e=>{n.trace(`0cfd8i ${t}`,i);try{n.trace(JSON.stringify(e),i)}catch{n.trace(`00dty7`,i)}throw o.end({success:!1},e),e})},Bn=class e{constructor(e,t,n,r){this.networkInterface=e,this.logger=t,this.performanceClient=n,this.correlationId=r}async detectRegion(t,n){let r=t;if(r)n.region_source=De.ENVIRONMENT_VARIABLE;else{let t=e.IMDS_OPTIONS;try{let e=await F(this.getRegionFromIMDS.bind(this),In,this.logger,this.performanceClient,this.correlationId)(re,t);if(e.status===200&&(r=e.body?.location,r&&(n.region_source=De.IMDS)),e.status===400){let e=await F(this.getCurrentVersion.bind(this),Ln,this.logger,this.performanceClient,this.correlationId)(t);if(!e)return n.region_source=De.FAILED_AUTO_DETECTION,null;let i=await F(this.getRegionFromIMDS.bind(this),In,this.logger,this.performanceClient,this.correlationId)(e,t);i.status===200&&(r=i.body?.location,r&&(n.region_source=De.IMDS))}}catch{return n.region_source=De.FAILED_AUTO_DETECTION,null}}return r||(n.region_source=De.FAILED_AUTO_DETECTION),r||null}async getRegionFromIMDS(e,t){return this.networkInterface.sendGetRequestAsync(`${ne}?api-version=${e}`,t,ie)}async getCurrentVersion(e){try{let t=await this.networkInterface.sendGetRequestAsync(`${ne}?format=json`,e);return t.status===400&&t.body&&t.body[`newest-versions`]&&t.body[`newest-versions`].length>0?t.body[`newest-versions`][0]:null}catch{return null}}};Bn.IMDS_OPTIONS={headers:{Metadata:`true`}};function I(){return Math.round(new Date().getTime()/1e3)}function Vn(e){return e.getTime()/1e3}function Hn(e){return e?new Date(Number(e)*1e3):new Date}function Un(e,t){let n=Number(e)||0;return I()+t>n}function Wn(e,t){let n=Number(e)+t*24*60*60*1e3;return Date.now()>n}function Gn(e){return Number(e)>I()}function Kn(e,t,n,r,i){return{credentialType:x.ID_TOKEN,homeAccountId:e,environment:t,clientId:r,secret:n,realm:i,lastUpdatedAt:Date.now().toString()}}function qn(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m){let h={homeAccountId:e,credentialType:x.ACCESS_TOKEN,secret:n,cachedAt:I().toString(),expiresOn:o.toString(),extendedExpiresOn:s.toString(),environment:t,clientId:r,realm:i,target:a,tokenType:d||C.BEARER,lastUpdatedAt:Date.now().toString()};f&&(h.userAssertionHash=f),u&&(h.refreshOn=u.toString());let g=h.tokenType?.toLowerCase();if(h.tokenType?.toLowerCase()!==C.BEARER.toLowerCase())switch(h.credentialType=x.ACCESS_TOKEN_WITH_AUTH_SCHEME,g){case C.POP:let e=O(n,c,l);if(!e?.cnf?.kid)throw E(rt,l);h.keyId=e.cnf.kid;break;case`dpop`:if(!p)throw E(st,l);h.keyId=p;break;case C.SSH:h.keyId=p}return m&&Object.keys(m).length>0&&(h.additionalCacheKeyComponents=m),h}function Jn(e,t,n,r,i,a,o){let s={credentialType:x.REFRESH_TOKEN,homeAccountId:e,environment:t,clientId:r,secret:n,lastUpdatedAt:Date.now().toString()};return a&&(s.userAssertionHash=a),i&&(s.familyId=i),o&&(s.expiresOn=o.toString()),s}function Yn(e){return e.hasOwnProperty(`homeAccountId`)&&e.hasOwnProperty(`environment`)&&e.hasOwnProperty(`credentialType`)&&e.hasOwnProperty(`clientId`)&&e.hasOwnProperty(`secret`)}function Xn(e){return e?Yn(e)&&e.hasOwnProperty(`realm`)&&e.hasOwnProperty(`target`)&&(e.credentialType===x.ACCESS_TOKEN||e.credentialType===x.ACCESS_TOKEN_WITH_AUTH_SCHEME):!1}function Zn(e){return e?Yn(e)&&e.hasOwnProperty(`realm`)&&e.credentialType===x.ID_TOKEN:!1}function Qn(e){return e?Yn(e)&&e.credentialType===x.REFRESH_TOKEN:!1}function $n(e,t){let n=e.indexOf(Se)===0,r=!0;return t&&(r=t.hasOwnProperty(`failedRequests`)&&t.hasOwnProperty(`errors`)&&t.hasOwnProperty(`cacheHits`)),n&&r}function er(e,t){let n=!1;e&&(n=e.indexOf(Te)===0);let r=!0;return t&&(r=t.hasOwnProperty(`throttleTime`)),n&&r}function tr({environment:e,clientId:t}){return[ve,e,t].join(`-`).toLowerCase()}function nr(e,t){return t?e.indexOf(`appmetadata`)===0&&t.hasOwnProperty(`clientId`)&&t.hasOwnProperty(`environment`):!1}function rr(e,t){return t?e.indexOf(`authority-metadata`)===0&&t.hasOwnProperty(`aliases`)&&t.hasOwnProperty(`preferred_cache`)&&t.hasOwnProperty(`preferred_network`)&&t.hasOwnProperty(`canonical_authority`)&&t.hasOwnProperty(`authorization_endpoint`)&&t.hasOwnProperty(`token_endpoint`)&&t.hasOwnProperty(`issuer`)&&t.hasOwnProperty(`aliasesFromNetwork`)&&t.hasOwnProperty(`endpointsFromNetwork`)&&t.hasOwnProperty(`expiresAt`)&&t.hasOwnProperty(`jwks_uri`):!1}function ir(){return I()+xe}function ar(e,t,n){e.authorization_endpoint=t.authorization_endpoint,e.token_endpoint=t.token_endpoint,e.end_session_endpoint=t.end_session_endpoint,e.issuer=t.issuer,e.endpointsFromNetwork=n,e.jwks_uri=t.jwks_uri}function or(e,t,n){e.aliases=t.aliases,e.preferred_cache=t.preferred_cache,e.preferred_network=t.preferred_network,e.aliasesFromNetwork=n}function sr(e){return e.expiresAt<=I()}function cr(e){if(e&&e.length!==0)return[...e].sort().join(` `)}var lr=class e{constructor(e,t,n,r,i,a,o,s){this.canonicalAuthority=e,this._canonicalAuthority.validateAsUri(),this.networkInterface=t,this.cacheManager=n,this.authorityOptions=r,this.regionDiscoveryMetadata={region_used:void 0,region_source:void 0,region_outcome:void 0},this.logger=i,this.performanceClient=o,this.correlationId=a,this.managedIdentity=s||!1,this.regionDiscovery=new Bn(t,this.logger,this.performanceClient,this.correlationId)}getAuthorityType(e){if(e.HostNameAndPort.endsWith(`.ciamlogin.com`))return gt.Ciam;let t=e.PathSegments;if(t.length)switch(t[0].toLowerCase()){case`adfs`:return gt.Adfs}return gt.Default}get authorityType(){return this.getAuthorityType(this.canonicalAuthorityUrlComponents)}get protocolMode(){return this.authorityOptions.protocolMode}get options(){return this.authorityOptions}get canonicalAuthority(){return this._canonicalAuthority.urlString}set canonicalAuthority(e){this._canonicalAuthority=new N(e,this.correlationId),this._canonicalAuthority.validateAsUri(),this._canonicalAuthorityUrlComponents=null}get canonicalAuthorityUrlComponents(){return this._canonicalAuthorityUrlComponents||=this._canonicalAuthority.getUrlComponents(),this._canonicalAuthorityUrlComponents}get hostnameAndPort(){return this.canonicalAuthorityUrlComponents.HostNameAndPort.toLowerCase()}get tenant(){return this.canonicalAuthorityUrlComponents.PathSegments[0]}get authorizationEndpoint(){if(this.discoveryComplete())return this.replacePath(this.metadata.authorization_endpoint);throw E(Le,this.correlationId)}get tokenEndpoint(){if(this.discoveryComplete())return this.replacePath(this.metadata.token_endpoint);throw E(Le,this.correlationId)}get deviceCodeEndpoint(){if(this.discoveryComplete())return this.replacePath(this.metadata.token_endpoint.replace(`/token`,`/devicecode`));throw E(Le,this.correlationId)}get endSessionEndpoint(){if(this.discoveryComplete()){if(!this.metadata.end_session_endpoint)throw E(ot,this.correlationId);return this.replacePath(this.metadata.end_session_endpoint)}throw E(Le,this.correlationId)}get selfSignedJwtAudience(){if(this.discoveryComplete())return this.replacePath(this.metadata.issuer);throw E(Le,this.correlationId)}get jwksUri(){if(this.discoveryComplete())return this.replacePath(this.metadata.jwks_uri);throw E(Le,this.correlationId)}canReplaceTenant(t){return t.PathSegments.length===1&&!e.reservedTenantDomains.has(t.PathSegments[0])&&this.getAuthorityType(t)===gt.Default&&this.protocolMode!==A.OIDC}replaceTenant(e){return e.replace(/{tenant}|{tenantid}/g,this.tenant)}replacePath(e){let t=e,n=new N(this.metadata.canonical_authority,this.correlationId).getUrlComponents(),r=n.PathSegments;return this.canonicalAuthorityUrlComponents.PathSegments.forEach((e,i)=>{let a=r[i];if(i===0&&this.canReplaceTenant(n)){let e=new N(this.metadata.authorization_endpoint,this.correlationId).getUrlComponents().PathSegments[0];a!==e&&(this.logger.verbose(`1q3g2x ${a} ${e}`,this.correlationId),a=e)}e!==a&&(t=t.replace(`/${a}/`,`/${e}/`))}),this.replaceTenant(t)}get defaultOpenIdConfigurationEndpoint(){let e=this.hostnameAndPort;return this.canonicalAuthority.endsWith(`v2.0/`)||this.authorityType===gt.Adfs||this.protocolMode===A.OIDC&&!this.isAliasOfKnownMicrosoftAuthority(e)?`${this.canonicalAuthority}.well-known/openid-configuration`:`${this.canonicalAuthority}v2.0/.well-known/openid-configuration`}discoveryComplete(){return!!this.metadata}async resolveEndpointsAsync(){let e=this.getCurrentMetadataEntity(),t=await F(this.updateCloudDiscoveryMetadata.bind(this),jn,this.logger,this.performanceClient,this.correlationId)(e);this.canonicalAuthority=this.canonicalAuthority.replace(this.hostnameAndPort,e.preferred_network);let n=await F(this.updateEndpointMetadata.bind(this),Nn,this.logger,this.performanceClient,this.correlationId)(e);this.updateCachedMetadata(e,t,{source:n}),this.performanceClient?.addFields({cloudDiscoverySource:t,authorityEndpointSource:n},this.correlationId)}getCurrentMetadataEntity(){let e=this.cacheManager.getAuthorityMetadataByAlias(this.hostnameAndPort,this.correlationId);return e||={aliases:[],preferred_cache:this.hostnameAndPort,preferred_network:this.hostnameAndPort,canonical_authority:this.canonicalAuthority,authorization_endpoint:``,token_endpoint:``,end_session_endpoint:``,issuer:``,aliasesFromNetwork:!1,endpointsFromNetwork:!1,expiresAt:ir(),jwks_uri:``},e}updateCachedMetadata(e,t,n){t!==S.CACHE&&n?.source!==S.CACHE&&(e.expiresAt=ir(),e.canonical_authority=this.canonicalAuthority);let r=this.cacheManager.generateAuthorityMetadataCacheKey(e.preferred_cache,this.correlationId);this.cacheManager.setAuthorityMetadata(r,e,this.correlationId),this.metadata=e}async updateEndpointMetadata(e){let t=this.updateEndpointMetadataFromLocalSources(e);if(t)return t.source===S.HARDCODED_VALUES&&this.authorityOptions.azureRegionConfiguration?.azureRegion&&t.metadata&&(ar(e,await F(this.updateMetadataWithRegionalInformation.bind(this),Pn,this.logger,this.performanceClient,this.correlationId)(t.metadata),!1),e.canonical_authority=this.canonicalAuthority),t.source;let n=await F(this.getEndpointMetadataFromNetwork.bind(this),Mn,this.logger,this.performanceClient,this.correlationId)();if(n)return this.validateIssuer(n.issuer),this.authorityOptions.azureRegionConfiguration?.azureRegion&&(n=await F(this.updateMetadataWithRegionalInformation.bind(this),Pn,this.logger,this.performanceClient,this.correlationId)(n)),ar(e,n,!0),S.NETWORK;throw E(ze,this.defaultOpenIdConfigurationEndpoint,this.correlationId)}updateEndpointMetadataFromLocalSources(e){this.logger.verbose(`1fi0kc`,this.correlationId);let t=this.getEndpointMetadataFromConfig();if(t)return this.logger.verbose(`06t0uj`,this.correlationId),ar(e,t,!1),{source:S.CONFIG};this.logger.verbose(`151k0p`,this.correlationId);let n=this.getEndpointMetadataFromHardcodedValues();if(n)return ar(e,n,!1),{source:S.HARDCODED_VALUES,metadata:n};this.logger.verbose(`1imop5`,this.correlationId);let r=sr(e);return this.isAuthoritySameType(e)&&e.endpointsFromNetwork&&!r?(this.logger.verbose(`16uq31`,``),{source:S.CACHE}):(r&&this.logger.verbose(`0uoibc`,``),null)}isAuthoritySameType(e){return new N(e.canonical_authority,this.correlationId).getUrlComponents().PathSegments.length===this.canonicalAuthorityUrlComponents.PathSegments.length}getEndpointMetadataFromConfig(){if(this.authorityOptions.authorityMetadata)try{return JSON.parse(this.authorityOptions.authorityMetadata)}catch{throw M(Lt,this.correlationId)}return null}async getEndpointMetadataFromNetwork(){let e={},t=this.defaultOpenIdConfigurationEndpoint;this.logger.verbose(`1y65x6 ${t}`,this.correlationId);try{let n=await this.networkInterface.sendGetRequestAsync(t,e);return Qt(n.body)?n.body:(this.logger.verbose(`1koyv8`,this.correlationId),null)}catch(e){return this.logger.verbose(`0a9wik ${e}`,this.correlationId),null}}getEndpointMetadataFromHardcodedValues(){return this.hostnameAndPort in rn?rn[this.hostnameAndPort]:null}async updateMetadataWithRegionalInformation(t){let n=this.authorityOptions.azureRegionConfiguration?.azureRegion;if(n){if(n!==`TryAutoDetect`)return this.regionDiscoveryMetadata.region_outcome=Oe.CONFIGURED_NO_AUTO_DETECTION,this.regionDiscoveryMetadata.region_used=n,e.replaceWithRegionalInformation(t,n,this.correlationId);let r=await F(this.regionDiscovery.detectRegion.bind(this.regionDiscovery),Fn,this.logger,this.performanceClient,this.correlationId)(this.authorityOptions.azureRegionConfiguration?.environmentRegion,this.regionDiscoveryMetadata);if(r)return this.regionDiscoveryMetadata.region_outcome=Oe.AUTO_DETECTION_REQUESTED_SUCCESSFUL,this.regionDiscoveryMetadata.region_used=r,e.replaceWithRegionalInformation(t,r,this.correlationId);this.regionDiscoveryMetadata.region_outcome=Oe.AUTO_DETECTION_REQUESTED_FAILED}return t}async updateCloudDiscoveryMetadata(e){let t=this.updateCloudDiscoveryMetadataFromLocalSources(e);if(t)return t;let n=await F(this.getCloudDiscoveryMetadataFromNetwork.bind(this),An,this.logger,this.performanceClient,this.correlationId)();if(n)return or(e,n,!0),S.NETWORK;throw M(Rt,this.correlationId)}updateCloudDiscoveryMetadataFromLocalSources(e){this.logger.verbose(`1tpqlr`,this.correlationId),this.logger.verbosePii(`1fy7uz ${this.authorityOptions.knownAuthorities||`N/A`}`,this.correlationId),this.logger.verbosePii(`08zabj ${this.authorityOptions.authorityMetadata||`N/A`}`,this.correlationId),this.logger.verbosePii(`1o1kv3 ${e.canonical_authority||`N/A`}`,this.correlationId);let t=this.getCloudDiscoveryMetadataFromConfig();if(t)return this.logger.verbose(`1nakio`,this.correlationId),or(e,t,!1),S.CONFIG;this.logger.verbose(`1x74aj`,this.correlationId);let n=ln(this.hostnameAndPort);if(n)return this.logger.verbose(`0by47c`,this.correlationId),or(e,n,!1),S.HARDCODED_VALUES;this.logger.verbose(`0r2fzy`,this.correlationId);let r=sr(e);return this.isAuthoritySameType(e)&&e.aliasesFromNetwork&&!r?(this.logger.verbose(`1uffgh`,``),S.CACHE):(r&&this.logger.verbose(`0uoibc`,``),null)}getCloudDiscoveryMetadataFromConfig(){if(this.authorityType===gt.Ciam)return this.logger.verbose(`04y84h`,this.correlationId),e.createCloudDiscoveryMetadataFromHost(this.hostnameAndPort);if(this.authorityOptions.cloudDiscoveryMetadata){this.logger.verbose(`0gszr3`,this.correlationId);try{this.logger.verbose(`1iifkx`,this.correlationId);let e=un(JSON.parse(this.authorityOptions.cloudDiscoveryMetadata).metadata,this.hostnameAndPort);if(this.logger.verbose(`0q67e3`,``),e)return this.logger.verbose(`0hzfao`,this.correlationId),e;this.logger.verbose(`1ajz3u`,this.correlationId)}catch{throw this.logger.verbose(`1wq5tu`,this.correlationId),M(It,this.correlationId)}}return this.isInKnownAuthorities(this.hostnameAndPort)?(this.logger.verbose(`0mt9al`,this.correlationId),e.createCloudDiscoveryMetadataFromHost(this.hostnameAndPort)):null}async getCloudDiscoveryMetadataFromNetwork(){let t=`${d}${this.canonicalAuthority}oauth2/v2.0/authorize`,n={},r=null;try{let e=await this.networkInterface.sendGetRequestAsync(t,n),i,a;if(fn(e.body))i=e.body,a=i.metadata,this.logger.verbosePii(`1vglyt ${i.tenant_discovery_endpoint}`,this.correlationId);else if(pn(e.body)){if(this.logger.warning(`062uto ${e.status}`,this.correlationId),i=e.body,i.error===`invalid_instance`)return this.logger.error(`1x90tm`,this.correlationId),null;this.logger.warning(`0wchdm ${i.error}`,this.correlationId),this.logger.warning(`1s5mpv ${i.error_description}`,this.correlationId),this.logger.warning(`1yhqpw`,this.correlationId),a=[]}else return this.logger.error(`0768g0`,this.correlationId),null;this.logger.verbose(`1lrobr`,this.correlationId),r=un(a,this.hostnameAndPort)}catch(e){if(e instanceof w)this.logger.error(`0vwhc7 ${e.errorCode} ${e.errorMessage}`,this.correlationId);else{let t=e;this.logger.error(`0s2z41 ${t.name} ${t.message}`,this.correlationId)}return null}return r||=(this.logger.warning(`0jp28q`,this.correlationId),this.logger.verbose(`130sd8`,this.correlationId),e.createCloudDiscoveryMetadataFromHost(this.hostnameAndPort)),r}isInKnownAuthorities(e){let t=e.toLowerCase();return this.authorityOptions.knownAuthorities.filter(e=>e&&N.getDomainFromUrl(e,this.correlationId).toLowerCase()===t).length>0}static generateAuthority(e,t){let n;if(t&&t.azureCloudInstance!==dn.None){let e=t.tenant?t.tenant:u;n=`${t.azureCloudInstance}/${e}/`}return n||e}static createCloudDiscoveryMetadataFromHost(e){return{preferred_network:e,preferred_cache:e,aliases:[e]}}getPreferredCache(){if(this.managedIdentity)return`login.microsoftonline.com`;if(this.discoveryComplete())return this.metadata.preferred_cache;throw E(Le,this.correlationId)}isAlias(e){return this.metadata.aliases.indexOf(e)>-1}isAliasOfKnownMicrosoftAuthority(e){return on.has(e)}validateIssuer(e){if(!e)throw M(qt,this.correlationId);let t;try{t=new URL(e)}catch{throw M(qt,this.correlationId)}let n=t.protocol,r=t.host,i=(this.canonicalAuthorityUrlComponents.Protocol||``).toLowerCase(),a=(this.canonicalAuthorityUrlComponents.HostNameAndPort||``).toLowerCase(),o=this.matchesAuthorityOrigin(n,r,i,a),s=n===`https:`&&this.isAliasOfKnownMicrosoftAuthority(r),c=n===`https:`&&this.matchesRegionalMicrosoftHost(r),l=this.matchesCiamTenantPattern(t,a,this.canonicalAuthorityUrlComponents.PathSegments),u=n===`https:`&&this.isInKnownAuthorities(r);if(!(o||s||c||l||u))throw M(qt,this.correlationId)}matchesAuthorityOrigin(e,t,n,r){return e===n&&t===r}matchesRegionalMicrosoftHost(e){let t=e.indexOf(`.`);if(t>0&&t<e.length-1){let n=e.substring(t+1);return this.isAliasOfKnownMicrosoftAuthority(n)}return!1}matchesCiamTenantPattern(e,t,n){let r=n[0],i=r?r.endsWith(`.onmicrosoft.com`)?r.slice(0,-p.length):r:t.split(`.`)[0];if(!i)return!1;let a=`https://${i}${f}`,o=[a,`${a}/${i}`,`${a}/${i}/v2.0`,`${a}/${i}${p}`,`${a}/${i}${p}/v2.0`],s=e.pathname.replace(/\/+$/,``),c=`${e.protocol}//${e.host}${s}`;return o.some(e=>e===c)}static isPublicCloudAuthority(e){return oe.indexOf(e)>=0}static buildRegionalAuthorityString(e,t,n,r){let i=new N(e,n);i.validateAsUri();let a=i.getUrlComponents(),o=`${t}.${a.HostNameAndPort}`;this.isPublicCloudAuthority(a.HostNameAndPort)&&(o=`${t}.${ae}`);let s=N.constructAuthorityUriFromObject({...i.getUrlComponents(),HostNameAndPort:o},n).urlString;return r?`${s}?${r}`:s}static replaceWithRegionalInformation(t,n,r){let i={...t};return i.authorization_endpoint=e.buildRegionalAuthorityString(i.authorization_endpoint,n,r),i.token_endpoint=e.buildRegionalAuthorityString(i.token_endpoint,n,r),i.end_session_endpoint&&=e.buildRegionalAuthorityString(i.end_session_endpoint,n,r),i}static transformCIAMAuthority(e,t){let n=e,r=new N(e,t).getUrlComponents();if(r.PathSegments.length===0&&r.HostNameAndPort.endsWith(`.ciamlogin.com`)){let e=r.HostNameAndPort.split(`.`)[0];n=`${n}${e}${p}`}return n}};lr.reservedTenantDomains=new Set([`{tenant}`,`{tenantid}`,de.COMMON,de.CONSUMERS,de.ORGANIZATIONS]);function ur(e,t){let n=new N(e,t).getUrlComponents().PathSegments.slice(-1)[0]?.toLowerCase();switch(n){case de.COMMON:case de.ORGANIZATIONS:case de.CONSUMERS:return;default:return n}}function dr(e){return e.endsWith(`/`)?e:`${e}/`}function fr(e){let t=e.cloudDiscoveryMetadata,n;if(t)try{n=JSON.parse(t)}catch{throw M(It,``)}return{canonicalAuthority:e.authority?dr(e.authority):void 0,knownAuthorities:e.knownAuthorities,cloudDiscoveryMetadata:n}}async function pr(e,t,n,r,i,a,o){let s=new lr(lr.transformCIAMAuthority(dr(e),a),t,n,r,i,a,o);try{return await F(s.resolveEndpointsAsync.bind(s),kn,i,o,a)(),s}catch{throw E(Le,a)}}var L=class e{constructor(e,t){this.correlationId=t;let n=e?$t.trimArrayEntries([...e]):[],r=n?$t.removeEmptyStringsFromArray(n):[];if(!r||!r.length)throw M(jt,t);this.scopes=new Set,r.forEach(e=>this.scopes.add(e))}static fromString(t,n){let r=(t||``).split(` `);return new e(r,n)}static createSearchScopes(t,n){let r=t&&t.length>0?t:[...ce],i=new e(r,n);return i.containsOnlyOIDCScopes()?i.removeScope(g):i.removeOIDCScopes(),i}containsScope(t){let n=this.printScopesLowerCase().split(` `),r=new e(n,this.correlationId);return t?r.scopes.has(t.toLowerCase()):!1}containsScopeSet(e){return!e||e.scopes.size<=0?!1:this.scopes.size>=e.scopes.size&&e.asArray().every(e=>this.containsScope(e))}containsOnlyOIDCScopes(){let e=0;return le.forEach(t=>{this.containsScope(t)&&(e+=1)}),this.scopes.size===e}appendScope(e){e&&this.scopes.add(e.trim())}appendScopes(e){try{e.forEach(e=>this.appendScope(e))}catch{throw E(Je,this.correlationId)}}removeScope(e){if(!e)throw E(qe,this.correlationId);this.scopes.delete(e.trim())}removeOIDCScopes(){le.forEach(e=>{this.scopes.delete(e)})}unionScopeSets(e){if(!e)throw E(Ye,this.correlationId);let t=new Set;return e.scopes.forEach(e=>t.add(e.toLowerCase())),this.scopes.forEach(e=>t.add(e.toLowerCase())),t}intersectingScopeSets(e){if(!e)throw E(Ye,this.correlationId);e.containsOnlyOIDCScopes()||e.removeOIDCScopes();let t=this.unionScopeSets(e),n=e.getScopeCount(),r=this.getScopeCount();return t.size<r+n}getScopeCount(){return this.scopes.size}asArray(){let e=[];return this.scopes.forEach(t=>e.push(t)),e}printScopes(){return this.scopes?this.asArray().join(` `):``}printScopesLowerCase(){return this.printScopes().toLowerCase()}};function mr(n,r,i){if(!r)return;let a=n.get(e);a&&n.has(`brk_client_id`)&&i?.addFields({embeddedClientId:a,embeddedRedirectUri:n.get(t)},r)}function hr(e,t){e.set(`response_type`,t)}function gr(e,t){e.set(`response_mode`,t||b.QUERY)}function _r(e){e.set(`nativebroker`,`1`)}function vr(e,t,n,r=!0,i=ce){r&&!i.includes(`openid`)&&!t.includes(`openid`)&&i.push(`openid`);let a=new L(r?[...t||[],...i]:t||[],n);e.set(`scope`,a.printScopes())}function yr(t,n){t.set(e,n)}function br(e,n){e.set(t,n)}function xr(e,t){e.set(`post_logout_redirect_uri`,t)}function Sr(e,t){e.set(`id_token_hint`,t)}function Cr(e,t){e.set(`domain_hint`,t)}function wr(e,t){e.set(`login_hint`,t)}function Tr(e,t){e.set(v.CCS_HEADER,`UPN:${t}`)}function Er(e,t){e.set(v.CCS_HEADER,`Oid:${t.uid}@${t.utid}`)}function Dr(e,t){e.set(`sid`,t)}function Or(e,t,n,r,i,a){let o=Qr(n,i&&e.has(`brk_client_id`)?void 0:r,t,a);e.set(`claims`,o)}function kr(e,t){e.set(`client-request-id`,t)}function Ar(e,t){e.set(`x-client-SKU`,t.sku),e.set(`x-client-VER`,t.version),t.os&&e.set(`x-client-OS`,t.os),t.cpu&&e.set(`x-client-CPU`,t.cpu)}function jr(e,t){t?.appName&&e.set(`x-app-name`,t.appName),t?.appVersion&&e.set(`x-app-ver`,t.appVersion)}function Mr(e,t){e.set(`prompt`,t)}function Nr(e,t){t&&e.set(`state`,t)}function Pr(e,t){e.set(`nonce`,t)}function Fr(e,t,n){if(t&&n)e.set(`code_challenge`,t),e.set(`code_challenge_method`,n);else throw M(Ft,``)}function Ir(e,t){e.set(`code`,t)}function Lr(e,t){e.set(`refresh_token`,t)}function Rr(e,t){e.set(`code_verifier`,t)}function zr(e,t){e.set(`client_secret`,t)}function Br(e,t){t&&e.set(`client_assertion`,t)}function Vr(e,t){t&&e.set(`client_assertion_type`,t)}function Hr(e,t){e.set(`grant_type`,t)}function Ur(e){e.set(ye,`1`)}function Wr(e){e.set(`clidata`,`1`)}function Gr(e){e.has(`instance_aware`)||e.set(`instance_aware`,`true`)}function Kr(e){e.has(`pocd`)||e.set(s,`1`)}function qr(e,t){Object.entries(t).forEach(([t,n])=>{!e.has(t)&&n&&e.set(t,n)})}var Jr={[fe.SIGNIN_STATE]:{essential:!1},[fe.LOGIN_HINT]:{essential:!1},[fe.TENANT_REGION_SUB_SCOPE]:{essential:!1}};function Yr(e,t=``){let n;try{n=JSON.parse(e)}catch{throw M(Mt,t)}if(!Xr(n))throw M(Mt,t);return n}function Xr(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Zr(e,t){let n={...e};for(let[e,r]of Object.entries(t)){let t=n[e];n[e]=Xr(t)&&Xr(r)?Zr(t,r):r}return n}function Qr(e,t,n=``,r){let i=e?Yr(e,n):{};r?.trim()&&(i=Zr(i,Yr(r,n))),Object.prototype.hasOwnProperty.call(i,fe.ID_TOKEN)||(i[fe.ID_TOKEN]={});let a=i[fe.ID_TOKEN];for(let[e,t]of Object.entries(Jr))e in a||(a[e]=t);return t&&t.length>0&&(Object.prototype.hasOwnProperty.call(i,fe.ACCESS_TOKEN)||(i[fe.ACCESS_TOKEN]={}),i[fe.ACCESS_TOKEN][fe.XMS_CC]={values:t}),JSON.stringify(i)}function $r(e,t){t&&(e.set(n,C.POP),e.set(r,t))}function ei(e,t){t&&(e.set(n,C.SSH),e.set(r,t))}function ti(e,t){e.set(`x-client-current-telemetry`,t.generateCurrentRequestHeaderValue()),e.set(`x-client-last-telemetry`,t.generateLastRequestHeaderValue())}function ni(e){e.set(`x-ms-lib-capability`,Ee)}function ri(e,t){e.set(`logout_hint`,t)}function ii(e,t,n){e.has(`brk_client_id`)||e.set(i,t),e.has(`brk_redirect_uri`)||e.set(a,n)}function ai(e,t){e.set(`ear_jwk`,encodeURIComponent(t)),e.set(`ear_jwe_crypto`,`eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0`)}function oi(e,t){t&&e.set(`resource`,t)}function si(e,t){let n=cr(t);n?e.set(o,n):e.delete(o)}function ci(e){return e.startsWith(`#/`)?e.substring(2):e.startsWith(`#`)||e.startsWith(`?`)?e.substring(1):e}function li(e){if(!e||e.indexOf(`=`)<0)return null;try{let t=ci(e);if(!/^[^=&?#/]+(?:=|&|$)/.test(t))return null;let n=Object.fromEntries(new URLSearchParams(t));if(n.code||n.ear_jwe||n.error||n.error_description||n.state)return n}catch{throw E(Be,``)}return null}function ui(e){let t=[];return e.forEach((e,n)=>{t.push(`${n}=${encodeURIComponent(e)}`)}),t.join(`&`)}function di(e,t,n){if(!e)return e;let r=e.split(`#`)[0];if(!r)return r;try{let e=new URL(r);e.search||=``;let t;try{t=decodeURIComponent(e.pathname)}catch{t=e.pathname}return t.endsWith(`/`)||(t+=`/`),e.pathname=t,e.href}catch(e){throw t?.error(`15apdm ${e}`,n||``),M(kt,n||``)}}function fi(e,t,n){try{new URL(e)}catch(e){throw t?.error(`1lrjz7 ${e}`,n||``),M(kt,n||``)}}var pi={ES256:`ES256`,RS256:`RS256`},mi={createNewGuid:()=>{throw E(D,``)},base64Decode:()=>{throw E(D,``)},base64Encode:()=>{throw E(D,``)},base64UrlEncode:()=>{throw E(D,``)},encodeKid:()=>{throw E(D,``)},async removeTokenBindingKey(e,t){throw E(D,t)},async clearKeystore(e){throw E(D,e)},async signTokenBindingJwt(e,t,n,r){throw E(D,r)},async hashString(){throw E(D,``)}},hi={async provisionTokenBindingKey(e){throw E(D,e.correlationId)},async removeTokenBindingKey(e,t){throw E(D,t)},async getTokenBindingPublicKeyJwk(e,t){throw E(D,t)}},R;(function(e){e[e.Error=0]=`Error`,e[e.Warning=1]=`Warning`,e[e.Info=2]=`Info`,e[e.Verbose=3]=`Verbose`,e[e.Trace=4]=`Trace`})(R||={});var gi=50,_i=500,vi=new Map;function yi(e,t){vi.delete(e),vi.set(e,t)}function bi(e,t){let n=Date.now(),r=vi.get(e);if(r)yi(e,r);else if(r={logs:[],firstEventTime:n},vi.set(e,r),vi.size>gi){let e=vi.keys().next().value;e!==void 0&&vi.delete(e)}r.logs.push({...t,milliseconds:n-r.firstEventTime}),r.logs.length>_i&&r.logs.shift()}function xi(e){if(e.length<6||e.length>6&&e[6]!==` `)return null;for(let t=0;t<6;t++){let n=e[t];if(!(n>=`a`&&n<=`z`||n>=`A`&&n<=`Z`||n>=`0`&&n<=`9`))return null}return e.substring(0,6)}var Si=class e{constructor(t,n,r){this.level=R.Info;let i=()=>{},a=t||e.createDefaultLoggerOptions();this.localCallback=a.loggerCallback||i,this.piiLoggingEnabled=a.piiLoggingEnabled||!1,this.level=typeof a.logLevel==`number`?a.logLevel:R.Info,this.packageName=n||``,this.packageVersion=r||``}static createDefaultLoggerOptions(){return{loggerCallback:()=>{},piiLoggingEnabled:!1,logLevel:R.Info}}clone(t,n){return new e({loggerCallback:this.localCallback,piiLoggingEnabled:this.piiLoggingEnabled,logLevel:this.level},t,n)}logMessage(e,t){let n=t.correlationId,r=xi(e);if(r&&bi(n,{hash:r,level:t.logLevel,containsPii:t.containsPii||!1,milliseconds:0}),t.logLevel>this.level||!this.piiLoggingEnabled&&t.containsPii)return;let i=`${`[${new Date().toUTCString()}] : [${n}]`} : ${this.packageName}@${this.packageVersion} : ${R[t.logLevel]} - ${e}`;this.executeCallback(t.logLevel,i,t.containsPii||!1)}executeCallback(e,t,n){this.localCallback&&this.localCallback(e,t,n)}error(e,t){this.logMessage(e,{logLevel:R.Error,containsPii:!1,correlationId:t})}errorPii(e,t){this.logMessage(e,{logLevel:R.Error,containsPii:!0,correlationId:t})}warning(e,t){this.logMessage(e,{logLevel:R.Warning,containsPii:!1,correlationId:t})}warningPii(e,t){this.logMessage(e,{logLevel:R.Warning,containsPii:!0,correlationId:t})}info(e,t){this.logMessage(e,{logLevel:R.Info,containsPii:!1,correlationId:t})}infoPii(e,t){this.logMessage(e,{logLevel:R.Info,containsPii:!0,correlationId:t})}verbose(e,t){this.logMessage(e,{logLevel:R.Verbose,containsPii:!1,correlationId:t})}verbosePii(e,t){this.logMessage(e,{logLevel:R.Verbose,containsPii:!0,correlationId:t})}trace(e,t){this.logMessage(e,{logLevel:R.Trace,containsPii:!1,correlationId:t})}tracePii(e,t){this.logMessage(e,{logLevel:R.Trace,containsPii:!0,correlationId:t})}isPiiLoggingEnabled(){return this.piiLoggingEnabled||!1}},Ci=`@azure/msal-common`,wi=`16.16.1`,Ti=`cache_quota_exceeded`,Ei=`cache_error_unknown`,Di=class e extends Error{constructor(t,n){let r=n||je(t);super(r),Object.setPrototypeOf(this,e.prototype),this.name=`CacheError`,this.errorCode=t,this.errorMessage=r}};function Oi(e){return e instanceof Error?e.name===`QuotaExceededError`||e.name===`NS_ERROR_DOM_QUOTA_REACHED`||e.message.includes(`exceeded the quota`)?new Di(Ti):new Di(e.name,e.message):new Di(Ei)}var ki=class{constructor(e,t,n,r,i,a){this.clientId=e,this.cryptoImpl=t,this.tokenBindingKeyManager=a,this.commonLogger=n.clone(Ci,wi),this.staticAuthorityOptions=i,this.performanceClient=r}getAllAccounts(e={},t){return this.buildTenantProfiles(this.getAccountsFilteredBy(e,t),t,e)}getAccountInfoFilteredBy(e,t){if(Object.keys(e).length===0||Object.values(e).every(e=>e==null||e===``))return this.commonLogger.warning(`1skb02`,t),null;let n=this.getAllAccounts(e,t);return n.length>1?n.sort((e,t)=>{let n=+!!e.idTokenClaims;return+!!t.idTokenClaims-n})[0]:n.length===1?n[0]:null}getBaseAccountInfo(e,t){let n=this.getAccountsFilteredBy(e,t);return n.length>0?vt(n[0]):null}buildTenantProfiles(e,t,n){return e.flatMap(e=>this.getTenantProfilesFromAccountEntity(e,t,n?.tenantId,n))}getTenantedAccountInfoByFilter(e,t,n,r,i){let a=null,o;if(i&&!this.tenantProfileMatchesFilter(n,i))return null;let s=this.getIdToken(e,r,t,n.tenantId);return s&&(o=O(s.secret,this.cryptoImpl.base64Decode,r),!this.idTokenClaimsMatchTenantProfileFilter(o,i))?null:(a=ht(e,n,o,s?.secret),a)}getTenantProfilesFromAccountEntity(e,t,n,r){let i=vt(e),a=i.tenantProfiles||new Map,o=this.getTokenKeys();if(n){let e=a.get(n);if(e)a=new Map([[n,e]]);else return[]}let s=[];return a.forEach(e=>{let n=this.getTenantedAccountInfoByFilter(i,o,e,t,r);n&&s.push(n)}),s}tenantProfileMatchesFilter(e,t){return!(t.localAccountId&&!this.matchLocalAccountIdFromTenantProfile(e,t.localAccountId)||t.name&&e.name!==t.name||t.isHomeTenant!==void 0&&e.isHomeTenant!==t.isHomeTenant||t.username&&!this.matchUsername(e.username,t.username)&&!this.matchUsername(e.upn,t.username)||t.loginHint&&!this.matchLoginHintWithTenantProfile(e,t.loginHint)||t.upn&&e.upn!==t.upn||t.nativeAccountId&&e.nativeAccountId!==t.nativeAccountId)}idTokenClaimsMatchTenantProfileFilter(e,t){return!(t&&(t.localAccountId&&!this.matchLocalAccountIdFromTokenClaims(e,t.localAccountId)||t.loginHint&&!this.matchLoginHintFromTokenClaims(e,t.loginHint)||t.username&&!this.matchUsername(e.preferred_username,t.username)&&!this.matchUsername(e.upn,t.username)||t.name&&!this.matchName(e,t.name)||t.sid&&!this.matchSid(e,t.sid)))}async saveCacheRecord(e,t,n,r,i){if(!e)throw E(Ze,t);try{e.account&&await this.setAccount(e.account,t,n,r),e.idToken&&i?.idToken!==!1&&await this.setIdTokenCredential(e.idToken,t,n),e.accessToken&&i?.accessToken!==!1&&await this.saveAccessToken(e.accessToken,t,n),e.refreshToken&&i?.refreshToken!==!1&&await this.setRefreshTokenCredential(e.refreshToken,t,n),e.appMetadata&&this.setAppMetadata(e.appMetadata,t)}catch(e){throw this.commonLogger?.error(`0j476p`,t),e instanceof w?e:Oi(e)}}async saveAccessToken(e,t,n){let r;e.additionalCacheKeyComponents&&Object.keys(e.additionalCacheKeyComponents).length>0&&(r=await this.cryptoImpl.hashString(JSON.stringify(e.additionalCacheKeyComponents)));let i={clientId:e.clientId,credentialType:e.credentialType,environment:e.environment,homeAccountId:e.homeAccountId,realm:e.realm,tokenType:e.tokenType},a=this.getTokenKeys(),o=L.fromString(e.target,t),s=[];a.accessToken.forEach(e=>{if(!this.accessTokenKeyMatchesFilter(e,i,!1))return;let n=this.getAccessTokenCredential(e,t);n&&this.credentialMatchesFilter(n,i,t)&&L.fromString(n.target,t).intersectingScopeSets(o)&&s.push(e)});for(let n of s)await this.removeAccessTokenAndTokenBindingKey(n,t,e.keyId);await this.setAccessTokenCredential(e,t,n,r)}getAccountsFilteredBy(e,t){let n=this.getAccountKeys(),r=[];return n.forEach(n=>{let i=this.getAccount(n,t);if(!i||e.homeAccountId&&!this.matchHomeAccountId(i,e.homeAccountId)||e.environment&&!this.matchEnvironment(i,e.environment,t)||e.realm&&!this.matchRealm(i,e.realm)||e.authorityType&&!this.matchAuthorityType(i,e.authorityType))return;let a={localAccountId:e?.localAccountId,name:e?.name,username:e?.username,loginHint:e?.loginHint,upn:e?.upn,nativeAccountId:e?.nativeAccountId},o=i.tenantProfiles?.filter(e=>this.tenantProfileMatchesFilter(e,a));o&&o.length===0||r.push(i)}),r}credentialMatchesFilter(e,t,n){if(t.clientId&&!this.matchClientId(e,t.clientId)||t.userAssertionHash&&!this.matchUserAssertionHash(e,t.userAssertionHash)||typeof t.homeAccountId==`string`&&!this.matchHomeAccountId(e,t.homeAccountId)||t.environment&&!this.matchEnvironment(e,t.environment,n)||t.realm&&!this.matchRealm(e,t.realm)||t.credentialType&&!this.matchCredentialType(e,t.credentialType)||t.familyId&&!this.matchFamilyId(e,t.familyId)||t.target&&!this.matchTarget(e,t.target,n)||e.credentialType===x.ACCESS_TOKEN_WITH_AUTH_SCHEME&&!this.matchAccessTokenWithAuthScheme(e,t))return!1;let r=e.additionalCacheKeyComponents,i=t.additionalCacheKeyComponents,a=!!r&&Object.keys(r).length>0,o=!!i&&Object.keys(i).length>0;if(a!==o)return!1;if(a&&o){let e=Object.keys(r).sort(),t=Object.keys(i).sort();if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n]||r[e[n]]!==i[t[n]])return!1}return!0}getAppMetadataFilteredBy(e,t){let n=this.getKeys(),r={};return n.forEach(n=>{if(!this.isAppMetadata(n))return;let i=this.getAppMetadata(n,t);!i||e.environment&&!this.matchEnvironment(i,e.environment,t)||e.clientId&&!this.matchClientId(i,e.clientId)||(r[n]=i)}),r}getAuthorityMetadataByAlias(e,t){let n=this.getAuthorityMetadataKeys(),r=null;return n.forEach(n=>{if(!this.isAuthorityMetadata(n)||n.indexOf(this.clientId)===-1)return;let i=this.getAuthorityMetadata(n,t);i&&i.aliases.indexOf(e)!==-1&&(r=i)}),r}removeAllAccounts(e){this.getAllAccounts({},e).forEach(t=>{this.removeAccount(t,e)})}removeAccount(e,t){let n=this.getAccountKeys(),r=t=>t.includes(e.homeAccountId)&&t.includes(e.environment);this.getTokenKeys().idToken.filter(r).forEach(e=>{this.removeIdToken(e,t)}),this.removeAccountContext(e,t),n.filter(r).forEach(e=>{this.removeItem(e,t),this.performanceClient.incrementFields({accountsRemoved:1},t)})}removeAccountContext(e,t){let n=this.getTokenKeys(),r=t=>t.includes(e.homeAccountId)&&t.includes(e.environment);n.accessToken.filter(r).forEach(e=>{this.removeAccessToken(e,t)}),n.refreshToken.filter(r).forEach(e=>{this.removeRefreshToken(e,t)})}removeAccessToken(e,t){let n=this.removeAccessTokenCredential(e,t);n&&this.removeTokenBindingKeyForCredential(n,t)}async removeAccessTokenAndTokenBindingKey(e,t,n){let r=this.removeAccessTokenCredential(e,t);r&&await this.removeTokenBindingKeyForCredential(r,t,n)}removeAccessTokenCredential(e,t){let n=this.getAccessTokenCredential(e,t);return n?(this.removeItem(e,t),this.performanceClient.incrementFields({accessTokensRemoved:1},t),n):null}async removeTokenBindingKeyForCredential(e,t,n){if(e.credentialType.toLowerCase()===x.ACCESS_TOKEN_WITH_AUTH_SCHEME.toLowerCase())switch(e.tokenType?.toLowerCase()){case C.POP:case C.DPOP.toLowerCase():{let r=e.keyId;if(r&&r!==n&&!this.isTokenBindingKeyReferenced(r,t))try{await this.tokenBindingKeyManager.removeTokenBindingKey(r,t)}catch{this.commonLogger.error(`0id34f`,t),this.performanceClient?.incrementFields({removeTokenBindingKeyFailure:1},t)}break}}}isTokenBindingKeyReferenced(e,t){return this.getTokenKeys().accessToken.some(n=>this.getAccessTokenCredential(n,t)?.keyId===e)}removeAppMetadata(e){return this.getKeys().forEach(t=>{this.isAppMetadata(t)&&this.removeItem(t,e)}),!0}getIdToken(e,t,n,r){this.commonLogger.trace(`1drz22`,t);let i={homeAccountId:e.homeAccountId,environment:e.environment,credentialType:x.ID_TOKEN,clientId:this.clientId,realm:r},a=this.getIdTokensByFilter(i,t,n),o=a.size;if(o<1)return this.commonLogger.info(`1atvtd`,t),null;if(o>1){let n=a;if(!r){let r=new Map;a.forEach((t,n)=>{t.realm===e.tenantId&&r.set(n,t)});let i=r.size;if(i<1)return this.commonLogger.info(`0ooalx`,t),a.values().next().value??null;if(i===1)return this.commonLogger.info(`1eq2vc`,t),r.values().next().value??null;n=r}return this.commonLogger.info(`1ws328`,t),n.forEach((e,n)=>{this.removeIdToken(n,t)}),this.performanceClient.addFields({multiMatchedID:a.size},t),null}return this.commonLogger.info(`1sm769`,t),a.values().next().value??null}getIdTokensByFilter(e,t,n){let r=n&&n.idToken||this.getTokenKeys().idToken,i=new Map;return r.forEach(n=>{if(!this.idTokenKeyMatchesFilter(n,{clientId:this.clientId,...e}))return;let r=this.getIdTokenCredential(n,t);r&&this.credentialMatchesFilter(r,e,t)&&i.set(n,r)}),i}idTokenKeyMatchesFilter(e,t){let n=e.toLowerCase();return!(t.clientId&&n.indexOf(t.clientId.toLowerCase())===-1||t.homeAccountId&&n.indexOf(t.homeAccountId.toLowerCase())===-1)}removeIdToken(e,t){this.removeItem(e,t)}removeRefreshToken(e,t){this.removeItem(e,t)}getAccessToken(e,t,n,r){let i=t.correlationId;this.commonLogger.trace(`1t7hz1`,i);let a=L.createSearchScopes(t.scopes,i),o=t.authenticationScheme||C.BEARER,s=o.toLowerCase(),c=o&&o.toLowerCase()!==C.BEARER.toLowerCase()?x.ACCESS_TOKEN_WITH_AUTH_SCHEME:x.ACCESS_TOKEN,l=cr(t.attributeTokens),u=l?{attribute_tokens:l}:void 0,d={homeAccountId:e.homeAccountId,environment:e.environment,credentialType:c,clientId:this.clientId,realm:r||e.tenantId,target:a,tokenType:o,keyId:o===C.SSH?t.sshKid:s===C.DPOP.toLowerCase()?t.popKid||t.dpopJkt:void 0,additionalCacheKeyComponents:u},f=n&&n.accessToken||this.getTokenKeys().accessToken,p=[],m=[];return f.forEach(e=>{if(this.accessTokenKeyMatchesFilter(e,d,!0)){let t=this.getAccessTokenCredential(e,i);t&&this.credentialMatchesFilter(t,d,i)&&(p.push(t),m.push(e))}}),p.length<1?(this.commonLogger.info(`1nckna`,i),null):p.length>1?(this.commonLogger.info(`1wkfwp`,i),m.forEach(e=>{this.removeAccessToken(e,i)}),this.performanceClient.addFields({multiMatchedAT:p.length},i),null):(this.commonLogger.info(`06yt98`,i),p[0])}accessTokenKeyMatchesFilter(e,t,n){let r=e.toLowerCase();if(t.clientId&&r.indexOf(t.clientId.toLowerCase())===-1||t.homeAccountId&&r.indexOf(t.homeAccountId.toLowerCase())===-1||t.realm&&r.indexOf(t.realm.toLowerCase())===-1)return!1;if(t.target){let e=t.target.asArray();for(let t=0;t<e.length;t++)if(n&&!r.includes(e[t].toLowerCase()))return!1;else if(!n&&r.includes(e[t].toLowerCase()))return!0}return!0}getAccessTokensByFilter(e,t){let n=this.getTokenKeys(),r=[];return n.accessToken.forEach(n=>{if(!this.accessTokenKeyMatchesFilter(n,e,!0))return;let i=this.getAccessTokenCredential(n,t);i&&this.credentialMatchesFilter(i,e,t)&&r.push(i)}),r}getRefreshToken(e,t,n,r){this.commonLogger.trace(`0x53vi`,n);let i=t?`1`:void 0,a={homeAccountId:e.homeAccountId,environment:e.environment,credentialType:x.REFRESH_TOKEN,clientId:this.clientId,familyId:i},o=r&&r.refreshToken||this.getTokenKeys().refreshToken,s=[];o.forEach(e=>{if(this.refreshTokenKeyMatchesFilter(e,a)){let t=this.getRefreshTokenCredential(e,n);t&&this.credentialMatchesFilter(t,a,n)&&s.push(t)}});let c=s.length;return c<1?(this.commonLogger.info(`0dlw11`,n),null):(c>1&&this.performanceClient.addFields({multiMatchedRT:c},n),this.commonLogger.info(`0wcnep`,n),s[0])}refreshTokenKeyMatchesFilter(e,t){let n=e.toLowerCase();return!(t.familyId&&n.indexOf(t.familyId.toLowerCase())===-1||!t.familyId&&t.clientId&&n.indexOf(t.clientId.toLowerCase())===-1||t.homeAccountId&&n.indexOf(t.homeAccountId.toLowerCase())===-1)}readAppMetadataFromCache(e,t){let n={environment:e,clientId:this.clientId},r=this.getAppMetadataFilteredBy(n,t),i=Object.keys(r).map(e=>r[e]),a=i.length;if(a<1)return null;if(a>1)throw E(Ge,t);return i[0]}isAppMetadataFOCI(e,t){let n=this.readAppMetadataFromCache(e,t);return!!(n&&n.familyId===`1`)}matchHomeAccountId(e,t){return typeof e.homeAccountId==`string`&&t===e.homeAccountId}matchLocalAccountIdFromTokenClaims(e,t){return t===(e.oid||e.sub)}matchLocalAccountIdFromTenantProfile(e,t){return e.localAccountId===t}matchName(e,t){return t.toLowerCase()===e.name?.toLowerCase()}matchUsername(e,t){return!!(e&&typeof e==`string`&&t?.toLowerCase()===e.toLowerCase())}matchLoginHintWithTenantProfile(e,t){return e.loginHint===t||e.username===t||e.upn===t}matchUserAssertionHash(e,t){return!!(e.userAssertionHash&&t===e.userAssertionHash)}matchEnvironment(e,t,n){if(this.staticAuthorityOptions){let r=sn(this.staticAuthorityOptions,this.commonLogger,n);if(r.includes(t)&&r.includes(e.environment))return!0}let r=this.getAuthorityMetadataByAlias(t,n);return!!(r&&r.aliases.indexOf(e.environment)>-1)}matchCredentialType(e,t){return e.credentialType&&t.toLowerCase()===e.credentialType.toLowerCase()}matchClientId(e,t){return!!(e.clientId&&t===e.clientId)}matchFamilyId(e,t){return!!(e.familyId&&t===e.familyId)}matchRealm(e,t){return e.realm?.toLowerCase()===t.toLowerCase()}matchLoginHintFromTokenClaims(e,t){return!!(e.login_hint===t||e.preferred_username===t||e.upn===t||e.emails&&e.emails.includes(t))}matchSid(e,t){return e.sid===t}matchAuthorityType(e,t){return!!(e.authorityType&&t.toLowerCase()===e.authorityType.toLowerCase())}matchTarget(e,t,n){return e.credentialType!==x.ACCESS_TOKEN&&e.credentialType!==x.ACCESS_TOKEN_WITH_AUTH_SCHEME||!e.target?!1:L.fromString(e.target,n).containsScopeSet(t)}matchTokenType(e,t){return!!(e.tokenType&&e.tokenType.toLowerCase()===t.toLowerCase())}matchAccessTokenWithAuthScheme(e,t){let n=t.tokenType?.toLowerCase();if(t.tokenType&&!this.matchTokenType(e,t.tokenType))return!1;switch(n){case`dpop`:case C.SSH:return this.matchKeyBoundAccessToken(e,t);default:return!0}}matchKeyBoundAccessToken(e,t){return!t.keyId||this.matchKeyId(e,t.keyId)}matchKeyId(e,t){return!!(e.keyId&&e.keyId===t)}isAppMetadata(e){return e.indexOf(ve)!==-1}isAuthorityMetadata(e){return e.indexOf(be)!==-1}generateAuthorityMetadataCacheKey(e){return`${be}-${this.clientId}-${e}`}static toObject(e,t){for(let n in t)e[n]=t[n];return e}},Ai=class extends ki{async setAccount(){throw E(D,``)}getAccount(){throw E(D,``)}async setIdTokenCredential(){throw E(D,``)}getIdTokenCredential(){throw E(D,``)}async setAccessTokenCredential(){throw E(D,``)}getAccessTokenCredential(){throw E(D,``)}async setRefreshTokenCredential(){throw E(D,``)}getRefreshTokenCredential(){throw E(D,``)}setAppMetadata(){throw E(D,``)}getAppMetadata(){throw E(D,``)}setServerTelemetry(){throw E(D,``)}getServerTelemetry(){throw E(D,``)}setAuthorityMetadata(){throw E(D,``)}getAuthorityMetadata(){throw E(D,``)}getAuthorityMetadataKeys(){throw E(D,``)}setThrottlingCache(){throw E(D,``)}getThrottlingCache(){throw E(D,``)}removeItem(){throw E(D,``)}getKeys(){throw E(D,``)}getAccountKeys(){throw E(D,``)}getTokenKeys(){throw E(D,``)}generateCredentialKey(e,t){throw E(D,``)}generateAccountKey(){throw E(D,``)}},ji={NotStarted:0,InProgress:1,Completed:2},Mi=class{generateId(){return`callback-id`}startMeasurement(e,t){return{end:()=>null,discard:()=>{},add:()=>{},increment:()=>{},event:{eventId:this.generateId(),status:ji.InProgress,authority:``,libraryName:``,libraryVersion:``,clientId:``,name:e,startTimeMs:Date.now(),correlationId:t||``}}}endMeasurement(){return null}discardMeasurements(){}removePerformanceCallback(){return!0}addPerformanceCallback(){return``}emitEvents(){}addFields(){}addGlobalFields(){}incrementFields(){}cacheEventByCorrelationId(){}},Ni={tokenRenewalOffsetSeconds:300,preventCorsPreflight:!1},Pi={loggerCallback:()=>{},piiLoggingEnabled:!1,logLevel:R.Info,correlationId:``},Fi={async sendGetRequestAsync(){throw E(D,``)},async sendPostRequestAsync(){throw E(D,``)}},Ii={sku:c,version:wi,cpu:``,os:``},Li={clientSecret:``,clientAssertion:void 0},Ri={azureCloudInstance:dn.None,tenant:`${u}`},zi={application:{appName:``,appVersion:``}};function Bi({authOptions:e,systemOptions:t,loggerOptions:n,storageInterface:r,networkInterface:i,cryptoInterface:a,tokenBindingKeyManager:o,clientCredentials:s,libraryInfo:c,telemetry:l,serverTelemetryManager:u,persistencePlugin:d,serializableCache:f}){let p={...Pi,...n},m=o||hi;return{authOptions:Vi(e),systemOptions:{...Ni,...t},loggerOptions:p,storageInterface:r||new Ai(e.clientId,mi,new Si(p,`@azure/msal-common`,`16.16.1`),new Mi,void 0,m),networkInterface:i||Fi,cryptoInterface:a||mi,tokenBindingKeyManager:m,clientCredentials:s||Li,libraryInfo:{...Ii,...c},telemetry:{...zi,...l},serverTelemetryManager:u||null,persistencePlugin:d||null,serializableCache:f||null}}function Vi(e){return{clientCapabilities:[],azureCloudOptions:Ri,instanceAware:!1,isMcp:!1,...e}}function Hi(e){return e.authOptions.authority.options.protocolMode===A.OIDC}var Ui=class{constructor(e,t){this.cache=e,this.hasChanged=t}get cacheHasChanged(){return this.hasChanged}get tokenCache(){return this.cache}},Wi=class e extends w{constructor(t,n,r){super(t,n,r),this.name=`JoseHeaderError`,Object.setPrototypeOf(this,e.prototype)}};function Gi(e,t){return new Wi(e,t)}function Ki(e){if(typeof e!=`object`||!e||Object.prototype.toString.call(e)!==`[object Object]`)return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}var qi=`missing_kid_error`,Ji=`missing_alg_error`,Yi=`missing_jwk_error`,Xi=`invalid_jwk_error`,Zi=class e{constructor(e,t){if(typeof e.alg!=`string`||!e.alg)throw Gi(Ji,t);this.typ=e.typ,this.alg=e.alg,this.kid=e.kid,this.jwk=e.jwk}static getShrHeader(t,n){if(!t.kid)throw Gi(qi,n);if(!t.alg)throw Gi(Ji,n);return new e({typ:t.typ||Ae.Pop,kid:t.kid,alg:t.alg},n)}static getDpopHeader(t,n){if(!Ki(t.jwk))throw Gi(Yi,n);if(!t.alg)throw Gi(Ji,n);if(Object.keys(t.jwk).length===0)throw Gi(Xi,n);return new e({typ:Ae.Dpop,alg:t.alg,jwk:t.jwk},n)}},Qi={SW:`sw`},$i=`shr`,ea=pi.RS256,ta=class{constructor(e,t,n){this.cryptoUtils=e,this.tokenBindingKeyManager=t,this.performanceClient=n}async generateCnf(e,t){let n=await F(this.generateKid.bind(this),Dn,t,this.performanceClient,e.correlationId)(e),r=this.cryptoUtils.base64UrlEncode(JSON.stringify(n));return{kid:n.kid,reqCnfString:r}}async generateKid(e){return{kid:await this.tokenBindingKeyManager.provisionTokenBindingKey({correlationId:e.correlationId,tokenBindingKeyType:$i,tokenBindingKeyAlgorithm:ea}),xms_ksl:Qi.SW}}async signPopToken(e,t,n){return this.signPayload(e,t,n)}async signPayload(e,t,n,r){let{resourceRequestMethod:i,resourceRequestUri:a,shrClaims:o,shrNonce:s,shrOptions:c}=n,l=(a?new N(a,n.correlationId):void 0)?.getUrlComponents(),u=await this.tokenBindingKeyManager.getTokenBindingPublicKeyJwk(t,n.correlationId),d=this.cryptoUtils.base64UrlEncode(JSON.stringify({kid:t})),f=c?.header?.alg||u.alg||ea,p=Zi.getShrHeader({...c?.header,alg:f,kid:d},n.correlationId),m={at:e,ts:I(),m:i?.toUpperCase(),u:l?.HostNameAndPort,nonce:s||this.cryptoUtils.createNewGuid(),p:l?.AbsolutePath,q:l?.QueryString?[[],l.QueryString]:void 0,client_claims:o||void 0,...r,cnf:{jwk:u}};return this.cryptoUtils.signTokenBindingJwt(p,m,t,n.correlationId)}},na=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,ra=`dpop`,ia=pi.ES256;function aa(e,t){return Zi.getDpopHeader({alg:ia,jwk:e},t)}function oa(e,t){if(typeof e!=`string`||!na.test(e))throw M(Jt,t);return e.toUpperCase()}function sa(e,t){let n;try{n=new URL(e)}catch{throw M(kt,t)}if(!/^https:\/\//i.test(e)||n.protocol!==`https:`||n.username||n.password)throw M(Yt,t);return n.search=``,n.hash=``,n.href}function ca(e,t){if(e!==void 0&&e.trim().length===0)throw M(Xt,t)}function la(e,t=``){return{htm:oa(e.htm,t),htu:sa(e.htu,t)}}var ua=class{constructor(e,t){this.cryptoUtils=e,this.tokenBindingKeyManager=t}async generateJkt(e=``){return this.tokenBindingKeyManager.provisionTokenBindingKey({tokenBindingKeyType:ra,tokenBindingKeyAlgorithm:ia,correlationId:e})}buildTokenProofClaims(e,t=``){ca(e.nonce,t);let n={jti:this.cryptoUtils.createNewGuid(),htm:`POST`,htu:sa(e.tokenEndpoint,t),iat:I()};return e.nonce!==void 0&&(n.nonce=e.nonce),n}async generateTokenProof(e,t,n=``){return this.generateProof(this.buildTokenProofClaims(e,n),t,n)}buildResourceProofClaims(e,t=``){ca(e.nonce,t);let n=la(e,t),r={jti:this.cryptoUtils.createNewGuid(),htm:n.htm,htu:n.htu,ath:e.ath,iat:I()};return e.nonce!==void 0&&(r.nonce=e.nonce),r}async generateResourceProof(e,t,n=``){let{htu:r,htm:i,nonce:a}=e;if(!r||!i)throw M(Zt,n);let o=await this.cryptoUtils.hashString(e.accessToken);return this.generateProof(this.buildResourceProofClaims({htu:r,htm:i,ath:o,nonce:a},n),t,n)}async generateProof(e,t,n){let r=await this.tokenBindingKeyManager.getTokenBindingPublicKeyJwk(t,n);return this.cryptoUtils.signTokenBindingJwt(aa(r,n),e,t,n)}},da=`no_tokens_found`,fa=`native_account_unavailable`,pa=`refresh_token_expired`,ma=`ui_not_allowed`,ha=[`interaction_required`,`consent_required`,`login_required`,`bad_token`,ma,`interrupted_user`],ga=[`message_only`,`additional_action`,`basic_action`,`user_password_expired`,`consent_required`,`bad_token`,`ui_not_allowed`,`interrupted_user`],z=class e extends w{constructor(t,n,r,i,a,o,s,c){super(t,n,r,i),Object.setPrototypeOf(this,e.prototype),this.timestamp=a||``,this.traceId=o||``,this.claims=s||``,this.name=`InteractionRequiredAuthError`,this.errorNo=c}};function _a(e,t,n){let r=!!e&&ha.indexOf(e)>-1,i=!!n&&ga.indexOf(n)>-1,a=!!t&&ha.some(e=>t.indexOf(e)>-1);return r||a||i}function va(e,t,n){return new z(e,t,n)}var ya=class e extends w{constructor(t,n,r,i,a,o){super(t,n,r,i),this.name=`ServerError`,this.errorNo=a,this.status=o,Object.setPrototypeOf(this,e.prototype)}};function ba(e,t,n,r){let i=xa(e,r,n);return t?`${i}|${t}`:i}function xa(e,t,n){if(!e)throw E(et,t);let r={id:e.createNewGuid()};n&&(r.meta=n);let i=JSON.stringify(r);return e.base64Encode(i)}function Sa(e,t,n){if(!e)throw E(et,n);if(!t)throw E(Ve,n);try{let n=t.split(`|`),r=n[0],i=n.length>1?n.slice(1).join(`|`):``,a=e(r),o=JSON.parse(a);return{userRequestState:i||``,libraryState:o}}catch{throw E(Ve,n)}}var Ca=class e{constructor(e,t,n,r,i,a,o,s=hi){this.clientId=e,this.cacheStorage=t,this.cryptoObj=n,this.tokenBindingKeyManager=s,this.logger=r,this.performanceClient=i,this.serializableCache=a,this.persistencePlugin=o}validateTokenResponse(e,t,n){if(e.error||e.error_description||e.suberror){let r=`Error(s): ${e.error_codes||`Not Available`} - Timestamp: ${e.timestamp||`Not Available`} - Description: ${e.error_description||`Not Available`} - Correlation ID: ${e.correlation_id||`Not Available`} - Trace ID: ${e.trace_id||`Not Available`}`,i=e.error_codes?.length?e.error_codes[0]:void 0,a=new ya(e.error||``,e.correlation_id||``,r,e.suberror,i,e.status);if(n&&e.status&&e.status>=500&&e.status<=599){this.logger.warning(`16ks7j ${a}`,t);return}if(n&&e.status&&e.status>=400&&e.status<=499){this.logger.warning(`0g61x3 ${a}`,t);return}throw _a(e.error,e.error_description,e.suberror)?new z(e.error||``,e.correlation_id||``,e.error_description,e.suberror,e.timestamp||``,e.trace_id||``,e.claims||``,i):a}}async handleServerTokenResponse(t,n,r,i,a,o,s,c,l,u,d){let f;if(t.id_token&&(f=O(t.id_token||``,this.cryptoObj.base64Decode,i.correlationId)),o&&Object.prototype.hasOwnProperty.call(o,`nonce`)){let e=o.nonce,t=f?.nonce;if(t!==void 0&&e===void 0)throw this.logger.warning(`0thba9`,i.correlationId),E(We,i.correlationId);if(e!==void 0&&(typeof e!=`string`||typeof t!=`string`||e!==t))throw E(We,i.correlationId)}this.homeAccountIdentifier=xt(t.client_info||``,n.authorityType,this.logger,this.cryptoObj,i.correlationId,f);let p;if(o&&o.state&&(p=Sa(this.cryptoObj.base64Decode,o.state,i.correlationId)),t.key_id=t.key_id||i.dpopJkt||i.sshKid||void 0,i.authenticationScheme===C.DPOP){if(t.token_type?.toLowerCase()!==C.DPOP.toLowerCase())throw this.performanceClient?.addFields({dpopTokenTypeMismatch:t.token_type},i.correlationId),E(tt,i.correlationId);t.token_type=C.DPOP}let m=cr(i.attributeTokens),h=d??(m?{attribute_tokens:m}:void 0),g=this.generateCacheRecord(t,n,r,i,f,s,o,h),_;try{if(this.persistencePlugin&&this.serializableCache&&(this.logger.verbose(`0jbz5k`,i.correlationId),_=new Ui(this.serializableCache,!0),await this.persistencePlugin.beforeCacheAccess(_)),c&&!l&&g.account&&this.cacheStorage.getAllAccounts({homeAccountId:g.account.homeAccountId,environment:g.account.environment},i.correlationId).length<1)return this.logger.warning(`1gmt66`,i.correlationId),this.performanceClient?.addFields({acntLoggedOut:!0},i.correlationId),await e.generateAuthenticationResult(this.cryptoObj,n,g,!1,i,this.performanceClient,{idTokenClaims:f,requestState:p,requestId:u,tokenBindingKeyManager:this.tokenBindingKeyManager});await this.cacheStorage.saveCacheRecord(g,i.correlationId,k(f||{}),a,i.storeInCache)}finally{this.persistencePlugin&&this.serializableCache&&_&&(this.logger.verbose(`1bh17u`,i.correlationId),await this.persistencePlugin.afterCacheAccess(_))}return e.generateAuthenticationResult(this.cryptoObj,n,g,!1,i,this.performanceClient,{idTokenClaims:f,requestState:p,serverTokenResponse:t,requestId:u,tokenBindingKeyManager:this.tokenBindingKeyManager})}generateCacheRecord(e,t,n,r,i,a,o,s){let c=t.getPreferredCache();if(!c)throw E(Qe,r.correlationId);let l=_t(i),u,d;e.id_token&&i&&(u=Kn(this.homeAccountIdentifier,c,e.id_token,this.clientId,l||``),d=wa(this.cacheStorage,t,this.homeAccountIdentifier,this.cryptoObj.base64Decode,r.correlationId,i,e.client_info,c,l,o,void 0,this.logger,this.performanceClient));let f=null;if(e.access_token){let i=e.scope?L.fromString(e.scope,r.correlationId):new L(r.scopes||[],r.correlationId),o=(typeof e.expires_in==`string`?parseInt(e.expires_in,10):e.expires_in)||0,u=(typeof e.ext_expires_in==`string`?parseInt(e.ext_expires_in,10):e.ext_expires_in)||0,d=(typeof e.refresh_in==`string`?parseInt(e.refresh_in,10):e.refresh_in)||void 0,p=n+o,m=p+u,h=d&&d>0?n+d:void 0;f=qn(this.homeAccountIdentifier,c,e.access_token,this.clientId,l||t.tenant||``,i.printScopes(),p,m,this.cryptoObj.base64Decode,r.correlationId,h,e.token_type,a,e.key_id,s);let g=r.resource||null;g&&(f.resource=g)}let p=null;if(e.refresh_token){let t;e.refresh_token_expires_in&&(t=n+(typeof e.refresh_token_expires_in==`string`?parseInt(e.refresh_token_expires_in,10):e.refresh_token_expires_in),this.performanceClient?.addFields({ntwkRtExpiresOnSeconds:t},r.correlationId)),p=Jn(this.homeAccountIdentifier,c,e.refresh_token,this.clientId,e.foci,a,t)}let m=null;return e.foci&&(m={clientId:this.clientId,environment:c,familyId:e.foci}),{account:d,idToken:u,accessToken:f,refreshToken:p,appMetadata:m}}static async generateAuthenticationResult(e,t,n,r,i,a,o={}){let{idTokenClaims:s,requestState:c,serverTokenResponse:l,requestId:u,tokenBindingKeyManager:d=hi}=o,f=``,p=[],m=null,h,g,_=``,ee;if(n.accessToken){let t=n.accessToken.tokenType?.toLowerCase();if(n.accessToken.tokenType===C.POP&&!i.popKid){let t=new ta(e,d,a),{secret:r,keyId:o}=n.accessToken;if(!o)throw E(st,i.correlationId);f=await t.signPopToken(r,o,i)}else f=n.accessToken.secret;if(t===C.DPOP.toLowerCase()){if(!n.accessToken.keyId)throw E(st,i.correlationId);ee=await new ua(e,d).generateResourceProof({htu:i.resourceRequestUri,htm:i.resourceRequestMethod,accessToken:n.accessToken.secret},n.accessToken.keyId,i.correlationId)}p=L.fromString(n.accessToken.target,i.correlationId).asArray(),m=Hn(n.accessToken.expiresOn),h=Hn(n.accessToken.extendedExpiresOn),n.accessToken.refreshOn&&(g=Hn(n.accessToken.refreshOn))}n.appMetadata&&(_=n.appMetadata.familyId===`1`?`1`:``);let te=s?.oid||s?.sub||``,ne=s?.tid||``,re=s?.tenant_region_sub_scope;if(typeof re==`string`&&a?.addFields({regionSubScope:re},i.correlationId),l?.spa_accountid&&n.account){n.account.nativeAccountId=l?.spa_accountid;let e=ne||n.account.realm;if(n.account.tenantProfiles){let t=n.account.tenantProfiles.find(t=>t.tenantId===e);t&&(t.nativeAccountId=l.spa_accountid)}}let ie=n.account?ht(vt(n.account),void 0,s,n.idToken?.secret):null;return{authority:t.canonicalAuthority,uniqueId:te,tenantId:ne,scopes:p,account:ie,idToken:n?.idToken?.secret||``,idTokenClaims:s||{},accessToken:f,dpopProof:ee,fromCache:r,expiresOn:m,extExpiresOn:h,refreshOn:g,correlationId:i.correlationId,requestId:u||``,familyId:_,tokenType:n.accessToken?.tokenType?.toLowerCase()===C.DPOP.toLowerCase()?C.DPOP:n.accessToken?.tokenType||``,state:c?c.userRequestState:``,cloudGraphHostName:n.account?.cloudGraphHostName||``,msGraphHost:n.account?.msGraphHost||``,code:l?.spa_code,fromPlatformBroker:!1}}};function wa(e,t,n,r,i,a,o,s,c,l,u,d,f){d?.verbose(`09jz0t`,i);let p=s||t.getPreferredCache(),m=e.getAccountsFilteredBy({homeAccountId:n,environment:p},i);f?.addFields({cacheMatchedAccounts:m.length},i),m.length>1&&d?.warning(`0x7ad1`,i);let h=(m.length===1?m[0]:null)||yt({homeAccountId:n,idTokenClaims:a,clientInfo:o,environment:s,cloudGraphHostName:l?.cloud_graph_host_name,msGraphHost:l?.msgraph_host,nativeAccountId:u},t,i,r),g=h.tenantProfiles||[],_=c||h.realm;if(_&&!g.find(e=>e.tenantId===_)){let e=mt(n,h.localAccountId,_,u,a);g.push(e)}return h.tenantProfiles=g,h}var B={HOME_ACCOUNT_ID:`home_account_id`,UPN:`UPN`};async function Ta(e,t,n,r){return typeof e==`string`?e:e({clientId:t,tokenEndpoint:n,fmiPath:r})}function Ea(e,t,n){return{clientId:e,authority:t.authority,scopes:t.scopes,homeAccountIdentifier:n,claims:t.claims,authenticationScheme:t.authenticationScheme,resourceRequestMethod:t.resourceRequestMethod,resourceRequestUri:t.resourceRequestUri,shrClaims:t.shrClaims,sshKid:t.sshKid,embeddedClientId:t.embeddedClientId||t.extraParameters?.clientId,resource:t.resource,attributeTokens:cr(t.attributeTokens)}}var Da=class e{static generateThrottlingStorageKey(e){return`${Te}.${JSON.stringify(e)}`}static preProcess(t,n,r){let i=e.generateThrottlingStorageKey(n),a=t.getThrottlingCache(i,r);if(a){if(a.throttleTime<Date.now()){t.removeItem(i,r);return}throw new ya(a.errorCodes?.join(` `)||``,r,a.errorMessage,a.subError)}}static postProcess(t,n,r,i){let a=Oa(r);if(e.checkResponseStatus(r)||a!==void 0){let o={throttleTime:e.calculateThrottleTime(parseInt(a||``)),error:r.body.error,errorCodes:r.body.error_codes,errorMessage:r.body.error_description,subError:r.body.suberror};t.setThrottlingCache(e.generateThrottlingStorageKey(n),o,i)}}static checkResponseStatus(e){return e.status===429||e.status>=500&&e.status<600}static checkResponseForRetryAfter(e){return Oa(e)!==void 0}static calculateThrottleTime(e){let t=e<=0?0:e,n=Date.now()/1e3;return Math.floor(Math.min(n+(t||60),n+we)*1e3)}static removeThrottle(e,t,n,r){let i=Ea(t,n,r),a=this.generateThrottlingStorageKey(i);e.removeItem(a,n.correlationId)}};function Oa(e){if((e.status<200||e.status>=300)&&e.headers)return Et(e.headers,v.RETRY_AFTER)}var ka=class e extends w{constructor(t,n,r){super(t.errorCode,t.correlationId,t.errorMessage,t.subError),Object.setPrototypeOf(this,e.prototype),this.name=`NetworkError`,this.error=t,this.httpStatus=n,this.responseHeaders=r}};function Aa(e,t,n,r){return e.errorMessage=`${e.errorMessage}, additionalErrorInfo: error.name:${r?.name}, error.message:${r?.message}`,new ka(e,t,n)}function ja(e,t,n){let r={};if(r[v.CONTENT_TYPE]=te,!t&&n)switch(n.type){case B.HOME_ACCOUNT_ID:try{let e=dt(n.credential);r[v.CCS_HEADER]=`Oid:${e.uid}@${e.utid}`}catch(t){e.verbose(`1qhtee ${t}`,``)}break;case B.UPN:r[v.CCS_HEADER]=`UPN: ${n.credential}`}return r}async function Ma(e,t,n,r,i){if(t.authenticationScheme!==C.DPOP)return;let a=new ua(r,i),o=t.dpopJkt;if(!o?.trim())throw E(st,t.correlationId);e[v.DPOP]=await a.generateTokenProof({tokenEndpoint:n},o,t.correlationId)}function Na(e,t,n,r){let i=new Map;return e.embeddedClientId&&ii(i,t,n),e.extraQueryParameters&&qr(i,e.extraQueryParameters),kr(i,e.correlationId),mr(i,e.correlationId,r),ui(i)}async function Pa(e,t,n,r,i,a,o,s,c,l){let u=await Fa(r,e,{body:t,headers:n},i,a,o,s,c);return l&&u.status<500&&u.status!==429&&l.clearTelemetryCache(),u}async function Fa(e,t,n,r,i,a,o,s){Da.preProcess(i,e,r);let c;try{c=await F(a.sendPostRequestAsync.bind(a),mn,o,s,r)(t,{...n,correlationId:r,performanceClient:s});let e=Tt(c.headers||{});c={...c,headers:e},s?.addFields({refreshTokenSize:c.body.refresh_token?.length||0,httpVerToken:e[v.X_MS_HTTP_VERSION]||``,requestId:e[v.X_MS_REQUEST_ID]||``},r)}catch(e){if(e instanceof ka){let t=e.responseHeaders?Tt(e.responseHeaders):void 0;throw t&&s?.addFields({httpVerToken:t[v.X_MS_HTTP_VERSION]||``,requestId:t[v.X_MS_REQUEST_ID]||``,contentTypeHeader:Et(t,v.CONTENT_TYPE)||void 0,contentLengthHeader:Et(t,v.CONTENT_LENGTH)||void 0,httpStatus:e.httpStatus},r),e.error}throw e instanceof w?e:E(Re,r)}return Da.postProcess(i,e,c,r),c}var Ia=class{constructor(e,t){this.includeRedirectUri=!0,this.config=Bi(e),this.logger=new Si(this.config.loggerOptions,Ci,wi),this.cryptoUtils=this.config.cryptoInterface,this.cacheManager=this.config.storageInterface,this.networkClient=this.config.networkInterface,this.serverTelemetryManager=this.config.serverTelemetryManager,this.authority=this.config.authOptions.authority,this.performanceClient=t,this.oidcDefaultScopes=this.config.authOptions.authority.options.OIDCOptions?.defaultScopes}async acquireToken(e,t,n){if(!e.code)throw E(Ke,e.correlationId);n&&n.cloud_instance_host_name&&await F(this.updateTokenEndpointAuthority.bind(this),En,this.logger,this.performanceClient,e.correlationId)(n.cloud_instance_host_name,e.correlationId);let r=I(),i=await F(this.executeTokenRequest.bind(this),wn,this.logger,this.performanceClient,e.correlationId)(this.authority,e,this.serverTelemetryManager),a=i.headers?.[v.X_MS_REQUEST_ID],o=new Ca(this.config.authOptions.clientId,this.cacheManager,this.cryptoUtils,this.logger,this.performanceClient,this.config.serializableCache,this.config.persistencePlugin,this.config.tokenBindingKeyManager);return o.validateTokenResponse(i.body,e.correlationId),F(o.handleServerTokenResponse.bind(o),On,this.logger,this.performanceClient,e.correlationId)(i.body,this.authority,r,e,t,n,void 0,void 0,void 0,a)}getLogoutUri(e){if(!e)throw M(Pt,``);let t=this.createLogoutUrlQueryString(e);return N.appendQueryString(this.authority.endSessionEndpoint,t)}async executeTokenRequest(e,t,n){let r=Na(t,this.config.authOptions.clientId,this.config.authOptions.redirectUri,this.performanceClient),i=N.appendQueryString(e.tokenEndpoint,r),a=await F(this.createTokenRequestBody.bind(this),Tn,this.logger,this.performanceClient,t.correlationId)(t),o;if(t.clientInfo)try{let e=ut(t.clientInfo,this.cryptoUtils.base64Decode);o={credential:`${e.uid}.${e.utid}`,type:B.HOME_ACCOUNT_ID}}catch(e){this.logger.verbose(`0wznt3 ${e}`,t.correlationId)}let s=ja(this.logger,this.config.systemOptions.preventCorsPreflight,o||t.ccsCredential);await Ma(s,t,i,this.cryptoUtils,this.config.tokenBindingKeyManager);let c=Ea(this.config.authOptions.clientId,t);return F(Pa,gn,this.logger,this.performanceClient,t.correlationId)(i,a,s,c,t.correlationId,this.cacheManager,this.networkClient,this.logger,this.performanceClient,n)}async createTokenRequestBody(e){let t=new Map;if(yr(t,e.embeddedClientId||e.extraParameters?.client_id||this.config.authOptions.clientId),this.includeRedirectUri)br(t,e.redirectUri);else if(!e.redirectUri)throw M(Dt,e.correlationId);if(vr(t,e.scopes,e.correlationId,!0,this.oidcDefaultScopes),oi(t,e.resource),e.attributeTokens&&si(t,e.attributeTokens),this.performanceClient?.addFields({hasAttributeTokens:!!e.attributeTokens?.length},e.correlationId),Ir(t,e.code),Ar(t,this.config.libraryInfo),jr(t,this.config.telemetry.application),ni(t),this.serverTelemetryManager&&!Hi(this.config)&&ti(t,this.serverTelemetryManager),e.codeVerifier&&Rr(t,e.codeVerifier),this.config.clientCredentials.clientSecret&&zr(t,this.config.clientCredentials.clientSecret),this.config.clientCredentials.clientAssertion){let n=this.config.clientCredentials.clientAssertion;Br(t,await Ta(n.assertion,this.config.authOptions.clientId,e.resourceRequestUri)),Vr(t,n.assertionType)}if(Hr(t,me.AUTHORIZATION_CODE_GRANT),Ur(t),e.authenticationScheme===C.POP){let n=new ta(this.cryptoUtils,this.config.tokenBindingKeyManager,this.performanceClient),r;r=e.popKid?this.cryptoUtils.encodeKid(e.popKid):(await F(n.generateCnf.bind(n),Dn,this.logger,this.performanceClient,e.correlationId)(e,this.logger)).reqCnfString,$r(t,r)}else if(e.authenticationScheme===C.SSH){if(e.sshJwk)ei(t,e.sshJwk);else throw M(zt,e.correlationId)}let n;if(e.clientInfo)try{let t=ut(e.clientInfo,this.cryptoUtils.base64Decode);n={credential:`${t.uid}.${t.utid}`,type:B.HOME_ACCOUNT_ID}}catch(t){this.logger.verbose(`0wznt3 ${t}`,e.correlationId)}else n=e.ccsCredential;if(this.config.systemOptions.preventCorsPreflight&&n)switch(n.type){case B.HOME_ACCOUNT_ID:try{Er(t,dt(n.credential))}catch(t){this.logger.verbose(`1qhtee ${t}`,e.correlationId)}break;case B.UPN:Tr(t,n.credential)}return e.embeddedClientId&&ii(t,this.config.authOptions.clientId,this.config.authOptions.redirectUri),e.extraParameters&&qr(t,e.extraParameters),!e.enableSpaAuthorizationCode||e.extraParameters&&e.extraParameters.return_spa_code||qr(t,{return_spa_code:`1`}),mr(t,e.correlationId,this.performanceClient),Or(t,e.correlationId,e.claims,this.config.authOptions.clientCapabilities,e.skipBrokerClaims),ui(t)}createLogoutUrlQueryString(e){let t=new Map;return e.postLogoutRedirectUri&&xr(t,e.postLogoutRedirectUri),e.correlationId&&kr(t,e.correlationId),e.idTokenHint&&Sr(t,e.idTokenHint),e.state&&Nr(t,e.state),e.logoutHint&&ri(t,e.logoutHint),e.popupOriginCheckDone&&Kr(t),e.extraQueryParameters&&qr(t,e.extraQueryParameters),this.config.authOptions.instanceAware&&Gr(t),ui(t)}async updateTokenEndpointAuthority(e,t){let n=await pr(`https://${e}/${this.authority.tenant}/`,this.networkClient,this.cacheManager,this.authority.options,this.logger,t,this.performanceClient);this.authority=n}};function La(e,t,n,r){let i=t.correlationId,a=new Map;if(yr(a,t.embeddedClientId||t.extraQueryParameters?.client_id||e.clientId),vr(a,[...t.scopes||[],...t.extraScopesToConsent||[]],t.correlationId,!0,e.authority.options.OIDCOptions?.defaultScopes),oi(a,t.resource),br(a,t.redirectUri),kr(a,i),gr(a,t.responseMode),Ur(a),Wr(a),t.prompt&&(Mr(a,t.prompt),r?.addFields({prompt:t.prompt},i)),t.domainHint&&(Cr(a,t.domainHint),r?.addFields({domainHintFromRequest:!0},i)),t.prompt!==y.SELECT_ACCOUNT){if(t.sid&&t.prompt===y.NONE)n.verbose(`1tvqyx`,t.correlationId),Dr(a,t.sid),r?.addFields({sidFromRequest:!0},i);else if(t.account){let e=Ha(t.account),o=Ua(t.account);if(o&&t.domainHint&&(n.warning(`0wkg3v`,t.correlationId),o=null),o){n.verbose(`1eyfsw`,t.correlationId),wr(a,o),r?.addFields({loginHintFromClaim:!0},i);try{Er(a,dt(t.account.homeAccountId))}catch{n.verbose(`12ugck`,t.correlationId)}}else if(e&&t.prompt===y.NONE){n.verbose(`1rmd8s`,t.correlationId),Dr(a,e),r?.addFields({sidFromClaim:!0},i);try{Er(a,dt(t.account.homeAccountId))}catch{n.verbose(`12ugck`,t.correlationId)}}else if(t.loginHint)n.verbose(`0y3007`,t.correlationId),wr(a,t.loginHint),Tr(a,t.loginHint),r?.addFields({loginHintFromRequest:!0},i);else if(t.account.username){n.verbose(`02f507`,t.correlationId),wr(a,t.account.username),r?.addFields({loginHintFromUpn:!0},i);try{Er(a,dt(t.account.homeAccountId))}catch{n.verbose(`12ugck`,t.correlationId)}}}else t.loginHint&&(n.verbose(`0g01ey`,t.correlationId),wr(a,t.loginHint),Tr(a,t.loginHint),r?.addFields({loginHintFromRequest:!0},i))}else n.verbose(`169k9v`,t.correlationId);return t.nonce&&Pr(a,t.nonce),t.state&&Nr(a,t.state),t.embeddedClientId&&ii(a,e.clientId,e.redirectUri),Or(a,t.correlationId,t.claims,e.clientCapabilities,t.skipBrokerClaims),!e.instanceAware||t.extraQueryParameters&&Object.keys(t.extraQueryParameters).includes(`instance_aware`)||Gr(a),t.popupOriginCheckDone&&Kr(a),a}function Ra(e,t){let n=ui(t);return N.appendQueryString(e.authorizationEndpoint,n)}function za(e,t,n){if(Ba(e,t,n),!e.code)throw E(it,n);return e}function Ba(e,t,n){if(!e.state||!t)throw e.state?E(Ue,n,`Cached State`):E(Ue,n,`Server State`);let r,i;try{r=decodeURIComponent(e.state)}catch{throw E(Ve,n,e.state)}try{i=decodeURIComponent(t)}catch{throw E(Ve,n,e.state)}if(r!==i)throw E(He,n);if(e.error||e.error_description||e.suberror){let t=Va(e);throw _a(e.error,e.error_description,e.suberror)?new z(e.error||``,e.correlation_id||n,e.error_description,e.suberror,e.timestamp||``,e.trace_id||``,e.claims||``,t):new ya(e.error||``,e.correlation_id||n,e.error_description,e.suberror,t)}}function Va(e){let t=e.error_uri?.lastIndexOf(`code=`);return t&&t>=0?e.error_uri?.substring(t+5):void 0}function Ha(e){return e.idTokenClaims?.sid||null}function Ua(e){return e.loginHint||e.idTokenClaims?.login_hint||null}var Wa=300,Ga=class{constructor(e,t){this.config=Bi(e),this.logger=new Si(this.config.loggerOptions,Ci,wi),this.cryptoUtils=this.config.cryptoInterface,this.cacheManager=this.config.storageInterface,this.networkClient=this.config.networkInterface,this.serverTelemetryManager=this.config.serverTelemetryManager,this.authority=this.config.authOptions.authority,this.performanceClient=t}async acquireToken(e,t){let n=I(),r=await F(this.executeTokenRequest.bind(this),_n,this.logger,this.performanceClient,e.correlationId)(e,this.authority),i=r.headers?.[v.X_MS_REQUEST_ID],a=new Ca(this.config.authOptions.clientId,this.cacheManager,this.cryptoUtils,this.logger,this.performanceClient,this.config.serializableCache,this.config.persistencePlugin,this.config.tokenBindingKeyManager);return a.validateTokenResponse(r.body,e.correlationId),F(a.handleServerTokenResponse.bind(a),On,this.logger,this.performanceClient,e.correlationId)(r.body,this.authority,n,e,t,void 0,void 0,!0,e.forceCache,i)}async acquireTokenByRefreshToken(e,t){if(!e)throw M(Nt,``);if(!e.account)throw E(Xe,e.correlationId);if(this.cacheManager.isAppMetadataFOCI(e.account.environment,e.correlationId))try{return await F(this.acquireTokenWithCachedRefreshToken.bind(this),yn,this.logger,this.performanceClient,e.correlationId)(e,!0,t)}catch(n){let r=n instanceof z&&n.errorCode===`no_tokens_found`,i=n instanceof ya&&n.errorCode===`invalid_grant`&&n.subError===`client_mismatch`;if(r||i)return F(this.acquireTokenWithCachedRefreshToken.bind(this),yn,this.logger,this.performanceClient,e.correlationId)(e,!1,t);throw n}return F(this.acquireTokenWithCachedRefreshToken.bind(this),yn,this.logger,this.performanceClient,e.correlationId)(e,!1,t)}async acquireTokenWithCachedRefreshToken(e,t,n){let r=P(this.cacheManager.getRefreshToken.bind(this.cacheManager),Rn,this.logger,this.performanceClient,e.correlationId)(e.account,t,e.correlationId,void 0);if(!r)throw va(da,e.correlationId);if(r.expiresOn){let t=e.refreshTokenExpirationOffsetSeconds||Wa;if(this.performanceClient?.addFields({cacheRtExpiresOnSeconds:Number(r.expiresOn),rtOffsetSeconds:t},e.correlationId),Un(r.expiresOn,t))throw va(pa,e.correlationId)}let i={...e,refreshToken:r.secret,authenticationScheme:e.authenticationScheme||C.BEARER,ccsCredential:{credential:e.account.homeAccountId,type:B.HOME_ACCOUNT_ID}};i.authenticationScheme===C.DPOP&&!i.dpopJkt&&(i.dpopJkt=await new ua(this.cryptoUtils,this.config.tokenBindingKeyManager).generateJkt(e.correlationId));try{return await F(this.acquireToken.bind(this),vn,this.logger,this.performanceClient,e.correlationId)(i,n)}catch(t){if(t instanceof z&&t.subError===`bad_token`){this.logger.verbose(`1pg3ap`,e.correlationId);let t=this.cacheManager.generateCredentialKey(r);this.cacheManager.removeRefreshToken(t,e.correlationId)}throw t}}async executeTokenRequest(e,t){let n=Na(e,this.config.authOptions.clientId,this.config.authOptions.redirectUri,this.performanceClient),r=N.appendQueryString(t.tokenEndpoint,n),i=await F(this.createTokenRequestBody.bind(this),bn,this.logger,this.performanceClient,e.correlationId)(e),a=ja(this.logger,this.config.systemOptions.preventCorsPreflight,e.ccsCredential);await Ma(a,e,r,this.cryptoUtils,this.config.tokenBindingKeyManager);let o=Ea(this.config.authOptions.clientId,e);return F(Pa,hn,this.logger,this.performanceClient,e.correlationId)(r,i,a,o,e.correlationId,this.cacheManager,this.networkClient,this.logger,this.performanceClient,this.serverTelemetryManager)}async createTokenRequestBody(e){let t=new Map;if(yr(t,e.embeddedClientId||e.extraParameters?.client_id||this.config.authOptions.clientId),e.redirectUri&&br(t,e.redirectUri),vr(t,e.scopes,e.correlationId,!0,this.config.authOptions.authority.options.OIDCOptions?.defaultScopes),oi(t,e.resource),Hr(t,me.REFRESH_TOKEN_GRANT),Ur(t),Ar(t,this.config.libraryInfo),jr(t,this.config.telemetry.application),ni(t),this.serverTelemetryManager&&!Hi(this.config)&&ti(t,this.serverTelemetryManager),Lr(t,e.refreshToken),e.attributeTokens&&si(t,e.attributeTokens),this.performanceClient?.addFields({hasAttributeTokens:!!e.attributeTokens?.length},e.correlationId),this.config.clientCredentials.clientSecret&&zr(t,this.config.clientCredentials.clientSecret),this.config.clientCredentials.clientAssertion){let n=this.config.clientCredentials.clientAssertion;Br(t,await Ta(n.assertion,this.config.authOptions.clientId,e.resourceRequestUri)),Vr(t,n.assertionType)}if(e.authenticationScheme===C.POP){let n=new ta(this.cryptoUtils,this.config.tokenBindingKeyManager,this.performanceClient),r;r=e.popKid?this.cryptoUtils.encodeKid(e.popKid):(await F(n.generateCnf.bind(n),Dn,this.logger,this.performanceClient,e.correlationId)(e,this.logger)).reqCnfString,$r(t,r)}else if(e.authenticationScheme===C.SSH){if(e.sshJwk)ei(t,e.sshJwk);else throw M(zt,e.correlationId)}if(this.config.systemOptions.preventCorsPreflight&&e.ccsCredential)switch(e.ccsCredential.type){case B.HOME_ACCOUNT_ID:try{Er(t,dt(e.ccsCredential.credential))}catch(t){this.logger.verbose(`1qhtee ${t}`,e.correlationId)}break;case B.UPN:Tr(t,e.ccsCredential.credential)}return e.embeddedClientId&&ii(t,this.config.authOptions.clientId,this.config.authOptions.redirectUri),e.extraParameters&&qr(t,{...e.extraParameters}),mr(t,e.correlationId,this.performanceClient),Or(t,e.correlationId,e.claims,this.config.authOptions.clientCapabilities,e.skipBrokerClaims),ui(t)}},Ka=`,`,qa=`|`;function Ja(e){let{skus:t,libraryName:n,libraryVersion:r,extensionName:i,extensionVersion:a}=e,o=new Map([[0,[n,r]],[2,[i,a]]]),s=[];if(t?.length){if(s=t.split(Ka),s.length<4)return t}else s=Array.from({length:4},()=>qa);return o.forEach((e,t)=>{e.length===2&&e[0]?.length&&e[1]?.length&&Ya({skuArr:s,index:t,skuName:e[0],skuVersion:e[1]})}),s.join(Ka)}function Ya(e){let{skuArr:t,index:n,skuName:r,skuVersion:i}=e;n>=t.length||(t[n]=[r,i].join(qa))}var Xa=class e{constructor(e,t){this.cacheOutcome=ke.NOT_APPLICABLE,this.cacheManager=t,this.apiId=e.apiId,this.correlationId=e.correlationId,this.wrapperSKU=e.wrapperSKU||``,this.wrapperVer=e.wrapperVer||``,this.telemetryCacheKey=Se+`-`+e.clientId}generateCurrentRequestHeaderValue(){let e=`${this.apiId},${this.cacheOutcome}`,t=[this.wrapperSKU,this.wrapperVer],n=this.getNativeBrokerErrorCode();n?.length&&t.push(`broker_error=${n}`);let r=t.join(`,`);return[5,[e,this.getRegionDiscoveryFields()].join(`,`),r].join(`|`)}generateLastRequestHeaderValue(){let t=this.getLastRequests(),n=e.maxErrorsToSend(t),r=t.failedRequests.slice(0,2*n).join(`,`),i=t.errors.slice(0,n).join(`,`),a=t.errors.length,o=[a,n<a?`1`:`0`].join(`,`);return[5,t.cacheHits,r,i,o].join(`|`)}cacheFailedRequest(e){try{let t=this.getLastRequests();t.errors.length>=50&&(t.failedRequests.shift(),t.failedRequests.shift(),t.errors.shift()),t.failedRequests.push(this.apiId,this.correlationId),e instanceof Error&&e&&e.toString()?e instanceof w?e.subError?t.errors.push(e.subError):e.errorCode?t.errors.push(e.errorCode):t.errors.push(e.toString()):t.errors.push(e.toString()):t.errors.push(Ce),this.cacheManager.setServerTelemetry(this.telemetryCacheKey,t,this.correlationId)}catch{}}incrementCacheHits(){let e=this.getLastRequests();return e.cacheHits+=1,this.cacheManager.setServerTelemetry(this.telemetryCacheKey,e,this.correlationId),e.cacheHits}getLastRequests(){return this.cacheManager.getServerTelemetry(this.telemetryCacheKey,this.correlationId)||{failedRequests:[],errors:[],cacheHits:0}}clearTelemetryCache(){let t=this.getLastRequests(),n=e.maxErrorsToSend(t);if(n===t.errors.length)this.cacheManager.removeItem(this.telemetryCacheKey,this.correlationId);else{let e={failedRequests:t.failedRequests.slice(n*2),errors:t.errors.slice(n),cacheHits:0};this.cacheManager.setServerTelemetry(this.telemetryCacheKey,e,this.correlationId)}}static maxErrorsToSend(e){let t,n=0,r=0,i=e.errors.length;for(t=0;t<i;t++){let i=e.failedRequests[2*t]||``,a=e.failedRequests[2*t+1]||``,o=e.errors[t]||``;if(r+=i.toString().length+a.toString().length+o.length+3,r<330)n+=1;else break}return n}getRegionDiscoveryFields(){let e=[];return e.push(this.regionUsed||``),e.push(this.regionSource||``),e.push(this.regionOutcome||``),e.join(`,`)}updateRegionDiscoveryMetadata(e){this.regionUsed=e.region_used,this.regionSource=e.region_source,this.regionOutcome=e.region_outcome}setCacheOutcome(e){this.cacheOutcome=e}setNativeBrokerErrorCode(e){let t=this.getLastRequests();t.nativeBrokerErrorCode=e,this.cacheManager.setServerTelemetry(this.telemetryCacheKey,t,this.correlationId)}getNativeBrokerErrorCode(){return this.getLastRequests().nativeBrokerErrorCode}clearNativeBrokerErrorCode(){let e=this.getLastRequests();delete e.nativeBrokerErrorCode,this.cacheManager.setServerTelemetry(this.telemetryCacheKey,e,this.correlationId)}static makeExtraSkuString(e){return Ja(e)}},Za=class extends Xa{constructor(){super({clientId:``,apiId:0,correlationId:``,forceRefresh:!1},{})}generateCurrentRequestHeaderValue(){return``}generateLastRequestHeaderValue(){return``}cacheFailedRequest(){}incrementCacheHits(){return 0}clearTelemetryCache(){}getRegionDiscoveryFields(){return``}updateRegionDiscoveryMetadata(){}setCacheOutcome(){}setNativeBrokerErrorCode(){}getNativeBrokerErrorCode(){}clearNativeBrokerErrorCode(){}},Qa=class{constructor(e,t){this.config=Bi(e),this.logger=new Si(this.config.loggerOptions,Ci,wi),this.cryptoUtils=this.config.cryptoInterface,this.cacheManager=this.config.storageInterface,this.networkClient=this.config.networkInterface,this.serverTelemetryManager=this.config.serverTelemetryManager,this.authority=this.config.authOptions.authority,this.performanceClient=t}async acquireCachedToken(e){let t=ke.NOT_APPLICABLE;if(e.forceRefresh||!$t.isEmptyObj(e.claims))throw this.setCacheOutcome(ke.FORCE_REFRESH_OR_CLAIMS,e.correlationId),E(nt,e.correlationId);if(!e.account)throw E(Xe,e.correlationId);let n=e.account.tenantId||ur(e.authority,e.correlationId),r=this.cacheManager.getTokenKeys(),i=this.cacheManager.getAccessToken(e.account,e,r,n);if(!i)throw this.setCacheOutcome(ke.NO_CACHED_ACCESS_TOKEN,e.correlationId),E(nt,e.correlationId);if(Gn(i.cachedAt)||Un(i.expiresOn,this.config.systemOptions.tokenRenewalOffsetSeconds))throw this.setCacheOutcome(ke.CACHED_ACCESS_TOKEN_EXPIRED,e.correlationId),E(nt,e.correlationId);if(e.resource){if(i.resource!==e.resource)throw this.setCacheOutcome(ke.NO_CACHED_ACCESS_TOKEN,e.correlationId),E(nt,e.correlationId)}else i.refreshOn&&Un(i.refreshOn,0)&&(t=ke.PROACTIVELY_REFRESHED);if(i.tokenType?.toLowerCase()===C.DPOP.toLowerCase()){if(!i.keyId)throw this.logger.info(`1enswf`,e.correlationId),this.setCacheOutcome(ke.NO_CACHED_ACCESS_TOKEN,e.correlationId),E(nt,e.correlationId);try{await this.config.tokenBindingKeyManager.getTokenBindingPublicKeyJwk(i.keyId,e.correlationId)}catch{throw this.logger.info(`14djth`,e.correlationId),this.setCacheOutcome(ke.NO_CACHED_ACCESS_TOKEN,e.correlationId),E(nt,e.correlationId)}}let a=e.authority||this.authority.getPreferredCache(),o={account:this.cacheManager.getAccount(this.cacheManager.generateAccountKey(e.account),e.correlationId),accessToken:i,idToken:this.cacheManager.getIdToken(e.account,e.correlationId,r,n),refreshToken:null,appMetadata:this.cacheManager.readAppMetadataFromCache(a,e.correlationId)};return this.setCacheOutcome(t,e.correlationId),this.config.serverTelemetryManager&&this.config.serverTelemetryManager.incrementCacheHits(),[await F(this.generateResultFromCacheRecord.bind(this),xn,this.logger,this.performanceClient,e.correlationId)(o,e),t]}setCacheOutcome(e,t){this.serverTelemetryManager?.setCacheOutcome(e),this.performanceClient?.addFields({cacheOutcome:e},t),e!==ke.NOT_APPLICABLE&&this.logger.info(`09ingz ${e}`,t)}async generateResultFromCacheRecord(e,t){let n;return e.idToken&&(n=O(e.idToken.secret,this.config.cryptoInterface.base64Decode,t.correlationId)),Ca.generateAuthenticationResult(this.cryptoUtils,this.authority,e,!0,t,this.performanceClient,{idTokenClaims:n,tokenBindingKeyManager:this.config.tokenBindingKeyManager})}},$a={sendGetRequestAsync:()=>Promise.reject(E(D,``)),sendPostRequestAsync:()=>Promise.reject(E(D,``))};function eo(e,t){if(e){if(t.resource&&(to(t.extraParameters)||to(t.extraQueryParameters)))throw E(lt,t.correlationId||``);if(!t.resource)throw E(ct,t.correlationId||``)}}function to(e){return e?Object.prototype.hasOwnProperty.call(e,`resource`):!1}var no=`acquireTokenFromCache`,ro=`acquireTokenByRefreshToken`,io=`acquireTokenSilentAsync`,ao=`cryptoOptsGetPublicKeyThumbprint`,oo=`cryptoOptsSignJwt`,so=`silentCacheClientAcquireToken`,co=`silentIframeClientAcquireToken`,lo=`awaitConcurrentIframe`,uo=`silentRefreshClientAcquireToken`,fo=`standardInteractionClientGetDiscoveredAuthority`,po=`nativeInteractionClientAcquireToken`,mo=`nativeInteractionClientAcquireToken`,ho=`refreshTokenClientAcquireTokenByRefreshToken`,go=`acquireTokenBySilentIframe`,_o=`initializeBaseRequest`,vo=`initializeSilentRequest`,yo=`initializeCache`,bo=`silentIframeClientTokenHelper`,xo=`silentHandlerInitiateAuthRequest`,So=`silentHandlerMonitorIframeForHash`,Co=`standardInteractionClientCreateAuthCodeClient`,wo=`standardInteractionClientGetClientConfiguration`,To=`standardInteractionClientInitializeAuthorizationRequest`,Eo=`silentFlowClientAcquireCachedToken`,Do=`getStandardParams`,Oo=`handleCodeResponse`,ko=`handleResponseEar`,Ao=`handleResponsePlatformBroker`,jo=`handleResponseCode`,Mo=`authClientAcquireToken`,No=`deserializeResponse`,Po=`authorityFactoryCreateDiscoveredInstance`,Fo=`acquireTokenByCodeAsync`,Io=`handleRedirectPromise`,Lo=`handleNativeRedirectPromise`,Ro=`nativeMessageHandlerHandshake`,zo=`nativeGenerateAuthResult`,Bo=`platformAuthProviderDiscovery`,Vo=`platformAuthDOMCreateProvider`,Ho=`platformAuthDOMInitializeRequest`,Uo=`platformAuthDOMGetToken`,Wo=`platformAuthDOMValidateResponse`,Go=`platformAuthExtensionCreateProvider`,Ko=`platformAuthExtensionGetToken`,qo=`platformAuthExtensionValidateResponse`,Jo=`platformAuthInteractionClientInitializeRequest`,Yo=`platformAuthHandleNativeResponse`,Xo=`platformAuthCacheAccount`,Zo=`platformAuthCacheNativeTokens`,Qo=`platformAuthDpopKeyCleanup`,$o=`removeHiddenIframe`,es=`importExistingCache`,ts=`generatePkceCodes`,ns=`generateCodeVerifier`,rs=`generateCodeChallengeFromVerifier`,is=`sha256Digest`,as=`getRandomValues`,os=`generateHKDF`,ss=`generateBaseKey`,cs=`base64Decode`,ls=`urlEncodeArr`,us=`encrypt`,ds=`decrypt`,fs=`generateEarKey`,ps=`decryptEarResponse`,ms=`waitForBridgeLateResponse`;function hs(e){return`See https://aka.ms/msal.js.errors#${e} for details`}var gs=class e extends w{constructor(t,n,r){super(t,n,hs(t),r),Object.setPrototypeOf(this,e.prototype),this.name=`BrowserAuthError`}};function V(e,t,n){return new gs(e,t,n)}var _s=`pkce_not_created`,vs=`ear_jwk_empty`,ys=`ear_jwe_empty`,bs=`crypto_nonexistent`,xs=`empty_navigate_uri`,Ss=`hash_empty_error`,Cs=`no_state_in_hash`,ws=`hash_does_not_contain_known_properties`,Ts=`unable_to_parse_state`,Es=`state_interaction_type_mismatch`,Ds=`interaction_in_progress`,Os=`interaction_in_progress_cancelled`,ks=`popup_window_error`,As=`empty_window_error`,js=`user_cancelled`,Ms=`redirect_bridge_empty_response`,Ns=`redirect_in_iframe`,Ps=`block_iframe_reload`,Fs=`block_nested_popups`,Is=`popup_relay_unsupported_flow`,Ls=`silent_logout_unsupported`,Rs=`no_account_error`,zs=`no_token_request_cache_error`,Bs=`unable_to_parse_token_request_cache_error`,Vs=`non_browser_environment`,Hs=`database_not_open`,Us=`no_network_connectivity`,Ws=`post_request_failed`,Gs=`get_request_failed`,Ks=`failed_to_parse_response`,qs=`crypto_key_not_found`,Js=`invalid_public_jwk`,Ys=`auth_code_required`,Xs=`auth_code_or_nativeAccountId_required`,Zs=`spa_code_and_nativeAccountId_present`,Qs=`database_unavailable`,$s=`unable_to_acquire_token_from_native_platform`,ec=`native_handshake_timeout`,tc=`native_extension_not_installed`,nc=`native_connection_not_established`,rc=`uninitialized_public_client_application`,ic=`native_prompt_not_supported`,ac=`invalid_base64_string`,oc=`unsupported_token_binding_algorithm`,sc=`token_binding_key_algorithm_mismatch`,cc=`token_binding_key_jwk_thumbprint_mismatch`,lc=`failed_to_build_headers`,uc=`failed_to_parse_headers`,dc=`failed_to_decrypt_ear_response`,fc=`timed_out`,pc=`empty_response`;function H(e){return new TextDecoder().decode(mc(e))}function mc(e){let t=e.replace(/-/g,`+`).replace(/_/g,`/`);switch(t.length%4){case 0:break;case 2:t+=`==`;break;case 3:t+=`=`;break;default:throw V(ac,``)}let n=atob(t);return Uint8Array.from(n,e=>e.codePointAt(0)||0)}var U={INVALID_GRANT_ERROR:`invalid_grant`,POPUP_WIDTH:483,POPUP_HEIGHT:600,POPUP_NAME_PREFIX:`msal`,MSAL_SKU:`msal.js.browser`},W={CHANNEL_ID:`53ee284d-920a-4b59-9d30-a60315b26836`,PREFERRED_EXTENSION_ID:`ppnbnpeolgkicgegkbkbjmhlideopiji`,MATS_TELEMETRY:`MATS`,MICROSOFT_ENTRA_BROKERID:`MicrosoftEntra`,DOM_API_NAME:`DOM API`,PLATFORM_DOM_APIS:`get-token-and-sign-out`,PLATFORM_DOM_PROVIDER:`PlatformAuthDOMHandler`,PLATFORM_EXTENSION_PROVIDER:`PlatformAuthExtensionHandler`},hc={HandshakeRequest:`Handshake`,HandshakeResponse:`HandshakeResponse`,GetToken:`GetToken`,Response:`Response`},gc={LocalStorage:`localStorage`,SessionStorage:`sessionStorage`,MemoryStorage:`memoryStorage`},_c={GET:`GET`,POST:`POST`},vc={SIGNIN:`signin`,SIGNOUT:`signout`},G={ORIGIN_URI:`request.origin`,URL_HASH:`urlHash`,REQUEST_PARAMS:`request.params`,VERIFIER:`code.verifier`,INTERACTION_STATUS_KEY:`interaction.status`,NATIVE_REQUEST:`request.native`},yc={WRAPPER_SKU:`wrapper.sku`,WRAPPER_VER:`wrapper.version`},K={acquireTokenRedirect:861,acquireTokenPopup:862,ssoSilent:863,acquireTokenSilent_authCode:864,handleRedirectPromise:865,acquireTokenByCode:866,acquireTokenSilent_silentFlow:61,logout:961,logoutPopup:962,hydrateCache:963,loadExternalTokens:964},bc={861:`acquireTokenRedirect`,862:`acquireTokenPopup`,863:`ssoSilent`,864:`acquireTokenSilent_authCode`,865:`handleRedirectPromise`,866:`acquireTokenByCode`,61:`acquireTokenSilent_silentFlow`,961:`logout`,962:`logoutPopup`,963:`hydrateCache`,964:`loadExternalTokens`},xc=e=>typeof e==`number`&&e in bc?bc[e]:`unknown`,q;(function(e){e.Redirect=`redirect`,e.Popup=`popup`,e.Silent=`silent`,e.None=`none`})(q||={});var Sc={scopes:ce},Cc=`msal.db`,wc=`${Cc}.keys`,J={Default:0,AccessToken:1,AccessTokenAndRefreshToken:2,RefreshToken:3,RefreshTokenAndNetwork:4,Skip:5},Tc=[J.Default,J.Skip,J.RefreshTokenAndNetwork];function Ec(e){return encodeURIComponent(Oc(e).replace(/=/g,``).replace(/\+/g,`-`).replace(/\//g,`_`))}function Dc(e){return kc(e).replace(/=/g,``).replace(/\+/g,`-`).replace(/\//g,`_`)}function Oc(e){return kc(new TextEncoder().encode(e))}function kc(e){let t=Array.from(e,e=>String.fromCodePoint(e)).join(``);return btoa(t)}var Ac=`RSASSA-PKCS1-v1_5`,jc=`AES-GCM`,Mc=`HKDF`,Nc=`SHA-256`,Pc=`P-256`,Fc=`EC`,Ic=`RSA`,Lc=`missing_jwk_kty`,Rc=`unsupported_jwk_kty`,zc=`missing_jwk_member`,Bc=`empty_jwk_member`,Vc=2048,Hc=new Uint8Array([1,0,1]),Uc=`0123456789abcdef`,Wc=new Uint32Array(1),Gc=`raw`,Kc=`encrypt`,qc=`decrypt`,Jc=`deriveKey`,Yc=`crypto_subtle_undefined`,Xc={name:Ac,hash:Nc,modulusLength:Vc,publicExponent:Hc},Zc={name:Ac},Qc={name:`ECDSA`,namedCurve:Pc},$c={name:`ECDSA`,hash:{name:Nc}};function el(e){if(!window)throw V(Vs,``);if(!window.crypto)throw V(bs,``);if(!e&&!window.crypto.subtle)throw V(bs,``,Yc)}async function tl(e){let t=new TextEncoder().encode(e);return window.crypto.subtle.digest(Nc,t)}function nl(e){return window.crypto.getRandomValues(e)}function rl(){return window.crypto.getRandomValues(Wc),Wc[0]}function il(){let e=Date.now(),t=rl()*1024+(rl()&1023),n=new Uint8Array(16),r=Math.trunc(t/2**30),i=t&2**30-1,a=rl();n[0]=e/2**40,n[1]=e/2**32,n[2]=e/2**24,n[3]=e/2**16,n[4]=e/256,n[5]=e,n[6]=112|r>>>8,n[7]=r,n[8]=128|i>>>24,n[9]=i>>>16,n[10]=i>>>8,n[11]=i,n[12]=a>>>24,n[13]=a>>>16,n[14]=a>>>8,n[15]=a;let o=``;for(let e=0;e<n.length;e++)o+=Uc.charAt(n[e]>>>4),o+=Uc.charAt(n[e]&15),(e===3||e===5||e===7||e===9)&&(o+=`-`);return o}async function al(e,t,n){return window.crypto.subtle.generateKey(n,e,t)}async function ol(e){return window.crypto.subtle.exportKey(`jwk`,e)}async function sl(e,t,n){return window.crypto.subtle.sign(n,e,t)}async function cl(){let e=await dl(),t={alg:`dir`,kty:`oct`,k:Dc(new Uint8Array(e))};return Oc(JSON.stringify(t))}async function ll(e){let t=H(e),n=JSON.parse(t).k,r=mc(n);return window.crypto.subtle.importKey(Gc,r,jc,!1,[qc])}async function ul(e,t){let n=t.split(`.`);if(n.length!==5)throw V(dc,``,`jwe_length`);let r=await ll(e).catch(()=>{throw V(dc,``,`import_key`)});try{let e=new TextEncoder().encode(n[0]),t=mc(n[2]),i=mc(n[3]),a=mc(n[4]),o=a.byteLength*8,s=new Uint8Array(i.length+a.length);s.set(i),s.set(a,i.length);let c=await window.crypto.subtle.decrypt({name:jc,iv:t,tagLength:o,additionalData:e},r,s);return new TextDecoder().decode(c)}catch{throw V(dc,``,`decrypt`)}}async function dl(){let e=await window.crypto.subtle.generateKey({name:jc,length:256},!0,[Kc,qc]);return window.crypto.subtle.exportKey(Gc,e)}async function fl(e){return window.crypto.subtle.importKey(Gc,e,Mc,!1,[Jc])}async function pl(e,t,n){return window.crypto.subtle.deriveKey({name:Mc,salt:t,hash:Nc,info:new TextEncoder().encode(n)},e,{name:jc,length:256},!1,[Kc,qc])}async function ml(e,t,n){let r=new TextEncoder().encode(t),i=window.crypto.getRandomValues(new Uint8Array(16)),a=await pl(e,i,n),o=await window.crypto.subtle.encrypt({name:jc,iv:new Uint8Array(12)},a,r);return{data:Dc(new Uint8Array(o)),nonce:Dc(i)}}async function hl(e,t,n,r){let i=mc(r),a=await pl(e,mc(t),n),o=await window.crypto.subtle.decrypt({name:jc,iv:new Uint8Array(12)},a,i);return new TextDecoder().decode(o)}async function gl(e){let t=await tl(e);return Dc(new Uint8Array(t))}var _l={[Fc]:[`crv`,`kty`,`x`,`y`],[Ic]:[`e`,`kty`,`n`]};function vl(e,t){let n=e.kty;if(typeof n!=`string`||n.length===0)throw V(Js,t,Lc);let r=_l[n];if(!r)throw V(Js,t,Rc);return r.reduce((n,r)=>{let i=e[r];if(typeof i!=`string`)throw V(Js,t,zc);if(i.length===0)throw V(Js,t,Bc);return n[r]=i,n},{})}async function yl(e,t){let n=vl(e,t);return gl(JSON.stringify(n,Object.keys(n).sort()))}var bl=class e extends w{constructor(t,n,r){super(t,n,r),this.name=`BrowserConfigurationAuthError`,Object.setPrototypeOf(this,e.prototype)}};function xl(e,t){return new bl(e,t,hs(e))}var Sl=`storage_not_supported`,Cl=`in_mem_redirect_unavailable`;function wl(){let e=window.location.hash,t=window.location.search,n=!1,r=!1,i=``,a;if(e&&e.length>1){let t=e.charAt(0)===`#`?e.substring(1):e,r=new URLSearchParams(t);r.has(`state`)&&(n=!0,i=t,a=r)}if(t&&t.length>1){let e=t.charAt(0)===`?`?t.substring(1):t,n=new URLSearchParams(e);n.has(`state`)&&(r=!0,i=e,a=n)}if(n&&r&&(i=`${t.charAt(0)===`?`?t.substring(1):t}${e.charAt(0)===`#`?e.substring(1):e}`,a=new URLSearchParams(i)),!i||!a)throw V(pc,``);let o=a.get(`state`);if(!o)throw V(Cs,``);let{libraryState:s}=Sa(H,o,``),{id:c,meta:l}=s;if(!c||!l)throw V(Ts,``,`missing_library_state`);return{params:a,payload:i,urlHash:e,urlQuery:t,hasResponseInHash:n,hasResponseInQuery:r,libraryState:{id:c,meta:l}}}function Tl(e){li(e.location.hash)&&(e.location.hash=``,typeof e.history.replaceState==`function`&&e.history.replaceState(null,``,`${e.location.origin}${e.location.pathname}${e.location.search}`))}function El(e){typeof e.history?.replaceState==`function`&&e.history.replaceState(null,``,`${e.location.origin}${e.location.pathname}`)}function Dl(e){let t=e.split(`#`);t.shift(),window.location.hash=t.length>0?t.join(`#`):``}function Ol(){return window.parent!==window}function kl(){if(Ol())return!1;try{let{libraryState:e}=wl(),{meta:t}=e;return t.interactionType===q.Popup}catch{return!1}}var Al=null;function jl(e,t){Al&&=(e.verbose(`18y01k`,t),clearTimeout(Al.timeoutId),Al.channel.close(),Al.reject(V(Os,``)),null)}async function Ml(e,t,n,r,i){return new Promise((a,o)=>{t.verbose(`1rf6em`,n.correlationId);let s=n.correlationId;r.addFields({redirectBridgeTimeoutMs:e,lateResponseExperimentEnabled:i?.iframeTimeoutTelemetry||!1},s);let{libraryState:c}=Sa(H,n.state||``,n.correlationId),l=new BroadcastChannel(c.id),u,d=!1,f,p,m=window.setTimeout(()=>{Al=null,i?.iframeTimeoutTelemetry?(p=r.startMeasurement(ms,s),d=!0,f=window.setTimeout(()=>{p?.end({success:!1}),clearTimeout(f),l.close()},6e4)):l.close(),o(V(fc,``,`redirect_bridge_timeout`))},e);Al={timeoutId:m,channel:l,reject:o},l.onmessage=e=>{u=e.data.payload;let t=e?.data&&typeof e.data.v==`number`?e.data.v:void 0;d?(p?.end({success:!!u}),clearTimeout(f),l.close()):(r.addFields({redirectBridgeMessageVersion:t},s),Al=null,clearTimeout(m),l.close(),u?a(u):o(V(Ms,s)))}})}function Nl(){return typeof window<`u`&&window.location?window.location.href.split(`?`)[0].split(`#`)[0]:``}function Pl(e){let t=new N(window.location.href,e||``).getUrlComponents();return`${t.Protocol}//${t.HostNameAndPort}/`}function Fl(){if(li(window.location.hash)&&Ol())throw V(Ps,``)}function Il(e){if(Ol()&&!e)throw V(Ns,``)}function Ll(){if(kl())throw V(Fs,``)}function Rl(){if(typeof window>`u`)throw V(Vs,``)}function zl(e){if(!e)throw V(rc,``)}function Bl(e){Rl(),Fl(),Ll(),zl(e)}function Vl(e,t){if(Bl(e),Il(t.system.allowRedirectInIframe),t.cache.cacheLocation===gc.MemoryStorage)throw xl(Cl,``)}function Hl(e){let t=document.createElement(`link`);t.rel=`preconnect`,t.href=new URL(e).origin,t.crossOrigin=`anonymous`,document.head.appendChild(t),window.setTimeout(()=>{try{document.head.removeChild(t)}catch{}},1e4)}function Ul(){return il()}var Wl=class{constructor(){this.dbName=Cc,this.version=1,this.tableName=wc,this.dbOpen=!1}async open(){return new Promise((e,t)=>{let n=window.indexedDB.open(this.dbName,this.version);n.addEventListener(`upgradeneeded`,e=>{e.target.result.createObjectStore(this.tableName)}),n.addEventListener(`success`,t=>{let n=t;this.db=n.target.result,this.dbOpen=!0,e()}),n.addEventListener(`error`,()=>t(V(Qs,``)))})}closeConnection(){let e=this.db;e&&this.dbOpen&&(e.close(),this.dbOpen=!1)}async validateDbIsOpen(){if(!this.dbOpen)return this.open()}async getItem(e){return await this.validateDbIsOpen(),new Promise((t,n)=>{if(!this.db)return n(V(Hs,``));let r=this.db.transaction([this.tableName],`readonly`).objectStore(this.tableName).get(e);r.addEventListener(`success`,e=>{let n=e;this.closeConnection(),t(n.target.result)}),r.addEventListener(`error`,e=>{this.closeConnection(),n(e)})})}async setItem(e,t){return await this.validateDbIsOpen(),new Promise((n,r)=>{if(!this.db)return r(V(Hs,``));let i=this.db.transaction([this.tableName],`readwrite`).objectStore(this.tableName).put(t,e);i.addEventListener(`success`,()=>{this.closeConnection(),n()}),i.addEventListener(`error`,e=>{this.closeConnection(),r(e)})})}async removeItem(e){return await this.validateDbIsOpen(),new Promise((t,n)=>{if(!this.db)return n(V(Hs,``));let r=this.db.transaction([this.tableName],`readwrite`).objectStore(this.tableName).delete(e);r.addEventListener(`success`,()=>{this.closeConnection(),t()}),r.addEventListener(`error`,e=>{this.closeConnection(),n(e)})})}async getKeys(){return await this.validateDbIsOpen(),new Promise((e,t)=>{if(!this.db)return t(V(Hs,``));let n=this.db.transaction([this.tableName],`readonly`).objectStore(this.tableName).getAllKeys();n.addEventListener(`success`,t=>{let n=t;this.closeConnection(),e(n.target.result)}),n.addEventListener(`error`,e=>{this.closeConnection(),t(e)})})}async containsKey(e){return await this.validateDbIsOpen(),new Promise((t,n)=>{if(!this.db)return n(V(Hs,``));let r=this.db.transaction([this.tableName],`readonly`).objectStore(this.tableName).count(e);r.addEventListener(`success`,e=>{let n=e;this.closeConnection(),t(n.target.result===1)}),r.addEventListener(`error`,e=>{this.closeConnection(),n(e)})})}async deleteDatabase(){return this.db&&this.dbOpen&&this.closeConnection(),new Promise((e,t)=>{let n=window.indexedDB.deleteDatabase(Cc),r=setTimeout(()=>t(!1),200);n.addEventListener(`success`,()=>(clearTimeout(r),e(!0))),n.addEventListener(`blocked`,()=>(clearTimeout(r),e(!0))),n.addEventListener(`error`,()=>(clearTimeout(r),t(!1)))})}},Gl=class{constructor(){this.cache=new Map}async initialize(){}getItem(e){return this.cache.get(e)||null}getUserData(e){return this.getItem(e)}setItem(e,t){this.cache.set(e,t)}async setUserData(e,t){this.setItem(e,t)}removeItem(e){this.cache.delete(e)}getKeys(){let e=[];return this.cache.forEach((t,n)=>{e.push(n)}),e}containsKey(e){return this.cache.has(e)}clear(){this.cache.clear()}decryptData(){return Promise.resolve(null)}},Kl=class{constructor(e){this.inMemoryCache=new Gl,this.indexedDBCache=new Wl,this.logger=e}handleDatabaseAccessError(e,t){if(e instanceof gs&&e.errorCode===`database_unavailable`)this.logger.error(`1wx7zz`,t);else throw e}async getItem(e,t){let n=this.inMemoryCache.getItem(e);if(!n)try{return this.logger.verbose(`0naxpl`,t),await this.indexedDBCache.getItem(e)}catch(e){this.handleDatabaseAccessError(e,t)}return n}async setItem(e,t,n){this.inMemoryCache.setItem(e,t);try{await this.indexedDBCache.setItem(e,t)}catch(e){this.handleDatabaseAccessError(e,n)}}async removeItem(e,t){this.inMemoryCache.removeItem(e);try{await this.indexedDBCache.removeItem(e)}catch(e){this.handleDatabaseAccessError(e,t)}}async getKeys(e){let t=this.inMemoryCache.getKeys();try{let e=await this.indexedDBCache.getKeys();return Array.from(new Set([...t,...e]))}catch(n){return this.handleDatabaseAccessError(n,e),t}}async containsKeyInPersistentStorage(e,t){try{return await this.indexedDBCache.containsKey(e)}catch(e){return this.handleDatabaseAccessError(e,t),!1}}async containsKey(e,t){let n=this.inMemoryCache.containsKey(e);if(!n)try{return this.logger.verbose(`03zl2j`,t),await this.indexedDBCache.containsKey(e)}catch(e){this.handleDatabaseAccessError(e,t)}return n}clearInMemory(e){this.logger.verbose(`03r21p`,e),this.inMemoryCache.clear(),this.logger.verbose(`0uksk1`,e)}async clearPersistent(e){try{this.logger.verbose(`0rdqut`,e);let t=await this.indexedDBCache.deleteDatabase();return t&&this.logger.verbose(`149ouc`,e),t}catch(t){return this.handleDatabaseAccessError(t,e),!1}}},ql=class e{constructor(t,n){this.logger=t,this.cache=e.getTokenBindingKeyStorage(this.logger),this.performanceClient=n}static getTokenBindingKeyStorage(t){return e.tokenBindingKeyStorage||=new Kl(t),e.tokenBindingKeyStorage}async provisionTokenBindingKey(e){let t=this.performanceClient?.startMeasurement(ao,e.correlationId);try{let n=await this.createTokenBindingKey(e);return t?.end({success:!0,...this.getTokenBindingKeyTelemetry(n)}),n.keyId}catch(n){throw t?.end({success:!1,tokenBindingKeyType:e.tokenBindingKeyType,tokenBindingKeyAlgorithm:e.tokenBindingKeyAlgorithm}),n}}async removeTokenBindingKey(e,t){if(await this.cache.removeItem(e,t),await this.cache.containsKey(e,t))throw E(at,t)}async hasTokenBindingKey(e,t){return this.cache.containsKey(e,t)}async clearKeystore(e){this.cache.clearInMemory(e);try{return await this.cache.clearPersistent(e),!0}catch(t){return t instanceof Error?this.logger.error(`1owpn8 ${t.message}`,e):this.logger.error(`0yrmwo`,e),!1}}async getTokenBindingPublicKeyJwk(e,t){return ol((await this.getTokenBindingKeyPair(e,t)).publicKey)}async createTokenBindingKey(t){let n=this.getTokenBindingKeyGenAlgorithmOptions(t.tokenBindingKeyAlgorithm,t.correlationId),r=await this.generateKeyPairAndThumbprint(e.TOKEN_BINDING_KEY_USAGES,n,t.correlationId);return await this.cache.setItem(r.keyId,{...r,tokenBindingKeyType:t.tokenBindingKeyType,tokenBindingKeyAlgorithm:t.tokenBindingKeyAlgorithm},t.correlationId),{...r,tokenBindingKeyType:t.tokenBindingKeyType,tokenBindingKeyAlgorithm:t.tokenBindingKeyAlgorithm}}async generateKeyPairAndThumbprint(e,t,n){let r=await al(!1,e,t),i=await yl(await ol(r.publicKey),n);return{publicKey:r.publicKey,privateKey:r.privateKey,keyId:i}}async getTokenBindingKeyPair(e,t){let n=await this.cache.getItem(e,t);if(!n)throw V(qs,t);return n}async isTokenBindingKeyPersisted(e,t){return this.cache.containsKeyInPersistentStorage(e,t)}getTokenBindingKeyTelemetry(e,t){return{...e.tokenBindingKeyType&&{tokenBindingKeyType:e.tokenBindingKeyType},...e.tokenBindingKeyAlgorithm||t?{tokenBindingKeyAlgorithm:e.tokenBindingKeyAlgorithm||t}:{}}}getTokenBindingKeyGenAlgorithmOptions(e,t){if(e===pi.RS256)return Xc;if(e===pi.ES256)return Qc;throw V(oc,t)}};ql.TOKEN_BINDING_KEY_USAGES=[`sign`,`verify`];var Jl=class{constructor(e,t,n){this.logger=e,el(n??!1),this.performanceClient=t,this.tokenBindingKeyManager=new ql(this.logger,this.performanceClient)}createNewGuid(){return il()}base64Encode(e){return Oc(e)}base64Decode(e){return H(e)}base64UrlEncode(e){return Ec(e)}encodeKid(e){return this.base64UrlEncode(JSON.stringify({kid:e}))}async removeTokenBindingKey(e,t){await this.tokenBindingKeyManager.removeTokenBindingKey(e,t)}async clearKeystore(e){return this.tokenBindingKeyManager.clearKeystore(e)}async signTokenBindingJwt(e,t,n,r){let i={},a=this.performanceClient?.startMeasurement(oo,r);try{let o=await this.tokenBindingKeyManager.getTokenBindingKeyPair(n,r);await this.validateTokenBindingJwtHeaderKey(e,n,r),i=this.tokenBindingKeyManager.getTokenBindingKeyTelemetry(o,e.alg);let s=this.getTokenBindingKeySigningAlgorithm(o,e.alg,r),c=`${Ec(JSON.stringify(e))}.${Ec(JSON.stringify(t))}`,l=await this.signInput(o,c,s);return a?.end({success:!0,...i}),`${c}.${l}`}catch(e){throw a?.end({success:!1,...i}),e}}async hashString(e){return gl(e)}async signInput(e,t,n){let r=new TextEncoder,i=await sl(e.privateKey,r.encode(t),n);return Dc(new Uint8Array(i))}getTokenBindingKeySigningAlgorithm(e,t,n){let r=e.privateKey.algorithm;if(t===pi.RS256&&r.name===Zc.name)return Zc;if(t===pi.ES256&&r.name===$c.name&&r.namedCurve===Qc.namedCurve)return $c;throw t===pi.RS256||t===pi.ES256?V(oc,n,sc):V(oc,n)}async validateTokenBindingJwtHeaderKey(e,t,n){if(e.jwk&&await yl(e.jwk,n)!==t)throw V(Js,n,cc)}},Yl=`acquireTokenSilent`,Xl=`acquireTokenByCode`,Zl=`acquireTokenPopup`,Ql=`acquireTokenPreRedirect`,$l=`acquireTokenRedirect`,eu=`ssoSilent`,tu=`initializeClientApplication`,nu=`localStorageUpdated`,ru=`ssoCapable`,Y=`msal`,iu=`browser`,au=`${Y}.${iu}.log.level`,ou=`${Y}.${iu}.log.pii`,su=`${Y}.version`,cu=`account.keys`,lu=`token.keys`,uu=`${Y}.${iu}.sso.capable`;function du(e=3){return e<1?`${Y}.${cu}`:`${Y}.${e}.${cu}`}function fu(e,t=3){return t<1?`${Y}.${lu}.${e}`:`${Y}.${t}.${lu}.${e}`}var pu=864e5,mu={Lax:`Lax`,None:`None`},hu=class{initialize(){return Promise.resolve()}getItem(e){let t=encodeURIComponent(e),n=document.cookie.split(`;`);for(let e=0;e<n.length;e++){let r=n[e].trim(),i=r.indexOf(`=`);if((i===-1?r:r.substring(0,i))===t){let e=i===-1?``:r.substring(i+1);try{return decodeURIComponent(e)}catch{return e}}}return``}getUserData(){throw E(D,``)}setItem(e,t,n,r=!0,i=mu.Lax){let a=`${encodeURIComponent(e)}=${encodeURIComponent(t)};path=/;SameSite=${i};`;if(n){let e=gu(n);a+=`expires=${e};`}(r||i===mu.None)&&(a+=`Secure;`),document.cookie=a}async setUserData(e,t,n){return Promise.reject(E(D,n))}removeItem(e){this.setItem(e,``,-1)}getKeys(){let e=document.cookie.split(`;`),t=[];return e.forEach(e=>{let n=e.trim(),r=n.indexOf(`=`),i=r===-1?n:n.substring(0,r);try{t.push(decodeURIComponent(i))}catch{}}),t}containsKey(e){return this.getKeys().includes(e)}decryptData(){return Promise.resolve(null)}};function gu(e){return new Date(new Date().getTime()+e*pu).toUTCString()}function _u(e,t){let n=e.getItem(du(t));return n?JSON.parse(n):[]}function X(e,t,n){let r=t.getItem(fu(e,n));if(r){let e=JSON.parse(r);if(e&&e.hasOwnProperty(`idToken`)&&e.hasOwnProperty(`accessToken`)&&e.hasOwnProperty(`refreshToken`))return e}return{idToken:[],accessToken:[],refreshToken:[]}}function vu(e){return e.hasOwnProperty(`id`)&&e.hasOwnProperty(`nonce`)&&e.hasOwnProperty(`data`)}var yu=`msal.cache.encryption`,bu=`msal.broadcast.cache`,xu=class{constructor(e,t,n){if(!window.localStorage)throw xl(Sl,``);this.memoryStorage=new Gl,this.initialized=!1,this.clientId=e,this.logger=t,this.performanceClient=n,this.broadcast=new BroadcastChannel(bu)}async initialize(e){let t=new hu,n=t.getItem(yu),r={key:``,id:``};if(n)try{r=JSON.parse(n)}catch{}if(r.key&&r.id){let t=P(mc,cs,this.logger,this.performanceClient,e)(r.key);this.encryptionCookie={id:r.id,key:await F(fl,os,this.logger,this.performanceClient,e)(t)}}else{let n=il(),r=await F(dl,ss,this.logger,this.performanceClient,e)(),i=P(Dc,ls,this.logger,this.performanceClient,e)(new Uint8Array(r));this.encryptionCookie={id:n,key:await F(fl,os,this.logger,this.performanceClient,e)(r)};let a={id:n,key:i};t.setItem(yu,JSON.stringify(a),0,!0,mu.None)}await F(this.importExistingCache.bind(this),es,this.logger,this.performanceClient,e)(e),this.broadcast.addEventListener(`message`,t=>{this.updateCache(t,e).catch(()=>{this.logger.error(`0ufnan`,e)})}),this.initialized=!0}getItem(e){return window.localStorage.getItem(e)}getUserData(e){if(!this.initialized)throw V(rc,``);return this.memoryStorage.getItem(e)}async decryptData(e,t,n){if(!this.initialized||!this.encryptionCookie)throw V(rc,``);if(t.id!==this.encryptionCookie.id)return this.performanceClient.incrementFields({encryptedCacheExpiredCount:1},n),null;let r=await F(hl,ds,this.logger,this.performanceClient,n)(this.encryptionCookie.key,t.nonce,this.getContext(e),t.data);if(!r)return null;try{return{...JSON.parse(r),lastUpdatedAt:t.lastUpdatedAt}}catch{return this.performanceClient.incrementFields({encryptedCacheCorruptionCount:1},n),null}}setItem(e,t){window.localStorage.setItem(e,t)}async setUserData(e,t,n,r,i){if(!this.initialized||!this.encryptionCookie)throw V(rc,``);if(i)this.setItem(e,t);else{let{data:i,nonce:a}=await F(ml,us,this.logger,this.performanceClient,n)(this.encryptionCookie.key,t,this.getContext(e)),o={id:this.encryptionCookie.id,nonce:a,data:i,lastUpdatedAt:r};this.setItem(e,JSON.stringify(o))}this.memoryStorage.setItem(e,t),this.broadcast.postMessage({key:e,value:t,context:this.getBroadcastContext(e)})}removeItem(e){let t=this.containsKey(e)||this.memoryStorage.containsKey(e);window.localStorage.removeItem(e),this.memoryStorage.removeItem(e),t&&this.broadcast.postMessage({key:e,value:null,context:this.getBroadcastContext(e)})}getKeys(){return Object.keys(window.localStorage)}containsKey(e){return window.localStorage.hasOwnProperty(e)}clear(){this.memoryStorage.clear(),_u(this).forEach(e=>this.removeItem(e));let e=X(this.clientId,this);e.idToken.forEach(e=>this.removeItem(e)),e.accessToken.forEach(e=>this.removeItem(e)),e.refreshToken.forEach(e=>this.removeItem(e)),this.getKeys().forEach(e=>{(e.startsWith(`msal`)||e.indexOf(this.clientId)!==-1)&&this.removeItem(e)})}async importExistingCache(e){if(!this.encryptionCookie)return;let t=_u(this);t=await this.importArray(t,e),t.length?this.setItem(du(),JSON.stringify(t)):this.removeItem(du());let n=X(this.clientId,this);n.idToken=await this.importArray(n.idToken,e),n.accessToken=await this.importArray(n.accessToken,e),n.refreshToken=await this.importArray(n.refreshToken,e),n.idToken.length||n.accessToken.length||n.refreshToken.length?this.setItem(fu(this.clientId),JSON.stringify(n)):this.removeItem(fu(this.clientId))}async getItemFromEncryptedCache(e,t){if(!this.encryptionCookie)return null;let n=this.getItem(e);if(!n)return null;let r;try{r=JSON.parse(n)}catch{return null}return vu(r)?r.id===this.encryptionCookie.id?(this.performanceClient.incrementFields({encryptedCacheCount:1},t),F(hl,ds,this.logger,this.performanceClient,t)(this.encryptionCookie.key,r.nonce,this.getContext(e),r.data)):(this.performanceClient.incrementFields({encryptedCacheExpiredCount:1},t),null):(this.performanceClient.incrementFields({unencryptedCacheCount:1},t),n)}async importArray(e,t){let n=[],r=[];return e.forEach(e=>{let i=this.getItemFromEncryptedCache(e,t).then(t=>{t?(this.memoryStorage.setItem(e,t),n.push(e)):this.removeItem(e)});r.push(i)}),await Promise.all(r),n}getContext(e){return e.includes(this.clientId)?this.clientId:``}getBroadcastContext(e){let t=e.toLowerCase(),n=t.split(`|`);if(n.length>1)return n[4]===this.clientId.toLowerCase()?this.clientId:``;let r=this.getCredentialType(t);if(r){let e=`-${r}-${this.clientId.toLowerCase()}-`;return t.includes(e)?this.clientId:``}return t.includes(this.clientId.toLowerCase())?this.clientId:``}getCredentialType(e){let t=e.toLowerCase(),n=t.split(`|`)[3];return Object.values(x).map(e=>e.toLowerCase()).find(e=>n===e||t.includes(`-${e}-`))}isFamilyRefreshToken(e,t){if(t!==x.REFRESH_TOKEN.toLowerCase())return!1;let n=e.toLowerCase(),r=n.split(`|`);return r.length>1?r[4]===`1`:n.includes(`-${t}-1-`)}isContextValid(e,t){let n=this.getCredentialType(e),r=n&&this.isFamilyRefreshToken(e,n);return(!(n&&!r)||!!t)&&t===this.getBroadcastContext(e)}async updateCache(e,t){this.logger.trace(`17cxcm`,t);let n=this.performanceClient.startMeasurement(nu);n.add({isBackground:!0});let r=e.data?.key,i=e.data?.context;if(typeof r!=`string`||!r){this.logger.error(`0e10qr`,t),n.end({success:!1,errorCode:`noKey`});return}if(typeof i!=`string`){this.logger.error(`16gtk4`,t),n.end({success:!1,errorCode:`noContext`});return}if(!this.isContextValid(r,i)){this.logger.trace(`04rtdy ${i}`,t),n.discard();return}let a=this.getItem(r);try{let e=await this.getItemFromEncryptedCache(r,t);if(this.getItem(r)!==a){n.discard();return}e?(this.memoryStorage.setItem(r,e),this.logger.verbose(`1vzsgt`,t)):(this.memoryStorage.removeItem(r),this.logger.verbose(`04ypih`,t)),n.end({success:!0})}catch{if(this.getItem(r)!==a){n.discard();return}this.memoryStorage.removeItem(r),this.logger.error(`0flmza`,t),n.end({success:!1,errorCode:`cacheUpdateFailed`})}}},Su=class{constructor(){if(!window.sessionStorage)throw xl(Sl,``)}async initialize(){}getItem(e){return window.sessionStorage.getItem(e)}getUserData(e){return this.getItem(e)}setItem(e,t){window.sessionStorage.setItem(e,t)}async setUserData(e,t){this.setItem(e,t)}removeItem(e){window.sessionStorage.removeItem(e)}getKeys(){return Object.keys(window.sessionStorage)}containsKey(e){return window.sessionStorage.hasOwnProperty(e)}decryptData(){return Promise.resolve(null)}},Z={INITIALIZE_START:`msal:initializeStart`,INITIALIZE_END:`msal:initializeEnd`,ACTIVE_ACCOUNT_CHANGED:`msal:activeAccountChanged`,LOGIN_SUCCESS:`msal:loginSuccess`,ACQUIRE_TOKEN_START:`msal:acquireTokenStart`,BROKERED_REQUEST_START:`msal:brokeredRequestStart`,ACQUIRE_TOKEN_SUCCESS:`msal:acquireTokenSuccess`,BROKERED_REQUEST_SUCCESS:`msal:brokeredRequestSuccess`,ACQUIRE_TOKEN_FAILURE:`msal:acquireTokenFailure`,BROKERED_REQUEST_FAILURE:`msal:brokeredRequestFailure`,ACQUIRE_TOKEN_NETWORK_START:`msal:acquireTokenFromNetworkStart`,HANDLE_REDIRECT_START:`msal:handleRedirectStart`,HANDLE_REDIRECT_END:`msal:handleRedirectEnd`,POPUP_OPENED:`msal:popupOpened`,LOGOUT_START:`msal:logoutStart`,LOGOUT_SUCCESS:`msal:logoutSuccess`,LOGOUT_FAILURE:`msal:logoutFailure`,LOGOUT_END:`msal:logoutEnd`,RESTORE_FROM_BFCACHE:`msal:restoreFromBFCache`,BROKER_CONNECTION_ESTABLISHED:`msal:brokerConnectionEstablished`},Cu=`@azure/msal-browser`,wu=`5.29.0`;function Tu(e,t){let n=e.indexOf(t);n>-1&&e.splice(n,1)}var Q={Invalid:`invalid`,TtlExpired:`ttlExpired`,DecryptFailed:`decryptFailed`,Expired:`expired`},Eu=class extends ki{constructor(e,t,n,r,i,a,o,s=hi){super(e,n,r,i,o,s),this.cacheConfig=t,this.logger=r,this.internalStorage=new Gl,this.browserStorage=Du(e,t.cacheLocation,r,i),this.temporaryCacheStorage=Du(e,gc.SessionStorage,r,i),this.cookieStorage=new hu,this.eventHandler=a}async initialize(e){this.performanceClient.addFields({cacheLocation:this.cacheConfig.cacheLocation,cacheRetentionDays:this.cacheConfig.cacheRetentionDays},e),await this.browserStorage.initialize(e),await this.migrateExistingCache(e),this.trackVersionChanges(e)}async migrateExistingCache(e){let t=_u(this.browserStorage),n=X(this.clientId,this.browserStorage);this.performanceClient.addFields({preMigrateAcntCount:t.length,preMigrateATCount:n.accessToken.length,preMigrateITCount:n.idToken.length,preMigrateRTCount:n.refreshToken.length},e);for(let t=0;t<3;t++){let n=t;await this.removeStaleAccounts(t,n,e)}for(let t=0;t<3;t++){let n=t;await this.migrateIdTokens(t,n,e)}let r=this.getKMSIValues();for(let t=0;t<3;t++)await this.migrateAccessTokens(t,r,e),await this.migrateRefreshTokens(t,r,e);t=_u(this.browserStorage),n=X(this.clientId,this.browserStorage),this.performanceClient.addFields({postMigrateAcntCount:t.length,postMigrateATCount:n.accessToken.length,postMigrateITCount:n.idToken.length,postMigrateRTCount:n.refreshToken.length},e)}async updateOldEntry(e,t){let n=this.browserStorage.getItem(e),r=this.validateAndParseJson(n||``);if(!r)return this.browserStorage.removeItem(e),{entry:null,removalReason:Q.Invalid};if(!r.lastUpdatedAt)r.lastUpdatedAt=Date.now().toString(),this.setItem(e,JSON.stringify(r),t);else if(Wn(r.lastUpdatedAt,this.cacheConfig.cacheRetentionDays))return this.browserStorage.removeItem(e),{entry:null,removalReason:Q.TtlExpired};let i=vu(r),a=i?await this.browserStorage.decryptData(e,r,t):r;return a?Yn(a)?(Xn(a)||Qn(a))&&a.expiresOn&&Un(a.expiresOn,300)?(this.browserStorage.removeItem(e),{entry:null,removalReason:Q.Expired}):{entry:a}:(this.browserStorage.removeItem(e),{entry:null,removalReason:Q.Invalid}):(this.browserStorage.removeItem(e),{entry:null,removalReason:i?Q.DecryptFailed:Q.Invalid})}async removeStaleAccounts(e,t,n){let r=_u(this.browserStorage,e);if(r.length!==0){for(let e of[...r]){this.performanceClient.incrementFields({oldAcntCount:1},n);let i=this.browserStorage.getItem(e),a=this.validateAndParseJson(i||``);if(!a)this.browserStorage.removeItem(e),this.performanceClient.incrementFields({invalidAcntCount:1},n),Tu(r,e);else if(a.lastUpdatedAt)Wn(a.lastUpdatedAt,this.cacheConfig.cacheRetentionDays)?(await this.removeAccountOldSchema(e,a,t,n),this.performanceClient.incrementFields({ttlExpiredAcntCount:1},n),Tu(r,e)):vu(a)&&(await this.browserStorage.decryptData(e,a,n)||(this.browserStorage.removeItem(e),this.performanceClient.incrementFields({decryptFailedAcntCount:1},n),Tu(r,e)));else{a.lastUpdatedAt=Date.now().toString(),this.setItem(e,JSON.stringify(a),n);continue}}this.setAccountKeys(r,n,e)}}async removeAccountOldSchema(e,t,n,r){let i=(vu(t)?await this.browserStorage.decryptData(e,t,r):t)?.homeAccountId;if(i){let e=this.getTokenKeys(n);[...e.idToken].filter(e=>e.includes(i)).forEach(t=>{this.browserStorage.removeItem(t),Tu(e.idToken,t)}),[...e.accessToken].filter(e=>e.includes(i)).forEach(t=>{this.browserStorage.removeItem(t),Tu(e.accessToken,t)}),[...e.refreshToken].filter(e=>e.includes(i)).forEach(t=>{this.browserStorage.removeItem(t),Tu(e.refreshToken,t)}),this.setTokenKeys(e,r,n)}this.browserStorage.removeItem(e)}getKMSIValues(){let e={},t=this.getTokenKeys().idToken;for(let n of t){let t=this.browserStorage.getUserData(n);if(t){let n=JSON.parse(t),r=O(n.secret,H,``);r&&(e[n.homeAccountId]=k(r))}}return e}async migrateIdTokens(e,t,n){let r=X(this.clientId,this.browserStorage,e);if(r.idToken.length===0)return;let i=X(this.clientId,this.browserStorage,3),a=_u(this.browserStorage),o=_u(this.browserStorage,t);for(let e of[...r.idToken]){this.performanceClient.incrementFields({oldITCount:1},n);let t=await this.updateOldEntry(e,n),s=t.entry;if(!s){switch(t.removalReason){case Q.TtlExpired:this.performanceClient.incrementFields({ttlExpiredITCount:1},n);break;case Q.DecryptFailed:this.performanceClient.incrementFields({decryptFailedITCount:1},n);break;case Q.Invalid:this.performanceClient.incrementFields({invalidITCount:1},n)}Tu(r.idToken,e);continue}let c=a.find(e=>e.includes(s.homeAccountId)),l=o.find(e=>e.includes(s.homeAccountId)),u=null;if(c)u=this.getAccount(c,n);else if(l){let e=this.browserStorage.getItem(l),t=this.validateAndParseJson(e||``);u=t&&vu(t)?await this.browserStorage.decryptData(l,t,n):t}if(!u){this.performanceClient.incrementFields({skipITMigrateCount:1},n);continue}let d=O(s.secret,H,n),f=this.generateCredentialKey(s),p=this.getIdTokenCredential(f,n),m=Object.keys(d).includes(`signin_state`),h=p&&Object.keys(O(p.secret,H,n)||{}).includes(`signin_state`);if(!p||s.lastUpdatedAt>p.lastUpdatedAt&&(m||!h)){let e=u.tenantProfiles||[],t=_t(d)||u.realm;if(t&&!e.find(e=>e.tenantId===t)){let n=mt(u.homeAccountId,u.localAccountId,t,u.nativeAccountId,d);e.push(n)}u.tenantProfiles=e;let r=this.generateAccountKey(vt(u)),o=k(d);await this.setUserData(r,JSON.stringify(u),n,u.lastUpdatedAt,o),a.includes(r)||a.push(r),await this.setUserData(f,JSON.stringify(s),n,s.lastUpdatedAt,o),this.performanceClient.incrementFields({migratedITCount:1},n),i.idToken.includes(f)||i.idToken.push(f)}}this.setTokenKeys(r,n,e),this.setTokenKeys(i,n),this.setAccountKeys(a,n)}async migrateAccessTokens(e,t,n){let r=X(this.clientId,this.browserStorage,e);if(r.accessToken.length===0)return;let i=X(this.clientId,this.browserStorage,3);for(let e of[...r.accessToken]){this.performanceClient.incrementFields({oldATCount:1},n);let a=await this.updateOldEntry(e,n),o=a.entry;if(!o){switch(a.removalReason){case Q.TtlExpired:this.performanceClient.incrementFields({ttlExpiredATCount:1},n);break;case Q.DecryptFailed:this.performanceClient.incrementFields({decryptFailedATCount:1},n);break;case Q.Expired:this.performanceClient.incrementFields({expiredATCount:1},n);break;case Q.Invalid:this.performanceClient.incrementFields({invalidATCount:1},n)}Tu(r.accessToken,e);continue}if(!(o.homeAccountId in t)){this.performanceClient.incrementFields({skipATMigrateCount:1},n);continue}let s=this.generateCredentialKey(o),c=t[o.homeAccountId];if(!i.accessToken.includes(s))await this.setUserData(s,JSON.stringify(o),n,o.lastUpdatedAt,c),this.performanceClient.incrementFields({migratedATCount:1},n),i.accessToken.push(s);else{let e=this.getAccessTokenCredential(s,n);(!e||o.lastUpdatedAt>e.lastUpdatedAt)&&(await this.setUserData(s,JSON.stringify(o),n,o.lastUpdatedAt,c),this.performanceClient.incrementFields({migratedATCount:1},n))}}this.setTokenKeys(r,n,e),this.setTokenKeys(i,n)}async migrateRefreshTokens(e,t,n){let r=X(this.clientId,this.browserStorage,e);if(r.refreshToken.length===0)return;let i=X(this.clientId,this.browserStorage,3);for(let e of[...r.refreshToken]){this.performanceClient.incrementFields({oldRTCount:1},n);let a=await this.updateOldEntry(e,n),o=a.entry;if(!o){switch(a.removalReason){case Q.TtlExpired:this.performanceClient.incrementFields({ttlExpiredRTCount:1},n);break;case Q.DecryptFailed:this.performanceClient.incrementFields({decryptFailedRTCount:1},n);break;case Q.Expired:this.performanceClient.incrementFields({expiredRTCount:1},n);break;case Q.Invalid:this.performanceClient.incrementFields({invalidRTCount:1},n)}Tu(r.refreshToken,e);continue}if(!(o.homeAccountId in t)){this.performanceClient.incrementFields({skipRTMigrateCount:1},n);continue}let s=this.generateCredentialKey(o),c=t[o.homeAccountId];if(!i.refreshToken.includes(s))await this.setUserData(s,JSON.stringify(o),n,o.lastUpdatedAt,c),this.performanceClient.incrementFields({migratedRTCount:1},n),i.refreshToken.push(s);else{let e=this.getRefreshTokenCredential(s,n);(!e||o.lastUpdatedAt>e.lastUpdatedAt)&&(await this.setUserData(s,JSON.stringify(o),n,o.lastUpdatedAt,c),this.performanceClient.incrementFields({migratedRTCount:1},n))}}this.setTokenKeys(r,n,e),this.setTokenKeys(i,n)}trackVersionChanges(e){let t=this.browserStorage.getItem(su);t&&(this.logger.info(`1wuc87 ${t}`,e),this.performanceClient.addGlobalFields({previousLibraryVersion:t})),t!==`5.29.0`&&this.setItem(su,wu,e)}validateAndParseJson(e){if(!e)return null;try{let t=JSON.parse(e);return t&&typeof t==`object`?t:null}catch{return null}}setItem(e,t,n){let r=[,,,,].fill(0),i=[];for(let a=0;a<=20;a++)try{if(this.browserStorage.setItem(e,t),a>0)for(let e=0;e<=3;e++){let t=r.slice(0,e).reduce((e,t)=>e+t,0);if(t>=a)break;let o=a>t+r[e]?t+r[e]:a;a>t&&r[e]>0&&this.removeAccessTokenKeys(i.slice(t,o),n,e)}break}catch(o){let s=Oi(o);if(s.errorCode===`cache_quota_exceeded`&&a<20){if(!i.length)for(let n=0;n<=3;n++)if(e===fu(this.clientId,n)){let e=JSON.parse(t).accessToken;i.push(...e),r[n]=e.length}else{let e=this.getTokenKeys(n).accessToken;i.push(...e),r[n]=e.length}if(i.length<=a)throw s;this.removeAccessToken(i[a],n,!1)}else throw s}}async setUserData(e,t,n,r,i){let a=[,,,,].fill(0),o=[];for(let s=0;s<=20;s++)try{if(await F(this.browserStorage.setUserData.bind(this.browserStorage),zn,this.logger,this.performanceClient,n)(e,t,n,r,i),s>0)for(let e=0;e<=3;e++){let t=a.slice(0,e).reduce((e,t)=>e+t,0);if(t>=s)break;let r=s>t+a[e]?t+a[e]:s;s>t&&a[e]>0&&this.removeAccessTokenKeys(o.slice(t,r),n,e)}break}catch(e){let t=Oi(e);if(t.errorCode===`cache_quota_exceeded`&&s<20){if(!o.length)for(let e=0;e<=3;e++){let t=this.getTokenKeys(e).accessToken;o.push(...t),a[e]=t.length}if(o.length<=s)throw t;await this.removeAccessTokenAndTokenBindingKey(o[s],n,void 0,!1)}else throw t}}getAccount(e,t){this.logger.trace(`1lfvm6`,t);let n=this.browserStorage.getUserData(e);if(!n)return this.removeAccountKeyFromMap(e,t),null;let r=this.validateAndParseJson(n);if(!r||!St(r))return null;let i=ki.toObject({},r);return this.performanceClient.addFields({accountCachedBy:xc(i.cachedByApiId)},t),i}async setAccount(e,t,n,r){this.logger.trace(`1bz3wr`,t);let i=this.generateAccountKey(vt(e)),a=Date.now().toString();e.lastUpdatedAt=a,e.cachedByApiId=r,await this.setUserData(i,JSON.stringify(e),t,a,n),this.addAccountKeyToMap(i,t),this.performanceClient.addFields({kmsi:n},t)}setAccountKeys(e,t,n=3){e.length===0?this.removeItem(du(n)):this.setItem(du(n),JSON.stringify(e),t)}getAccountKeys(){return _u(this.browserStorage)}addAccountKeyToMap(e,t){this.logger.trace(`0rb85k`,t),this.logger.tracePii(`1l9bdo ${e}`,t);let n=this.getAccountKeys();return n.indexOf(e)===-1?(n.push(e),this.setItem(du(),JSON.stringify(n),t),this.logger.verbose(`0xia39`,t),!0):(this.logger.verbose(`0161kk`,t),!1)}removeAccountKeyFromMap(e,t){this.logger.trace(`1jpigu`,t),this.logger.tracePii(`1xzspl ${e}`,t);let n=this.getAccountKeys(),r=n.indexOf(e);r>-1?(n.splice(r,1),this.setAccountKeys(n,t)):this.logger.trace(`1dytu2`,t)}removeAccount(e,t){let n=this.getActiveAccount(t);n?.homeAccountId===e.homeAccountId&&n?.environment===e.environment&&this.setActiveAccount(null,t),super.removeAccount(e,t),this.removeAccountKeyFromMap(this.generateAccountKey(e),t),this.browserStorage.getKeys().forEach(t=>{t.includes(e.homeAccountId)&&t.includes(e.environment)&&this.browserStorage.removeItem(t)})}removeIdToken(e,t){super.removeIdToken(e,t);let n=this.getTokenKeys(),r=n.idToken.indexOf(e);r>-1&&(this.logger.info(`05udv9`,t),n.idToken.splice(r,1),this.setTokenKeys(n,t))}removeAccessToken(e,t,n=!0){super.removeAccessToken(e,t),n&&this.removeAccessTokenKeys([e],t)}async removeAccessTokenAndTokenBindingKey(e,t,n,r=!0){await super.removeAccessTokenAndTokenBindingKey(e,t,n),r&&this.removeAccessTokenKeys([e],t)}removeAccessTokenKeys(e,t,n=3){this.logger.trace(`17o18n`,t);let r=this.getTokenKeys(n),i=0;e.forEach(e=>{let t=r.accessToken.indexOf(e);t>-1&&(r.accessToken.splice(t,1),i++)}),i>0&&(this.logger.info(`15i5d5 ${i}`,t),this.setTokenKeys(r,t,n))}removeRefreshToken(e,t){super.removeRefreshToken(e,t);let n=this.getTokenKeys(),r=n.refreshToken.indexOf(e);r>-1&&(this.logger.info(`1f4fq3`,t),n.refreshToken.splice(r,1),this.setTokenKeys(n,t))}getTokenKeys(e=3){return X(this.clientId,this.browserStorage,e)}setTokenKeys(e,t,n=3){e.idToken.length===0&&e.accessToken.length===0&&e.refreshToken.length===0?this.removeItem(fu(this.clientId,n)):this.setItem(fu(this.clientId,n),JSON.stringify(e),t)}getIdTokenCredential(e,t){let n=this.browserStorage.getUserData(e);if(!n)return this.logger.trace(`1jukz6`,t),this.removeIdToken(e,t),null;let r=this.validateAndParseJson(n);return!r||!Zn(r)?(this.logger.trace(`1jukz6`,t),null):(this.logger.trace(`01ju66`,t),r)}async setIdTokenCredential(e,t,n){this.logger.trace(`13hjll`,t);let r=this.generateCredentialKey(e),i=Date.now().toString();e.lastUpdatedAt=i,await this.setUserData(r,JSON.stringify(e),t,i,n);let a=this.getTokenKeys();a.idToken.indexOf(r)===-1&&(this.logger.info(`07jy92`,t),a.idToken.push(r),this.setTokenKeys(a,t))}getAccessTokenCredential(e,t){let n=this.browserStorage.getUserData(e);if(!n)return this.logger.trace(`0bqvx8`,t),this.removeAccessTokenKeys([e],t),null;let r=this.validateAndParseJson(n);return!r||!Xn(r)?(this.logger.trace(`0bqvx8`,t),null):(this.logger.trace(`1o81rl`,t),r)}async setAccessTokenCredential(e,t,n,r){this.logger.trace(`1pondb`,t);let i=this.generateCredentialKey(e,r),a=Date.now().toString();e.lastUpdatedAt=a,await this.setUserData(i,JSON.stringify(e),t,a,n);let o=this.getTokenKeys(),s=o.accessToken.indexOf(i);s!==-1&&o.accessToken.splice(s,1),this.logger.trace(`1onhey ${s===-1?`added to`:`updated in`}`,t),o.accessToken.push(i),this.setTokenKeys(o,t)}getRefreshTokenCredential(e,t){let n=this.browserStorage.getUserData(e);if(!n)return this.logger.trace(`0jlizt`,t),this.removeRefreshToken(e,t),null;let r=this.validateAndParseJson(n);return!r||!Qn(r)?(this.logger.trace(`0jlizt`,t),null):(this.logger.trace(`0nokxi`,t),r)}async setRefreshTokenCredential(e,t,n){this.logger.trace(`0tcg8d`,t);let r=this.generateCredentialKey(e),i=Date.now().toString();e.lastUpdatedAt=i,await this.setUserData(r,JSON.stringify(e),t,i,n);let a=this.getTokenKeys();a.refreshToken.indexOf(r)===-1&&(this.logger.info(`0eckjs`,t),a.refreshToken.push(r),this.setTokenKeys(a,t))}getAppMetadata(e,t){let n=this.browserStorage.getItem(e);if(!n)return this.logger.trace(`1q101h`,t),null;let r=this.validateAndParseJson(n);return!r||!nr(e,r)?(this.logger.trace(`1q101h`,t),null):(this.logger.trace(`19pvg2`,t),r)}setAppMetadata(e,t){this.logger.trace(`0cyma6`,t);let n=tr(e);this.setItem(n,JSON.stringify(e),t)}getServerTelemetry(e,t){let n=this.browserStorage.getItem(e);if(!n)return this.logger.trace(`0jk19c`,t),null;let r=this.validateAndParseJson(n);return!r||!$n(e,r)?(this.logger.trace(`0jk19c`,t),null):(this.logger.trace(`12jguk`,t),r)}setServerTelemetry(e,t,n){this.logger.trace(`1poh61`,n),this.setItem(e,JSON.stringify(t),n)}getAuthorityMetadata(e,t){let n=this.internalStorage.getItem(e);if(!n)return this.logger.trace(`1r39oe`,t),null;let r=this.validateAndParseJson(n);return r&&rr(e,r)?(this.logger.trace(`1ohvk3`,t),r):null}getAuthorityMetadataKeys(){return this.internalStorage.getKeys().filter(e=>this.isAuthorityMetadata(e))}setWrapperMetadata(e,t){this.internalStorage.setItem(yc.WRAPPER_SKU,e),this.internalStorage.setItem(yc.WRAPPER_VER,t)}getWrapperMetadata(){return[this.internalStorage.getItem(yc.WRAPPER_SKU)||``,this.internalStorage.getItem(yc.WRAPPER_VER)||``]}setAuthorityMetadata(e,t,n){this.logger.trace(`07w8n2`,n),this.internalStorage.setItem(e,JSON.stringify(t))}getActiveAccount(e){let t=this.generateCacheKey(ue.ACTIVE_ACCOUNT_FILTERS),n=this.browserStorage.getItem(t);if(!n)return this.logger.trace(`08gw0e`,e),null;let r=this.validateAndParseJson(n);return r?(this.logger.trace(`1t3ch7`,e),this.getAccountInfoFilteredBy({homeAccountId:r.homeAccountId,localAccountId:r.localAccountId,tenantId:r.tenantId},e)):(this.logger.trace(`0me1up`,e),null)}setActiveAccount(e,t){let n=this.generateCacheKey(ue.ACTIVE_ACCOUNT_FILTERS);if(e){this.logger.verbose(`0rsj80`,t);let r={homeAccountId:e.homeAccountId,localAccountId:e.localAccountId,tenantId:e.tenantId};this.setItem(n,JSON.stringify(r),t)}else this.logger.verbose(`1bp5z5`,t),this.browserStorage.removeItem(n);this.eventHandler.emitEvent(Z.ACTIVE_ACCOUNT_CHANGED,t)}getThrottlingCache(e,t){let n=this.browserStorage.getItem(e);if(!n)return this.logger.trace(`1h4wa6`,t),null;let r=this.validateAndParseJson(n);return!r||!er(e,r)?(this.logger.trace(`1h4wa6`,t),null):(this.logger.trace(`0of6n8`,t),r)}setThrottlingCache(e,t,n){this.logger.trace(`0wfgh6`,n),this.setItem(e,JSON.stringify(t),n)}getTemporaryCache(e,t,n){this.logger.trace(`1ordf8`,t);let r=n?this.generateCacheKey(e):e;return this.temporaryCacheStorage.getItem(r)}setTemporaryCache(e,t,n){let r=n?this.generateCacheKey(e):e;this.temporaryCacheStorage.setItem(r,t)}removeItem(e){this.browserStorage.removeItem(e)}removeTemporaryItem(e){this.temporaryCacheStorage.removeItem(e)}getKeys(){return this.browserStorage.getKeys()}clear(e){this.removeAllAccounts(e),this.removeAppMetadata(e),this.temporaryCacheStorage.getKeys().forEach(e=>{(e.indexOf(`msal`)!==-1||e.indexOf(this.clientId)!==-1)&&this.removeTemporaryItem(e)}),this.browserStorage.getKeys().forEach(e=>{(e.indexOf(`msal`)!==-1||e.indexOf(this.clientId)!==-1)&&this.browserStorage.removeItem(e)}),this.internalStorage.clear()}generateCacheKey(e){return $t.startsWith(e,`msal`)?e:`${Y}.${this.clientId}.${e}`}generateCredentialKey(e,t){let n=e.credentialType===x.REFRESH_TOKEN&&e.familyId||e.clientId,r=e.tokenType&&e.tokenType.toLowerCase()!==C.BEARER.toLowerCase()?e.tokenType.toLowerCase():``,i=[`${Y}.3`,e.homeAccountId,e.environment,e.credentialType,n,e.realm||``,e.target||``,r];return e.additionalCacheKeyComponents&&Object.keys(e.additionalCacheKeyComponents).length>0&&t&&i.push(t),i.join(`|`).toLowerCase()}generateAccountKey(e){let t=e.homeAccountId.split(`.`)[1];return[`${Y}.3`,e.homeAccountId,e.environment,t||e.tenantId||``].join(`|`).toLowerCase()}resetRequestCache(e){this.logger.trace(`0h0ynu`,e),this.removeTemporaryItem(this.generateCacheKey(G.REQUEST_PARAMS)),this.removeTemporaryItem(this.generateCacheKey(G.VERIFIER)),this.removeTemporaryItem(this.generateCacheKey(G.ORIGIN_URI)),this.removeTemporaryItem(this.generateCacheKey(G.URL_HASH)),this.removeTemporaryItem(this.generateCacheKey(G.NATIVE_REQUEST)),this.setInteractionInProgress(!1,void 0)}cacheAuthorizeRequest(e,t,n){this.logger.trace(`1tzef5`,t);let r=Oc(JSON.stringify(e));if(this.setTemporaryCache(G.REQUEST_PARAMS,r,!0),n){let e=Oc(n);this.setTemporaryCache(G.VERIFIER,e,!0)}}getCachedRequest(e){this.logger.trace(`0uen20`,e);let t=this.getTemporaryCache(G.REQUEST_PARAMS,e,!0);if(!t)throw V(zs,``);let n=this.getTemporaryCache(G.VERIFIER,e,!0),r,i=``;try{r=JSON.parse(H(t)),n&&(i=H(n))}catch(n){throw this.logger.errorPii(`0ewsey ${t}`,e),this.logger.error(`0tvdic ${n}`,e),V(Bs,``)}return[r,i]}getCachedNativeRequest(){this.logger.trace(`1yxcdm`,``);let e=this.getTemporaryCache(G.NATIVE_REQUEST,``,!0);return e?this.validateAndParseJson(e)||(this.logger.error(`0rrkip`,``),null):(this.logger.trace(`0mnxd4`,``),null)}isInteractionInProgress(e){let t=this.getInteractionInProgress()?.clientId;return e?t===this.clientId:!!t}getInteractionInProgress(){let e=`${Y}.${G.INTERACTION_STATUS_KEY}`,t=this.getTemporaryCache(e,``,!1);try{return t?JSON.parse(t):null}catch{return this.logger.error(`0jjyys`,``),this.removeTemporaryItem(e),this.resetRequestCache(``),Tl(window),null}}setInteractionInProgress(e,t=vc.SIGNIN,n=!1,r=``){let i=`${Y}.${G.INTERACTION_STATUS_KEY}`;if(e){let e=this.getInteractionInProgress();if(e){if(n)this.logger.warning(`1pmscr ${e.clientId} ${e.type}`,r),jl(this.logger,r),this.removeTemporaryItem(i);else throw V(Ds,``)}this.setTemporaryCache(i,JSON.stringify({clientId:this.clientId,type:t}),!1)}else!e&&this.getInteractionInProgress()?.clientId===this.clientId&&this.removeTemporaryItem(i)}async hydrateCache(e,t){let n=Kn(e.account.homeAccountId,e.account.environment,e.idToken,this.clientId,e.tenantId),r=qn(e.account.homeAccountId,e.account.environment,e.accessToken,this.clientId,e.tenantId,e.scopes.join(` `),e.expiresOn?Vn(e.expiresOn):0,e.extExpiresOn?Vn(e.extExpiresOn):0,H,t.correlationId||``,void 0,e.tokenType,void 0,t.sshKid);t.resource&&(r.resource=t.resource);let i={idToken:n,accessToken:r};return this.saveCacheRecord(i,e.correlationId,k(O(e.idToken,H,e.correlationId)),K.hydrateCache)}async saveCacheRecord(e,t,n,r,i){try{await super.saveCacheRecord(e,t,n,r,i)}catch(e){if(e instanceof Di&&this.performanceClient&&t)try{let e=this.getTokenKeys();this.performanceClient.addFields({cacheRtCount:e.refreshToken.length,cacheIdCount:e.idToken.length,cacheAtCount:e.accessToken.length},t)}catch{}throw e}}};function Du(e,t,n,r){try{switch(t){case gc.LocalStorage:return new xu(e,n,r);case gc.SessionStorage:return new Su;case gc.MemoryStorage:}}catch(e){n.error(e,``)}return new Gl}var Ou=(e,t,n,r,i,a=hi)=>new Eu(e,{cacheLocation:gc.MemoryStorage,cacheRetentionDays:5},mi,t,n,r,i,a);function ku(e,t,n,r,i){return e.verbose(`1yd030`,r),n?t.getAllAccounts(i,r):[]}function Au(e,t,n,r){t.trace(`0u7b90`,r);let i=n.getAccountInfoFilteredBy(e,r);return i?(t.verbose(`0btgll`,r),i):(t.verbose(`0ltaj5`,r),null)}function ju(e,t,n){t.setActiveAccount(e,n)}function Mu(e,t){return e.getActiveAccount(t)}var Nu;function Pu(e){Nu&&(e.verbose(`0g9n3p`,Nu.correlationId),Nu.cancel())}async function Fu(e,t,n,r,i,a){let o;return new Promise((t,i)=>{r.verbose(`0cp91u`,a);let s=window.setInterval(()=>{if(e.closed){r.error(`0n69wb`,a),window.clearInterval(s),i(new gs(js,a));return}let o=``;try{o=e.location.href}catch{}if(!o||o===`about:blank`)return;window.clearInterval(s);let c;c=n===b.QUERY?e.location.search:e.location.hash,r.verbose(`0po9er`,a),t(c)},30);o={correlationId:a,cancel:()=>{window.clearInterval(s),Nu===o&&(Nu=void 0),i(new gs(Os,a))}},Nu=o}).finally(()=>{o&&Nu===o&&(Nu=void 0),Iu(e,t,i)})}function Iu(e,t,n){if(!e.closed)try{El(e)}catch{}e.close(),t.removeEventListener(`beforeunload`,n)}var Lu=`msal.broadcast.event`,Ru=class{constructor(e){this.eventCallbacks=new Map,this.logger=e||new Si({},`@azure/msal-browser`,`5.29.0`),typeof BroadcastChannel<`u`&&(this.broadcastChannel=new BroadcastChannel(Lu)),this.invokeCrossTabCallbacks=this.invokeCrossTabCallbacks.bind(this)}addEventCallback(e,t,n){if(typeof window<`u`){let r=n||Ul();return this.eventCallbacks.has(r)?(this.logger.error(`1578i0 ${r}`,``),null):(this.eventCallbacks.set(r,[e,t||[]]),this.logger.verbose(`1cnec4 ${r}`,``),r)}return null}removeEventCallback(e){this.eventCallbacks.delete(e),this.logger.verbose(`12zotd ${e}`,``)}emitEvent(e,t,n,r,i){let a={eventType:e,interactionType:n||null,payload:r||null,error:i||null,correlationId:t,timestamp:Date.now()};switch(e){case Z.LOGIN_SUCCESS:case Z.LOGOUT_SUCCESS:case Z.ACTIVE_ACCOUNT_CHANGED:this.broadcastChannel?.postMessage(a)}this.invokeCallbacks(a)}invokeCallbacks(e){this.eventCallbacks.forEach(([t,n],r)=>{(n.length===0||n.includes(e.eventType))&&(this.logger.verbose(`15jpwk ${r} ${e.eventType}`,``),t.apply(null,[e]))})}invokeCrossTabCallbacks(e){let t=e.data;this.invokeCallbacks(t)}subscribeCrossTab(){this.broadcastChannel?.addEventListener(`message`,this.invokeCrossTabCallbacks)}unsubscribeCrossTab(){this.broadcastChannel?.removeEventListener(`message`,this.invokeCrossTabCallbacks)}},zu=class{constructor(e,t,n,r,i,a,o,s,c,l){this.config=e,this.browserStorage=t,this.browserCrypto=n,this.networkClient=this.config.system.networkClient,this.eventHandler=i,this.navigationClient=a,this.platformAuthProvider=c,this.correlationId=s,this.logger=r.clone(Cu,wu),this.performanceClient=o,this.tokenBindingKeyManager=l||new ql(this.logger,this.performanceClient)}};function Bu(e,t,n,r){n.verbose(`0bd1la`,r);let i=e||t||``;return N.getAbsoluteUrl(i,Nl(),r)}function $(e,t,n,r,i,a,o=!0){return i.verbose(`1p12tq`,n),o?new Xa({clientId:t,correlationId:n,apiId:e,forceRefresh:a||!1,wrapperSKU:r.getWrapperMetadata()[0],wrapperVer:r.getWrapperMetadata()[1]},r):(i.verbose(`0tajnr`,n),new Za)}async function Vu(e,t,n,r,i,a,o,s,c){let l=s&&s.hasOwnProperty(`instance_aware`)?s.instance_aware:void 0,u={protocolMode:e.system.protocolMode,OIDCOptions:e.auth.OIDCOptions,knownAuthorities:e.auth.knownAuthorities,cloudDiscoveryMetadata:e.auth.cloudDiscoveryMetadata,authorityMetadata:e.auth.authorityMetadata},d=a||e.auth.authority,f=l?.length?l===`true`:e.auth.instanceAware,p=c&&f?e.auth.authority.replace(N.getDomainFromUrl(d,t),c.environment):d,m=lr.generateAuthority(p,o||e.auth.azureCloudOptions),h=await F(pr,Po,i,n,t)(m,e.system.networkClient,r,u,i,t,n);if(c&&!h.isAlias(c.environment))throw M(Wt,t);return h}async function Hu(e,t,n,r,i){if(i)try{e.removeAccount(i,r),n.verbose(`0s4z6h`,r)}catch{n.error(`0mgg1d`,r)}else try{n.verbose(`0zj631`,r),e.clear(r),await t.clearKeystore(r)}catch{n.error(`12ih0c`,r)}}var Uu=new Set([C.BEARER,C.POP,C.DPOP,C.SSH]);function Wu(e,t){if(!e.sshJwk)throw M(zt,t);if(!e.sshKid)throw M(Bt,t)}function Gu(e,t){if(!e.resourceRequestMethod?.trim()||!e.resourceRequestUri?.trim())throw M(Zt,t)}async function Ku(e,t,n,r){switch(e.authenticationScheme){case C.DPOP:return{dpopJkt:await t.provisionTokenBindingKey({tokenBindingKeyType:C.DPOP.toLowerCase(),tokenBindingKeyAlgorithm:pi.ES256,correlationId:e.correlationId})};case C.POP:if(!e.platformBroker)return{};let i=new Jl(n,r);if(e.popKid)return{reqCnf:i.encodeKid(e.popKid)};let a=new ta(i,t,r);return{reqCnf:(await F(a.generateCnf.bind(a),Dn,n,r,e.correlationId)(e,n)).reqCnfString};default:return{}}}async function qu(e,t,n,r){if(e.authenticationScheme===C.DPOP&&e.dpopJkt)try{await t.removeTokenBindingKey(e.dpopJkt,e.correlationId)}catch{n.error(`1su7ne`,e.correlationId),r.incrementFields({removeTokenBindingKeyFailure:1},e.correlationId)}}async function Ju(e,t){let n=e.dpopJkt??e.keyId;return!n||!t.isTokenBindingKeyPersisted||t.isTokenBindingKeyPersisted(n,e.correlationId)}async function Yu(e,t,n,r,i){let a=e.authority||t.auth.authority,o=[...e&&e.scopes||[]],s={...e,correlationId:e.correlationId,authority:a,scopes:o};if(!s.authenticationScheme)s.authenticationScheme=C.BEARER,r.verbose(`1l4fwv`,i);else{if(!Uu.has(s.authenticationScheme))throw M(Vt,i);switch(s.authenticationScheme){case C.SSH:Wu(e,i);break;case C.DPOP:Gu(e,i)}r.verbose(`1ecmns ${s.authenticationScheme}`,i)}return s}async function Xu(e,t,n,r,i){let a=await F(Yu,_o,i,r,e.correlationId)(e,n,r,i,e.correlationId);return{...e,...a,account:t,forceRefresh:e.forceRefresh||!1}}function Zu(e,t){let n,r=e.httpMethod;if(t===A.EAR){if(r&&r!==se.POST)throw M(Gt,``);n=se.POST}else n=r||se.GET;return n}var Qu=`null`;function $u(e){try{if(e.origin===Qu)return!1;let t=e;for(;t!==t.parent;)t=t.parent,t.location.href;return!0}catch{return!1}}function ed(e){try{let t=e.top;if(!t)return!1;let n=t.opener;return!n||n===t||n.location.href,!0}catch{return!1}}function td(e,t=typeof window<`u`?window:void 0){return e.auth.originCheck===!1?1:!t||!$u(t)?0:+!!ed(t)}var nd=class extends zu{initializeLogoutRequest(e){this.logger.verbose(`0546u4`,this.correlationId);let t={correlationId:this.correlationId,...e,popupOriginCheckDone:td(this.config)===1};if(e){if(e.logoutHint)this.logger.verbose(`12k4l4`,this.correlationId);else if(e.account){let n=e.account.loginHint||this.getLogoutHintFromIdTokenClaims(e.account);n&&(this.logger.verbose(`0d7s8p`,this.correlationId),t.logoutHint=n)}else this.logger.verbose(`0pdtc3`,this.correlationId)}else this.logger.verbose(`07ndze`,this.correlationId);return!e||e.postLogoutRedirectUri!==null?e&&e.postLogoutRedirectUri?(this.logger.verbose(`1vamm6`,t.correlationId),t.postLogoutRedirectUri=N.getAbsoluteUrl(e.postLogoutRedirectUri,Nl(),t.correlationId)):this.config.auth.postLogoutRedirectUri===null?this.logger.verbose(`15m5g7`,t.correlationId):this.config.auth.postLogoutRedirectUri?(this.logger.verbose(`1f4xlz`,t.correlationId),t.postLogoutRedirectUri=N.getAbsoluteUrl(this.config.auth.postLogoutRedirectUri,Nl(),t.correlationId)):(this.logger.verbose(`17s5rf`,t.correlationId),t.postLogoutRedirectUri=N.getAbsoluteUrl(Nl(),Nl(),t.correlationId)):this.logger.verbose(`0ljv63`,t.correlationId),t}getLogoutHintFromIdTokenClaims(e){let t=e.idTokenClaims;if(t){if(t.login_hint)return this.logger.verbose(`0u5bmc`,this.correlationId),t.login_hint;this.logger.verbose(`0mvp54`,this.correlationId)}else this.logger.verbose(`1e7bdp`,this.correlationId);return null}async createAuthCodeClient(e){return new Ia(await F(this.getClientConfiguration.bind(this),wo,this.logger,this.performanceClient,this.correlationId)(e),this.performanceClient)}async getClientConfiguration(e){let{serverTelemetryManager:t,requestAuthority:n,requestAzureCloudOptions:r,requestExtraQueryParameters:i,account:a}=e,o=e.authority||await F(Vu,`standardInteractionClientGetDiscoveredAuthority`,this.logger,this.performanceClient,this.correlationId)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,n,r,i,a),s=this.config.system.loggerOptions;return{authOptions:{clientId:this.config.auth.clientId,authority:o,clientCapabilities:this.config.auth.clientCapabilities,redirectUri:this.config.auth.redirectUri,isMcp:this.config.auth.isMcp},systemOptions:{tokenRenewalOffsetSeconds:this.config.system.tokenRenewalOffsetSeconds,preventCorsPreflight:!0},loggerOptions:{loggerCallback:s.loggerCallback,piiLoggingEnabled:s.piiLoggingEnabled,logLevel:s.logLevel,correlationId:this.correlationId},cryptoInterface:this.browserCrypto,tokenBindingKeyManager:this.tokenBindingKeyManager,networkInterface:this.networkClient,storageInterface:this.browserStorage,serverTelemetryManager:t,libraryInfo:{sku:U.MSAL_SKU,version:wu,cpu:``,os:``},telemetry:this.config.telemetry}}};async function rd(e,t,n,r,i,a,o,s){let c=Bu(e.redirectUri,n.auth.redirectUri,a,s);new URL(c).origin!==new URL(window.location.href).origin&&(a.warning(`08qbvw`,s),o.addFields({isRedirectUriCrossOrigin:!0},s));let l={interactionType:t},u=ba(r,e&&e.state||``,l,s),d={...await F(Yu,_o,a,o,s)({...e,correlationId:s},n,o,a,s),redirectUri:c,state:u,nonce:e.nonce||il(),responseMode:n.auth.OIDCOptions.responseMode},f={...d,httpMethod:Zu(d,n.system.protocolMode)};if(e.loginHint||e.sid)return f;let p=e.account||i.getActiveAccount(s);return p&&(a.verbose(`1eqlb3`,s),a.verbosePii(`0tf99t ${p.homeAccountId}`,s),f.account=p),f}function id(e=typeof navigator<`u`?navigator.userAgent:``){if(/OPR\/|OPiOS|PhantomJS|SamsungBrowser|Edge|EdgiOS|EdgA/.test(e))return!1;let t=typeof navigator<`u`?navigator:void 0;return/Edg/.test(e)||t?.userAgentData?.brands?.some(e=>e?.brand===`Microsoft Edge`)||/Electron|CriOS|Chrome|Trident|FxiOS|Firefox/.test(e)?!1:/Safari/.test(e)||/AppleWebKit/.test(e)}function ad(e,t,n,r,i){return e===A.EAR?!id(i)||(t.verbose(`0wirye`,r),n.addFields({"ext.earFallbackReason":`safari`},r),!1):!1}function od(e,t,n,r){let i={id:t,...n},a=new URL(e,window.location.origin);if(a.origin!==window.location.origin)throw V(Is,r,`popup_relay_cross_origin`);let o=new URLSearchParams;return o.set(`req`,JSON.stringify(i)),a.hash=o.toString(),a.toString()}async function sd(e,t,n,r,i){return new Promise((a,o)=>{let s=n.correlationId;t.verbose(`1d05g9`,s),i.addFields({redirectBridgeTimeoutMs:e},s);let{libraryState:c}=Sa(H,n.state||``,s),l=c.id,u=window.location.origin,d=!1,f=()=>{window.removeEventListener(`message`,p),clearTimeout(m),clearInterval(h)},p=e=>{if(e.origin!==u||e.source!==r)return;let t=e.data;t&&t.type===`msal:popup-relay-response:v1`&&t.id===l&&(d||(d=!0,f(),t.error?o(V(t.error,s)):t.payload?a(t.payload):o(V(Ms,s))))};window.addEventListener(`message`,p);let m=window.setTimeout(()=>{d||(d=!0,f(),o(V(fc,s,`popup_relay_timeout`)))},e),h=window.setInterval(()=>{r.closed&&!d&&(d=!0,f(),o(V(js,s)))},500)})}function cd(e,t,n){if(!t)return null;try{return Sa(e.base64Decode,t,n).libraryState.meta}catch{throw E(Ve,n)}}function ld(e,t,n,r){let i=li(e);if(!i)throw ci(e)?(n.error(`13pl0s ${t} ${t}`,r),n.errorPii(`1097vx ${t} ${e}`,r),V(ws,r)):(n.error(`18h0l1 ${t} ${t}`,r),V(Ss,r));return i}function ud(e,t,n,r){if(!e.state)throw V(Cs,r);let i=cd(t,e.state,r);if(!i)throw V(Ts,r);if(i.interactionType!==n)throw V(Es,r)}var dd=class{constructor(e,t,n,r,i){this.authModule=e,this.browserStorage=t,this.authCodeRequest=n,this.logger=r,this.performanceClient=i}async handleCodeResponse(e,t,n){let r;try{r=za(e,t.state,t.correlationId)}catch(e){throw e instanceof ya&&e.subError===`user_cancelled`?V(js,t.correlationId):e}return F(this.handleCodeResponseFromServer.bind(this),Cn,this.logger,this.performanceClient,t.correlationId)(r,t,n)}async handleCodeResponseFromServer(e,t,n,r=!0){if(this.logger.trace(`0mf2hb`,t.correlationId),this.authCodeRequest.code=e.code,r&&(e.nonce=t.nonce||void 0),e.state=t.state,e.client_info)this.authCodeRequest.clientInfo=e.client_info;else{let e=this.createCcsCredentials(t);e&&(this.authCodeRequest.ccsCredential=e)}return await F(this.authModule.acquireToken.bind(this.authModule),Mo,this.logger,this.performanceClient,t.correlationId)(this.authCodeRequest,n,e)}createCcsCredentials(e){return e.account?{credential:e.account.homeAccountId,type:B.HOME_ACCOUNT_ID}:e.loginHint?{credential:e.loginHint,type:B.UPN}:null}},fd={SOFTWARE:`sw`},pd={DPOP_WITH_PROOF:`dpop+proof`},md={ATTESTED:`attested`},hd=[C.POP,C.DPOP,pd.DPOP_WITH_PROOF];function gd(e){return e!==void 0&&hd.includes(e)}function _d(e,t,n,r){if(gd(e))return{...t&&{pop_method:t},...n&&{pop_url:n},...e===pd.DPOP_WITH_PROOF&&r&&{pop_nonce:r}}}var vd=`ContentError`,yd=`PageException`,bd=`user_switch`,xd=`USER_INTERACTION_REQUIRED`,Sd=`USER_CANCEL`,Cd=`NO_NETWORK`,wd=`ACCOUNT_UNAVAILABLE`,Td=`UI_NOT_ALLOWED`,Ed=-2147186943,Dd=class e extends w{constructor(t,n,r,i){super(t,n,r||hs(t)),Object.setPrototypeOf(this,e.prototype),this.name=`NativeAuthError`,this.ext=i}};function Od(e){if(e.ext&&e.ext.status&&e.ext.status===`DISABLED`||e.ext&&e.ext.error&&e.ext.error===Ed)return!0;switch(e.errorCode){case vd:case yd:return!0;default:return!1}}function kd(e,t,n,r){let i;if(r&&r.status){switch(r.status){case wd:i=va(fa,t,hs(e));break;case xd:i=new z(e,t,n);break;case Sd:i=V(js,t);break;case Cd:i=V(Us,t);break;case Td:i=va(ma,t);break;default:i=new Dd(e,t,n,r)}return i}return i=new Dd(e,t,n,r),i}var Ad=class extends nd{async acquireToken(e){let t=$(K.acquireTokenSilent_silentFlow,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),n=new Qa(await F(this.getClientConfiguration.bind(this),wo,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:t,requestAuthority:e.authority,requestAzureCloudOptions:e.azureCloudOptions,account:e.account}),this.performanceClient);this.logger.verbose(`0wa871`,this.correlationId);try{let t=(await F(n.acquireCachedToken.bind(n),Eo,this.logger,this.performanceClient,e.correlationId)(e))[0];return this.performanceClient.addFields({fromCache:!0},e.correlationId),t}catch(e){throw e instanceof gs&&e.errorCode===`crypto_key_not_found`&&this.logger.verbose(`06wena`,this.correlationId),e}}logout(e){this.logger.verbose(`1rkurh`,this.correlationId);let t=this.initializeLogoutRequest(e);return Hu(this.browserStorage,this.browserCrypto,this.logger,this.correlationId,t.account)}},jd=`dpop_pop_kid_not_supported`,Md=class t extends zu{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f){super(e,t,n,r,i,a,s,d,c,f),this.apiId=o,this.accountId=l,this.platformAuthProvider=c,this.nativeStorageManager=u,this.silentCacheClient=new Ad(e,this.nativeStorageManager,n,r,i,a,s,d,c,this.tokenBindingKeyManager);let p=this.platformAuthProvider.getExtensionName();this.skus=Xa.makeExtraSkuString({libraryName:U.MSAL_SKU,libraryVersion:wu,extensionName:p,extensionVersion:this.platformAuthProvider.getExtensionVersion()})}addRequestSKUs(e){e.extraParameters={...e.extraParameters,"x-client-xtra-sku":this.skus}}async acquireToken(e,t){this.logger.trace(`03qeos`,this.correlationId);let n=this.performanceClient.startMeasurement(po,this.correlationId),r=I(),i=$(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),a;try{a=await F(this.initializePlatformRequest.bind(this),Jo,this.logger,this.performanceClient,this.correlationId)(e)}catch(e){throw n.add({isNativeBroker:!1}),n.end({success:!1},e),e}if(this.apiId===K.acquireTokenSilent_silentFlow){let e;try{e=await this.acquireTokensFromCache(this.accountId,a,t)}catch(e){if(t===J.AccessToken)throw this.logger.info(`0eitbc`,this.correlationId),n.add({isNativeBroker:!1}),n.end({success:!1}),await this.resetGeneratedDpopRequestKeyBestEffort(a),e;this.logger.info(`0957j1`,this.correlationId)}if(e)return n.add({isNativeBroker:!1}),n.end({success:!0,fromCache:!0}),await this.resetGeneratedDpopRequestKey(a),e}try{await this.prepareDpopBrokerRequest(a),this.addDpopBrokerAttemptTelemetry(a);let t=await this.platformAuthProvider.sendMessage(a),o=await F(this.handleNativeResponse.bind(this),Yo,this.logger,this.performanceClient,this.correlationId)(t,a,r,e.storeInCache);return n.end({success:!0,requestId:o.requestId}),i.clearNativeBrokerErrorCode(),o}catch(e){throw e instanceof Dd&&i.setNativeBrokerErrorCode(e.errorCode),n.end({success:!1},e),this.setBrokerErrorTelemetry(e),await this.resetGeneratedDpopRequestKeyBestEffort(a),e}}setBrokerErrorTelemetry(e){e instanceof w&&this.performanceClient.addFields({isNativeBroker:!0,brokerErrorName:e.name,brokerErrorCode:e.errorCode},this.correlationId)}createSilentCacheRequest(e,t){let n={authority:e.authority,correlationId:this.correlationId,scopes:L.fromString(e.scope,this.correlationId).asArray(),account:t,forceRefresh:!1,...this.createSilentCacheTokenBindingParameters(e),resource:e.extraParameters?.resource};return e.attributeTokens&&(n.attributeTokens=e.attributeTokens.split(` `)),n}createSilentCacheTokenBindingParameters(e){let t=this.isDpopBrokerRequest(e)?C.DPOP:e.tokenType;return t!==C.DPOP&&t!==C.POP?{authenticationScheme:t}:{authenticationScheme:t,...t===C.DPOP&&e.keyId&&{dpopJkt:e.keyId},...t===C.POP&&e.signPopToken===!1&&e.keyId&&{popKid:e.keyId},resourceRequestMethod:e.resourceRequestMethod,resourceRequestUri:e.resourceRequestUri}}async acquireTokensFromCache(e,t,n=J.Default){if(n===J.RefreshTokenAndNetwork||n===J.Skip){this.logger.verbose(`03uwyk`,this.correlationId);return}if(!e)throw this.logger.warning(`1ndf3e`,this.correlationId),E($e,this.correlationId);let r=this.browserStorage.getBaseAccountInfo({nativeAccountId:e},this.correlationId);if(!r)throw E($e,this.correlationId);try{let e=this.createSilentCacheRequest(t,r),n=await this.silentCacheClient.acquireToken(e),i=this.browserStorage.getIdToken(r,this.correlationId,this.browserStorage.getTokenKeys(),r.tenantId),a=O(i?.secret||``,H,this.correlationId),o=ht(r,void 0,a,i?.secret);return{...n,idToken:i?.secret||``,idTokenClaims:a,account:o}}catch(e){throw e}}async acquireTokenRedirect(e,t,n){this.logger.trace(`0luikq`,this.correlationId);let r=await F(this.initializePlatformRequest.bind(this),Jo,this.logger,this.performanceClient,this.correlationId)(e),i=n?.navigateToLoginRequestUrl??!0;try{await this.prepareDpopBrokerRequest(r),this.addDpopBrokerAttemptTelemetry(r);let e=await this.platformAuthProvider.sendMessage(r);this.validateDpopBrokerOutcome(e,r)===`L3`&&await this.resetGeneratedDpopRequestKey(r)}catch(e){if(await this.resetGeneratedDpopRequestKeyBestEffort(r),e instanceof Dd){if($(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled).setNativeBrokerErrorCode(e.errorCode),Od(e))throw this.setBrokerErrorTelemetry(e),e}else if(this.isDpopBrokerRequest(r))throw e}try{await this.ensureRedirectDpopKeyIsPersisted(r)}catch(e){throw await this.resetGeneratedDpopRequestKeyBestEffort(r),e}this.browserStorage.setTemporaryCache(G.NATIVE_REQUEST,JSON.stringify({...r,storeInCache:e.storeInCache}),!0);let a={apiId:K.acquireTokenRedirect,timeout:this.config.system.redirectNavigationTimeout,noHistory:!1},o=i?N.getAbsoluteUrl(e.redirectStartPage||window.location.href,Nl(),this.correlationId):Bu(e.redirectUri,this.config.auth.redirectUri,this.logger,this.correlationId);t.end({success:!0});try{await this.navigationClient.navigateExternal(o,a)}catch(e){throw this.browserStorage.removeItem(this.browserStorage.generateCacheKey(G.NATIVE_REQUEST)),await this.resetGeneratedDpopRequestKeyBestEffort(r),e}}async handleRedirectPromise(){if(this.logger.trace(`1c5lhw`,this.correlationId),!this.browserStorage.isInteractionInProgress(!0))return this.logger.info(`0le6uv`,this.correlationId),null;let e=this.browserStorage.getCachedNativeRequest();if(!e)return this.logger.verbose(`0a6zjb`,this.correlationId),this.performanceClient?.addFields({errorCode:`no_cached_request`},this.correlationId),null;let{prompt:t,storeInCache:n,...r}=e;t&&this.logger.verbose(`0ac34v`,this.correlationId),this.browserStorage.removeItem(this.browserStorage.generateCacheKey(G.NATIVE_REQUEST));let i=I();try{await this.prepareDpopBrokerRequest(r,!0),this.addDpopBrokerAttemptTelemetry(r),this.logger.verbose(`003x5a`,this.correlationId);let e=await this.platformAuthProvider.sendMessage(r),t=await F(this.handleNativeResponse.bind(this),Yo,this.logger,this.performanceClient,this.correlationId)(e,r,i,n);return $(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled).clearNativeBrokerErrorCode(),t}catch(e){throw e instanceof Dd&&$(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled).setNativeBrokerErrorCode(e.errorCode),this.setBrokerErrorTelemetry(e),await this.resetGeneratedDpopRequestKeyBestEffort(r),e}}logout(){return this.logger.trace(`0u2sjm`,this.correlationId),Promise.reject(`Logout not implemented yet`)}async handleNativeResponse(e,t,n,r){this.logger.trace(`1bojln`,this.correlationId);let i=this.validateDpopBrokerOutcome(e,t),a=O(e.id_token,H,this.correlationId),o=this.createHomeAccountIdentifier(e,a),s=this.browserStorage.getAccountInfoFilteredBy({nativeAccountId:t.accountId},this.correlationId)?.homeAccountId;if(t.extraParameters?.child_client_id&&e.account.id!==t.accountId)this.logger.info(`1ub1in`,this.correlationId);else if(o!==s&&e.account.id!==t.accountId)throw kd(bd,this.correlationId);let c=await Vu(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,t.authority),l=wa(this.browserStorage,c,o,H,this.correlationId,a,e.client_info,c.getPreferredCache(),a.tid,void 0,e.account.id,this.logger,this.performanceClient);e.expires_in=Number(e.expires_in);let u=await F(this.generateAuthenticationResult.bind(this),zo,this.logger,this.performanceClient,this.correlationId)(e,t,a,l,c.canonicalAuthority,n),d=i===`L3`;return(d||this.isDpopBrokerRequest(t)&&r?.accessToken===!1)&&await this.resetGeneratedDpopRequestKey(t),await F(this.cacheAccount.bind(this),Xo,this.logger,this.performanceClient,this.correlationId)(l,k(a),!d),await F(this.cacheNativeTokens.bind(this),Zo,this.logger,this.performanceClient,this.correlationId)(e,t,o,a,u.tenantId,n,c.getPreferredCache(),r,i),u}createHomeAccountIdentifier(e,t){return xt(e.client_info||``,gt.Default,this.logger,this.browserCrypto,this.correlationId,t)}generateScopes(e,t){return t?L.fromString(t,this.correlationId):L.fromString(e,this.correlationId)}async generatePopAccessToken(e,t){if(t.tokenType===C.POP&&t.signPopToken){if(e.shr)return this.logger.trace(`0coqhu`,this.correlationId),e.shr;let n=new ta(this.browserCrypto,this.tokenBindingKeyManager,this.performanceClient),r={resourceRequestMethod:t.resourceRequestMethod,resourceRequestUri:t.resourceRequestUri,shrClaims:t.shrClaims,shrNonce:t.shrNonce,correlationId:this.correlationId};if(!t.keyId)throw E(st,this.correlationId);return n.signPopToken(e.access_token,t.keyId,r)}return e.access_token}async generateAuthenticationResult(e,t,n,r,i,a){let o=this.addTelemetryFromNativeResponse(e.properties?.MATS),s=this.generateScopes(t.scope,e.scope),c=e.account.properties||{},l=c.UID||n.oid||n.sub||``,u=c.TenantId||n.tid||``,d=ht(vt(r),void 0,n,e.id_token);if(d.nativeAccountId!==e.account.id){d.nativeAccountId=e.account.id;let t=u||d.tenantId,n=d.tenantProfiles?.get(t);n&&(n.nativeAccountId=e.account.id)}let f=await this.generatePopAccessToken(e,t),p=this.isDpopBrokerRequest(t),m=C.BEARER;p?m=C.DPOP:t.tokenType===C.POP&&(m=C.POP);let h=p?await this.generateDpopProof(e,t):void 0;return{authority:i,uniqueId:l,tenantId:u,scopes:s.asArray(),account:d,idToken:e.id_token,idTokenClaims:n,accessToken:f,fromCache:o?this.isResponseFromCache(o):!1,expiresOn:Hn(a+e.expires_in),tokenType:m,dpopProof:h,correlationId:this.correlationId,state:e.state,fromPlatformBroker:!0,...t.extraParameters?.resource&&{resource:t.extraParameters.resource}}}async cacheAccount(e,t,n=!0){await this.browserStorage.setAccount(e,this.correlationId,t,this.apiId),n&&this.browserStorage.removeAccountContext(vt(e),this.correlationId)}async cacheNativeTokens(e,t,n,r,i,a,o,s,c=`none`){let l=Kn(n,o,e.id_token||``,t.clientId,r.tid||``);if(l&&s?.idToken!==!1&&await this.browserStorage.setIdTokenCredential(l,this.correlationId,k(r)),c===`L3`||s?.accessToken===!1)return;let u=a+(t.tokenType===C.POP?240:(typeof e.expires_in==`string`?parseInt(e.expires_in,10):e.expires_in)||0),d=this.generateScopes(e.scope,t.scope),f=t.attributeTokens?{attribute_tokens:t.attributeTokens}:void 0,p=qn(n,o,e.access_token,t.clientId,r.tid||i,d.printScopes(),u,0,H,t.correlationId,void 0,this.isDpopBrokerRequest(t)?C.DPOP:t.tokenType,void 0,t.keyId,f);t.extraParameters?.resource&&(p.resource=t.extraParameters.resource);let m={accessToken:p};return this.nativeStorageManager.saveCacheRecord(m,this.correlationId,k(r),this.apiId,s)}getExpiresInValue(e,t){return e===C.POP?240:(typeof t==`string`?parseInt(t,10):t)||0}addTelemetryFromNativeResponse(e){let t=this.getMATSFromResponse(e);return t?(this.performanceClient.addFields({extensionId:this.platformAuthProvider.getExtensionId(),extensionVersion:this.platformAuthProvider.getExtensionVersion(),matsBrokerVersion:t.broker_version,matsAccountJoinOnStart:t.account_join_on_start,matsAccountJoinOnEnd:t.account_join_on_end,matsDeviceJoin:t.device_join,matsPromptBehavior:t.prompt_behavior,matsApiErrorCode:t.api_error_code,matsUiVisible:t.ui_visible,matsSilentCode:t.silent_code,matsSilentBiSubCode:t.silent_bi_sub_code,matsSilentMessage:t.silent_message,matsSilentStatus:t.silent_status,matsHttpStatus:t.http_status,matsHttpEventCount:t.http_event_count},this.correlationId),t):null}getMATSFromResponse(e){if(e)try{return JSON.parse(e)}catch{this.logger.error(`0b3l57`,this.correlationId)}return null}isResponseFromCache(e){return e.is_cached===void 0?(this.logger.verbose(`1okqev`,this.correlationId),!1):!!e.is_cached}async initializePlatformRequest(e){this.logger.trace(`1xdm2a`,this.correlationId);let t=await this.getCanonicalAuthority(e),n=e.skipBrokerClaims&&e.embeddedClientId?void 0:this.config.auth.clientCapabilities,{scopes:r,claims:i,dpopNonce:a}=e,o=new L([...r||[],...ce],this.correlationId),s=Qr(i,n?.length?n:void 0),c=!!e.attributeTokens?.length;this.performanceClient?.addFields({hasAttributeTokens:c},this.correlationId);let l={claims:s,accountId:this.accountId,clientId:this.config.auth.clientId,authority:t.urlString,scope:o.printScopes(),redirectUri:Bu(e.redirectUri,this.config.auth.redirectUri,this.logger,this.correlationId),prompt:this.getPrompt(e.prompt),correlationId:this.correlationId,isSts:!1,tokenType:e.authenticationScheme,windowTitleSubstring:document.title,nonce:e.nonce,state:e.state,loginHint:e.loginHint,extraParameters:{...e.extraParameters,...e.resource&&{resource:e.resource}},extendedExpiryToken:!1,keyId:e.popKid};if(c&&(l.attributeTokens=cr(e.attributeTokens)),this.handleExtraBrokerParams(l,e.embeddedClientId),l.extraParameters=l.extraParameters||{},l.extraParameters.telemetry=W.MATS_TELEMETRY,e.authenticationScheme===C.POP){let t={resourceRequestMethod:e.resourceRequestMethod,resourceRequestUri:e.resourceRequestUri,shrClaims:e.shrClaims,shrNonce:e.shrNonce,correlationId:this.correlationId},n=new ta(this.browserCrypto,this.tokenBindingKeyManager,this.performanceClient);if(l.keyId)l.reqCnf=this.browserCrypto.base64UrlEncode(JSON.stringify({kid:l.keyId})),l.signPopToken=!1;else{let e=await F(n.generateCnf.bind(n),Dn,this.logger,this.performanceClient,this.correlationId)(t,this.logger);l.reqCnf=e.reqCnfString,l.keyId=e.kid,l.signPopToken=!0}l.resourceRequestMethod=e.resourceRequestMethod,l.resourceRequestUri=e.resourceRequestUri,l.shrClaims=e.shrClaims,l.shrNonce=e.shrNonce}else e.authenticationScheme===C.DPOP&&Object.assign(l,this.createDpopRequestParameters(e));return l.extraParametersNoCache=_d(l.tokenType,l.resourceRequestMethod,l.resourceRequestUri,a),this.addRequestSKUs(l),l}createDpopRequestParameters(e){if(e.popKid)throw V(jd,this.correlationId);if(!e.resourceRequestMethod?.trim()||!e.resourceRequestUri?.trim())throw M(Zt,this.correlationId);let t=la({htm:e.resourceRequestMethod,htu:e.resourceRequestUri},this.correlationId);return{tokenType:pd.DPOP_WITH_PROOF,preferBinding:md.ATTESTED,keyId:e.dpopJkt,resourceRequestMethod:t.htm,resourceRequestUri:t.htu}}async prepareDpopBrokerRequest(e,t=!1){if(e.tokenType===pd.DPOP_WITH_PROOF){if(t&&(e.keyId||e.reqCnf)){if(!e.keyId||!e.reqCnf)throw T(j,this.correlationId,`DPoP request key binding is incomplete after redirect.`);let t=this.createDpopBrokerReqCnf(e.keyId);if(e.reqCnf!==t)throw T(j,this.correlationId,`DPoP request key binding is invalid after redirect.`);if(!(this.tokenBindingKeyManager.hasTokenBindingKey===void 0?await this.tokenBindingKeyManager.getTokenBindingPublicKeyJwk(e.keyId,this.correlationId).then(()=>!0,()=>!1):await this.tokenBindingKeyManager.hasTokenBindingKey(e.keyId,this.correlationId)))throw T(j,this.correlationId,`DPoP request key is unavailable after redirect.`)}else{if(e.reqCnf)throw T(j,this.correlationId,`Unexpected preexisting DPoP request key.`);e.keyId||=await this.tokenBindingKeyManager.provisionTokenBindingKey({tokenBindingKeyType:C.DPOP.toLowerCase(),tokenBindingKeyAlgorithm:pi.ES256,correlationId:this.correlationId}),e.reqCnf=this.createDpopBrokerReqCnf(e.keyId)}}}createDpopBrokerReqCnf(e){return this.browserCrypto.base64UrlEncode(JSON.stringify({kid:e,xms_ksl:t.MSAL_DPOP_KEY_STORAGE_LOCATION}))}async ensureRedirectDpopKeyIsPersisted(e){if(this.isDpopBrokerRequest(e)&&e.keyId&&!await Ju(e,this.tokenBindingKeyManager))throw T(j,this.correlationId,`DPoP request key could not be persisted for redirect.`)}validateDpopBrokerOutcome(e,t){let n=this.isDpopBrokerRequest(t),r=this.normalizeDpopBrokerResponse(e),i=t.tokenType?.trim().toLowerCase(),a=t.bindingPreferenceSent??t.preferBinding!==void 0,o=this.isDpopBrokerTokenType(r.tokenType)||r.proof!==void 0||r.hasBindingAttested;return n?(this.isDpopBrokerTokenType(r.tokenType)||this.throwInvalidDpopResponse(`unknown_token_type`,`Unknown DPoP broker response.`),this.validateNormalizedDpopBrokerResponse(r,a),r.tokenType===pd.DPOP_WITH_PROOF.toLowerCase()?this.validateDpopBrokerL3Outcome(i,r):this.validateDpopBrokerL1Outcome(t,i,r,a)):(o&&this.throwInvalidDpopResponse(`unexpected_response`,`Unexpected DPoP broker response.`),`none`)}normalizeDpopBrokerResponse(e){let t=e.properties,n=t?.token_type,r=typeof n==`string`?n.trim().toLowerCase():void 0,i=t?.binding_attested,a;if(typeof i==`string`){let e=i.trim().toLowerCase();e===`true`?a=!0:e===`false`&&(a=!1)}return{tokenType:r,proof:t?.DPoP,bindingAttested:a,hasBindingAttested:i!==void 0,hasMalformedBindingAttested:i!==void 0&&a===void 0}}validateNormalizedDpopBrokerResponse(e,t){e.hasMalformedBindingAttested&&this.throwInvalidDpopResponse(`invalid_attestation`,`Conflicting DPoP broker response.`),t&&e.bindingAttested===void 0&&this.throwInvalidDpopResponse(`missing_attestation`,`Conflicting DPoP broker response.`)}validateDpopBrokerL3Outcome(e,t){let n=pd.DPOP_WITH_PROOF.toLowerCase();return(typeof t.proof!=`string`||t.proof.trim().length===0)&&this.throwInvalidDpopResponse(`missing_proof`,`Malformed DPoP broker response.`),t.bindingAttested!==!0&&this.throwInvalidDpopResponse(`invalid_attestation`,`Malformed DPoP broker response.`),(e!==n||t.tokenType!==n)&&this.throwInvalidDpopResponse(`conflicting_fields`,`Malformed DPoP broker response.`),this.performanceClient.addFields({"ext.brokerDpopOutcome":`l3`,"ext.brokerDpopBindingLevel":`L3`},this.correlationId),`L3`}validateDpopBrokerL1Outcome(e,t,n,r){return n.proof!==void 0&&this.throwInvalidDpopResponse(`conflicting_fields`,`Malformed DPoP broker L1 response.`),t!==pd.DPOP_WITH_PROOF.toLowerCase()&&this.throwInvalidDpopResponse(`conflicting_fields`,`Malformed DPoP broker L1 response.`),n.bindingAttested!==!1&&(r||n.bindingAttested!==void 0)&&this.throwInvalidDpopResponse(`invalid_attestation`,`Malformed DPoP broker L1 response.`),e.reqCnf&&e.keyId||this.throwInvalidDpopResponse(`missing_l1_binding`,`Malformed DPoP broker L1 response.`),this.performanceClient.addFields({"ext.brokerDpopOutcome":`l1`,"ext.brokerDpopBindingLevel":`L1`},this.correlationId),`L1`}throwInvalidDpopResponse(e,t){throw this.performanceClient.addFields({"ext.brokerDpopOutcome":`invalid_response`,"ext.brokerDpopFailureReason":e},this.correlationId),T(j,this.correlationId,t)}async generateDpopProof(e,t){let n=e.properties?.DPoP;return n===void 0?new ua(this.browserCrypto,this.tokenBindingKeyManager).generateResourceProof({htu:t.resourceRequestUri,htm:t.resourceRequestMethod,accessToken:e.access_token,nonce:t.extraParametersNoCache?.pop_nonce},t.keyId,this.correlationId):n}async resetGeneratedDpopRequestKey(e){if(!this.isDpopBrokerRequest(e)||!e.keyId)return;let t=this.performanceClient.startMeasurement(Qo,this.correlationId);this.performanceClient.incrementFields({"ext.brokerDpopKeyCleanupAttemptCount":1},this.correlationId);try{if(e.keyId&&!await this.removeDpopKey(e.keyId))throw T(j,this.correlationId,`Failed to remove generated DPoP request key.`);this.performanceClient.addFields({"ext.brokerDpopKeyCleanupOutcome":`succeeded`},this.correlationId),t.end({success:!0}),e.keyId=void 0,e.reqCnf=void 0}catch(e){throw this.performanceClient.addFields({"ext.brokerDpopKeyCleanupOutcome":`failed`},this.correlationId),this.performanceClient.incrementFields({"ext.brokerDpopKeyCleanupFailureCount":1},this.correlationId),t.end({success:!1},e),e}}async resetGeneratedDpopRequestKeyBestEffort(e){try{await this.resetGeneratedDpopRequestKey(e)}catch{this.logger.error(`1kxxak`,this.correlationId),this.performanceClient.incrementFields({removeTokenBindingKeyFailure:1},this.correlationId),e.keyId=void 0,e.reqCnf=void 0}}addDpopBrokerAttemptTelemetry(e){this.isDpopBrokerRequest(e)&&this.performanceClient.addFields({"ext.brokerDpopAttempted":1},this.correlationId)}isDpopBrokerRequest(e){return this.isDpopBrokerTokenType(e.tokenType)}isDpopBrokerTokenType(e){let t=e?.trim().toLowerCase();return t===pd.DPOP_WITH_PROOF||t===C.DPOP.toLowerCase()}async removeDpopKey(e){try{return await this.tokenBindingKeyManager.removeTokenBindingKey(e,this.correlationId),!0}catch{return this.logger.error(`1w60e4`,this.correlationId),!1}}async getCanonicalAuthority(e){let t=e.authority||this.config.auth.authority,{azureCloudOptions:n,account:r}=e;r&&await Vu(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,t,n,void 0,r);let i=new N(t,this.correlationId);return i.validateAsUri(),i}getPrompt(e){switch(this.apiId){case K.ssoSilent:case K.acquireTokenSilent_silentFlow:return this.logger.trace(`12n1y2`,this.correlationId),y.NONE}if(!e)this.logger.trace(`0uid1p`,this.correlationId);else switch(e){case y.NONE:case y.CONSENT:case y.LOGIN:return this.logger.trace(`0i0hco`,this.correlationId),e;default:throw this.logger.trace(`0w3tpw ${e}`,this.correlationId),V(ic,this.correlationId)}}handleExtraBrokerParams(t,n){let r=e=>Object.prototype.hasOwnProperty.call(t.extraParameters,e),o=r(`brk_client_id`)&&r(`brk_redirect_uri`)&&r(`client_id`);if(!n&&!o)return;let s=t.redirectUri,c=n||t.extraParameters?.client_id||``;n?t.redirectUri=this.config.auth.redirectUri:t.extraParameters&&(t.redirectUri=t.extraParameters[a]);let{[i]:l,[a]:u,[e]:d,...f}=t.extraParameters||{};t.extraParameters={...f,child_client_id:c,child_redirect_uri:s},this.performanceClient?.addFields({embeddedClientId:c,embeddedRedirectUri:s},this.correlationId)}};Md.MSAL_DPOP_KEY_STORAGE_LOCATION=fd.SOFTWARE;var Nd=new Map([[`e`,`AAD`],[`m`,`MSA`]]);function Pd(e){if(!e)return null;try{let t=(/%(?:[0-9A-Fa-f]{2})/.test(e)?decodeURIComponent(e):e).split(`|`);return t.length<5?null:{accountType:Nd.get(t[0]?.trim()||``)||``,error:t[1]?.trim()||``,subError:t[2]?.trim()||``,cloudInstance:t[3]?.trim()||``,callerDataBoundary:t[4]?.trim()||``}}catch{return null}}function Fd(e,t,n){let r=Pd(e.clientdata);r?.accountType&&n.addFields({accountType:r.accountType},t),r?.error&&n.addFields({serverErrorNo:r.error},t),r?.subError&&n.addFields({serverSubErrorNo:r.subError},t)}async function Id(e,t,n,r,i){let a=La({...e.auth,authority:t},{...n,popupOriginCheckDone:n.popupOriginCheckDone??td(e)===1},r,i);return Ar(a,{sku:U.MSAL_SKU,version:wu,os:``,cpu:``}),e.system.protocolMode!==A.OIDC&&jr(a,e.telemetry.application),n.platformBroker&&(_r(a),i.addFields({isPlatformAuthorizeRequest:!0},n.correlationId),n.authenticationScheme===C.POP&&n.reqCnf&&$r(a,n.reqCnf)),n.authenticationScheme===C.DPOP&&!n.platformBroker&&n.dpopJkt&&a.set(`dpop_jkt`,n.dpopJkt),mr(a,n.correlationId,i),a}async function Ld(e,t,n,r,i){if(!n.codeChallenge)throw M(Ft,n.correlationId);let a=await F(Id,Do,r,i,n.correlationId)(e,t,n,r,i);return hr(a,pe.CODE),Fr(a,n.codeChallenge,ee),qr(a,{...n.extraQueryParameters,...n.extraParameters}),Ra(t,a)}function Rd(e,t,n){let r=new Map;return qr(r,t.extraQueryParameters||{}),n.has(`pocd`)&&r.delete(s),kr(r,t.correlationId),Ra(e,r)}async function zd(e,t,n,r,i){if(!n.earJwk)throw V(vs,n.correlationId);let a=await Id(e,t,n,r,i);return hr(a,pe.IDTOKEN_TOKEN_REFRESHTOKEN),ai(a,n.earJwk),Fr(a,n.codeChallenge,ee),qr(a,{...n.extraParameters}),{action:Rd(t,n,a),fields:Object.fromEntries(a)}}async function Bd(e,t,n,r,i,a){let{action:o,fields:s}=await zd(t,n,r,i,a);return Ud(e,o,s)}async function Vd(e,t,n,r,i){let a=await Id(e,t,n,r,i);return hr(a,pe.CODE),Fr(a,n.codeChallenge,n.codeChallengeMethod||`S256`),qr(a,{...n.extraParameters}),{action:Rd(t,n,a),fields:Object.fromEntries(a)}}async function Hd(e,t,n,r,i,a){let{action:o,fields:s}=await Vd(t,n,r,i,a);return Ud(e,o,s)}function Ud(e,t,n){let r=e.createElement(`form`);return r.method=`post`,r.action=t,Object.keys(n).forEach(t=>{let i=e.createElement(`input`);i.hidden=!0,i.name=t,i.value=n[t],r.appendChild(i)}),e.body.appendChild(r),r}async function Wd(e,t,n,r,i,a,o,s,c,l,u=new ql(s,c)){if(s.verbose(`11qcow`,e.correlationId),!l)throw V(nc,e.correlationId);let d=new Jl(s,c),f=new Md(r,i,d,s,o,r.system.navigationClient,n,c,l,t,a,e.correlationId,u),{userRequestState:p}=Sa(d.base64Decode,e.state,e.correlationId);try{return await F(f.acquireToken.bind(f),po,s,c,e.correlationId)({...e,state:p,prompt:void 0})}catch(t){throw await qu(e,u,s,c),t}}async function Gd(e,t,n,r,i,a,o,s,c,l,u,d,f=new ql(l,u)){if(Da.removeThrottle(o,i.auth.clientId,e),Fd(t,e.correlationId,u),t.accountId)return F(Wd,Ao,l,u,e.correlationId)(e,t.accountId,r,i,o,s,c,l,u,d,f);let p=new dd(a,o,{...e,code:t.code||``,codeVerifier:n},l,u);return await F(p.handleCodeResponse.bind(p),Oo,l,u,e.correlationId)(t,e,r)}async function Kd(e,t,n,r,i,a,o,s,c,l,u,d=new ql(c,l)){if(Da.removeThrottle(a,r.auth.clientId,e),Fd(t,e.correlationId,l),Ba(t,e.state,e.correlationId),!t.ear_jwe)throw V(ys,e.correlationId);if(!e.earJwk)throw V(vs,e.correlationId);let f=JSON.parse(await F(ul,ps,c,l,e.correlationId)(e.earJwk,t.ear_jwe));if(f.accountId)return F(Wd,Ao,c,l,e.correlationId)(e,f.accountId,n,r,a,o,s,c,l,u,d);let p=new Ca(r.auth.clientId,a,new Jl(c,l),c,l,null,null,d);p.validateTokenResponse(f,e.correlationId);let m={code:``,state:e.state,nonce:e.nonce,client_info:f.client_info,cloud_graph_host_name:f.cloud_graph_host_name,cloud_instance_host_name:f.cloud_instance_host_name,cloud_instance_name:f.cloud_instance_name,msgraph_host:f.msgraph_host};return await F(p.handleServerTokenResponse.bind(p),On,c,l,e.correlationId)(f,i,I(),e,n,m,void 0,void 0,void 0,void 0)}var qd=32;async function Jd(e,t,n){let r=P(Yd,ns,t,e,n)(e,t,n);return{verifier:r,challenge:await F(Xd,rs,t,e,n)(r,e,t,n)}}function Yd(e,t,n){try{let r=new Uint8Array(qd);return P(nl,as,t,e,n)(r),Dc(r)}catch{throw V(_s,n)}}async function Xd(e,t,n,r){try{let i=await F(tl,is,n,t,r)(e);return Dc(new Uint8Array(i))}catch{throw V(_s,r)}}var Zd=class e{navigateInternal(t,n){return e.defaultNavigateWindow(t,n)}navigateExternal(t,n){return e.defaultNavigateWindow(t,n)}static defaultNavigateWindow(e,t){return t.noHistory?window.location.replace(e):window.location.assign(e),new Promise((e,n)=>{setTimeout(()=>{n(V(fc,``,`failed_to_redirect`))},t.timeout)})}},Qd=1,$d=100,ef=class{async sendGetRequestAsync(e,t){let n,r={},i=0,a=nf(t);try{n=await fetch(e,{method:_c.GET,headers:a})}catch(e){throw Aa(V(window.navigator.onLine?Gs:Us,``),void 0,void 0,e)}r=rf(n.headers);try{return i=n.status,{headers:r,body:await n.json(),status:i}}catch(e){throw Aa(V(Ks,``),i,r,e)}}async sendPostRequestAsync(e,t){let n=t&&t.body||``,r=nf(t),i=t?.correlationId,a=t?.performanceClient,o,s;for(let t=1;t<=2;t++)try{o=await fetch(e,{method:_c.POST,headers:r,body:n});break}catch(e){if(s=e,!tf(s,t))throw Aa(V(window.navigator.onLine===!1?Us:Ws,i||``),void 0,void 0,s);await new Promise(e=>setTimeout(e,$d)),i&&a?.incrementFields({fetchRetryCount:1},i)}if(!o)throw Aa(V(window.navigator.onLine===!1?Us:Ws,i||``),void 0,void 0,s);let c=0,l={};l=rf(o.headers);try{return c=o.status,{headers:l,body:await o.json(),status:c}}catch(e){throw Aa(V(Ks,i||``),c,l,e)}}};function tf(e,t){return t<=Qd&&window.navigator.onLine!==!1&&e.name!==`AbortError`}function nf(e){try{let t=new Headers;if(!(e&&e.headers))return t;let n=e.headers;return Object.entries(n).forEach(([e,n])=>{t.append(e,n)}),t}catch(e){throw Aa(V(lc,``),void 0,void 0,e)}}function rf(e){try{let t={};return e.forEach((e,n)=>{t[n]=e}),t}catch{throw V(uc,``)}}var af=3e4;function of({auth:e,cache:t,system:n,experimental:r,telemetry:i},a){let o={clientId:``,authority:`${l}`,knownAuthorities:[],cloudDiscoveryMetadata:``,authorityMetadata:``,redirectUri:typeof window<`u`&&window.location?window.location.href.split(`?`)[0].split(`#`)[0]:``,postLogoutRedirectUri:``,popupRelayUri:``,clientCapabilities:[],OIDCOptions:{responseMode:b.FRAGMENT,defaultScopes:[m,h,g]},azureCloudOptions:{azureCloudInstance:dn.None,tenant:``},instanceAware:!1,isMcp:!1,verifySSO:!1,originCheck:!n?.enableLegacyPolling},s={cacheLocation:gc.SessionStorage,cacheRetentionDays:5},c={loggerCallback:()=>{},logLevel:R.Info,piiLoggingEnabled:!1},u={...Ni,loggerOptions:c,networkClient:a?new ef:$a,navigationClient:new Zd,popupBridgeTimeout:n?.popupBridgeTimeout||6e4,iframeBridgeTimeout:n?.iframeBridgeTimeout||1e4,redirectNavigationTimeout:af,allowRedirectInIframe:!1,navigatePopups:!0,allowPlatformBroker:!1,nativeBrokerHandshakeTimeout:n?.nativeBrokerHandshakeTimeout||2e3,protocolMode:A.AAD,serverTelemetryEnabled:!1,enableLegacyPolling:!1,...n,loggerOptions:n?.loggerOptions||c},d={application:{appName:``,appVersion:``},client:new Mi},f={iframeTimeoutTelemetry:!1,allowPlatformBrokerWithDOM:!1},p,_=()=>(p||=new Si(u.loggerOptions,Cu,wu),p);if(n?.protocolMode!==A.OIDC&&e?.OIDCOptions&&_().warning(JSON.stringify(M(Ht,``)),``),n?.protocolMode&&n.protocolMode===A.OIDC&&u?.allowPlatformBroker)throw M(Ut,``);return n?.enableLegacyPolling&&e?.originCheck===!0&&_().warning(`buildConfiguration: system.enableLegacyPolling is true and auth.originCheck is explicitly true. Legacy polling requires pocd=1, which the origin check will not produce in an embedded context. Unset auth.originCheck to let legacy polling assert it.`,``),(e?.originCheck??o.originCheck)===!1&&typeof window<`u`&&!ed(window)&&_().warning(`buildConfiguration: auth.originCheck is disabled and the top-level window has a cross-origin opener. MSAL will assert pocd=1, so the STS omits Cross-Origin-Opener-Policy and that opener can reach the auth popup. The application is responsible for this risk.`,``),{auth:{...o,...e,OIDCOptions:{...o.OIDCOptions,...e?.OIDCOptions}},cache:{...s,...t},system:u,experimental:{...f,...r},telemetry:{...d,...i}}}var sf=class e{constructor(e,t,n,r,i){this.logger=e,this.handshakeTimeoutMs=t,this.extensionId=r,this.resolvers=new Map,this.handshakeResolvers=new Map,this.messageChannel=new MessageChannel,this.windowListener=this.onWindowMessage.bind(this),this.performanceClient=n,this.correlationId=i||il(),this.handshakeEvent=this.performanceClient.startMeasurement(Ro,this.correlationId),this.platformAuthType=W.PLATFORM_EXTENSION_PROVIDER}async sendMessage(e){let t=this.getCorrelationId(e.correlationId),n=this.performanceClient.startMeasurement(Ko,t);n.add({platformAuthProviderType:this.platformAuthType}),this.logger.trace(`0on4p2 ${this.platformAuthType}`,t);try{let r={...e};delete r.resourceRequestMethod,delete r.resourceRequestUri,delete r.bindingPreferenceSent;let i={method:hc.GetToken,request:r},a={channel:W.CHANNEL_ID,extensionId:this.extensionId,responseId:il(),body:i};this.logger.trace(`1qadfi ${this.platformAuthType}`,t),this.messageChannel.port1.postMessage(a),e.bindingPreferenceSent=r.preferBinding!==void 0;let o=await new Promise((e,n)=>{this.resolvers.set(a.responseId,{resolve:e,reject:n,correlationId:t})}),s=this.validatePlatformBrokerResponse(o,t);return n.end({success:!0,platformAuthProviderType:this.platformAuthType}),s}catch(e){throw n.end({success:!1,platformAuthProviderType:this.platformAuthType},e),e}}static async createProvider(t,n,r,i){t.trace(`15zfnw`,i);let a=r.startMeasurement(Go,i);try{let o=new e(t,n,r,W.PREFERRED_EXTENSION_ID,i);return await o.sendHandshakeRequest(),a.add({platformAuthProviderAvailable:!0,platformAuthProviderType:W.PLATFORM_EXTENSION_PROVIDER}),a.end({platformAuthProviderAvailable:!0,platformAuthProviderType:W.PLATFORM_EXTENSION_PROVIDER}),o}catch{try{let o=new e(t,n,r,void 0,i);return await o.sendHandshakeRequest(),a.add({platformAuthProviderAvailable:!0,platformAuthProviderType:W.PLATFORM_EXTENSION_PROVIDER}),a.end({platformAuthProviderAvailable:!0,platformAuthProviderType:W.PLATFORM_EXTENSION_PROVIDER}),o}catch(e){throw a.add({platformAuthProviderAvailable:!1}),a.end({platformAuthProviderAvailable:!1},e),e}}}async sendHandshakeRequest(){this.logger.trace(`1dpg9o ${this.platformAuthType}`,this.correlationId),window.addEventListener(`message`,this.windowListener,!1);let e={channel:W.CHANNEL_ID,extensionId:this.extensionId,responseId:il(),body:{method:hc.HandshakeRequest}};return this.handshakeEvent.add({extensionId:this.extensionId,extensionHandshakeTimeoutMs:this.handshakeTimeoutMs,platformAuthRequestCorrelationId:this.correlationId}),this.messageChannel.port1.onmessage=e=>{this.onChannelMessage(e)},window.postMessage(e,window.origin,[this.messageChannel.port2]),new Promise((t,n)=>{this.handshakeResolvers.set(e.responseId,{resolve:t,reject:n,correlationId:this.correlationId}),this.timeoutId=window.setTimeout(()=>{window.removeEventListener(`message`,this.windowListener,!1),this.messageChannel.port1.close(),this.messageChannel.port2.close(),this.handshakeEvent.add({extensionHandshakeTimedOut:!0}),this.handshakeEvent.end({extensionHandshakeTimedOut:!0,success:!1}),n(V(ec,this.correlationId)),this.handshakeResolvers.delete(e.responseId)},this.handshakeTimeoutMs)})}onWindowMessage(e){let t=Ul();if(this.logger.trace(`0jpn5u ${this.platformAuthType}`,t),e.source!==window)return;let n=e.data;if(n.channel&&n.channel===W.CHANNEL_ID&&!(n.extensionId&&n.extensionId!==this.extensionId)&&n.body.method===hc.HandshakeRequest){let e=this.handshakeResolvers.get(n.responseId);if(!e){this.logger.trace(`07buhm ${this.platformAuthType} ${n.responseId}`,t);return}t=e.correlationId,this.logger.verbose(n.extensionId?`0xrkug ${n.extensionId}`:`No extension installed`,t),clearTimeout(this.timeoutId),this.messageChannel.port1.close(),this.messageChannel.port2.close(),window.removeEventListener(`message`,this.windowListener,!1),this.handshakeEvent.add({extensionInstalled:!1}),this.handshakeEvent.end({success:!1,extensionInstalled:!1}),e.reject(V(tc,t)),this.handshakeResolvers.delete(n.responseId)}}onChannelMessage(e){let t=e.data,n=t?.responseId,r=n?this.resolvers.get(n):void 0,i=n?this.handshakeResolvers.get(n):void 0,a=r?.correlationId||i?.correlationId||Ul();this.logger.trace(`1py8yf ${this.platformAuthType}`,a);try{let e=t.body.method;if(e===hc.Response){if(!r)return;try{let e=t.body.response;if(this.logger.trace(`19hpgm ${this.platformAuthType}`,a),e.status!==`Success`)r.reject(kd(e.code,a,e.description,e.ext));else if(e.result)e.result.code?r.reject(kd(e.result.code,a,e.result.description,e.result.ext)):r.resolve(e.result);else throw T(j,a,`Event does not contain result.`)}finally{this.resolvers.delete(t.responseId)}}else if(e===hc.HandshakeResponse){if(!i){this.logger.trace(`082qnt ${this.platformAuthType} ${t.responseId}`,a);return}clearTimeout(this.timeoutId),window.removeEventListener(`message`,this.windowListener,!1),this.extensionId=t.extensionId,this.extensionVersion=t.body.version?.toString(),this.logger.verbose(`0yf5ib ${this.platformAuthType} ${this.extensionId}`,a),this.handshakeEvent.add({extensionId:this.extensionId,extensionVersion:this.extensionVersion,extensionInstalled:!0}),this.handshakeEvent.end({extensionId:this.extensionId,extensionVersion:this.extensionVersion,extensionInstalled:!0,success:!0}),i.resolve(),this.handshakeResolvers.delete(t.responseId)}else r&&(this.resolvers.delete(t.responseId),r.reject(T(j,a,`Extension response contains an unexpected method.`)))}catch(t){this.logger.error(`0xf978`,a),this.logger.errorPii(`04i99o ${t}`,a),this.logger.errorPii(`0xdvsy ${e}`,a),r?(this.resolvers.delete(n),r.reject(t instanceof w?t:T(j,a,`Unable to parse extension response.`))):i&&(clearTimeout(this.timeoutId),window.removeEventListener(`message`,this.windowListener,!1),this.messageChannel.port1.close(),this.messageChannel.port2.close(),this.handshakeEvent.end({success:!1}),this.handshakeResolvers.delete(n),i.reject(t))}}validatePlatformBrokerResponse(e,t){let n=this.getCorrelationId(t),r=this.performanceClient.startMeasurement(qo,n);if(e&&Object.prototype.hasOwnProperty.call(e,`access_token`)&&Object.prototype.hasOwnProperty.call(e,`id_token`)&&Object.prototype.hasOwnProperty.call(e,`client_info`)&&Object.prototype.hasOwnProperty.call(e,`account`)&&Object.prototype.hasOwnProperty.call(e,`scope`)&&Object.prototype.hasOwnProperty.call(e,`expires_in`)){let t=e;return r.end({success:!0,platformAuthProviderType:this.platformAuthType}),t}{let e=T(j,n,`Response missing expected properties.`);throw r.end({success:!1,platformAuthProviderType:this.platformAuthType},e),e}}getCorrelationId(e){return e||this.correlationId}getExtensionId(){return this.extensionId}getExtensionVersion(){return this.extensionVersion}getExtensionName(){return this.getExtensionId()===W.PREFERRED_EXTENSION_ID?`chrome`:this.getExtensionId()?.length?`unknown`:void 0}},cf=`platform_auth_dom_dpop_not_supported`,lf=class e{constructor(e,t,n){this.logger=e,this.performanceClient=t,this.correlationId=n,this.platformAuthType=W.PLATFORM_DOM_PROVIDER}static async createProvider(t,n,r){t.trace(`12mj4a`,r);let i=n.startMeasurement(Vo,r);try{let a=window.navigator.platformAuthentication;if(!a){i.add({platformAuthProviderAvailable:!1}),i.end({platformAuthProviderAvailable:!1});return}if((await F(a.getSupportedContracts.bind(a),`platformAuthDOMGetSupportedContracts`,t,n,r)(W.MICROSOFT_ENTRA_BROKERID))?.includes(W.PLATFORM_DOM_APIS))return t.trace(`1h5q1r`,r),i.add({platformAuthProviderAvailable:!0,platformAuthProviderType:W.PLATFORM_DOM_PROVIDER}),i.end({platformAuthProviderAvailable:!0,platformAuthProviderType:W.PLATFORM_DOM_PROVIDER}),new e(t,n,r);i.add({platformAuthProviderAvailable:!1}),i.end({platformAuthProviderAvailable:!1});return}catch(e){throw i.add({platformAuthProviderAvailable:!1}),i.end({platformAuthProviderAvailable:!1},e),e}}getExtensionId(){return W.MICROSOFT_ENTRA_BROKERID}getExtensionVersion(){return``}getExtensionName(){return W.DOM_API_NAME}async sendMessage(e){let t=this.getCorrelationId(e.correlationId),n=this.performanceClient.startMeasurement(Uo,t);n.add({platformAuthProviderType:this.platformAuthType}),this.logger.trace(`02bcil ${this.platformAuthType}`,t);try{if(e.tokenType?.trim().toLowerCase()===pd.DPOP_WITH_PROOF)throw V(cf,t);let r=P(this.initializePlatformDOMRequest.bind(this),Ho,this.logger,this.performanceClient,t)(e),i=await window.navigator.platformAuthentication.executeGetToken(r),a=this.validatePlatformBrokerResponse(i,t);return n.end({success:!0,platformAuthProviderType:this.platformAuthType}),a}catch(e){throw this.logger.error(`11im7g ${this.platformAuthType}`,t),n.end({success:!1,platformAuthProviderType:this.platformAuthType},e),e}}initializePlatformDOMRequest(e){let{accountId:t,clientId:n,authority:r,scope:i,redirectUri:a,correlationId:o,state:s,preferBinding:c,enclave:l,reqCnf:u,extraParametersNoCache:d,extraParameters:f,...p}=e,m=this.getCorrelationId(o);this.logger.trace(`15d6yv ${this.platformAuthType}`,m),delete p.resourceRequestMethod,delete p.resourceRequestUri,delete p.bindingPreferenceSent;let h=this.getDOMExtraParams(p,m);return{accountId:t,brokerId:this.getExtensionId(),authority:r,clientId:n,correlationId:m,extraParameters:{...f,...h},isSecurityTokenService:!1,redirectUri:a,scope:i,state:s,preferBinding:c,enclave:l,requestConfirmation:u,extraParametersNoCache:d}}validatePlatformBrokerResponse(e,t){let n=this.performanceClient.startMeasurement(Wo,t),r=e&&[`accessToken`,`idToken`,`clientInfo`,`account`,`scopes`,`expiresIn`].every(t=>Object.prototype.hasOwnProperty.call(e,t));if(e&&Object.prototype.hasOwnProperty.call(e,`isSuccess`)){if(r){this.logger.trace(`0h4vei ${this.platformAuthType}`,t);try{let r=this.convertToPlatformBrokerResponse(e,t);return n.end({success:!0,platformAuthProviderType:this.platformAuthType}),r}catch(e){throw n.end({success:!1,platformAuthProviderType:this.platformAuthType},e),e}}if(Object.prototype.hasOwnProperty.call(e,`error`)){let r=e;if(r.isSuccess===!1&&r.error&&r.error.code){this.logger.trace(`0g92vm ${this.platformAuthType}`,t);let e=kd(r.error.code,t,r.error.description,{error:parseInt(r.error.errorCode),protocol_error:r.error.protocolError,status:r.error.status,properties:r.error.properties});throw n.end({success:!1,platformAuthProviderType:this.platformAuthType,brokerErrorName:r.error.code,brokerErrorCode:r.error.errorCode},e),e}}}let i=T(j,t,`Response missing expected properties.`);throw n.end({success:!1,platformAuthProviderType:this.platformAuthType},i),i}getCorrelationId(e){return e||this.correlationId}convertToPlatformBrokerResponse(e,t){this.logger.trace(`14913t ${this.platformAuthType}`,t);let n=e.properties||{},r=this.parseDOMBoolean(n.binding_attested,`binding_attested`,t);return{access_token:e.accessToken,id_token:e.idToken,client_info:e.clientInfo,account:e.account,expires_in:e.expiresIn,scope:e.scopes,state:e.state||``,properties:n,extendedLifetimeToken:e.extendedLifetimeToken??!1,shr:e.proofOfPossessionPayload,token_type:n.token_type,DPoP:n.dpop_proof,binding_attested:r}}parseDOMBoolean(e,t,n){if(e!==void 0){if(e===`true`||e===`false`)return e===`true`;throw T(j,n,`Platform broker returned invalid ${t} value.`)}}getDOMExtraParams(e,t){try{let t={};for(let[n,r]of Object.entries(e))r&&(t[n]=typeof r==`object`?JSON.stringify(r):String(r));return t}catch(e){return this.logger.error(`0eu9o3 ${this.platformAuthType}`,t),this.logger.errorPii(`17rpl5 ${this.platformAuthType} ${e}`,t),{}}}};async function uf(e,t,n,r,i){e.trace(`134j0v`,n);let a=t.startMeasurement(Bo,n);e.trace(`04c81g ${i}`,n);let o;try{if(i){try{o=await lf.createProvider(e,t,n)}catch{e.trace(`1ij09j`,n)}if(o)return a.add({platformAuthProviderType:W.PLATFORM_DOM_PROVIDER}),a.end({success:!0,platformAuthProviderType:W.PLATFORM_DOM_PROVIDER}),o}e.trace(`0l3na8`,n),o=await sf.createProvider(e,r||2e3,t,n),o&&a.add({platformAuthProviderType:W.PLATFORM_EXTENSION_PROVIDER}),a.end({success:!!o,platformAuthProviderType:o?W.PLATFORM_EXTENSION_PROVIDER:void 0})}catch(t){e.trace(`0icbd7`,t),a.end({success:!1},t)}return o}function df(e,t,n,r,i,a){t.trace(`0uko3r`,n);let o=!i||i===C.BEARER||i===C.POP||i===C.DPOP&&!(r instanceof lf),s={allowPlatformBroker:e.system.allowPlatformBroker,...e.system.allowPlatformBroker&&{platformAuthProviderType:r instanceof lf?W.PLATFORM_DOM_PROVIDER:r?W.PLATFORM_EXTENSION_PROVIDER:void 0}};if(a?.addFields(s,n),!e.system.allowPlatformBroker&&e.experimental.allowPlatformBrokerWithDOM)throw M(Kt,``);return e.system.allowPlatformBroker?r?o?(t.trace(`18tev1`,n),!0):(t.trace(`1dd2nh`,n),!1):(t.trace(`0kvv1r`,n),!1):(t.trace(`04hozs`,n),!1)}var ff=class extends nd{constructor(e,t,n,r,i,a,o,s,c,l,u,d){super(e,t,n,r,i,a,o,c,l,d),this.nativeStorage=s,this.eventHandler=i,this.waitForPopupResponseHook=u}acquireToken(e,t){let n;try{if(n={popupName:this.generatePopupName(e.scopes||ce,e.authority||this.config.auth.authority),popupWindowAttributes:e.popupWindowAttributes||{},popupWindowParent:e.popupWindowParent??window},this.performanceClient.addFields({isAsyncPopup:!this.config.system.navigatePopups},this.correlationId),this.config.system.navigatePopups){let r={...e,httpMethod:Zu(e,this.config.system.protocolMode)};return this.logger.verbose(`1f9ok3`,this.correlationId),n.popup=this.openSizedPopup(`about:blank`,n),this.acquireTokenPopupAsync(r,n,t)}return this.logger.verbose(`162h4u`,this.correlationId),this.acquireTokenPopupAsync(e,n,t)}catch(e){return Promise.reject(e)}}logout(e){try{this.logger.verbose(`068rup`,this.correlationId);let t=this.initializeLogoutRequest(e),n={popupName:this.generateLogoutPopupName(t),popupWindowAttributes:e?.popupWindowAttributes||{},popupWindowParent:e?.popupWindowParent??window};t.popupOriginCheckDone=this.getPopupOriginCheckDone(n.popupWindowParent)??t.popupOriginCheckDone;let r=e&&e.authority,i=e&&e.mainWindowRedirectUri;return this.config.system.navigatePopups?(this.logger.verbose(`1a28da`,this.correlationId),n.popup=this.openSizedPopup(`about:blank`,n),this.logoutPopupAsync(t,n,r,i)):(this.logger.verbose(`1phd8u`,this.correlationId),this.logoutPopupAsync(t,n,r,i))}catch(e){return Promise.reject(e)}}async acquireTokenPopupAsync(e,t,n){this.logger.verbose(`1g77pg`,this.correlationId);let r=await F(rd,To,this.logger,this.performanceClient,this.correlationId)(e,q.Popup,this.config,this.browserCrypto,this.browserStorage,this.logger,this.performanceClient,this.correlationId);return t.popup&&Hl(r.authority),r.platformBroker=df(this.config,this.logger,this.correlationId,this.platformAuthProvider,e.authenticationScheme),ad(this.config.system.protocolMode,this.logger,this.performanceClient,this.correlationId)?this.executeEarFlow(r,t,n):this.executeCodeFlow(r,t,n)}async executeCodeFlow(e,t,n){let r=e.correlationId,i=$(K.acquireTokenPopup,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),a=n||await F(Jd,`generatePkceCodes`,this.logger,this.performanceClient,r)(this.performanceClient,this.logger,r),o=await Ku(e,this.tokenBindingKeyManager,this.logger,this.performanceClient),s={...e,codeChallenge:a.challenge,...o,popupOriginCheckDone:this.getPopupOriginCheckDone(t.popupWindowParent)};try{let n=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,r)({serverTelemetryManager:i,requestAuthority:s.authority,requestAzureCloudOptions:s.azureCloudOptions,requestExtraQueryParameters:s.extraQueryParameters,account:s.account});if(s.httpMethod===se.POST)return await this.executeCodeFlowWithPost(s,t,n,a.verifier);{let i=await F(Ld,Sn,this.logger,this.performanceClient,r)(this.config,n.authority,s,this.logger,this.performanceClient),o=this.config.auth.popupRelayUri,c=o?od(o,this.getRelayStateId(e.state,r),{method:`GET`,url:i},r):i,l=this.initiateAuthRequest(c,t);this.eventHandler.emitEvent(Z.POPUP_OPENED,r,q.Popup,{popupWindow:l},null);let u=await this.waitForPopupResponse(e,l,t.popupWindowParent),d=P(ld,No,this.logger,this.performanceClient,this.correlationId)(u,this.config.auth.OIDCOptions.responseMode,this.logger,this.correlationId);return await F(Gd,jo,this.logger,this.performanceClient,r)(s,d,a.verifier,K.acquireTokenPopup,this.config,n,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}}catch(e){throw t.popup?.close(),await qu(s,this.tokenBindingKeyManager,this.logger,this.performanceClient),e instanceof w&&(e.correlationId=this.correlationId,i.cacheFailedRequest(e)),e}}async executeEarFlow(e,t,n){let{correlationId:r,authority:i,azureCloudOptions:a,extraQueryParameters:o,account:s}=e,c=await F(Vu,fo,this.logger,this.performanceClient,r)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,i,a,o,s),l=await F(cl,fs,this.logger,this.performanceClient,r)(),u=n||await F(Jd,`generatePkceCodes`,this.logger,this.performanceClient,r)(this.performanceClient,this.logger,r),d=await Ku(e,this.tokenBindingKeyManager,this.logger,this.performanceClient),f={...e,earJwk:l,codeChallenge:u.challenge,...d,popupOriginCheckDone:this.getPopupOriginCheckDone(t.popupWindowParent)};try{let n=await this.openPostFormPopup(f,c,t,r,!0),i=await F(this.waitForPopupResponse.bind(this),So,this.logger,this.performanceClient,r)(f,n,t.popupWindowParent),a=P(ld,No,this.logger,this.performanceClient,this.correlationId)(i,this.config.auth.OIDCOptions.responseMode,this.logger,this.correlationId);if(!a.ear_jwe&&a.code){let t=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,r)({serverTelemetryManager:$(K.acquireTokenPopup,this.config.auth.clientId,r,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),requestAuthority:e.authority,requestAzureCloudOptions:e.azureCloudOptions,requestExtraQueryParameters:e.extraQueryParameters,account:e.account,authority:c});return await F(Gd,jo,this.logger,this.performanceClient,r)(f,a,u.verifier,K.acquireTokenPopup,this.config,t,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}return await F(Kd,ko,this.logger,this.performanceClient,r)(f,a,K.acquireTokenPopup,this.config,c,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}catch(e){throw await qu(f,this.tokenBindingKeyManager,this.logger,this.performanceClient),e}}async executeCodeFlowWithPost(e,t,n,r){let i=e.correlationId,a=await F(Vu,fo,this.logger,this.performanceClient,i)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger),o=await this.openPostFormPopup(e,a,t,i,!1),s=await F(this.waitForPopupResponse.bind(this),So,this.logger,this.performanceClient,i)(e,o,t.popupWindowParent),c=P(ld,No,this.logger,this.performanceClient,this.correlationId)(s,this.config.auth.OIDCOptions.responseMode,this.logger,this.correlationId);return F(Gd,jo,this.logger,this.performanceClient,i)(e,c,r,K.acquireTokenPopup,this.config,n,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}async logoutPopupAsync(e,t,n,r){this.logger.verbose(`0b7yrk`,this.correlationId),this.eventHandler.emitEvent(Z.LOGOUT_START,this.correlationId,q.Popup,e);let i=$(K.logoutPopup,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled);try{await Hu(this.browserStorage,this.browserCrypto,this.logger,this.correlationId,e.account);let a=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:i,requestAuthority:n,account:e.account||void 0});try{a.authority.endSessionEndpoint}catch{if(e.account?.homeAccountId&&e.postLogoutRedirectUri&&a.authority.protocolMode===A.OIDC){if(this.eventHandler.emitEvent(Z.LOGOUT_SUCCESS,e.correlationId,q.Popup,e),r){let e={apiId:K.logoutPopup,timeout:this.config.system.redirectNavigationTimeout,noHistory:!1},t=N.getAbsoluteUrl(r,Nl(),this.correlationId);await this.navigationClient.navigateInternal(t,e)}t.popup?.close();return}}e.state=ba(this.browserCrypto,e.state||``,{interactionType:q.Popup},e.correlationId);let o=a.getLogoutUri(e);this.eventHandler.emitEvent(Z.LOGOUT_SUCCESS,e.correlationId,q.Popup,e);let s=this.config.auth.popupRelayUri,c=s?od(s,this.getRelayStateId(e.state||``,this.correlationId),{method:`GET`,url:o},this.correlationId):o,l=this.openPopup(c,t);if(this.eventHandler.emitEvent(Z.POPUP_OPENED,e.correlationId,q.Popup,{popupWindow:l},null),await this.waitForPopupResponse(e,l,t.popupWindowParent).catch(()=>{}),r){let e={apiId:K.logoutPopup,timeout:this.config.system.redirectNavigationTimeout,noHistory:!1},t=N.getAbsoluteUrl(r,Nl(),this.correlationId);this.logger.verbose(`0qcur2`,this.correlationId),this.logger.verbosePii(`0oj7lk ${t}`,this.correlationId),await this.navigationClient.navigateInternal(t,e)}else this.logger.verbose(`03zgcf`,this.correlationId)}catch(e){throw t.popup?.close(),e instanceof w&&(e.correlationId=this.correlationId,i.cacheFailedRequest(e)),this.eventHandler.emitEvent(Z.LOGOUT_FAILURE,this.correlationId,q.Popup,null,e),this.eventHandler.emitEvent(Z.LOGOUT_END,this.correlationId,q.Popup),e}this.eventHandler.emitEvent(Z.LOGOUT_END,this.correlationId,q.Popup)}initiateAuthRequest(e,t){if(e)return this.logger.infoPii(`1kcr9k ${e}`,this.correlationId),this.openPopup(e,t);throw this.logger.error(`1l7hyp`,this.correlationId),V(xs,this.correlationId)}openPopup(e,t){try{let n;if(t.popup?(n=t.popup,this.logger.verbosePii(`0cgeo7 ${e}`,this.correlationId),n.location.assign(e)):t.popup===void 0&&(this.logger.verbosePii(`0c2awd ${e}`,this.correlationId),n=this.openSizedPopup(e,t)),!n)throw V(As,this.correlationId);try{n.document.title=`Microsoft Authentication`}catch(e){typeof DOMException<`u`&&e instanceof DOMException&&e.name===`SecurityError`||this.logger.verbose(`1s1yfs`,this.correlationId)}return n.focus&&n.focus(),this.currentWindow=n,n}catch(e){throw this.logger.error(`0dxfb9 ${e.message}`,this.correlationId),V(ks,this.correlationId)}}openSizedPopup(e,{popupName:t,popupWindowAttributes:n,popupWindowParent:r}){let i=r.screenLeft?r.screenLeft:r.screenX,a=r.screenTop?r.screenTop:r.screenY,o=r.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,s=r.innerHeight||document.documentElement.clientHeight||document.body.clientHeight,c=n.popupSize?.width,l=n.popupSize?.height,u=n.popupPosition?.top,d=n.popupPosition?.left;return(!c||c<0||c>o)&&(this.logger.verbose(`08vfmo`,this.correlationId),c=U.POPUP_WIDTH),(!l||l<0||l>s)&&(this.logger.verbose(`09cxa0`,this.correlationId),l=U.POPUP_HEIGHT),(!u||u<0||u>s)&&(this.logger.verbose(`1qh4wo`,this.correlationId),u=Math.max(0,s/2-U.POPUP_HEIGHT/2+a)),(!d||d<0||d>o)&&(this.logger.verbose(`1sz3en`,this.correlationId),d=Math.max(0,o/2-U.POPUP_WIDTH/2+i)),r.open(e,t,`width=${c}, height=${l}, top=${u}, left=${d}, scrollbars=yes`)}generatePopupName(e,t){return`${U.POPUP_NAME_PREFIX}.${this.config.auth.clientId}.${e.join(`-`)}.${t}.${this.correlationId}`}generateLogoutPopupName(e){let t=e.account&&e.account.homeAccountId;return`${U.POPUP_NAME_PREFIX}.${this.config.auth.clientId}.${t}.${this.correlationId}`}getRelayStateId(e,t){return Sa(H,e,t).libraryState.id}getPopupOriginCheckDone(e){if(this.config.auth.popupRelayUri)return!0;if(e!==window)return td(this.config)===1&&td(this.config,e)===1}async openPostFormPopup(e,t,n,r,i){let a=this.config.auth.popupRelayUri;if(a){let o=await(i?zd:Vd)(this.config,t,e,this.logger,this.performanceClient),s=od(a,this.getRelayStateId(e.state,r),{method:`POST`,action:o.action,fields:o.fields},r);return this.initiateAuthRequest(s,n)}let o=n.popup||this.openPopup(`about:blank`,n);return(await(i?Bd:Hd)(o.document,this.config,t,e,this.logger,this.performanceClient)).submit(),o}async waitForPopupResponse(e,t,n){return this.config.auth.popupRelayUri?sd(this.config.system.popupBridgeTimeout,this.logger,e,t,this.performanceClient):this.waitForPopupResponseHook?this.waitForPopupResponseHook(e,t,n):Ml(this.config.system.popupBridgeTimeout,this.logger,e,this.performanceClient)}};function pf(){if(typeof window>`u`||window.performance===void 0||typeof window.performance.getEntriesByType!=`function`)return;let e=window.performance.getEntriesByType(`navigation`);return(e.length?e[0]:void 0)?.type}var mf=class extends nd{constructor(e,t,n,r,i,a,o,s,c,l,u){super(e,t,n,r,i,a,o,c,l,u),this.nativeStorage=s}async acquireToken(e){let t=await F(rd,To,this.logger,this.performanceClient,this.correlationId)(e,q.Redirect,this.config,this.browserCrypto,this.browserStorage,this.logger,this.performanceClient,this.correlationId);t.platformBroker=df(this.config,this.logger,this.correlationId,this.platformAuthProvider,e.authenticationScheme);let n,r=new Promise((e,t)=>{n=t}),i=e=>{e.persisted&&(this.logger.verbose(`0udvtt`,this.correlationId),this.browserStorage.resetRequestCache(this.correlationId),this.eventHandler.emitEvent(Z.RESTORE_FROM_BFCACHE,this.correlationId,q.Redirect),n(V(js,this.correlationId)))},a=this.getRedirectStartPage(e.redirectStartPage);this.logger.verbosePii(`0zao0a ${a}`,this.correlationId),this.browserStorage.setTemporaryCache(G.ORIGIN_URI,a,!0),window.addEventListener(`pageshow`,i);try{let e=ad(this.config.system.protocolMode,this.logger,this.performanceClient,this.correlationId)?this.executeEarFlow(t):this.executeCodeFlow(t);await Promise.race([e,r])}catch(e){throw e instanceof w&&(e.correlationId=this.correlationId),window.removeEventListener(`pageshow`,i),e}}async executeCodeFlow(e){let t=e.correlationId,n=$(K.acquireTokenRedirect,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),r=await F(Jd,ts,this.logger,this.performanceClient,t)(this.performanceClient,this.logger,t),i=await Ku(e,this.tokenBindingKeyManager,this.logger,this.performanceClient),a={...e,codeChallenge:r.challenge,...i};try{if(!await Ju(a,this.tokenBindingKeyManager))throw V(qs,this.correlationId);if(this.browserStorage.cacheAuthorizeRequest(a,this.correlationId,r.verifier),a.httpMethod===se.POST)return await this.executeCodeFlowWithPost(a);{let t=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:n,requestAuthority:a.authority,requestAzureCloudOptions:a.azureCloudOptions,requestExtraQueryParameters:a.extraQueryParameters,account:a.account}),r=await F(Ld,Sn,this.logger,this.performanceClient,e.correlationId)(this.config,t.authority,a,this.logger,this.performanceClient);return await this.initiateAuthRequest(r)}}catch(e){throw await qu(a,this.tokenBindingKeyManager,this.logger,this.performanceClient),e instanceof w&&(e.correlationId=this.correlationId,n.cacheFailedRequest(e)),e}}async executeEarFlow(e){let{correlationId:t,authority:n,azureCloudOptions:r,extraQueryParameters:i,account:a}=e,o=await F(Vu,fo,this.logger,this.performanceClient,t)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,n,r,i,a),s=await F(cl,fs,this.logger,this.performanceClient,t)(),c=await F(Jd,ts,this.logger,this.performanceClient,t)(this.performanceClient,this.logger,t),l=await Ku(e,this.tokenBindingKeyManager,this.logger,this.performanceClient),u={...e,earJwk:s,codeChallenge:c.challenge,...l};try{if(!await Ju(u,this.tokenBindingKeyManager))throw V(qs,this.correlationId);return this.browserStorage.cacheAuthorizeRequest(u,this.correlationId,c.verifier),(await Bd(document,this.config,o,u,this.logger,this.performanceClient)).submit(),await new Promise((e,t)=>{setTimeout(()=>{t(V(fc,``,`failed_to_redirect`))},this.config.system.redirectNavigationTimeout)})}catch(e){throw await qu(u,this.tokenBindingKeyManager,this.logger,this.performanceClient),e}}async executeCodeFlowWithPost(e){let t=e.correlationId,n=await F(Vu,fo,this.logger,this.performanceClient,t)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger);return this.browserStorage.cacheAuthorizeRequest(e,this.correlationId),(await Hd(document,this.config,n,e,this.logger,this.performanceClient)).submit(),new Promise((e,t)=>{setTimeout(()=>{t(V(fc,``,`failed_to_redirect`))},this.config.system.redirectNavigationTimeout)})}async handleRedirectPromise(e,t,n,r){let i=document.title;document.title=`Microsoft Authentication`;let a=$(K.handleRedirectPromise,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),o=r?.navigateToLoginRequestUrl??!0;try{let[i,s]=this.getRedirectResponse(r?.hash||``);if(!i)return this.logger.info(`1qmv0q`,this.correlationId),await qu(e,this.tokenBindingKeyManager,this.logger,this.performanceClient),this.browserStorage.resetRequestCache(this.correlationId),pf()===`back_forward`?this.logger.verbose(`1eqegq`,this.correlationId):n.event.errorCode=`no_server_response`,null;let c=this.browserStorage.getTemporaryCache(G.ORIGIN_URI,this.correlationId,!0)||``;if(di(c,this.logger,this.correlationId)===di(window.location.href,this.logger,this.correlationId)&&o)return this.logger.verbose(`11yred`,this.correlationId),c.indexOf(`#`)>-1&&Dl(c),await this.handleResponse(i,e,t,a);if(!o)return this.logger.verbose(`0v4sdv`,this.correlationId),await this.handleResponse(i,e,t,a);if(!Ol()||this.config.system.allowRedirectInIframe){this.browserStorage.setTemporaryCache(G.URL_HASH,s,!0);let n={apiId:K.handleRedirectPromise,timeout:this.config.system.redirectNavigationTimeout,noHistory:!0},r=!0;if(c)this.logger.verbose(`08jpy1 ${c}`,this.correlationId),r=await this.navigationClient.navigateInternal(c,n);else{let e=Pl(this.correlationId);this.browserStorage.setTemporaryCache(G.ORIGIN_URI,e,!0),this.logger.warning(`1dutq1`,this.correlationId),r=await this.navigationClient.navigateInternal(e,n)}if(!r)return await this.handleResponse(i,e,t,a)}return null}catch(t){throw await qu(e,this.tokenBindingKeyManager,this.logger,this.performanceClient),t instanceof w&&(t.correlationId=this.correlationId,a.cacheFailedRequest(t)),t}finally{document.title=i}}getRedirectResponse(e){this.logger.verbose(`1c5i8m`,this.correlationId);let t=e;t||=this.config.auth.OIDCOptions.responseMode===b.QUERY?window.location.search:window.location.hash;let n=li(t);if(n){try{ud(n,this.browserCrypto,q.Redirect,this.correlationId)}catch(e){return e instanceof w&&this.logger.error(`0bkq6p ${e.errorCode} ${e.errorMessage}`,this.correlationId),[null,``]}return this.logger.verbose(`00uvho`,this.correlationId),[n,t]}let r=this.browserStorage.getTemporaryCache(G.URL_HASH,this.correlationId,!0);return this.browserStorage.removeItem(this.browserStorage.generateCacheKey(G.URL_HASH)),r&&(n=li(r),n)?(this.logger.verbose(`001671`,this.correlationId),[n,r]):[null,``]}async handleResponse(e,t,n,r){if(!e.state)throw V(Cs,t.correlationId);let{authority:i,azureCloudOptions:a,extraQueryParameters:o,account:s}=t;if(e.ear_jwe){let n=await F(Vu,fo,this.logger,this.performanceClient,t.correlationId)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,i,a,o,s);return F(Kd,ko,this.logger,this.performanceClient,t.correlationId)(t,e,K.acquireTokenRedirect,this.config,n,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}let c=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:r,requestAuthority:t.authority});return F(Gd,jo,this.logger,this.performanceClient,t.correlationId)(t,e,n,K.acquireTokenRedirect,this.config,c,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}async initiateAuthRequest(e){if(this.logger.verbose(`0yaw2e`,this.correlationId),e){this.logger.infoPii(`1luf83 ${e}`,this.correlationId);let t={apiId:K.acquireTokenRedirect,timeout:this.config.system.redirectNavigationTimeout,noHistory:!1},n=this.config.auth.onRedirectNavigate;if(typeof n==`function`){if(this.logger.verbose(`1nehvl`,this.correlationId),n(e)!==!1){this.logger.verbose(`1a0jxh`,this.correlationId),await this.navigationClient.navigateExternal(e,t);return}this.logger.verbose(`09k5h5`,this.correlationId);return}this.logger.verbose(`0klwf7`,this.correlationId),await this.navigationClient.navigateExternal(e,t)}else throw this.logger.info(`0rlh4e`,this.correlationId),V(xs,this.correlationId)}async logout(e){this.logger.verbose(`1rkurh`,this.correlationId);let t=this.initializeLogoutRequest(e),n=$(K.logout,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled);try{this.eventHandler.emitEvent(Z.LOGOUT_START,this.correlationId,q.Redirect,e),await Hu(this.browserStorage,this.browserCrypto,this.logger,this.correlationId,t.account);let r={apiId:K.logout,timeout:this.config.system.redirectNavigationTimeout,noHistory:!1},i=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:n,requestAuthority:e&&e.authority,requestExtraQueryParameters:e?.extraQueryParameters,account:e&&e.account||void 0});if(i.authority.protocolMode===A.OIDC)try{i.authority.endSessionEndpoint}catch{if(t.account?.homeAccountId){this.eventHandler.emitEvent(Z.LOGOUT_SUCCESS,this.correlationId,q.Redirect,t);return}}t.state=ba(this.browserCrypto,t.state||``,{interactionType:q.Redirect},t.correlationId);let a=i.getLogoutUri(t);t.account?.homeAccountId&&this.eventHandler.emitEvent(Z.LOGOUT_SUCCESS,this.correlationId,q.Redirect,t);let o=this.config.auth.onRedirectNavigate;if(typeof o==`function`){if(o(a)!==!1){this.logger.verbose(`06v57e`,this.correlationId),this.browserStorage.getInteractionInProgress()||this.browserStorage.setInteractionInProgress(!0,vc.SIGNOUT),await this.navigationClient.navigateExternal(a,r);return}this.browserStorage.setInteractionInProgress(!1),this.logger.verbose(`0xqes1`,this.correlationId)}else{this.browserStorage.getInteractionInProgress()||this.browserStorage.setInteractionInProgress(!0,vc.SIGNOUT),await this.navigationClient.navigateExternal(a,r);return}}catch(e){throw e instanceof w&&(e.correlationId=this.correlationId,n.cacheFailedRequest(e)),this.eventHandler.emitEvent(Z.LOGOUT_FAILURE,this.correlationId,q.Redirect,null,e),this.eventHandler.emitEvent(Z.LOGOUT_END,this.correlationId,q.Redirect),e}this.eventHandler.emitEvent(Z.LOGOUT_END,this.correlationId,q.Redirect)}getRedirectStartPage(e){let t=e||window.location.href,n=N.getAbsoluteUrl(t,Nl(),this.correlationId);return fi(n,this.logger,this.correlationId),n}};async function hf(e,t,n,r){if(!t)throw n.info(`1l7hyp`,r),V(xs,r);return e.src=t,e}async function gf(e,t,n,r,i,a){if(!e.contentDocument)throw`No document associated with iframe!`;return(await Hd(e.contentDocument,t,n,r,i,a)).submit(),e}async function _f(e,t,n,r,i,a){if(!e.contentDocument)throw`No document associated with iframe!`;return(await Bd(e.contentDocument,t,n,r,i,a)).submit(),e}function vf(){let e=document.createElement(`iframe`);return e.className=`msalSilentIframe`,e.title=`Microsoft Authentication`,e.style.visibility=`hidden`,e.style.position=`absolute`,e.style.width=e.style.height=`0`,e.style.border=`0`,e.setAttribute(`sandbox`,`allow-scripts allow-same-origin allow-forms`),e.setAttribute(`allow`,`local-network-access *`),document.body.appendChild(e),e}function yf(e){document.body===e.parentNode&&document.body.removeChild(e)}var bf=class extends nd{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f){super(e,t,n,r,i,a,s,l,u,f),this.apiId=o,this.nativeStorage=c,this.waitForIframeResponseHook=d}async acquireToken(e){e.loginHint||e.sid||e.account&&e.account.username||this.logger.warning(`1kl318`,this.correlationId);let t={...e};t.prompt?t.prompt!==y.NONE&&t.prompt!==y.NO_SESSION&&(this.logger.warning(`0bmctg ${t.prompt} ${y.NONE}`,this.correlationId),t.prompt=y.NONE):t.prompt=y.NONE;let n=await F(rd,To,this.logger,this.performanceClient,this.correlationId)(t,q.Silent,this.config,this.browserCrypto,this.browserStorage,this.logger,this.performanceClient,this.correlationId);return n.platformBroker=df(this.config,this.logger,this.correlationId,this.platformAuthProvider,n.authenticationScheme),Hl(n.authority),ad(this.config.system.protocolMode,this.logger,this.performanceClient,this.correlationId)?this.executeEarFlow(n):this.executeCodeFlow(n)}async executeCodeFlow(e){let t,n=$(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled);try{return t=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,e.correlationId)({serverTelemetryManager:n,requestAuthority:e.authority,requestAzureCloudOptions:e.azureCloudOptions,requestExtraQueryParameters:e.extraQueryParameters,account:e.account}),await F(this.silentTokenHelper.bind(this),bo,this.logger,this.performanceClient,e.correlationId)(t,e)}catch(r){if(r instanceof w&&(r.correlationId=this.correlationId,n.cacheFailedRequest(r)),!t||!(r instanceof w)||r.errorCode!==U.INVALID_GRANT_ERROR)throw r;return this.performanceClient.addFields({retryError:r.errorCode},this.correlationId),await F(this.silentTokenHelper.bind(this),bo,this.logger,this.performanceClient,this.correlationId)(t,e)}}async executeEarFlow(e){let{correlationId:t,authority:n,azureCloudOptions:r,extraQueryParameters:i,account:a}=e,o=await F(Vu,fo,this.logger,this.performanceClient,t)(this.config,this.correlationId,this.performanceClient,this.browserStorage,this.logger,n,r,i,a),s=await F(cl,fs,this.logger,this.performanceClient,t)(),c=await F(Jd,ts,this.logger,this.performanceClient,t)(this.performanceClient,this.logger,t),l={...e,earJwk:s,codeChallenge:c.challenge},u=vf(),d=this.config.auth.OIDCOptions.responseMode,f;try{let n=F(this.waitForIframeResponse.bind(this),So,this.logger,this.performanceClient,t)(u,e);n.catch(()=>{}),await F(_f,xo,this.logger,this.performanceClient,t)(u,this.config,o,l,this.logger,this.performanceClient),f=await n}finally{P(yf,$o,this.logger,this.performanceClient,t)(u)}let p=P(ld,No,this.logger,this.performanceClient,t)(f,d,this.logger,this.correlationId);if(!p.ear_jwe&&p.code){let n=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,t)({serverTelemetryManager:$(this.apiId,this.config.auth.clientId,t,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),requestAuthority:e.authority,requestAzureCloudOptions:e.azureCloudOptions,requestExtraQueryParameters:e.extraQueryParameters,account:e.account,authority:o});return F(Gd,jo,this.logger,this.performanceClient,t)(l,p,c.verifier,this.apiId,this.config,n,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}return F(Kd,ko,this.logger,this.performanceClient,t)(l,p,this.apiId,this.config,o,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}async verifySso(e){let t={...e};t.prompt||=y.NONE;let n=await F(rd,To,this.logger,this.performanceClient,this.correlationId)(t,q.Silent,this.config,this.browserCrypto,this.browserStorage,this.logger,this.performanceClient,this.correlationId),r=await F(this.createAuthCodeClient.bind(this),Co,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:$(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),requestAuthority:n.authority,requestAzureCloudOptions:n.azureCloudOptions,requestExtraQueryParameters:n.extraQueryParameters,account:n.account}),{serverParams:i}=await this.silentAuthorizeHelper(r,n),a=n.correlationId;return Ba(i,n.state,a),i.code?(this.logger.verbose(`0kkkcj`,a),!0):(this.logger.warning(`0y34ti`,a),!1)}logout(){return Promise.reject(V(Ls,``))}async silentTokenHelper(e,t){let{serverParams:n,pkceCodes:r,silentRequest:i}=await this.silentAuthorizeHelper(e,t);try{return await F(Gd,jo,this.logger,this.performanceClient,t.correlationId)(i,n,r.verifier,this.apiId,this.config,e,this.browserStorage,this.nativeStorage,this.eventHandler,this.logger,this.performanceClient,this.platformAuthProvider,this.tokenBindingKeyManager)}catch(e){throw await qu(i,this.tokenBindingKeyManager,this.logger,this.performanceClient),e}}async silentAuthorizeHelper(e,t){let n=t.correlationId,r=await F(Jd,ts,this.logger,this.performanceClient,n)(this.performanceClient,this.logger,n),i=await Ku(t,this.tokenBindingKeyManager,this.logger,this.performanceClient),a={...t,codeChallenge:r.challenge,...i};try{let i=vf(),o=this.config.auth.OIDCOptions.responseMode,s;try{let r=F(this.waitForIframeResponse.bind(this),So,this.logger,this.performanceClient,n)(i,t);if(r.catch(()=>{}),t.httpMethod===se.POST)await F(gf,xo,this.logger,this.performanceClient,n)(i,this.config,e.authority,a,this.logger,this.performanceClient);else{let t=await F(Ld,Sn,this.logger,this.performanceClient,n)(this.config,e.authority,a,this.logger,this.performanceClient);await F(hf,xo,this.logger,this.performanceClient,n)(i,t,this.logger,n)}s=await r}finally{P(yf,$o,this.logger,this.performanceClient,n)(i)}return{serverParams:P(ld,No,this.logger,this.performanceClient,n)(s,o,this.logger,this.correlationId),pkceCodes:r,silentRequest:a}}catch(e){throw await qu(a,this.tokenBindingKeyManager,this.logger,this.performanceClient),e}}async waitForIframeResponse(e,t){return this.waitForIframeResponseHook?this.waitForIframeResponseHook(e,t):Ml(this.config.system.iframeBridgeTimeout,this.logger,t,this.performanceClient,this.config.experimental)}},xf=class extends nd{async acquireToken(e){let t=await F(Yu,_o,this.logger,this.performanceClient,e.correlationId)(e,this.config,this.performanceClient,this.logger,this.correlationId),n=await Ku(t,this.tokenBindingKeyManager,this.logger,this.performanceClient),r={...e,...t,...n};e.redirectUri&&(r.redirectUri=Bu(e.redirectUri,this.config.auth.redirectUri,this.logger,this.correlationId));let i=$(K.acquireTokenSilent_silentFlow,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled),a=await this.createRefreshTokenClient({serverTelemetryManager:i,authorityUrl:r.authority,azureCloudOptions:r.azureCloudOptions,account:r.account});return F(a.acquireTokenByRefreshToken.bind(a),ho,this.logger,this.performanceClient,e.correlationId)(r,K.acquireTokenSilent_silentFlow).catch(e=>{throw e.correlationId=this.correlationId,i.cacheFailedRequest(e),e})}logout(){return Promise.reject(V(Ls,``))}async createRefreshTokenClient(e){return new Ga(await F(this.getClientConfiguration.bind(this),wo,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:e.serverTelemetryManager,requestAuthority:e.authorityUrl,requestAzureCloudOptions:e.azureCloudOptions,requestExtraQueryParameters:e.extraQueryParameters,account:e.account}),this.performanceClient)}},Sf=class extends Ia{constructor(e,t){super(e,t),this.includeRedirectUri=!1}},Cf=class extends nd{constructor(e,t,n,r,i,a,o,s,c,l,u){super(e,t,n,r,i,a,s,c,l,u),this.apiId=o}async acquireToken(e){if(!e.code)throw V(Ys,this.correlationId);let t=await F(rd,To,this.logger,this.performanceClient,this.correlationId)(e,q.Silent,this.config,this.browserCrypto,this.browserStorage,this.logger,this.performanceClient,this.correlationId),n=$(this.apiId,this.config.auth.clientId,this.correlationId,this.browserStorage,this.logger,void 0,this.config.system.serverTelemetryEnabled);try{let r=await Ku(t,this.tokenBindingKeyManager,this.logger,this.performanceClient),i={...t,code:e.code,...r},a=new Sf(await F(this.getClientConfiguration.bind(this),wo,this.logger,this.performanceClient,this.correlationId)({serverTelemetryManager:n,requestAuthority:t.authority,requestAzureCloudOptions:t.azureCloudOptions,requestExtraQueryParameters:t.extraQueryParameters,account:t.account}),this.performanceClient);this.logger.verbose(`1uic5e`,this.correlationId);let o=new dd(a,this.browserStorage,i,this.logger,this.performanceClient);return await F(o.handleCodeResponseFromServer.bind(o),Cn,this.logger,this.performanceClient,this.correlationId)({code:e.code,msgraph_host:e.msGraphHost,cloud_graph_host_name:e.cloudGraphHostName,cloud_instance_host_name:e.cloudInstanceHostName},t,this.apiId,!1)}catch(e){throw e instanceof w&&(e.correlationId=this.correlationId,n.cacheFailedRequest(e)),e}}logout(){return Promise.reject(V(Ls,``))}};function wf(e,t,n,r){let i=window.msal?.clientIds||[],a=i.length,o=i.filter(t=>t===e).length;o>1&&n.warning(`1e88vg`,r),t.add({msalInstanceCount:a,sameClientIdInstanceCount:o})}function Tf(e,t,n,r){let{request:i,account:a,correlationId:o,config:s}=e;return(a.nativeAccountId&&df(s,n,o,t,i.authenticationScheme,r)?Df:Ef)(e)}function Ef({request:e,account:t,correlationId:n,config:r}){let i=Ea(r.auth.clientId,{...e,authority:e.authority||r.auth.authority,correlationId:n},t.homeAccountId);return{key:JSON.stringify({...i,forceRefresh:!!e.forceRefresh,cacheLookupPolicy:e.cacheLookupPolicy??J.Default,extraParameters:Af(e.extraParameters),extraQueryParameters:Af(e.extraQueryParameters)}),request:e,account:t}}function Df({request:e,account:t,config:n}){let r=kf({...e,account:t});return{key:`platform:${Of(r,n)}`,request:r,account:r.account}}function Of(e,t){let n=Ea(t.auth.clientId,{...e,authority:e.authority||t.auth.authority,correlationId:e.correlationId||``,scopes:new L([...e.scopes||[],...ce],e.correlationId||``).asArray().sort()},e.account.homeAccountId);return JSON.stringify({...n,accountId:e.account.nativeAccountId,accountTenantId:e.account.tenantId,accountEnvironment:e.account.environment,azureCloudInstance:e.azureCloudOptions?.azureCloudInstance,cloudTenantId:e.azureCloudOptions?.tenant,redirectUri:e.redirectUri||t.auth.redirectUri,nonce:e.nonce,prompt:e.prompt,state:e.state,loginHint:e.loginHint,popKid:e.popKid,shrNonce:e.shrNonce,dpopNonce:e.dpopNonce,skipBrokerClaims:e.embeddedClientId?!!e.skipBrokerClaims:void 0,extraParameters:Af(e.extraParameters),extraQueryParameters:Af(e.extraQueryParameters),forceRefresh:!!e.forceRefresh,cacheLookupPolicy:e.cacheLookupPolicy??J.Default})}function kf(e){let t={...e};return delete t.extraParametersNoCache,{...t,scopes:[...e.scopes||[]],account:{...e.account},azureCloudOptions:e.azureCloudOptions?{...e.azureCloudOptions}:void 0,extraParameters:e.extraParameters?{...e.extraParameters}:void 0,extraQueryParameters:e.extraQueryParameters?{...e.extraQueryParameters}:void 0,attributeTokens:e.attributeTokens?[...e.attributeTokens]:void 0,storeInCache:e.storeInCache?{...e.storeInCache}:void 0}}function Af(e={}){return Object.keys(e).sort().map(t=>[t,e[t]])}function jf(e,t,n,r){try{Bl(e),eo(n.auth.isMcp,r)}catch(e){throw t.end({success:!1},e,r.account),e}}var Mf=class e{constructor(e){this.operatingContext=e,this.isBrowserEnvironment=this.operatingContext.isBrowserEnvironment(),this.config=e.getConfig(),this.initialized=!1,this.logger=this.operatingContext.getLogger(),this.networkClient=this.config.system.networkClient,this.navigationClient=this.config.system.navigationClient,this.redirectResponse=new Map,this.hybridAuthCodeResponses=new Map,this.performanceClient=this.config.telemetry.client,this.performanceClient.addGlobalFields({allowPlatformBroker:this.config.system.allowPlatformBroker}),this.isBrowserEnvironment?(this.browserCrypto=new Jl(this.logger,this.performanceClient),this.tokenBindingKeyManager=new ql(this.logger,this.performanceClient)):(this.browserCrypto=mi,this.tokenBindingKeyManager=hi),this.eventHandler=new Ru(this.logger),this.browserStorage=this.isBrowserEnvironment?new Eu(this.config.auth.clientId,this.config.cache,this.browserCrypto,this.logger,this.performanceClient,this.eventHandler,fr(this.config.auth),this.tokenBindingKeyManager):Ou(this.config.auth.clientId,this.logger,this.performanceClient,this.eventHandler,void 0,this.tokenBindingKeyManager);let t={cacheLocation:gc.MemoryStorage,cacheRetentionDays:5};this.nativeInternalStorage=new Eu(this.config.auth.clientId,t,this.browserCrypto,this.logger,this.performanceClient,this.eventHandler,void 0,this.tokenBindingKeyManager),this.activeSilentTokenRequests=new Map,this.trackStateChange=this.trackStateChange.bind(this),this.trackStateChangeWithMeasurement=this.trackStateChangeWithMeasurement.bind(this)}static async createController(t,n){let r=new e(t);return await r.initialize(n),r}trackStateChange(e,t){e&&(t.type===`visibilitychange`?(this.logger.info(`16v6hv`,e),this.performanceClient.incrementFields({visibilityChangeCount:1},e)):t.type===`online`?(this.logger.info(`0zirfd`,e),this.performanceClient.incrementFields({onlineStatusChangeCount:1},e)):t.type===`offline`&&(this.logger.info(`1xk9ef`,e),this.performanceClient.incrementFields({onlineStatusChangeCount:1},e)))}async initialize(e){let t=this.getRequestCorrelationId(e);if(this.logger.trace(`1f7joy`,t),this.initialized){this.logger.info(`061m5x`,t);return}if(!this.isBrowserEnvironment){this.logger.info(`19fvpi`,t),this.initialized=!0,this.eventHandler.emitEvent(Z.INITIALIZE_END,t);return}let n=this.config.system.allowPlatformBroker,r=this.performanceClient.startMeasurement(tu,t);if(this.eventHandler.emitEvent(Z.INITIALIZE_START,t),this.logMultipleInstances(r,t),r.add({isMcp:this.config.auth.isMcp}),await F(this.browserStorage.initialize.bind(this.browserStorage),yo,this.logger,this.performanceClient,t)(t),n)try{this.platformAuthProvider=await uf(this.logger,this.performanceClient,t,this.config.system.nativeBrokerHandshakeTimeout,this.config.experimental.allowPlatformBrokerWithDOM)}catch(e){this.logger.verbose(e,t)}this.config.cache.cacheLocation===gc.LocalStorage&&this.eventHandler.subscribeCrossTab(),!this.config.system.navigatePopups&&await this.preGeneratePkceCodes(t),this.initialized=!0,this.eventHandler.emitEvent(Z.INITIALIZE_END,t),r.end({allowPlatformBroker:n,success:!0})}async handleRedirectPromise(e){if(this.logger.verbose(`02l8bm`,``),zl(this.initialized),this.isBrowserEnvironment){let t=e?.hash||``,n=this.redirectResponse.get(t);return n===void 0?(n=this.handleRedirectPromiseInternal(e),this.redirectResponse.set(t,n),this.logger.verbose(`1wn9kp`,``)):this.logger.verbose(`0w0gm3`,``),n}return this.logger.verbose(`12xi63`,``),null}async handleRedirectPromiseInternal(e){let t=e?.hash||(this.config.auth.OIDCOptions.responseMode===b.QUERY?window.location.search:window.location.hash),n=this.browserStorage.isInteractionInProgress(!1),r=this.browserStorage.isInteractionInProgress(!0);if(kl()||Ol()&&!this.config.system.allowRedirectInIframe||n&&!r||Tl(window),!r)return this.logger.info(`0le6uv`,``),null;if(this.browserStorage.getInteractionInProgress()?.type===vc.SIGNOUT)return this.logger.verbose(`1ywcv2`,``),this.browserStorage.setInteractionInProgress(!1),null;let i=this.getAllAccounts(),a=this.browserStorage.getCachedNativeRequest(),o=a&&!e?.hash,s,c,l;try{if(o&&this.platformAuthProvider){let e=a?.correlationId||``;this.eventHandler.emitEvent(Z.HANDLE_REDIRECT_START,e,q.Redirect),s=this.performanceClient.startMeasurement($l,e),this.logger.trace(`12v7is`,e),s.add({isPlatformBrokerRequest:!0});let t=new Md(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,K.handleRedirectPromise,this.performanceClient,this.platformAuthProvider,a.accountId,this.nativeInternalStorage,a.correlationId,this.tokenBindingKeyManager);c=F(t.handleRedirectPromise.bind(t),Lo,this.logger,this.performanceClient,s.event.correlationId)()}else{let[n,r]=this.browserStorage.getCachedRequest(``);l=n;let i=n.correlationId;this.eventHandler.emitEvent(Z.HANDLE_REDIRECT_START,i,q.Redirect),s=this.performanceClient.startMeasurement($l,i),this.logger.trace(`0znzs5`,i);let a=this.createRedirectClient(i);c=F(a.handleRedirectPromise.bind(a),Io,this.logger,this.performanceClient,s.event.correlationId)(n,r,s,e?.hash?e:{...e,hash:t})}}catch(e){throw this.browserStorage.resetRequestCache(``),e}return c.then(e=>(e?(this.browserStorage.resetRequestCache(e.correlationId),this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_SUCCESS,e.correlationId,q.Redirect,e),this.logger.verbose(`0ui8f5`,e.correlationId),i.length<this.getAllAccounts().length&&(this.eventHandler.emitEvent(Z.LOGIN_SUCCESS,e.correlationId,q.Redirect,e.account),this.logger.verbose(`16im3l`,e.correlationId)),s.end({success:!0,isNativeBroker:e.fromPlatformBroker??!1},void 0,e.account),this.verifySsoCapability(l,q.Redirect)):s.event.errorCode?s.end({success:!1}):s.discard(),this.eventHandler.emitEvent(Z.HANDLE_REDIRECT_END,s.event.correlationId,q.Redirect),e)).catch(e=>{this.browserStorage.resetRequestCache(s.event.correlationId);let t=e;throw this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,s.event.correlationId,q.Redirect,null,t),this.eventHandler.emitEvent(Z.HANDLE_REDIRECT_END,s.event.correlationId,q.Redirect),s.end({success:!1},t),e})}async acquireTokenRedirect(e){let t=this.getRequestCorrelationId(e);this.logger.verbose(`0os66p`,t),Vl(this.initialized,this.config),this.browserStorage.setInteractionInProgress(!0,vc.SIGNIN);let n=this.performanceClient.startMeasurement(Ql,t);n.add({scenarioId:e.scenarioId});let r=this.config.auth.onRedirectNavigate;this.config.auth.onRedirectNavigate=t=>{let i=typeof r==`function`?r(t):void 0;return n.add({navigateCallbackResult:i!==!1}),n.event=n.end({success:!0},void 0,e.account)||n.event,i};try{eo(this.config.auth.isMcp,e),this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_START,t,q.Redirect,e);let r,i=this.platformAuthProvider;if(this.canUsePlatformBroker(e)&&i){let a=this.sanitizeNativeBrokerRequest(e,t),o=new Md(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,K.acquireTokenRedirect,this.performanceClient,i,this.getNativeAccountId(e),this.nativeInternalStorage,t,this.tokenBindingKeyManager);r=F(o.acquireTokenRedirect.bind(o),mo,this.logger,this.performanceClient,t)(a,n).catch(n=>{if(n instanceof Dd&&Od(n))return this.platformAuthProvider=void 0,this.createRedirectClient(t).acquireToken(e);if(n instanceof z)return this.logger.verbose(`1ipyz4`,t),this.createRedirectClient(t).acquireToken(e);throw n})}else r=this.createRedirectClient(t).acquireToken(e);return await r}catch(r){throw this.browserStorage.resetRequestCache(t),n.event.status===2?this.performanceClient.startMeasurement($l,t).end({success:!1},r,e.account):n.end({success:!1},r,e.account),this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,t,q.Redirect,null,r),r}}acquireTokenPopup(e){let t=this.getRequestCorrelationId(e),n=this.performanceClient.startMeasurement(Zl,t);n.add({scenarioId:e.scenarioId});try{this.logger.verbose(`0ch87b`,t),jf(this.initialized,n,this.config,e),this.browserStorage.setInteractionInProgress(!0,vc.SIGNIN,e.overrideInteractionInProgress,t),e.overrideInteractionInProgress&&Pu(this.logger)}catch(e){return Promise.reject(e)}let r=this.getAllAccounts();this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_START,t,q.Popup,e);let i,a=this.getPreGeneratedPkceCodes(t);return this.canUsePlatformBroker(e)?(n.add({isPlatformBrokerRequest:!0}),i=this.acquireTokenNative({...e,correlationId:t},K.acquireTokenPopup).then(e=>(n.end({success:!0,isNativeBroker:e.fromPlatformBroker??!1},void 0,e.account),e)).catch(n=>{if(n instanceof Dd&&Od(n))return this.platformAuthProvider=void 0,this.createPopupClient(t).acquireToken(e,a);if(n instanceof z)return this.logger.verbose(`0yy5fw`,t),this.createPopupClient(t).acquireToken(e,a);throw n})):i=this.createPopupClient(t).acquireToken(e,a),i.then(i=>{let a=r.length<this.getAllAccounts().length;return this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_SUCCESS,t,q.Popup,i),a&&this.eventHandler.emitEvent(Z.LOGIN_SUCCESS,t,q.Popup,i.account),n.end({success:!0,isNativeBroker:i.fromPlatformBroker??!1,accessTokenSize:i.accessToken.length,idTokenSize:i.idToken.length},void 0,i.account),this.verifySsoCapability(e,q.Popup),i}).catch(r=>(this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,t,q.Popup,null,r),n.end({success:!1},r,e.account),Promise.reject(r))).finally(async()=>{this.browserStorage.setInteractionInProgress(!1),this.config.system.navigatePopups||await this.preGeneratePkceCodes(t)})}trackStateChangeWithMeasurement(e){let t=this.ssoSilentMeasurement||this.acquireTokenByCodeAsyncMeasurement;t&&(e.type===`visibilitychange`?(this.logger.info(`0yzimq ${t.event.name}`,t.event.correlationId),t.increment({visibilityChangeCount:1})):e.type===`online`?(this.logger.info(`1caf53 ${t.event.name}`,t.event.correlationId),t.increment({onlineStatusChangeCount:1})):e.type===`offline`&&(this.logger.info(`0fdyk7 ${t.event.name}`,t.event.correlationId),t.increment({onlineStatusChangeCount:1})))}addStateChangeListeners(e){document.addEventListener(`visibilitychange`,e),window.addEventListener(`online`,e),window.addEventListener(`offline`,e)}removeStateChangeListeners(e){document.removeEventListener(`visibilitychange`,e),window.removeEventListener(`online`,e),window.removeEventListener(`offline`,e)}getCachedSsoCapable(){try{let e=window.localStorage.getItem(uu);if(e){let t=JSON.parse(e);if(t&&typeof t.ssoCapable==`boolean`&&t.expiresOn&&Date.now()<t.expiresOn)return t.ssoCapable}}catch{}}verifySsoCapability(e,t){if(!this.config.auth.verifySSO)return;let n=uu;if(this.getCachedSsoCapable()!==void 0){this.logger.verbose(`13poou ${t}`,``);return}let r=il(),i=this.performanceClient.startMeasurement(ru,r);i.add({"ext.interactionType":t}),this.logger.verbose(`0pbr0i ${t}`,r),setTimeout(()=>{let a={...e,correlationId:r};this.createSilentIframeClient(r).verifySso(a).then(e=>{this.logger.verbose(`1gd1iv ${t} ${e}`,r);try{let t=JSON.stringify({ssoCapable:e,expiresOn:Date.now()+864e5});window.localStorage.setItem(n,t)}catch{this.logger.warning(`18lmoj ${t}`,r)}i.end({fromCache:!1,success:e},void 0)}).catch(e=>{this.logger.warning(`05g83w ${t} ${e.message}`,r);try{window.localStorage.removeItem(n)}catch{this.logger.warning(`0nlf9q ${t}`,r)}i.end({fromCache:!1,success:!1},e)})},0)}async ssoSilent(e){let t=this.getRequestCorrelationId(e),n={...e,correlationId:t};this.ssoSilentMeasurement=this.performanceClient.startMeasurement(eu,t),this.ssoSilentMeasurement?.add({scenarioId:e.scenarioId,ssoCapable:this.getCachedSsoCapable()}),jf(this.initialized,this.ssoSilentMeasurement,this.config,n),this.ssoSilentMeasurement?.increment({visibilityChangeCount:0,onlineStatusChangeCount:0}),this.addStateChangeListeners(this.trackStateChangeWithMeasurement);let r=this.getAllAccounts();this.logger.verbose(`0w1b45`,t),this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_START,t,q.Silent,n);let i;return this.canUsePlatformBroker(n)?(this.ssoSilentMeasurement?.add({isPlatformBrokerRequest:!0}),i=this.acquireTokenNative(n,K.ssoSilent).catch(e=>{if(e instanceof Dd&&Od(e))return this.platformAuthProvider=void 0,this.createSilentIframeClient(n.correlationId).acquireToken(n);throw e})):i=this.createSilentIframeClient(n.correlationId).acquireToken(n),i.then(e=>{let n=r.length<this.getAllAccounts().length;return this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_SUCCESS,t,q.Silent,e),n&&this.eventHandler.emitEvent(Z.LOGIN_SUCCESS,t,q.Silent,e.account),this.ssoSilentMeasurement?.end({success:!0,isNativeBroker:e.fromPlatformBroker??!1,accessTokenSize:e.accessToken.length,idTokenSize:e.idToken.length},void 0,e.account),e}).catch(n=>{throw this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,t,q.Silent,null,n),this.ssoSilentMeasurement?.end({success:!1},n,e.account),n}).finally(()=>{this.removeStateChangeListeners(this.trackStateChangeWithMeasurement)})}async acquireTokenByCode(e){let t=this.getRequestCorrelationId(e);this.logger.trace(`0ch6ga`,t);let n=this.performanceClient.startMeasurement(Xl,t);jf(this.initialized,n,this.config,e),this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_START,t,q.Silent,e),n.add({scenarioId:e.scenarioId});try{if(e.code&&e.nativeAccountId)throw V(Zs,t);if(e.code){let r=e.code,i=this.hybridAuthCodeResponses.get(r);return i?(this.logger.verbose(`0qgp28`,t),n.discard()):(this.logger.verbose(`06eh73`,t),i=this.acquireTokenByCodeAsync({...e,correlationId:t}).then(e=>(this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_SUCCESS,t,q.Silent,e),this.hybridAuthCodeResponses.delete(r),n.end({success:!0,isNativeBroker:!1,accessTokenSize:e.accessToken.length,idTokenSize:e.idToken.length},void 0,e.account),e)).catch(e=>{throw this.hybridAuthCodeResponses.delete(r),this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,t,q.Silent,null,e),n.end({success:!1},e),e}),this.hybridAuthCodeResponses.set(r,i)),await i}if(e.nativeAccountId){if(this.canUsePlatformBroker(e,e.nativeAccountId)){n.add({isPlatformBrokerRequest:!0});let r=await this.acquireTokenNative({...e,correlationId:t},K.acquireTokenByCode,e.nativeAccountId).catch(e=>{throw e instanceof Dd&&Od(e)&&(this.platformAuthProvider=void 0),e});return n.end({success:!0,isNativeBroker:r.fromPlatformBroker??!1},void 0,r.account),r}throw V($s,t)}throw V(Xs,t)}catch(e){throw this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,t,q.Silent,null,e),n.end({success:!1},e),e}}async acquireTokenByCodeAsync(e){let t=this.getRequestCorrelationId(e);return this.logger.trace(`10d9hy`,t),this.acquireTokenByCodeAsyncMeasurement=this.performanceClient.startMeasurement(Fo,t),this.acquireTokenByCodeAsyncMeasurement?.increment({visibilityChangeCount:0,onlineStatusChangeCount:0}),this.addStateChangeListeners(this.trackStateChangeWithMeasurement),await this.createSilentAuthCodeClient(t).acquireToken(e).then(e=>(this.acquireTokenByCodeAsyncMeasurement?.end({success:!0,isNativeBroker:!1,fromCache:e.fromCache}),e)).catch(e=>{throw this.acquireTokenByCodeAsyncMeasurement?.end({success:!1},e),e}).finally(()=>{this.removeStateChangeListeners(this.trackStateChangeWithMeasurement)})}async acquireTokenFromCache(e,t){switch(t){case J.Default:case J.AccessToken:case J.AccessTokenAndRefreshToken:let t=this.createSilentCacheClient(e.correlationId);return F(t.acquireToken.bind(t),so,this.logger,this.performanceClient,e.correlationId)(e);default:throw E(nt,e.correlationId)}}async acquireTokenByRefreshToken(e,t){switch(t){case J.Default:case J.AccessTokenAndRefreshToken:case J.RefreshToken:case J.RefreshTokenAndNetwork:let t=this.createSilentRefreshClient(e.correlationId);return F(t.acquireToken.bind(t),uo,this.logger,this.performanceClient,e.correlationId)(e);default:throw E(nt,e.correlationId)}}async acquireTokenBySilentIframe(e){let t=this.createSilentIframeClient(e.correlationId);return F(t.acquireToken.bind(t),co,this.logger,this.performanceClient,e.correlationId)(e)}async logoutRedirect(e){let t=this.getRequestCorrelationId(e);Vl(this.initialized,this.config),this.browserStorage.setInteractionInProgress(!0,vc.SIGNOUT);try{await this.clearNativeCache(e?.account,t)}catch(e){throw this.browserStorage.setInteractionInProgress(!1),e}return this.createRedirectClient(t).logout(e)}logoutPopup(e){try{let t=this.getRequestCorrelationId(e);Bl(this.initialized),this.browserStorage.setInteractionInProgress(!0,vc.SIGNOUT);let n=this.createPopupClient(t),r=this.clearNativeCache(e?.account,t),i=n.logout(e);return Promise.all([r,i]).then(()=>void 0).finally(()=>{this.browserStorage.setInteractionInProgress(!1)})}catch(e){return Promise.reject(e)}}async clearCache(e){if(!this.isBrowserEnvironment)return;let t=this.getRequestCorrelationId(e),n=this.createSilentCacheClient(t),r=this.clearNativeCache(e?.account,t),i=n.logout(e);await Promise.all([r,i])}async clearNativeCache(e,t){let n=e?.homeAccountId.toLowerCase(),r=e?.environment.toLowerCase(),i=this.nativeInternalStorage.getTokenKeys().accessToken.filter(i=>{if(!e)return!0;let a=this.nativeInternalStorage.getAccessTokenCredential(i,t);return a?a.homeAccountId.toLowerCase()===n&&a.environment.toLowerCase()===r:!1});await Promise.all(i.map(e=>this.nativeInternalStorage.removeAccessTokenAndTokenBindingKey(e,t))),e||this.nativeInternalStorage.clear(t)}getAllAccounts(e){return ku(this.logger,this.browserStorage,this.isBrowserEnvironment,this.getRequestCorrelationId(),e)}getAccount(e){return Au(e,this.logger,this.browserStorage,this.getRequestCorrelationId())}setActiveAccount(e){ju(e,this.browserStorage,this.getRequestCorrelationId())}getActiveAccount(){return Mu(this.browserStorage,this.getRequestCorrelationId())}async hydrateCache(e,t){this.logger.verbose(`16jycr`,e.correlationId);let n=bt(e.account,e.cloudGraphHostName,e.msGraphHost);if(await this.browserStorage.setAccount(n,e.correlationId,k(e.idTokenClaims),K.hydrateCache),e.fromPlatformBroker){this.logger.verbose(`1i5atf`,e.correlationId);let n=Kn(e.account.homeAccountId,e.account.environment,e.idToken,this.config.auth.clientId,e.tenantId),r=cr(t.attributeTokens),i=r?{attribute_tokens:r}:void 0,a=qn(e.account.homeAccountId,e.account.environment,e.accessToken,this.config.auth.clientId,e.tenantId,e.scopes.join(` `),e.expiresOn?Vn(e.expiresOn):0,e.extExpiresOn?Vn(e.extExpiresOn):0,H,t.correlationId||``,void 0,e.tokenType,void 0,t.sshKid,i);t.resource&&(a.resource=t.resource);let o=i,s=o?await this.browserCrypto.hashString(JSON.stringify(o)):void 0,c=k(e.idTokenClaims);await this.browserStorage.setIdTokenCredential(n,e.correlationId,c),await this.nativeInternalStorage.setAccessTokenCredential(a,e.correlationId,c,s)}else return this.browserStorage.hydrateCache(e,t)}sanitizeNativeBrokerRequest(e,t){return e.dpopJkt?(this.logger.warning(`0rh2us`,t),{...e,dpopJkt:void 0}):e}async acquireTokenNative(e,t,n,r){let i=this.getRequestCorrelationId(e);if(this.logger.trace(`0b9y3p`,i),!this.platformAuthProvider)throw V(nc,i);let a=new Md(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,t,this.performanceClient,this.platformAuthProvider,n||this.getNativeAccountId(e),this.nativeInternalStorage,i,this.tokenBindingKeyManager),o=this.sanitizeNativeBrokerRequest(e,i);return F(a.acquireToken.bind(a),po,this.logger,this.performanceClient,i)(o,r)}canUsePlatformBroker(e,t){let n=this.getRequestCorrelationId(e);if(this.logger.trace(`1n9lbl`,n),!df(this.config,this.logger,n,this.platformAuthProvider,e.authenticationScheme,this.performanceClient))return this.logger.trace(`0yoy1g`,n),!1;if(e.prompt)switch(e.prompt){case y.NONE:case y.CONSENT:case y.LOGIN:this.logger.trace(`0vdv8e`,n);break;default:return this.logger.trace(`0pdzw6 ${e.prompt}`,n),!1}return!t&&!this.getNativeAccountId(e)?(this.logger.trace(`16lbtk`,n),!1):!0}getNativeAccountId(e){let t=e.account||this.getAccount({loginHint:e.loginHint,sid:e.sid})||(!e.loginHint&&!e.sid?this.getActiveAccount():null);return t&&t.nativeAccountId||``}createPopupClient(e){return new ff(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,this.performanceClient,this.nativeInternalStorage,e,this.platformAuthProvider,this.operatingContext.getResponseHandlers()?.waitForPopupResponse,this.tokenBindingKeyManager)}createRedirectClient(e){return new mf(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,this.performanceClient,this.nativeInternalStorage,e,this.platformAuthProvider,this.tokenBindingKeyManager)}createSilentIframeClient(e){return new bf(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,K.ssoSilent,this.performanceClient,this.nativeInternalStorage,e,this.platformAuthProvider,this.operatingContext.getResponseHandlers()?.waitForIframeResponse,this.tokenBindingKeyManager)}createSilentCacheClient(e){return new Ad(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,this.performanceClient,e,this.platformAuthProvider,this.tokenBindingKeyManager)}createSilentRefreshClient(e){return new xf(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,this.performanceClient,e,this.platformAuthProvider,this.tokenBindingKeyManager)}createSilentAuthCodeClient(e){return new Cf(this.config,this.browserStorage,this.browserCrypto,this.logger,this.eventHandler,this.navigationClient,K.acquireTokenByCode,this.performanceClient,e,this.platformAuthProvider,this.tokenBindingKeyManager)}addEventCallback(e,t){return this.eventHandler.addEventCallback(e,t)}removeEventCallback(e){this.eventHandler.removeEventCallback(e)}addPerformanceCallback(e){return Rl(),this.performanceClient.addPerformanceCallback(e)}removePerformanceCallback(e){return this.performanceClient.removePerformanceCallback(e)}getLogger(){return this.logger}setLogger(e){this.logger=e}initializeWrapperLibrary(e,t){this.browserStorage.setWrapperMetadata(e,t)}setNavigationClient(e){this.navigationClient=e}getConfiguration(){return this.config}getPerformanceClient(){return this.performanceClient}isBrowserEnv(){return this.isBrowserEnvironment}getRequestCorrelationId(e){return e?.correlationId?e.correlationId:this.isBrowserEnvironment?il():``}async loginRedirect(e){let t=this.getRequestCorrelationId(e);return this.logger.verbose(`0lz9hf`,t),this.acquireTokenRedirect({correlationId:t,...e||Sc})}loginPopup(e){let t=this.getRequestCorrelationId(e);return this.logger.verbose(`0qw7v5`,t),this.acquireTokenPopup({correlationId:t,...e||Sc})}async acquireTokenSilent(e){let t=this.getRequestCorrelationId(e),n=this.performanceClient.startMeasurement(Yl,t);n.add({cacheLookupPolicy:e.cacheLookupPolicy,scenarioId:e.scenarioId,ssoCapable:this.getCachedSsoCapable()}),jf(this.initialized,n,this.config,e),this.logger.verbose(`0x1c4s`,t);let r=e.account||this.getActiveAccount();if(!r)throw V(Rs,t);return this.acquireTokenSilentDeduped(e,r,t).then(r=>(n.end({success:!0,isNativeBroker:r.fromPlatformBroker??!1,fromCache:r.fromCache,accessTokenSize:r.accessToken.length,idTokenSize:r.idToken.length},void 0,r.account),{...r,state:e.state,correlationId:t})).catch(e=>{throw e instanceof w&&(e.correlationId=t),n.end({success:!1},e,r),e})}async acquireTokenSilentDeduped(e,t,n){let r=Tf({request:e,account:t,correlationId:n,config:this.config},this.platformAuthProvider,this.logger,this.performanceClient),i=r.request.authenticationScheme!==C.DPOP,a=i?this.activeSilentTokenRequests.get(r.key):void 0;if(a===void 0){this.logger.verbose(i?`0fcjbk`:`acquireTokenSilent called for DPoP request, starting an independent operation`,n),this.performanceClient.addFields({deduped:!1},n);let e=F(this.acquireTokenSilentAsync.bind(this),io,this.logger,this.performanceClient,n)({...r.request,correlationId:n},r.account);return i?(this.activeSilentTokenRequests.set(r.key,e),e.finally(()=>{this.activeSilentTokenRequests.delete(r.key)})):e}return this.logger.verbose(`1yq7nb`,n),this.performanceClient.addFields({deduped:!0},n),a}async acquireTokenSilentAsync(e,t){let n=t=>this.trackStateChange(e.correlationId,t);this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_START,e.correlationId,q.Silent,e),e.correlationId&&this.performanceClient.incrementFields({visibilityChangeCount:0,onlineStatusChangeCount:0},e.correlationId),this.addStateChangeListeners(n);let r=await F(Xu,vo,this.logger,this.performanceClient,e.correlationId)(e,t,this.config,this.performanceClient,this.logger),i=e.cacheLookupPolicy||J.Default;return this.acquireTokenSilentNoIframe(r,i).catch(async t=>{if(Nf(t,i)){let n=`${t.errorCode}${t.subError?`|${t.subError}`:``}`;if(this.performanceClient.addFields({silentRefreshReason:n},e.correlationId),!this.activeIframeRequest){let e;return this.activeIframeRequest=[new Promise(t=>{e=t}),r.correlationId],this.logger.verbose(`0rh08z`,r.correlationId),F(this.acquireTokenBySilentIframe.bind(this),go,this.logger,this.performanceClient,r.correlationId)(r).then(t=>(e(!0),t)).catch(t=>{throw e(!1),t}).finally(()=>{this.activeIframeRequest=void 0})}if(i!==J.Skip){let[e,n]=this.activeIframeRequest;this.logger.verbose(`1w8fso ${n}`,r.correlationId);let a=this.performanceClient.startMeasurement(lo,r.correlationId);a.add({awaitIframeCorrelationId:n});let o=await e;if(a.end({success:o}),o)return this.logger.verbose(`0ywzzi ${n}`,r.correlationId),this.acquireTokenSilentNoIframe(r,i);throw this.logger.info(`17y14q ${n}`,r.correlationId),t}return this.logger.warning(`1bd4p8`,r.correlationId),F(this.acquireTokenBySilentIframe.bind(this),go,this.logger,this.performanceClient,r.correlationId)(r)}throw t}).then(t=>(this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_SUCCESS,e.correlationId,q.Silent,t),e.correlationId&&this.performanceClient.addFields({fromCache:t.fromCache,isNativeBroker:t.fromPlatformBroker??!1},e.correlationId),t)).catch(t=>{throw this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_FAILURE,e.correlationId,q.Silent,null,t),t}).finally(()=>{this.removeStateChangeListeners(n)})}async acquireTokenSilentNoIframe(e,t){return df(this.config,this.logger,e.correlationId,this.platformAuthProvider,e.authenticationScheme,this.performanceClient)&&e.account.nativeAccountId?(this.logger.verbose(`0sczo4`,e.correlationId),this.performanceClient.addFields({isPlatformBrokerRequest:!0},e.correlationId),this.acquireTokenNative(e,K.acquireTokenSilent_silentFlow,e.account.nativeAccountId,t).catch(async t=>{throw t instanceof Dd&&Od(t)?(this.logger.verbose(`07rkmb`,e.correlationId),this.platformAuthProvider=void 0,E(nt,e.correlationId)):t})):(this.logger.verbose(`0ox81t`,e.correlationId),t===J.AccessToken&&this.logger.verbose(`0fvwxe`,e.correlationId),F(this.acquireTokenFromCache.bind(this),no,this.logger,this.performanceClient,e.correlationId)(e,t).catch(n=>{if(t===J.AccessToken)throw n;return this.eventHandler.emitEvent(Z.ACQUIRE_TOKEN_NETWORK_START,e.correlationId,q.Silent,e),F(this.acquireTokenByRefreshToken.bind(this),ro,this.logger,this.performanceClient,e.correlationId)(e,t)}))}async preGeneratePkceCodes(e){return this.logger.verbose(`1x6uj6`,e),this.pkceCode=await F(Jd,ts,this.logger,this.performanceClient,e)(this.performanceClient,this.logger,e),Promise.resolve()}getPreGeneratedPkceCodes(e){let t=this.pkceCode?{...this.pkceCode}:void 0;return this.pkceCode=void 0,t?this.logger.verbose(`12js1o`,e):this.logger.verbose(`1oe9ci`,e),this.performanceClient.addFields({usePreGeneratedPkce:!!t},e),t}logMultipleInstances(e,t){let n=this.config.auth.clientId;window&&(window.msal=window.msal||{},window.msal.clientIds=window.msal.clientIds||[],window.msal.clientIds.length>0&&this.logger.verbose(`1qtz3l`,t),window.msal.clientIds.push(n),wf(n,e,this.logger,t))}};function Nf(e,t){let n=!(e instanceof z&&e.subError!==`bad_token`),r=e.errorCode===U.INVALID_GRANT_ERROR||e.errorCode===`token_refresh_required`,i=n&&r||e.errorCode===`no_tokens_found`||e.errorCode===`refresh_token_expired`,a=Tc.includes(t);return i&&a}var Pf=class e{static loggerCallback(e,t){switch(e){case R.Error:console.error(t);return;case R.Info:console.info(t);return;case R.Verbose:console.debug(t);return;case R.Warning:console.warn(t);return;default:console.log(t);return}}constructor(t,n){this.browserEnvironment=typeof window<`u`,this.config=of(t,this.browserEnvironment),this.responseHandlers=n;let r;try{r=window[gc.SessionStorage]}catch{}let i=r?.getItem(au),a=r?.getItem(ou)?.toLowerCase(),o=a===`true`||a!==`false`&&void 0,s={...this.config.system.loggerOptions},c=i&&Object.keys(R).includes(i)?R[i]:void 0;c&&(s.loggerCallback=e.loggerCallback,s.logLevel=c),o!==void 0&&(s.piiLoggingEnabled=o),this.logger=new Si(s,Cu,wu),this.available=!1}getConfig(){return this.config}getResponseHandlers(){return this.responseHandlers}getLogger(){return this.logger}isAvailable(){return this.available}isBrowserEnvironment(){return this.browserEnvironment}},Ff=class e extends Pf{getModuleName(){return e.MODULE_NAME}getId(){return e.ID}async initialize(e){return this.available=typeof window<`u`,this.available}};Ff.MODULE_NAME=``,Ff.ID=`StandardOperatingContext`;var If=1e4;async function Lf(e,t,n,r,i){return new Promise((a,o)=>{t<1e4&&n.warning(`137tec ${t} ${If}`,r);let s=window.setTimeout(()=>{window.clearInterval(c),o(new w(fc,r,void 0,`monitor_window_timeout`))},t),c=window.setInterval(()=>{let t=e.contentWindow;if(!t)return;let n=``;try{n=t.location.href}catch{}if(!n||n===`about:blank`)return;let r=i===b.QUERY?t.location.search:t.location.hash;window.clearTimeout(s),window.clearInterval(c),a(r)},50)}).finally(()=>{try{e.contentWindow&&El(e.contentWindow)}catch{}})}var Rf=class{constructor(e,t){this.controller=t||new Mf(new Ff(e,{waitForPopupResponse:this.waitForPopupResponse.bind(this),waitForIframeResponse:this.waitForIframeResponse.bind(this)}))}async waitForPopupResponse(e,t,n){let r=this.controller,i=r.getConfiguration();return i.system.enableLegacyPolling?Bf(i,r.getLogger(),r.getPerformanceClient(),e,t,n):Ml(i.system.popupBridgeTimeout,r.getLogger(),e,r.getPerformanceClient())}async waitForIframeResponse(e,t){let n=this.controller,r=n.getConfiguration();return r.system.enableLegacyPolling?Vf(r,n.getLogger(),n.getPerformanceClient(),e,t):Ml(r.system.iframeBridgeTimeout,n.getLogger(),t,n.getPerformanceClient(),r.experimental)}async initialize(e){return this.controller.initialize(e)}async acquireTokenPopup(e){return this.controller.acquireTokenPopup(e)}acquireTokenRedirect(e){return this.controller.acquireTokenRedirect(e)}acquireTokenSilent(e){return this.controller.acquireTokenSilent(e)}acquireTokenByCode(e){return this.controller.acquireTokenByCode(e)}addEventCallback(e,t){return this.controller.addEventCallback(e,t)}removeEventCallback(e){return this.controller.removeEventCallback(e)}addPerformanceCallback(e){return this.controller.addPerformanceCallback(e)}removePerformanceCallback(e){return this.controller.removePerformanceCallback(e)}getAccount(e){return this.controller.getAccount(e)}getAllAccounts(e){return this.controller.getAllAccounts(e)}handleRedirectPromise(e){return this.controller.handleRedirectPromise(e)}loginPopup(e){return this.controller.loginPopup(e)}loginRedirect(e){return this.controller.loginRedirect(e)}logoutRedirect(e){return this.controller.logoutRedirect(e)}logoutPopup(e){return this.controller.logoutPopup(e)}ssoSilent(e){return this.controller.ssoSilent(e)}getLogger(){return this.controller.getLogger()}setLogger(e){this.controller.setLogger(e)}setActiveAccount(e){this.controller.setActiveAccount(e)}getActiveAccount(){return this.controller.getActiveAccount()}initializeWrapperLibrary(e,t){return this.controller.initializeWrapperLibrary(e,t)}setNavigationClient(e){this.controller.setNavigationClient(e)}getConfiguration(){return this.controller.getConfiguration()}async hydrateCache(e,t){return this.controller.hydrateCache(e,t)}clearCache(e){return this.controller.clearCache(e)}};async function zf(e){let t=new Rf(e);return await t.initialize(),t}async function Bf(e,t,n,r,i,a){let o=e.auth.OIDCOptions?.responseMode===b.QUERY?b.QUERY:b.FRAGMENT;n.addFields({usesLegacyPolling:!0},r.correlationId);let s=()=>{try{i&&!i.closed&&i.close()}catch{}};return a.addEventListener(`beforeunload`,s),Fu(i,a,o,t,s,r.correlationId)}async function Vf(e,t,n,r,i){let a=e.auth.OIDCOptions?.responseMode===b.QUERY?b.QUERY:b.FRAGMENT,o=e.system.iframeBridgeTimeout;return n.addFields({usesLegacyPolling:!0,iframePollTimeout:o},i.correlationId),Lf(r,o,t,i.correlationId,a)}var Hf=b;export{z as InteractionRequiredAuthError,Hf as ResponseMode,zf as createStandardPublicClientApplication};
|