@okta/okta-auth-js 7.5.1 → 7.6.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 +12 -0
- package/README.md +26 -4
- package/cjs/core/ServiceManager/browser.js +10 -2
- package/cjs/core/ServiceManager/browser.js.map +1 -1
- package/cjs/core/types/Service.js.map +1 -1
- package/cjs/http/OktaUserAgent.js +2 -2
- package/cjs/idx/authenticator/Authenticator.js.map +1 -1
- package/cjs/idx/authenticator/OktaPassword.js +16 -4
- package/cjs/idx/authenticator/OktaPassword.js.map +1 -1
- package/cjs/idx/types/idx-js.js.map +1 -1
- package/cjs/oidc/TokenManager.js +17 -1
- package/cjs/oidc/TokenManager.js.map +1 -1
- package/cjs/oidc/mixin/index.js +16 -0
- package/cjs/oidc/mixin/index.js.map +1 -1
- package/cjs/oidc/options/OAuthOptionsConstructor.js +1 -1
- package/cjs/oidc/options/OAuthOptionsConstructor.js.map +1 -1
- package/cjs/oidc/types/api.js.map +1 -1
- package/cjs/services/RenewOnTabActivationService.js +64 -0
- package/cjs/services/RenewOnTabActivationService.js.map +1 -0
- package/cjs/services/index.js +11 -0
- package/cjs/services/index.js.map +1 -1
- package/dist/okta-auth-js.authn.min.analyzer.html +2 -2
- package/dist/okta-auth-js.authn.min.js +1 -1
- package/dist/okta-auth-js.authn.min.js.map +1 -1
- package/dist/okta-auth-js.core.min.analyzer.html +2 -2
- package/dist/okta-auth-js.core.min.js +1 -1
- package/dist/okta-auth-js.core.min.js.map +1 -1
- package/dist/okta-auth-js.idx.min.analyzer.html +2 -2
- package/dist/okta-auth-js.idx.min.js +1 -1
- package/dist/okta-auth-js.idx.min.js.map +1 -1
- package/dist/okta-auth-js.min.analyzer.html +2 -2
- package/dist/okta-auth-js.min.js +1 -1
- package/dist/okta-auth-js.min.js.map +1 -1
- package/dist/okta-auth-js.myaccount.min.analyzer.html +2 -2
- package/dist/okta-auth-js.myaccount.min.js +1 -1
- package/dist/okta-auth-js.myaccount.min.js.map +1 -1
- package/esm/browser/core/ServiceManager/browser.js +9 -2
- package/esm/browser/core/ServiceManager/browser.js.map +1 -1
- package/esm/browser/http/OktaUserAgent.js +2 -2
- package/esm/browser/idx/authenticator/Authenticator.js.map +1 -1
- package/esm/browser/idx/authenticator/OktaPassword.js +17 -4
- package/esm/browser/idx/authenticator/OktaPassword.js.map +1 -1
- package/esm/browser/idx/types/idx-js.js.map +1 -1
- package/esm/browser/oidc/TokenManager.js +12 -1
- package/esm/browser/oidc/TokenManager.js.map +1 -1
- package/esm/browser/oidc/mixin/index.js +16 -0
- package/esm/browser/oidc/mixin/index.js.map +1 -1
- package/esm/browser/oidc/options/OAuthOptionsConstructor.js +1 -1
- package/esm/browser/oidc/options/OAuthOptionsConstructor.js.map +1 -1
- package/esm/browser/package.json +1 -1
- package/esm/browser/services/RenewOnTabActivationService.js +67 -0
- package/esm/browser/services/RenewOnTabActivationService.js.map +1 -0
- package/esm/node/http/OktaUserAgent.js +2 -2
- package/esm/node/idx/authenticator/Authenticator.js.map +1 -1
- package/esm/node/idx/authenticator/OktaPassword.js +17 -4
- package/esm/node/idx/authenticator/OktaPassword.js.map +1 -1
- package/esm/node/idx/types/idx-js.js.map +1 -1
- package/esm/node/oidc/TokenManager.js +12 -1
- package/esm/node/oidc/TokenManager.js.map +1 -1
- package/esm/node/oidc/mixin/index.js +16 -0
- package/esm/node/oidc/mixin/index.js.map +1 -1
- package/esm/node/oidc/options/OAuthOptionsConstructor.js +1 -1
- package/esm/node/oidc/options/OAuthOptionsConstructor.js.map +1 -1
- package/esm/node/package.json +1 -1
- package/package.json +4 -6
- package/types/lib/core/types/Service.d.ts +7 -1
- package/types/lib/idx/authenticator/Authenticator.d.ts +1 -1
- package/types/lib/idx/authenticator/OktaPassword.d.ts +2 -1
- package/types/lib/idx/types/idx-js.d.ts +1 -0
- package/types/lib/oidc/types/api.d.ts +1 -0
- package/types/lib/services/RenewOnTabActivationService.d.ts +16 -0
- package/types/lib/services/index.d.ts +1 -0
- package/umd/authn.js +1 -1
- package/umd/authn.js.map +1 -1
- package/umd/core.js +1 -1
- package/umd/core.js.map +1 -1
- package/umd/default.js +1 -1
- package/umd/default.js.map +1 -1
- package/umd/idx.js +1 -1
- package/umd/idx.js.map +1 -1
- package/umd/myaccount.js +1 -1
- package/umd/myaccount.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["mixinOAuth","Base","TransactionManagerConstructor","WithOriginalUri","provideOriginalUri","OktaAuthOAuth","constructor","args","transactionManager","Object","assign","storageManager","options","pkce","DEFAULT_CODE_CHALLENGE_METHOD","PKCE","generateVerifier","computeChallenge","_pending","handleLogin","_tokenQueue","PromiseQueue","token","createTokenAPI","tokenManager","TokenManager","endpoints","createEndpoints","clearStorage","clear","isAuthenticated","autoRenew","autoRemove","getOptions","shouldRenew","onExpiredToken","shouldRemove","accessToken","getTokensSync","hasExpired","undefined","renew","remove","idToken","signInWithRedirect","opts","originalUri","additionalParams","setOriginalUri","params","scopes","getWithRedirect","getUser","getUserInfo","getIdToken","getAccessToken","getRefreshToken","refreshToken","storeTokensFromRedirect","tokens","responseType","parseFromUrl","setTokens","isLoginRedirect","isPKCE","hasResponseType","isAuthorizationCodeFlow","invokeApiMethod","getTokens","httpRequest","revokeAccessToken","accessTokenKey","getStorageKeyByType","Promise","resolve","revoke","revokeRefreshToken","refreshTokenKey","getSignOutRedirectUrl","postLogoutRedirectUri","state","logoutUrl","getOAuthUrls","idTokenHint","logoutUri","encodeURIComponent","signOut","defaultUri","window","location","origin","currentUri","href","sessionClosed","closeSession","redirectUri","URL","searchParams","append","clearTokensBeforeRedirect","addPendingRemoveFlags","crypto"],"sources":["../../../../lib/oidc/mixin/index.ts"],"sourcesContent":["import { httpRequest, RequestOptions } from '../../http';\nimport { OktaAuthConstructor } from '../../base/types';\nimport { \n PromiseQueue,\n} from '../../util';\nimport { CryptoAPI } from '../../crypto/types';\nimport * as crypto from '../../crypto';\nimport {\n AccessToken,\n CustomUserClaims,\n IDToken,\n IsAuthenticatedOptions,\n OAuthResponseType,\n OAuthStorageManagerInterface,\n OAuthTransactionMeta,\n OktaAuthOAuthInterface,\n OktaAuthOAuthOptions,\n PkceAPI,\n PKCETransactionMeta,\n RefreshToken,\n SigninWithRedirectOptions,\n SignoutOptions,\n SignoutRedirectUrlOptions,\n TokenAPI,\n TransactionManagerInterface,\n TransactionManagerConstructor,\n UserClaims,\n Endpoints,\n} from '../types';\nimport PKCE from '../util/pkce';\nimport { createEndpoints, createTokenAPI } from '../factory/api';\nimport { TokenManager } from '../TokenManager';\nimport { getOAuthUrls, isLoginRedirect, hasResponseType } from '../util';\n\nimport { OktaAuthSessionInterface } from '../../session/types';\nimport { provideOriginalUri } from './node';\nexport function mixinOAuth\n<\n M extends OAuthTransactionMeta = PKCETransactionMeta,\n S extends OAuthStorageManagerInterface<M> = OAuthStorageManagerInterface<M>,\n O extends OktaAuthOAuthOptions = OktaAuthOAuthOptions,\n TM extends TransactionManagerInterface = TransactionManagerInterface,\n TBase extends OktaAuthConstructor<OktaAuthSessionInterface<S, O>>\n = OktaAuthConstructor<OktaAuthSessionInterface<S, O>>\n>\n(\n Base: TBase,\n TransactionManagerConstructor: TransactionManagerConstructor<TM>,\n): TBase & OktaAuthConstructor<OktaAuthOAuthInterface<M, S, O, TM>>\n{\n const WithOriginalUri = provideOriginalUri(Base);\n return class OktaAuthOAuth extends WithOriginalUri\n implements OktaAuthOAuthInterface<M, S, O, TM>\n {\n static crypto: CryptoAPI = crypto;\n token: TokenAPI;\n tokenManager: TokenManager;\n transactionManager: TM;\n pkce: PkceAPI;\n endpoints: Endpoints;\n\n _pending: { handleLogin: boolean };\n _tokenQueue: PromiseQueue;\n \n constructor(...args: any[]) {\n super(...args);\n\n this.transactionManager = new TransactionManagerConstructor(Object.assign({\n storageManager: this.storageManager,\n }, this.options.transactionManager));\n \n this.pkce = {\n DEFAULT_CODE_CHALLENGE_METHOD: PKCE.DEFAULT_CODE_CHALLENGE_METHOD,\n generateVerifier: PKCE.generateVerifier,\n computeChallenge: PKCE.computeChallenge\n };\n \n this._pending = { handleLogin: false };\n\n this._tokenQueue = new PromiseQueue();\n\n this.token = createTokenAPI(this, this._tokenQueue);\n\n // TokenManager\n this.tokenManager = new TokenManager(this, this.options.tokenManager);\n\n this.endpoints = createEndpoints(this);\n }\n\n // inherited from subclass\n clearStorage(): void {\n super.clearStorage();\n \n // Clear all local tokens\n this.tokenManager.clear();\n }\n\n // Returns true if both accessToken and idToken are not expired\n // If `autoRenew` option is set, will attempt to renew expired tokens before returning.\n // eslint-disable-next-line complexity\n async isAuthenticated(options: IsAuthenticatedOptions = {}): Promise<boolean> {\n // TODO: remove dependency on tokenManager options in next major version - OKTA-473815\n const { autoRenew, autoRemove } = this.tokenManager.getOptions();\n\n const shouldRenew = options.onExpiredToken ? options.onExpiredToken === 'renew' : autoRenew;\n const shouldRemove = options.onExpiredToken ? options.onExpiredToken === 'remove' : autoRemove;\n\n let { accessToken } = this.tokenManager.getTokensSync();\n if (accessToken && this.tokenManager.hasExpired(accessToken)) {\n accessToken = undefined;\n if (shouldRenew) {\n try {\n accessToken = await this.tokenManager.renew('accessToken') as AccessToken;\n } catch {\n // Renew errors will emit an \"error\" event \n }\n } else if (shouldRemove) {\n this.tokenManager.remove('accessToken');\n }\n }\n\n let { idToken } = this.tokenManager.getTokensSync();\n if (idToken && this.tokenManager.hasExpired(idToken)) {\n idToken = undefined;\n if (shouldRenew) {\n try {\n idToken = await this.tokenManager.renew('idToken') as IDToken;\n } catch {\n // Renew errors will emit an \"error\" event \n }\n } else if (shouldRemove) {\n this.tokenManager.remove('idToken');\n }\n }\n\n return !!(accessToken && idToken);\n }\n\n\n async signInWithRedirect(opts: SigninWithRedirectOptions = {}) {\n const { originalUri, ...additionalParams } = opts;\n if(this._pending.handleLogin) { \n // Don't trigger second round\n return;\n }\n\n this._pending.handleLogin = true;\n try {\n // Trigger default signIn redirect flow\n if (originalUri) {\n this.setOriginalUri(originalUri);\n }\n const params = Object.assign({\n // TODO: remove this line when default scopes are changed OKTA-343294\n scopes: this.options.scopes || ['openid', 'email', 'profile']\n }, additionalParams);\n await this.token.getWithRedirect(params);\n } finally {\n this._pending.handleLogin = false;\n }\n }\n\n async getUser<T extends CustomUserClaims = CustomUserClaims>(): Promise<UserClaims<T>> {\n const { idToken, accessToken } = this.tokenManager.getTokensSync();\n return this.token.getUserInfo(accessToken, idToken);\n }\n \n getIdToken(): string | undefined {\n const { idToken } = this.tokenManager.getTokensSync();\n return idToken ? idToken.idToken : undefined;\n }\n \n getAccessToken(): string | undefined {\n const { accessToken } = this.tokenManager.getTokensSync();\n return accessToken ? accessToken.accessToken : undefined;\n }\n \n getRefreshToken(): string | undefined {\n const { refreshToken } = this.tokenManager.getTokensSync();\n return refreshToken ? refreshToken.refreshToken : undefined;\n }\n \n /**\n * Store parsed tokens from redirect url\n */\n async storeTokensFromRedirect(): Promise<void> {\n const { tokens, responseType } = await this.token.parseFromUrl();\n if (responseType !== 'none') {\n this.tokenManager.setTokens(tokens);\n }\n }\n \n isLoginRedirect(): boolean {\n return isLoginRedirect(this);\n }\n\n isPKCE(): boolean {\n return !!this.options.pkce;\n }\n\n hasResponseType(responseType: OAuthResponseType): boolean {\n return hasResponseType(responseType, this.options);\n }\n \n isAuthorizationCodeFlow(): boolean {\n return this.hasResponseType('code');\n }\n\n // Escape hatch method to make arbitrary OKTA API call\n async invokeApiMethod(options: RequestOptions): Promise<unknown> {\n if (!options.accessToken) {\n const accessToken = (await this.tokenManager.getTokens()).accessToken as AccessToken;\n options.accessToken = accessToken?.accessToken;\n }\n return httpRequest(this, options);\n }\n \n // Revokes the access token for the application session\n async revokeAccessToken(accessToken?: AccessToken): Promise<unknown> {\n if (!accessToken) {\n accessToken = (await this.tokenManager.getTokens()).accessToken as AccessToken;\n const accessTokenKey = this.tokenManager.getStorageKeyByType('accessToken');\n this.tokenManager.remove(accessTokenKey);\n }\n // Access token may have been removed. In this case, we will silently succeed.\n if (!accessToken) {\n return Promise.resolve(null);\n }\n return this.token.revoke(accessToken);\n }\n\n // Revokes the refresh token for the application session\n async revokeRefreshToken(refreshToken?: RefreshToken): Promise<unknown> {\n if (!refreshToken) {\n refreshToken = (await this.tokenManager.getTokens()).refreshToken as RefreshToken;\n const refreshTokenKey = this.tokenManager.getStorageKeyByType('refreshToken');\n this.tokenManager.remove(refreshTokenKey);\n }\n // Refresh token may have been removed. In this case, we will silently succeed.\n if (!refreshToken) {\n return Promise.resolve(null);\n }\n return this.token.revoke(refreshToken);\n }\n\n getSignOutRedirectUrl(options: SignoutRedirectUrlOptions = {}) {\n let {\n idToken,\n postLogoutRedirectUri,\n state,\n } = options;\n if (!idToken) {\n idToken = this.tokenManager.getTokensSync().idToken as IDToken;\n }\n if (!idToken) {\n return '';\n }\n if (postLogoutRedirectUri === undefined) {\n postLogoutRedirectUri = this.options.postLogoutRedirectUri;\n }\n\n const logoutUrl = getOAuthUrls(this).logoutUrl;\n const idTokenHint = idToken.idToken; // a string\n let logoutUri = logoutUrl + '?id_token_hint=' + encodeURIComponent(idTokenHint);\n if (postLogoutRedirectUri) {\n logoutUri += '&post_logout_redirect_uri=' + encodeURIComponent(postLogoutRedirectUri);\n } \n // State allows option parameters to be passed to logout redirect uri\n if (state) {\n logoutUri += '&state=' + encodeURIComponent(state);\n }\n\n return logoutUri;\n }\n\n // Revokes refreshToken or accessToken, clears all local tokens, then redirects to Okta to end the SSO session.\n // eslint-disable-next-line complexity, max-statements\n async signOut(options?: SignoutOptions): Promise<boolean> {\n options = Object.assign({}, options);\n \n // postLogoutRedirectUri must be whitelisted in Okta Admin UI\n const defaultUri = window.location.origin;\n const currentUri = window.location.href;\n // Fix for issue/1410 - allow for no postLogoutRedirectUri to be passed, resulting in /logout default behavior\n // \"If no Okta session exists, this endpoint has no effect and the browser is redirected immediately to the\n // Okta sign-in page or the post_logout_redirect_uri (if specified).\"\n // - https://developer.okta.com/docs/reference/api/oidc/#logout\n const postLogoutRedirectUri = options.postLogoutRedirectUri === null ? null :\n (options.postLogoutRedirectUri\n || this.options.postLogoutRedirectUri\n || defaultUri);\n const state = options?.state;\n \n \n let accessToken = options.accessToken;\n let refreshToken = options.refreshToken;\n const revokeAccessToken = options.revokeAccessToken !== false;\n const revokeRefreshToken = options.revokeRefreshToken !== false;\n \n if (revokeRefreshToken && typeof refreshToken === 'undefined') {\n refreshToken = this.tokenManager.getTokensSync().refreshToken as RefreshToken;\n }\n\n if (revokeAccessToken && typeof accessToken === 'undefined') {\n accessToken = this.tokenManager.getTokensSync().accessToken as AccessToken;\n }\n \n if (!options.idToken) {\n options.idToken = this.tokenManager.getTokensSync().idToken as IDToken;\n }\n\n if (revokeRefreshToken && refreshToken) {\n await this.revokeRefreshToken(refreshToken);\n }\n\n if (revokeAccessToken && accessToken) {\n await this.revokeAccessToken(accessToken);\n }\n\n const logoutUri = this.getSignOutRedirectUrl({ ...options, postLogoutRedirectUri });\n // No logoutUri? This can happen if the storage was cleared.\n // Fallback to XHR signOut, then simulate a redirect to the post logout uri\n if (!logoutUri) {\n // local tokens are cleared once session is closed\n const sessionClosed = await this.closeSession(); // can throw if the user cannot be signed out\n const redirectUri = new URL(postLogoutRedirectUri || defaultUri); // during fallback, redirectUri cannot be null\n if (state) {\n redirectUri.searchParams.append('state', state);\n }\n if (postLogoutRedirectUri === currentUri) {\n // window.location.reload(); // force a hard reload if URI is not changing\n window.location.href = redirectUri.href;\n } else {\n window.location.assign(redirectUri.href);\n }\n return sessionClosed;\n } else {\n if (options.clearTokensBeforeRedirect) {\n // Clear all local tokens\n this.tokenManager.clear();\n } else {\n this.tokenManager.addPendingRemoveFlags();\n }\n // Flow ends with logout redirect\n window.location.assign(logoutUri);\n return true;\n }\n }\n\n };\n\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["mixinOAuth","Base","TransactionManagerConstructor","WithOriginalUri","provideOriginalUri","OktaAuthOAuth","constructor","args","transactionManager","Object","assign","storageManager","options","pkce","DEFAULT_CODE_CHALLENGE_METHOD","PKCE","generateVerifier","computeChallenge","_pending","handleLogin","_tokenQueue","PromiseQueue","token","createTokenAPI","tokenManager","TokenManager","endpoints","createEndpoints","clearStorage","clear","isAuthenticated","autoRenew","autoRemove","getOptions","shouldRenew","onExpiredToken","shouldRemove","accessToken","getTokensSync","hasExpired","undefined","renew","remove","idToken","signInWithRedirect","opts","originalUri","additionalParams","setOriginalUri","params","scopes","getWithRedirect","getUser","getUserInfo","getIdToken","getAccessToken","getRefreshToken","refreshToken","getOrRenewAccessToken","key","getStorageKeyByType","err","emitter","emit","storeTokensFromRedirect","tokens","responseType","parseFromUrl","setTokens","isLoginRedirect","isPKCE","hasResponseType","isAuthorizationCodeFlow","invokeApiMethod","getTokens","httpRequest","revokeAccessToken","accessTokenKey","Promise","resolve","revoke","revokeRefreshToken","refreshTokenKey","getSignOutRedirectUrl","postLogoutRedirectUri","state","logoutUrl","getOAuthUrls","idTokenHint","logoutUri","encodeURIComponent","signOut","defaultUri","window","location","origin","currentUri","href","sessionClosed","closeSession","redirectUri","URL","searchParams","append","clearTokensBeforeRedirect","addPendingRemoveFlags","crypto"],"sources":["../../../../lib/oidc/mixin/index.ts"],"sourcesContent":["import { httpRequest, RequestOptions } from '../../http';\nimport { OktaAuthConstructor } from '../../base/types';\nimport { \n PromiseQueue,\n} from '../../util';\nimport { CryptoAPI } from '../../crypto/types';\nimport * as crypto from '../../crypto';\nimport {\n AccessToken,\n CustomUserClaims,\n IDToken,\n IsAuthenticatedOptions,\n OAuthResponseType,\n OAuthStorageManagerInterface,\n OAuthTransactionMeta,\n OktaAuthOAuthInterface,\n OktaAuthOAuthOptions,\n PkceAPI,\n PKCETransactionMeta,\n RefreshToken,\n SigninWithRedirectOptions,\n SignoutOptions,\n SignoutRedirectUrlOptions,\n TokenAPI,\n TransactionManagerInterface,\n TransactionManagerConstructor,\n UserClaims,\n Endpoints,\n} from '../types';\nimport PKCE from '../util/pkce';\nimport { createEndpoints, createTokenAPI } from '../factory/api';\nimport { TokenManager } from '../TokenManager';\nimport { getOAuthUrls, isLoginRedirect, hasResponseType } from '../util';\n\nimport { OktaAuthSessionInterface } from '../../session/types';\nimport { provideOriginalUri } from './node';\nexport function mixinOAuth\n<\n M extends OAuthTransactionMeta = PKCETransactionMeta,\n S extends OAuthStorageManagerInterface<M> = OAuthStorageManagerInterface<M>,\n O extends OktaAuthOAuthOptions = OktaAuthOAuthOptions,\n TM extends TransactionManagerInterface = TransactionManagerInterface,\n TBase extends OktaAuthConstructor<OktaAuthSessionInterface<S, O>>\n = OktaAuthConstructor<OktaAuthSessionInterface<S, O>>\n>\n(\n Base: TBase,\n TransactionManagerConstructor: TransactionManagerConstructor<TM>,\n): TBase & OktaAuthConstructor<OktaAuthOAuthInterface<M, S, O, TM>>\n{\n const WithOriginalUri = provideOriginalUri(Base);\n return class OktaAuthOAuth extends WithOriginalUri\n implements OktaAuthOAuthInterface<M, S, O, TM>\n {\n static crypto: CryptoAPI = crypto;\n token: TokenAPI;\n tokenManager: TokenManager;\n transactionManager: TM;\n pkce: PkceAPI;\n endpoints: Endpoints;\n\n _pending: { handleLogin: boolean };\n _tokenQueue: PromiseQueue;\n \n constructor(...args: any[]) {\n super(...args);\n\n this.transactionManager = new TransactionManagerConstructor(Object.assign({\n storageManager: this.storageManager,\n }, this.options.transactionManager));\n \n this.pkce = {\n DEFAULT_CODE_CHALLENGE_METHOD: PKCE.DEFAULT_CODE_CHALLENGE_METHOD,\n generateVerifier: PKCE.generateVerifier,\n computeChallenge: PKCE.computeChallenge\n };\n \n this._pending = { handleLogin: false };\n\n this._tokenQueue = new PromiseQueue();\n\n this.token = createTokenAPI(this, this._tokenQueue);\n\n // TokenManager\n this.tokenManager = new TokenManager(this, this.options.tokenManager);\n\n this.endpoints = createEndpoints(this);\n }\n\n // inherited from subclass\n clearStorage(): void {\n super.clearStorage();\n \n // Clear all local tokens\n this.tokenManager.clear();\n }\n\n // Returns true if both accessToken and idToken are not expired\n // If `autoRenew` option is set, will attempt to renew expired tokens before returning.\n // eslint-disable-next-line complexity\n async isAuthenticated(options: IsAuthenticatedOptions = {}): Promise<boolean> {\n // TODO: remove dependency on tokenManager options in next major version - OKTA-473815\n const { autoRenew, autoRemove } = this.tokenManager.getOptions();\n\n const shouldRenew = options.onExpiredToken ? options.onExpiredToken === 'renew' : autoRenew;\n const shouldRemove = options.onExpiredToken ? options.onExpiredToken === 'remove' : autoRemove;\n\n let { accessToken } = this.tokenManager.getTokensSync();\n if (accessToken && this.tokenManager.hasExpired(accessToken)) {\n accessToken = undefined;\n if (shouldRenew) {\n try {\n accessToken = await this.tokenManager.renew('accessToken') as AccessToken;\n } catch {\n // Renew errors will emit an \"error\" event \n }\n } else if (shouldRemove) {\n this.tokenManager.remove('accessToken');\n }\n }\n\n let { idToken } = this.tokenManager.getTokensSync();\n if (idToken && this.tokenManager.hasExpired(idToken)) {\n idToken = undefined;\n if (shouldRenew) {\n try {\n idToken = await this.tokenManager.renew('idToken') as IDToken;\n } catch {\n // Renew errors will emit an \"error\" event \n }\n } else if (shouldRemove) {\n this.tokenManager.remove('idToken');\n }\n }\n\n return !!(accessToken && idToken);\n }\n\n\n async signInWithRedirect(opts: SigninWithRedirectOptions = {}) {\n const { originalUri, ...additionalParams } = opts;\n if(this._pending.handleLogin) { \n // Don't trigger second round\n return;\n }\n\n this._pending.handleLogin = true;\n try {\n // Trigger default signIn redirect flow\n if (originalUri) {\n this.setOriginalUri(originalUri);\n }\n const params = Object.assign({\n // TODO: remove this line when default scopes are changed OKTA-343294\n scopes: this.options.scopes || ['openid', 'email', 'profile']\n }, additionalParams);\n await this.token.getWithRedirect(params);\n } finally {\n this._pending.handleLogin = false;\n }\n }\n\n async getUser<T extends CustomUserClaims = CustomUserClaims>(): Promise<UserClaims<T>> {\n const { idToken, accessToken } = this.tokenManager.getTokensSync();\n return this.token.getUserInfo(accessToken, idToken);\n }\n \n getIdToken(): string | undefined {\n const { idToken } = this.tokenManager.getTokensSync();\n return idToken ? idToken.idToken : undefined;\n }\n \n getAccessToken(): string | undefined {\n const { accessToken } = this.tokenManager.getTokensSync();\n return accessToken ? accessToken.accessToken : undefined;\n }\n \n getRefreshToken(): string | undefined {\n const { refreshToken } = this.tokenManager.getTokensSync();\n return refreshToken ? refreshToken.refreshToken : undefined;\n }\n\n async getOrRenewAccessToken(): Promise<string | null> {\n const { accessToken } = this.tokenManager.getTokensSync();\n if (accessToken && !this.tokenManager.hasExpired(accessToken)) {\n return accessToken.accessToken;\n }\n try {\n const key = this.tokenManager.getStorageKeyByType('accessToken');\n const token = await this.tokenManager.renew(key ?? 'accessToken');\n return (token as AccessToken)?.accessToken ?? null;\n }\n catch (err) {\n this.emitter.emit('error', err);\n return null;\n }\n }\n \n /**\n * Store parsed tokens from redirect url\n */\n async storeTokensFromRedirect(): Promise<void> {\n const { tokens, responseType } = await this.token.parseFromUrl();\n if (responseType !== 'none') {\n this.tokenManager.setTokens(tokens);\n }\n }\n \n isLoginRedirect(): boolean {\n return isLoginRedirect(this);\n }\n\n isPKCE(): boolean {\n return !!this.options.pkce;\n }\n\n hasResponseType(responseType: OAuthResponseType): boolean {\n return hasResponseType(responseType, this.options);\n }\n \n isAuthorizationCodeFlow(): boolean {\n return this.hasResponseType('code');\n }\n\n // Escape hatch method to make arbitrary OKTA API call\n async invokeApiMethod(options: RequestOptions): Promise<unknown> {\n if (!options.accessToken) {\n const accessToken = (await this.tokenManager.getTokens()).accessToken as AccessToken;\n options.accessToken = accessToken?.accessToken;\n }\n return httpRequest(this, options);\n }\n \n // Revokes the access token for the application session\n async revokeAccessToken(accessToken?: AccessToken): Promise<unknown> {\n if (!accessToken) {\n accessToken = (await this.tokenManager.getTokens()).accessToken as AccessToken;\n const accessTokenKey = this.tokenManager.getStorageKeyByType('accessToken');\n this.tokenManager.remove(accessTokenKey);\n }\n // Access token may have been removed. In this case, we will silently succeed.\n if (!accessToken) {\n return Promise.resolve(null);\n }\n return this.token.revoke(accessToken);\n }\n\n // Revokes the refresh token for the application session\n async revokeRefreshToken(refreshToken?: RefreshToken): Promise<unknown> {\n if (!refreshToken) {\n refreshToken = (await this.tokenManager.getTokens()).refreshToken as RefreshToken;\n const refreshTokenKey = this.tokenManager.getStorageKeyByType('refreshToken');\n this.tokenManager.remove(refreshTokenKey);\n }\n // Refresh token may have been removed. In this case, we will silently succeed.\n if (!refreshToken) {\n return Promise.resolve(null);\n }\n return this.token.revoke(refreshToken);\n }\n\n getSignOutRedirectUrl(options: SignoutRedirectUrlOptions = {}) {\n let {\n idToken,\n postLogoutRedirectUri,\n state,\n } = options;\n if (!idToken) {\n idToken = this.tokenManager.getTokensSync().idToken as IDToken;\n }\n if (!idToken) {\n return '';\n }\n if (postLogoutRedirectUri === undefined) {\n postLogoutRedirectUri = this.options.postLogoutRedirectUri;\n }\n\n const logoutUrl = getOAuthUrls(this).logoutUrl;\n const idTokenHint = idToken.idToken; // a string\n let logoutUri = logoutUrl + '?id_token_hint=' + encodeURIComponent(idTokenHint);\n if (postLogoutRedirectUri) {\n logoutUri += '&post_logout_redirect_uri=' + encodeURIComponent(postLogoutRedirectUri);\n } \n // State allows option parameters to be passed to logout redirect uri\n if (state) {\n logoutUri += '&state=' + encodeURIComponent(state);\n }\n\n return logoutUri;\n }\n\n // Revokes refreshToken or accessToken, clears all local tokens, then redirects to Okta to end the SSO session.\n // eslint-disable-next-line complexity, max-statements\n async signOut(options?: SignoutOptions): Promise<boolean> {\n options = Object.assign({}, options);\n \n // postLogoutRedirectUri must be whitelisted in Okta Admin UI\n const defaultUri = window.location.origin;\n const currentUri = window.location.href;\n // Fix for issue/1410 - allow for no postLogoutRedirectUri to be passed, resulting in /logout default behavior\n // \"If no Okta session exists, this endpoint has no effect and the browser is redirected immediately to the\n // Okta sign-in page or the post_logout_redirect_uri (if specified).\"\n // - https://developer.okta.com/docs/reference/api/oidc/#logout\n const postLogoutRedirectUri = options.postLogoutRedirectUri === null ? null :\n (options.postLogoutRedirectUri\n || this.options.postLogoutRedirectUri\n || defaultUri);\n const state = options?.state;\n \n \n let accessToken = options.accessToken;\n let refreshToken = options.refreshToken;\n const revokeAccessToken = options.revokeAccessToken !== false;\n const revokeRefreshToken = options.revokeRefreshToken !== false;\n \n if (revokeRefreshToken && typeof refreshToken === 'undefined') {\n refreshToken = this.tokenManager.getTokensSync().refreshToken as RefreshToken;\n }\n\n if (revokeAccessToken && typeof accessToken === 'undefined') {\n accessToken = this.tokenManager.getTokensSync().accessToken as AccessToken;\n }\n \n if (!options.idToken) {\n options.idToken = this.tokenManager.getTokensSync().idToken as IDToken;\n }\n\n if (revokeRefreshToken && refreshToken) {\n await this.revokeRefreshToken(refreshToken);\n }\n\n if (revokeAccessToken && accessToken) {\n await this.revokeAccessToken(accessToken);\n }\n\n const logoutUri = this.getSignOutRedirectUrl({ ...options, postLogoutRedirectUri });\n // No logoutUri? This can happen if the storage was cleared.\n // Fallback to XHR signOut, then simulate a redirect to the post logout uri\n if (!logoutUri) {\n // local tokens are cleared once session is closed\n const sessionClosed = await this.closeSession(); // can throw if the user cannot be signed out\n const redirectUri = new URL(postLogoutRedirectUri || defaultUri); // during fallback, redirectUri cannot be null\n if (state) {\n redirectUri.searchParams.append('state', state);\n }\n if (postLogoutRedirectUri === currentUri) {\n // window.location.reload(); // force a hard reload if URI is not changing\n window.location.href = redirectUri.href;\n } else {\n window.location.assign(redirectUri.href);\n }\n return sessionClosed;\n } else {\n if (options.clearTokensBeforeRedirect) {\n // Clear all local tokens\n this.tokenManager.clear();\n } else {\n this.tokenManager.addPendingRemoveFlags();\n }\n // Flow ends with logout redirect\n window.location.assign(logoutUri);\n return true;\n }\n }\n\n };\n\n}\n"],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ function assertValidConfig(args) {
|
|
|
36
36
|
if (!isUrlRegex.test(issuer)) {
|
|
37
37
|
throw new _AuthSdkError.default('Issuer must be a valid URL. ' + 'Required usage: new OktaAuth({issuer: "https://{yourOktaDomain}.com/oauth2/{authServerId}"})');
|
|
38
38
|
}
|
|
39
|
-
if (issuer.indexOf('-admin.') !== -1) {
|
|
39
|
+
if (issuer.indexOf('-admin.okta') !== -1) {
|
|
40
40
|
throw new _AuthSdkError.default('Issuer URL passed to constructor contains "-admin" in subdomain. ' + 'Required usage: new OktaAuth({issuer: "https://{yourOktaDomain}.com})');
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OAuthOptionsConstructor.js","names":["assertValidConfig","args","scopes","Array","isArray","AuthSdkError","issuer","isUrlRegex","RegExp","test","indexOf","createOAuthOptionsConstructor","HttpOptionsConstructor","createHttpOptionsConstructor","OAuthOptionsConstructor","constructor","options","removeTrailingSlash","tokenUrl","authorizeUrl","userinfoUrl","revokeUrl","logoutUrl","pkce","clientId","redirectUri","isBrowser","toAbsoluteUrl","window","location","origin","responseType","responseMode","state","ignoreSignature","codeChallenge","codeChallengeMethod","acrValues","maxAge","tokenManager","postLogoutRedirectUri","restoreOriginalUri","transactionManager","enableSharedStorage","clientSecret","setLocation","ignoreLifetime","maxClockSkew","DEFAULT_MAX_CLOCK_SKEW"],"sources":["../../../../lib/oidc/options/OAuthOptionsConstructor.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { DEFAULT_MAX_CLOCK_SKEW } from '../../constants';\nimport { removeTrailingSlash, toAbsoluteUrl } from '../../util/url';\nimport { isBrowser } from '../../features';\nimport { createHttpOptionsConstructor } from '../../http/options';\nimport {\n OAuthResponseMode,\n OAuthResponseType,\n OktaAuthOAuthInterface,\n OktaAuthOAuthOptions,\n SetLocationFunction,\n TokenManagerOptions,\n TransactionManagerOptions\n} from '../types';\nimport { enableSharedStorage } from './node';\nimport AuthSdkError from '../../errors/AuthSdkError';\n\nfunction assertValidConfig(args) {\n args = args || {};\n\n var scopes = args.scopes;\n if (scopes && !Array.isArray(scopes)) {\n throw new AuthSdkError('scopes must be a array of strings. ' +\n 'Required usage: new OktaAuth({scopes: [\"openid\", \"email\"]})');\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n var issuer = args.issuer!;\n if (!issuer) {\n throw new AuthSdkError('No issuer passed to constructor. ' + \n 'Required usage: new OktaAuth({issuer: \"https://{yourOktaDomain}.com/oauth2/{authServerId}\"})');\n }\n\n var isUrlRegex = new RegExp('^http?s?://.+');\n if (!isUrlRegex.test(issuer)) {\n throw new AuthSdkError('Issuer must be a valid URL. ' + \n 'Required usage: new OktaAuth({issuer: \"https://{yourOktaDomain}.com/oauth2/{authServerId}\"})');\n }\n\n if (issuer.indexOf('-admin.') !== -1) {\n throw new AuthSdkError('Issuer URL passed to constructor contains \"-admin\" in subdomain. ' +\n 'Required usage: new OktaAuth({issuer: \"https://{yourOktaDomain}.com})');\n }\n}\n\nexport function createOAuthOptionsConstructor() {\n const HttpOptionsConstructor = createHttpOptionsConstructor();\n return class OAuthOptionsConstructor\n extends HttpOptionsConstructor\n implements Required<OktaAuthOAuthOptions>\n {\n // CustomUrls\n issuer: string;\n authorizeUrl: string;\n userinfoUrl: string;\n tokenUrl: string;\n revokeUrl: string;\n logoutUrl: string;\n \n // TokenParams\n pkce: boolean;\n clientId: string;\n redirectUri: string;\n responseType: OAuthResponseType | OAuthResponseType[];\n responseMode: OAuthResponseMode;\n state: string;\n scopes: string[];\n ignoreSignature: boolean;\n codeChallenge: string;\n codeChallengeMethod: string;\n acrValues: string;\n maxAge: string | number;\n\n // Additional options\n tokenManager: TokenManagerOptions;\n postLogoutRedirectUri: string;\n restoreOriginalUri: (oktaAuth: OktaAuthOAuthInterface, originalUri?: string) => Promise<void>;\n transactionManager: TransactionManagerOptions;\n\n // For server-side web applications ONLY!\n clientSecret: string;\n setLocation: SetLocationFunction;\n\n // Workaround for bad client time/clock\n ignoreLifetime: boolean;\n maxClockSkew: number;\n\n\n // eslint-disable-next-line max-statements\n constructor(options: any) {\n super(options);\n \n assertValidConfig(options);\n \n this.issuer = removeTrailingSlash(options.issuer);\n this.tokenUrl = removeTrailingSlash(options.tokenUrl);\n this.authorizeUrl = removeTrailingSlash(options.authorizeUrl);\n this.userinfoUrl = removeTrailingSlash(options.userinfoUrl);\n this.revokeUrl = removeTrailingSlash(options.revokeUrl);\n this.logoutUrl = removeTrailingSlash(options.logoutUrl);\n\n this.pkce = options.pkce === false ? false : true; // PKCE defaults to true\n this.clientId = options.clientId;\n this.redirectUri = options.redirectUri;\n if (isBrowser()) {\n this.redirectUri = toAbsoluteUrl(options.redirectUri, window.location.origin); // allow relative URIs\n }\n this.responseType = options.responseType;\n this.responseMode = options.responseMode;\n this.state = options.state;\n this.scopes = options.scopes;\n // Give the developer the ability to disable token signature validation.\n this.ignoreSignature = !!options.ignoreSignature;\n this.codeChallenge = options.codeChallenge;\n this.codeChallengeMethod = options.codeChallengeMethod;\n this.acrValues = options.acrValues;\n this.maxAge = options.maxAge;\n\n this.tokenManager = options.tokenManager;\n this.postLogoutRedirectUri = options.postLogoutRedirectUri;\n this.restoreOriginalUri = options.restoreOriginalUri;\n this.transactionManager = { enableSharedStorage, ...options.transactionManager };\n \n this.clientSecret = options.clientSecret;\n this.setLocation = options.setLocation;\n \n // As some end user's devices can have their date \n // and time incorrectly set, allow for the disabling\n // of the jwt liftetime validation\n this.ignoreLifetime = !!options.ignoreLifetime;\n\n // Digital clocks will drift over time, so the server\n // can misalign with the time reported by the browser.\n // The maxClockSkew allows relaxing the time-based\n // validation of tokens (in seconds, not milliseconds).\n // It currently defaults to 300, because 5 min is the\n // default maximum tolerance allowed by Kerberos.\n // (https://technet.microsoft.com/en-us/library/cc976357.aspx)\n if (!options.maxClockSkew && options.maxClockSkew !== 0) {\n this.maxClockSkew = DEFAULT_MAX_CLOCK_SKEW;\n } else {\n this.maxClockSkew = options.maxClockSkew;\n }\n\n }\n };\n}\n"],"mappings":";;;;AAYA;AACA;AACA;AACA;AAUA;AACA;AA1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAkBA,SAASA,iBAAiB,CAACC,IAAI,EAAE;EAC/BA,IAAI,GAAGA,IAAI,IAAI,CAAC,CAAC;EAEjB,IAAIC,MAAM,GAAGD,IAAI,CAACC,MAAM;EACxB,IAAIA,MAAM,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,EAAE;IACpC,MAAM,IAAIG,qBAAY,CAAC,qCAAqC,GAC1D,6DAA6D,CAAC;EAClE;;EAEA;EACA,IAAIC,MAAM,GAAGL,IAAI,CAACK,MAAO;EACzB,IAAI,CAACA,MAAM,EAAE;IACX,MAAM,IAAID,qBAAY,CAAC,mCAAmC,GACxD,8FAA8F,CAAC;EACnG;EAEA,IAAIE,UAAU,GAAG,IAAIC,MAAM,CAAC,eAAe,CAAC;EAC5C,IAAI,CAACD,UAAU,CAACE,IAAI,CAACH,MAAM,CAAC,EAAE;IAC5B,MAAM,IAAID,qBAAY,CAAC,8BAA8B,GACnD,8FAA8F,CAAC;EACnG;EAEA,IAAIC,MAAM,CAACI,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"OAuthOptionsConstructor.js","names":["assertValidConfig","args","scopes","Array","isArray","AuthSdkError","issuer","isUrlRegex","RegExp","test","indexOf","createOAuthOptionsConstructor","HttpOptionsConstructor","createHttpOptionsConstructor","OAuthOptionsConstructor","constructor","options","removeTrailingSlash","tokenUrl","authorizeUrl","userinfoUrl","revokeUrl","logoutUrl","pkce","clientId","redirectUri","isBrowser","toAbsoluteUrl","window","location","origin","responseType","responseMode","state","ignoreSignature","codeChallenge","codeChallengeMethod","acrValues","maxAge","tokenManager","postLogoutRedirectUri","restoreOriginalUri","transactionManager","enableSharedStorage","clientSecret","setLocation","ignoreLifetime","maxClockSkew","DEFAULT_MAX_CLOCK_SKEW"],"sources":["../../../../lib/oidc/options/OAuthOptionsConstructor.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { DEFAULT_MAX_CLOCK_SKEW } from '../../constants';\nimport { removeTrailingSlash, toAbsoluteUrl } from '../../util/url';\nimport { isBrowser } from '../../features';\nimport { createHttpOptionsConstructor } from '../../http/options';\nimport {\n OAuthResponseMode,\n OAuthResponseType,\n OktaAuthOAuthInterface,\n OktaAuthOAuthOptions,\n SetLocationFunction,\n TokenManagerOptions,\n TransactionManagerOptions\n} from '../types';\nimport { enableSharedStorage } from './node';\nimport AuthSdkError from '../../errors/AuthSdkError';\n\nfunction assertValidConfig(args) {\n args = args || {};\n\n var scopes = args.scopes;\n if (scopes && !Array.isArray(scopes)) {\n throw new AuthSdkError('scopes must be a array of strings. ' +\n 'Required usage: new OktaAuth({scopes: [\"openid\", \"email\"]})');\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n var issuer = args.issuer!;\n if (!issuer) {\n throw new AuthSdkError('No issuer passed to constructor. ' + \n 'Required usage: new OktaAuth({issuer: \"https://{yourOktaDomain}.com/oauth2/{authServerId}\"})');\n }\n\n var isUrlRegex = new RegExp('^http?s?://.+');\n if (!isUrlRegex.test(issuer)) {\n throw new AuthSdkError('Issuer must be a valid URL. ' + \n 'Required usage: new OktaAuth({issuer: \"https://{yourOktaDomain}.com/oauth2/{authServerId}\"})');\n }\n\n if (issuer.indexOf('-admin.okta') !== -1) {\n throw new AuthSdkError('Issuer URL passed to constructor contains \"-admin\" in subdomain. ' +\n 'Required usage: new OktaAuth({issuer: \"https://{yourOktaDomain}.com})');\n }\n}\n\nexport function createOAuthOptionsConstructor() {\n const HttpOptionsConstructor = createHttpOptionsConstructor();\n return class OAuthOptionsConstructor\n extends HttpOptionsConstructor\n implements Required<OktaAuthOAuthOptions>\n {\n // CustomUrls\n issuer: string;\n authorizeUrl: string;\n userinfoUrl: string;\n tokenUrl: string;\n revokeUrl: string;\n logoutUrl: string;\n \n // TokenParams\n pkce: boolean;\n clientId: string;\n redirectUri: string;\n responseType: OAuthResponseType | OAuthResponseType[];\n responseMode: OAuthResponseMode;\n state: string;\n scopes: string[];\n ignoreSignature: boolean;\n codeChallenge: string;\n codeChallengeMethod: string;\n acrValues: string;\n maxAge: string | number;\n\n // Additional options\n tokenManager: TokenManagerOptions;\n postLogoutRedirectUri: string;\n restoreOriginalUri: (oktaAuth: OktaAuthOAuthInterface, originalUri?: string) => Promise<void>;\n transactionManager: TransactionManagerOptions;\n\n // For server-side web applications ONLY!\n clientSecret: string;\n setLocation: SetLocationFunction;\n\n // Workaround for bad client time/clock\n ignoreLifetime: boolean;\n maxClockSkew: number;\n\n\n // eslint-disable-next-line max-statements\n constructor(options: any) {\n super(options);\n \n assertValidConfig(options);\n \n this.issuer = removeTrailingSlash(options.issuer);\n this.tokenUrl = removeTrailingSlash(options.tokenUrl);\n this.authorizeUrl = removeTrailingSlash(options.authorizeUrl);\n this.userinfoUrl = removeTrailingSlash(options.userinfoUrl);\n this.revokeUrl = removeTrailingSlash(options.revokeUrl);\n this.logoutUrl = removeTrailingSlash(options.logoutUrl);\n\n this.pkce = options.pkce === false ? false : true; // PKCE defaults to true\n this.clientId = options.clientId;\n this.redirectUri = options.redirectUri;\n if (isBrowser()) {\n this.redirectUri = toAbsoluteUrl(options.redirectUri, window.location.origin); // allow relative URIs\n }\n this.responseType = options.responseType;\n this.responseMode = options.responseMode;\n this.state = options.state;\n this.scopes = options.scopes;\n // Give the developer the ability to disable token signature validation.\n this.ignoreSignature = !!options.ignoreSignature;\n this.codeChallenge = options.codeChallenge;\n this.codeChallengeMethod = options.codeChallengeMethod;\n this.acrValues = options.acrValues;\n this.maxAge = options.maxAge;\n\n this.tokenManager = options.tokenManager;\n this.postLogoutRedirectUri = options.postLogoutRedirectUri;\n this.restoreOriginalUri = options.restoreOriginalUri;\n this.transactionManager = { enableSharedStorage, ...options.transactionManager };\n \n this.clientSecret = options.clientSecret;\n this.setLocation = options.setLocation;\n \n // As some end user's devices can have their date \n // and time incorrectly set, allow for the disabling\n // of the jwt liftetime validation\n this.ignoreLifetime = !!options.ignoreLifetime;\n\n // Digital clocks will drift over time, so the server\n // can misalign with the time reported by the browser.\n // The maxClockSkew allows relaxing the time-based\n // validation of tokens (in seconds, not milliseconds).\n // It currently defaults to 300, because 5 min is the\n // default maximum tolerance allowed by Kerberos.\n // (https://technet.microsoft.com/en-us/library/cc976357.aspx)\n if (!options.maxClockSkew && options.maxClockSkew !== 0) {\n this.maxClockSkew = DEFAULT_MAX_CLOCK_SKEW;\n } else {\n this.maxClockSkew = options.maxClockSkew;\n }\n\n }\n };\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","names":[],"sources":["../../../../lib/oidc/types/api.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { JWTObject } from './JWT';\nimport { OAuthTransactionMeta, PKCETransactionMeta } from './meta';\nimport { CustomUrls, OktaAuthOAuthOptions, SigninWithRedirectOptions, TokenParams, RenewTokensParams } from './options';\nimport { OAuthResponseType } from './proto';\nimport { OAuthStorageManagerInterface } from './storage';\nimport { AccessToken, IDToken, RefreshToken, RevocableToken, Token, Tokens, TokenKind } from './Token';\nimport { TokenManagerInterface } from './TokenManager';\nimport { CustomUserClaims, UserClaims } from './UserClaims';\nimport { TransactionManagerInterface } from './TransactionManager';\nimport { OktaAuthSessionInterface } from '../../session/types';\nimport { Endpoints } from './endpoints';\n\nexport interface PopupParams {\n popupTitle?: string;\n popupWindow?: Window;\n}\n\nexport interface TokenResponse {\n tokens: Tokens;\n state: string;\n code?: string;\n responseType?: OAuthResponseType | OAuthResponseType[] | 'none';\n}\n\nexport interface ParseFromUrlOptions {\n url?: string;\n responseMode?: string;\n}\n\nexport type ParseFromUrlFunction = (options?: string | ParseFromUrlOptions) => Promise<TokenResponse>;\n\nexport interface ParseFromUrlInterface extends ParseFromUrlFunction {\n _getDocument: () => Document;\n _getLocation: () => Location;\n _getHistory: () => History;\n}\n\nexport type GetWithRedirectFunction = (params?: TokenParams) => Promise<void>;\n\nexport type SetLocationFunction = (loc: string) => void;\n\nexport interface BaseTokenAPI {\n decode(token: string): JWTObject;\n prepareTokenParams(params?: TokenParams): Promise<TokenParams>;\n exchangeCodeForTokens(params: TokenParams, urls?: CustomUrls): Promise<TokenResponse>;\n}\n\nexport interface TokenAPI extends BaseTokenAPI {\n getUserInfo<S extends CustomUserClaims = CustomUserClaims>(\n accessToken?: AccessToken,\n idToken?: IDToken\n ): Promise<UserClaims<S>>;\n getWithRedirect: GetWithRedirectFunction;\n parseFromUrl: ParseFromUrlInterface;\n getWithoutPrompt(params?: TokenParams): Promise<TokenResponse>;\n getWithPopup(params?: TokenParams): Promise<TokenResponse>;\n revoke(token: RevocableToken): Promise<object>;\n renew(token: Token): Promise<Token | undefined>;\n renewTokens(options?: RenewTokensParams): Promise<Tokens>;\n renewTokensWithRefresh(tokenParams: TokenParams, refreshTokenObject: RefreshToken): Promise<Tokens>;\n verify(token: IDToken, params?: object): Promise<IDToken>;\n isLoginRedirect(): boolean;\n introspect(kind: TokenKind, token?: Token): any; // TODO: make real return type\n}\n\nexport interface TokenVerifyParams {\n clientId: string;\n issuer: string;\n ignoreSignature?: boolean;\n nonce?: string;\n accessToken?: string; // raw access token string\n acrValues?: string;\n}\n\nexport interface IDTokenAPI {\n authorize: {\n _getLocationHref: () => string;\n };\n}\n\nexport interface PkceAPI {\n DEFAULT_CODE_CHALLENGE_METHOD: string;\n generateVerifier(prefix: string): string;\n computeChallenge(str: string): PromiseLike<any>;\n}\n\nexport interface IsAuthenticatedOptions {\n onExpiredToken?: 'renew' | 'remove' | 'none';\n}\n\nexport interface SignoutRedirectUrlOptions {\n postLogoutRedirectUri?: string | null;\n idToken?: IDToken;\n state?: string;\n}\n\nexport interface SignoutOptions extends SignoutRedirectUrlOptions {\n revokeAccessToken?: boolean;\n revokeRefreshToken?: boolean;\n accessToken?: AccessToken;\n refreshToken?: RefreshToken;\n clearTokensBeforeRedirect?: boolean;\n}\n\nexport interface OriginalUriApi {\n getOriginalUri(state?: string): string | undefined;\n setOriginalUri(originalUri: string, state?: string): void;\n removeOriginalUri(state?: string): void;\n}\n\nexport interface MinimalOktaOAuthInterface\n<\n M extends OAuthTransactionMeta = PKCETransactionMeta,\n S extends OAuthStorageManagerInterface<M> = OAuthStorageManagerInterface<M>,\n O extends OktaAuthOAuthOptions = OktaAuthOAuthOptions,\n TM extends TransactionManagerInterface = TransactionManagerInterface\n> \n extends OktaAuthSessionInterface<S, O>\n{\n token: BaseTokenAPI;\n transactionManager: TM;\n\n isPKCE(): boolean;\n isLoginRedirect(): boolean;\n isAuthorizationCodeFlow(): boolean;\n}\n\nexport interface OktaAuthOAuthInterface\n<\n M extends OAuthTransactionMeta = PKCETransactionMeta,\n S extends OAuthStorageManagerInterface<M> = OAuthStorageManagerInterface<M>,\n O extends OktaAuthOAuthOptions = OktaAuthOAuthOptions,\n TM extends TransactionManagerInterface = TransactionManagerInterface\n> \n extends OktaAuthSessionInterface<S, O>,\n OriginalUriApi\n{\n token: TokenAPI;\n tokenManager: TokenManagerInterface;\n pkce: PkceAPI;\n transactionManager: TM;\n endpoints: Endpoints;\n \n isPKCE(): boolean;\n getIdToken(): string | undefined;\n getAccessToken(): string | undefined;\n getRefreshToken(): string | undefined;\n\n isAuthenticated(options?: IsAuthenticatedOptions): Promise<boolean>;\n signOut(opts?: SignoutOptions): Promise<boolean>;\n isLoginRedirect(): boolean;\n isAuthorizationCodeFlow(): boolean;\n storeTokensFromRedirect(): Promise<void>;\n getUser<T extends CustomUserClaims = CustomUserClaims>(): Promise<UserClaims<T>>;\n signInWithRedirect(opts?: SigninWithRedirectOptions): Promise<void>;\n \n revokeAccessToken(accessToken?: AccessToken): Promise<unknown>;\n revokeRefreshToken(refreshToken?: RefreshToken): Promise<unknown>;\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"api.js","names":[],"sources":["../../../../lib/oidc/types/api.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { JWTObject } from './JWT';\nimport { OAuthTransactionMeta, PKCETransactionMeta } from './meta';\nimport { CustomUrls, OktaAuthOAuthOptions, SigninWithRedirectOptions, TokenParams, RenewTokensParams } from './options';\nimport { OAuthResponseType } from './proto';\nimport { OAuthStorageManagerInterface } from './storage';\nimport { AccessToken, IDToken, RefreshToken, RevocableToken, Token, Tokens, TokenKind } from './Token';\nimport { TokenManagerInterface } from './TokenManager';\nimport { CustomUserClaims, UserClaims } from './UserClaims';\nimport { TransactionManagerInterface } from './TransactionManager';\nimport { OktaAuthSessionInterface } from '../../session/types';\nimport { Endpoints } from './endpoints';\n\nexport interface PopupParams {\n popupTitle?: string;\n popupWindow?: Window;\n}\n\nexport interface TokenResponse {\n tokens: Tokens;\n state: string;\n code?: string;\n responseType?: OAuthResponseType | OAuthResponseType[] | 'none';\n}\n\nexport interface ParseFromUrlOptions {\n url?: string;\n responseMode?: string;\n}\n\nexport type ParseFromUrlFunction = (options?: string | ParseFromUrlOptions) => Promise<TokenResponse>;\n\nexport interface ParseFromUrlInterface extends ParseFromUrlFunction {\n _getDocument: () => Document;\n _getLocation: () => Location;\n _getHistory: () => History;\n}\n\nexport type GetWithRedirectFunction = (params?: TokenParams) => Promise<void>;\n\nexport type SetLocationFunction = (loc: string) => void;\n\nexport interface BaseTokenAPI {\n decode(token: string): JWTObject;\n prepareTokenParams(params?: TokenParams): Promise<TokenParams>;\n exchangeCodeForTokens(params: TokenParams, urls?: CustomUrls): Promise<TokenResponse>;\n}\n\nexport interface TokenAPI extends BaseTokenAPI {\n getUserInfo<S extends CustomUserClaims = CustomUserClaims>(\n accessToken?: AccessToken,\n idToken?: IDToken\n ): Promise<UserClaims<S>>;\n getWithRedirect: GetWithRedirectFunction;\n parseFromUrl: ParseFromUrlInterface;\n getWithoutPrompt(params?: TokenParams): Promise<TokenResponse>;\n getWithPopup(params?: TokenParams): Promise<TokenResponse>;\n revoke(token: RevocableToken): Promise<object>;\n renew(token: Token): Promise<Token | undefined>;\n renewTokens(options?: RenewTokensParams): Promise<Tokens>;\n renewTokensWithRefresh(tokenParams: TokenParams, refreshTokenObject: RefreshToken): Promise<Tokens>;\n verify(token: IDToken, params?: object): Promise<IDToken>;\n isLoginRedirect(): boolean;\n introspect(kind: TokenKind, token?: Token): any; // TODO: make real return type\n}\n\nexport interface TokenVerifyParams {\n clientId: string;\n issuer: string;\n ignoreSignature?: boolean;\n nonce?: string;\n accessToken?: string; // raw access token string\n acrValues?: string;\n}\n\nexport interface IDTokenAPI {\n authorize: {\n _getLocationHref: () => string;\n };\n}\n\nexport interface PkceAPI {\n DEFAULT_CODE_CHALLENGE_METHOD: string;\n generateVerifier(prefix: string): string;\n computeChallenge(str: string): PromiseLike<any>;\n}\n\nexport interface IsAuthenticatedOptions {\n onExpiredToken?: 'renew' | 'remove' | 'none';\n}\n\nexport interface SignoutRedirectUrlOptions {\n postLogoutRedirectUri?: string | null;\n idToken?: IDToken;\n state?: string;\n}\n\nexport interface SignoutOptions extends SignoutRedirectUrlOptions {\n revokeAccessToken?: boolean;\n revokeRefreshToken?: boolean;\n accessToken?: AccessToken;\n refreshToken?: RefreshToken;\n clearTokensBeforeRedirect?: boolean;\n}\n\nexport interface OriginalUriApi {\n getOriginalUri(state?: string): string | undefined;\n setOriginalUri(originalUri: string, state?: string): void;\n removeOriginalUri(state?: string): void;\n}\n\nexport interface MinimalOktaOAuthInterface\n<\n M extends OAuthTransactionMeta = PKCETransactionMeta,\n S extends OAuthStorageManagerInterface<M> = OAuthStorageManagerInterface<M>,\n O extends OktaAuthOAuthOptions = OktaAuthOAuthOptions,\n TM extends TransactionManagerInterface = TransactionManagerInterface\n> \n extends OktaAuthSessionInterface<S, O>\n{\n token: BaseTokenAPI;\n transactionManager: TM;\n\n isPKCE(): boolean;\n isLoginRedirect(): boolean;\n isAuthorizationCodeFlow(): boolean;\n}\n\nexport interface OktaAuthOAuthInterface\n<\n M extends OAuthTransactionMeta = PKCETransactionMeta,\n S extends OAuthStorageManagerInterface<M> = OAuthStorageManagerInterface<M>,\n O extends OktaAuthOAuthOptions = OktaAuthOAuthOptions,\n TM extends TransactionManagerInterface = TransactionManagerInterface\n> \n extends OktaAuthSessionInterface<S, O>,\n OriginalUriApi\n{\n token: TokenAPI;\n tokenManager: TokenManagerInterface;\n pkce: PkceAPI;\n transactionManager: TM;\n endpoints: Endpoints;\n \n isPKCE(): boolean;\n getIdToken(): string | undefined;\n getAccessToken(): string | undefined;\n getRefreshToken(): string | undefined;\n getOrRenewAccessToken(): Promise<string | null>;\n\n isAuthenticated(options?: IsAuthenticatedOptions): Promise<boolean>;\n signOut(opts?: SignoutOptions): Promise<boolean>;\n isLoginRedirect(): boolean;\n isAuthorizationCodeFlow(): boolean;\n storeTokensFromRedirect(): Promise<void>;\n getUser<T extends CustomUserClaims = CustomUserClaims>(): Promise<UserClaims<T>>;\n signInWithRedirect(opts?: SigninWithRedirectOptions): Promise<void>;\n \n revokeAccessToken(accessToken?: AccessToken): Promise<unknown>;\n revokeRefreshToken(refreshToken?: RefreshToken): Promise<unknown>;\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
exports.RenewOnTabActivationService = void 0;
|
|
5
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
+
var _features = require("../features");
|
|
7
|
+
const getNow = () => Math.floor(Date.now() / 1000);
|
|
8
|
+
class RenewOnTabActivationService {
|
|
9
|
+
constructor(tokenManager, options = {}) {
|
|
10
|
+
(0, _defineProperty2.default)(this, "started", false);
|
|
11
|
+
(0, _defineProperty2.default)(this, "lastHidden", -1);
|
|
12
|
+
this.tokenManager = tokenManager;
|
|
13
|
+
this.options = options;
|
|
14
|
+
// store this context for event handler
|
|
15
|
+
this.onPageVisbilityChange = this._onPageVisbilityChange.bind(this);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
// do not use directly, use `onPageVisbilityChange` (with binded this context)
|
|
19
|
+
/* eslint complexity: [0, 10] */
|
|
20
|
+
_onPageVisbilityChange() {
|
|
21
|
+
if (document.hidden) {
|
|
22
|
+
this.lastHidden = getNow();
|
|
23
|
+
}
|
|
24
|
+
// renew will only attempt if tab was inactive for duration
|
|
25
|
+
else if (this.lastHidden > 0 && getNow() - this.lastHidden >= this.options.tabInactivityDuration) {
|
|
26
|
+
const {
|
|
27
|
+
accessToken,
|
|
28
|
+
idToken
|
|
29
|
+
} = this.tokenManager.getTokensSync();
|
|
30
|
+
if (!!accessToken && this.tokenManager.hasExpired(accessToken)) {
|
|
31
|
+
const key = this.tokenManager.getStorageKeyByType('accessToken');
|
|
32
|
+
// Renew errors will emit an "error" event
|
|
33
|
+
this.tokenManager.renew(key).catch(() => {});
|
|
34
|
+
} else if (!!idToken && this.tokenManager.hasExpired(idToken)) {
|
|
35
|
+
const key = this.tokenManager.getStorageKeyByType('idToken');
|
|
36
|
+
// Renew errors will emit an "error" event
|
|
37
|
+
this.tokenManager.renew(key).catch(() => {});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
async start() {
|
|
42
|
+
if (this.canStart() && !!document) {
|
|
43
|
+
document.addEventListener('visibilitychange', this.onPageVisbilityChange);
|
|
44
|
+
this.started = true;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
async stop() {
|
|
48
|
+
if (document) {
|
|
49
|
+
document.removeEventListener('visibilitychange', this.onPageVisbilityChange);
|
|
50
|
+
this.started = false;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
canStart() {
|
|
54
|
+
return (0, _features.isBrowser)() && !!this.options.autoRenew && !!this.options.renewOnTabActivation && !this.started;
|
|
55
|
+
}
|
|
56
|
+
requiresLeadership() {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
isStarted() {
|
|
60
|
+
return this.started;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.RenewOnTabActivationService = RenewOnTabActivationService;
|
|
64
|
+
//# sourceMappingURL=RenewOnTabActivationService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenewOnTabActivationService.js","names":["getNow","Math","floor","Date","now","RenewOnTabActivationService","constructor","tokenManager","options","onPageVisbilityChange","_onPageVisbilityChange","bind","document","hidden","lastHidden","tabInactivityDuration","accessToken","idToken","getTokensSync","hasExpired","key","getStorageKeyByType","renew","catch","start","canStart","addEventListener","started","stop","removeEventListener","isBrowser","autoRenew","renewOnTabActivation","requiresLeadership","isStarted"],"sources":["../../../lib/services/RenewOnTabActivationService.ts"],"sourcesContent":["import { ServiceInterface, ServiceManagerOptions } from '../core/types';\nimport { TokenManagerInterface } from '../oidc/types';\nimport { isBrowser } from '../features';\n\nconst getNow = () => Math.floor(Date.now() / 1000);\n\nexport class RenewOnTabActivationService implements ServiceInterface {\n private tokenManager: TokenManagerInterface;\n private started = false;\n private options: ServiceManagerOptions;\n private lastHidden = -1;\n onPageVisbilityChange: () => void;\n\n constructor(tokenManager: TokenManagerInterface, options: ServiceManagerOptions = {}) {\n this.tokenManager = tokenManager;\n this.options = options;\n // store this context for event handler\n this.onPageVisbilityChange = this._onPageVisbilityChange.bind(this);\n }\n\n // do not use directly, use `onPageVisbilityChange` (with binded this context)\n /* eslint complexity: [0, 10] */\n private _onPageVisbilityChange () {\n if (document.hidden) {\n this.lastHidden = getNow();\n }\n // renew will only attempt if tab was inactive for duration\n else if (this.lastHidden > 0 && (getNow() - this.lastHidden >= this.options.tabInactivityDuration!)) {\n const { accessToken, idToken } = this.tokenManager.getTokensSync();\n if (!!accessToken && this.tokenManager.hasExpired(accessToken)) {\n const key = this.tokenManager.getStorageKeyByType('accessToken');\n // Renew errors will emit an \"error\" event\n this.tokenManager.renew(key).catch(() => {});\n }\n else if (!!idToken && this.tokenManager.hasExpired(idToken)) {\n const key = this.tokenManager.getStorageKeyByType('idToken');\n // Renew errors will emit an \"error\" event\n this.tokenManager.renew(key).catch(() => {});\n }\n }\n }\n\n async start () {\n if (this.canStart() && !!document) {\n document.addEventListener('visibilitychange', this.onPageVisbilityChange);\n this.started = true;\n }\n }\n\n async stop () {\n if (document) {\n document.removeEventListener('visibilitychange', this.onPageVisbilityChange);\n this.started = false;\n }\n }\n\n canStart(): boolean {\n return isBrowser() &&\n !!this.options.autoRenew &&\n !!this.options.renewOnTabActivation &&\n !this.started;\n }\n\n requiresLeadership(): boolean {\n return false;\n }\n\n isStarted(): boolean {\n return this.started;\n }\n}\n"],"mappings":";;;;;AAEA;AAEA,MAAMA,MAAM,GAAG,MAAMC,IAAI,CAACC,KAAK,CAACC,IAAI,CAACC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C,MAAMC,2BAA2B,CAA6B;EAOnEC,WAAW,CAACC,YAAmC,EAAEC,OAA8B,GAAG,CAAC,CAAC,EAAE;IAAA,+CALpE,KAAK;IAAA,kDAEF,CAAC,CAAC;IAIrB,IAAI,CAACD,YAAY,GAAGA,YAAY;IAChC,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB;IACA,IAAI,CAACC,qBAAqB,GAAG,IAAI,CAACC,sBAAsB,CAACC,IAAI,CAAC,IAAI,CAAC;EACrE;;EAEA;EACA;EACQD,sBAAsB,GAAI;IAChC,IAAIE,QAAQ,CAACC,MAAM,EAAE;MACnB,IAAI,CAACC,UAAU,GAAGd,MAAM,EAAE;IAC5B;IACA;IAAA,KACK,IAAI,IAAI,CAACc,UAAU,GAAG,CAAC,IAAKd,MAAM,EAAE,GAAG,IAAI,CAACc,UAAU,IAAI,IAAI,CAACN,OAAO,CAACO,qBAAuB,EAAE;MACnG,MAAM;QAAEC,WAAW;QAAEC;MAAQ,CAAC,GAAG,IAAI,CAACV,YAAY,CAACW,aAAa,EAAE;MAClE,IAAI,CAAC,CAACF,WAAW,IAAI,IAAI,CAACT,YAAY,CAACY,UAAU,CAACH,WAAW,CAAC,EAAE;QAC9D,MAAMI,GAAG,GAAG,IAAI,CAACb,YAAY,CAACc,mBAAmB,CAAC,aAAa,CAAC;QAChE;QACA,IAAI,CAACd,YAAY,CAACe,KAAK,CAACF,GAAG,CAAC,CAACG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;MAC9C,CAAC,MACI,IAAI,CAAC,CAACN,OAAO,IAAI,IAAI,CAACV,YAAY,CAACY,UAAU,CAACF,OAAO,CAAC,EAAE;QAC3D,MAAMG,GAAG,GAAG,IAAI,CAACb,YAAY,CAACc,mBAAmB,CAAC,SAAS,CAAC;QAC5D;QACA,IAAI,CAACd,YAAY,CAACe,KAAK,CAACF,GAAG,CAAC,CAACG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;MAC9C;IACF;EACF;EAEA,MAAMC,KAAK,GAAI;IACb,IAAI,IAAI,CAACC,QAAQ,EAAE,IAAI,CAAC,CAACb,QAAQ,EAAE;MACjCA,QAAQ,CAACc,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAACjB,qBAAqB,CAAC;MACzE,IAAI,CAACkB,OAAO,GAAG,IAAI;IACrB;EACF;EAEA,MAAMC,IAAI,GAAI;IACZ,IAAIhB,QAAQ,EAAE;MACZA,QAAQ,CAACiB,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAACpB,qBAAqB,CAAC;MAC5E,IAAI,CAACkB,OAAO,GAAG,KAAK;IACtB;EACF;EAEAF,QAAQ,GAAY;IAClB,OAAO,IAAAK,mBAAS,GAAE,IAClB,CAAC,CAAC,IAAI,CAACtB,OAAO,CAACuB,SAAS,IACxB,CAAC,CAAC,IAAI,CAACvB,OAAO,CAACwB,oBAAoB,IACnC,CAAC,IAAI,CAACL,OAAO;EACf;EAEAM,kBAAkB,GAAY;IAC5B,OAAO,KAAK;EACd;EAEAC,SAAS,GAAY;IACnB,OAAO,IAAI,CAACP,OAAO;EACrB;AACF;AAAC"}
|
package/cjs/services/index.js
CHANGED
|
@@ -33,4 +33,15 @@ Object.keys(_LeaderElectionService).forEach(function (key) {
|
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
35
|
});
|
|
36
|
+
var _RenewOnTabActivationService = require("./RenewOnTabActivationService");
|
|
37
|
+
Object.keys(_RenewOnTabActivationService).forEach(function (key) {
|
|
38
|
+
if (key === "default" || key === "__esModule") return;
|
|
39
|
+
if (key in exports && exports[key] === _RenewOnTabActivationService[key]) return;
|
|
40
|
+
Object.defineProperty(exports, key, {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function () {
|
|
43
|
+
return _RenewOnTabActivationService[key];
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
});
|
|
36
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../lib/services/index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\n\nexport * from './AutoRenewService';\nexport * from './SyncStorageService';\nexport * from './LeaderElectionService';\n"],"mappings":";;AAaA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../lib/services/index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\n\nexport * from './AutoRenewService';\nexport * from './SyncStorageService';\nexport * from './LeaderElectionService';\nexport * from './RenewOnTabActivationService';\n"],"mappings":";;AAaA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8"/>
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
6
|
-
<title>@okta/okta-auth-js [
|
|
6
|
+
<title>@okta/okta-auth-js [23 Apr 2024 at 18:44]</title>
|
|
7
7
|
<link rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII=" type="image/x-icon" />
|
|
8
8
|
|
|
9
9
|
<script>
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
<body>
|
|
32
32
|
<div id="app"></div>
|
|
33
33
|
<script>
|
|
34
|
-
window.chartData = [{"label":"okta-auth-js.authn.min.js","isAsset":true,"statSize":465176,"parsedSize":216308,"gzipSize":49306,"groups":[{"label":"lib","path":"./lib","statSize":352389,"groups":[{"label":"authn","path":"./lib/authn","statSize":20983,"groups":[{"id":97,"label":"AuthnTransactionImpl.ts","path":"./lib/authn/AuthnTransactionImpl.ts","statSize":2549,"parsedSize":1410,"gzipSize":492},{"id":9859,"label":"api.ts","path":"./lib/authn/api.ts","statSize":2330,"parsedSize":1143,"gzipSize":457},{"id":8248,"label":"factory.ts","path":"./lib/authn/factory.ts","statSize":843,"parsedSize":453,"gzipSize":228},{"id":3398,"label":"index.ts","path":"./lib/authn/index.ts","statSize":1005,"parsedSize":569,"gzipSize":223},{"id":3164,"label":"mixin.ts","path":"./lib/authn/mixin.ts","statSize":5890,"parsedSize":2327,"gzipSize":910},{"id":2576,"label":"types.ts","path":"./lib/authn/types.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"label":"util","path":"./lib/authn/util","statSize":8353,"groups":[{"id":6693,"label":"flattenEmbedded.ts","path":"./lib/authn/util/flattenEmbedded.ts","statSize":942,"parsedSize":472,"gzipSize":312},{"id":8657,"label":"link2fn.ts","path":"./lib/authn/util/link2fn.ts","statSize":3027,"parsedSize":1386,"gzipSize":689},{"id":9265,"label":"links2fns.ts","path":"./lib/authn/util/links2fns.ts","statSize":760,"parsedSize":337,"gzipSize":246},{"id":3395,"label":"poll.ts","path":"./lib/authn/util/poll.ts","statSize":3253,"parsedSize":1336,"gzipSize":684},{"id":1349,"label":"stateToken.ts","path":"./lib/authn/util/stateToken.ts","statSize":371,"parsedSize":196,"gzipSize":139}],"parsedSize":3727,"gzipSize":1493}],"parsedSize":9641,"gzipSize":3008},{"label":"base","path":"./lib/base","statSize":4550,"groups":[{"id":9893,"label":"factory.ts","path":"./lib/base/factory.ts","statSize":2781,"parsedSize":1206,"gzipSize":598},{"id":3306,"label":"index.ts","path":"./lib/base/index.ts","statSize":1015,"parsedSize":569,"gzipSize":221},{"id":5093,"label":"options.ts","path":"./lib/base/options.ts","statSize":741,"parsedSize":251,"gzipSize":187},{"id":6429,"label":"types.ts","path":"./lib/base/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":2038,"gzipSize":795},{"label":"browser","path":"./lib/browser","statSize":8017,"groups":[{"id":5407,"label":"browserStorage.ts","path":"./lib/browser/browserStorage.ts","statSize":6256,"parsedSize":3041,"gzipSize":1133},{"id":8719,"label":"fingerprint.ts","path":"./lib/browser/fingerprint.ts","statSize":1761,"parsedSize":1016,"gzipSize":566}],"parsedSize":4057,"gzipSize":1567},{"id":6244,"label":"clock.ts","path":"./lib/clock.ts","statSize":1050,"parsedSize":408,"gzipSize":254},{"id":1971,"label":"constants.ts","path":"./lib/constants.ts","statSize":2594,"parsedSize":1272,"gzipSize":459},{"label":"core","path":"./lib/core","statSize":38726,"groups":[{"id":1018,"label":"AuthStateManager.ts","path":"./lib/core/AuthStateManager.ts","statSize":9938,"parsedSize":4168,"gzipSize":1540},{"label":"ServiceManager","path":"./lib/core/ServiceManager","statSize":13066,"groups":[{"id":2204,"label":"browser.ts","path":"./lib/core/ServiceManager/browser.ts","statSize":12730,"parsedSize":5767,"gzipSize":1987},{"id":6599,"label":"index.ts","path":"./lib/core/ServiceManager/index.ts","statSize":336,"parsedSize":209,"gzipSize":179}],"parsedSize":5976,"gzipSize":2060},{"id":1578,"label":"factory.ts","path":"./lib/core/factory.ts","statSize":808,"parsedSize":283,"gzipSize":204},{"id":3961,"label":"index.ts","path":"./lib/core/index.ts","statSize":2433,"parsedSize":1289,"gzipSize":284},{"id":8386,"label":"mixin.ts","path":"./lib/core/mixin.ts","statSize":8630,"parsedSize":3210,"gzipSize":1092},{"id":9133,"label":"options.ts","path":"./lib/core/options.ts","statSize":2599,"parsedSize":982,"gzipSize":469},{"id":2647,"label":"storage.ts","path":"./lib/core/storage.ts","statSize":210,"parsedSize":122,"gzipSize":117},{"label":"types","path":"./lib/core/types","statSize":1042,"groups":[{"id":2293,"label":"AuthState.ts","path":"./lib/core/types/AuthState.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":5675,"label":"Service.ts","path":"./lib/core/types/Service.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":6655,"label":"api.ts","path":"./lib/core/types/api.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":8553,"label":"index.ts","path":"./lib/core/types/index.ts","statSize":1015,"parsedSize":569,"gzipSize":223}],"parsedSize":605,"gzipSize":227}],"parsedSize":16635,"gzipSize":4277},{"label":"crypto","path":"./lib/crypto","statSize":5447,"groups":[{"id":7987,"label":"base64.ts","path":"./lib/crypto/base64.ts","statSize":1756,"parsedSize":945,"gzipSize":458},{"id":7594,"label":"browser.ts","path":"./lib/crypto/browser.ts","statSize":285,"parsedSize":189,"gzipSize":141},{"id":9718,"label":"index.ts","path":"./lib/crypto/index.ts","statSize":1711,"parsedSize":926,"gzipSize":251},{"id":5698,"label":"oidcHash.ts","path":"./lib/crypto/oidcHash.ts","statSize":519,"parsedSize":283,"gzipSize":230},{"id":6332,"label":"types.ts","path":"./lib/crypto/types.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":3154,"label":"verifyToken.ts","path":"./lib/crypto/verifyToken.ts","statSize":839,"parsedSize":410,"gzipSize":296},{"id":1,"label":"webcrypto.ts","path":"./lib/crypto/webcrypto.ts","statSize":336,"parsedSize":209,"gzipSize":179}],"parsedSize":2974,"gzipSize":993},{"label":"errors","path":"./lib/errors","statSize":14827,"groups":[{"id":3983,"label":"AuthApiError.ts","path":"./lib/errors/AuthApiError.ts","statSize":3201,"parsedSize":1333,"gzipSize":541},{"id":6573,"label":"AuthPollStopError.ts","path":"./lib/errors/AuthPollStopError.ts","statSize":1983,"parsedSize":778,"gzipSize":411},{"id":9123,"label":"AuthSdkError.ts","path":"./lib/errors/AuthSdkError.ts","statSize":2979,"parsedSize":1224,"gzipSize":521},{"id":401,"label":"CustomError.ts","path":"./lib/errors/CustomError.ts","statSize":2214,"parsedSize":876,"gzipSize":443},{"id":2886,"label":"OAuthError.ts","path":"./lib/errors/OAuthError.ts","statSize":2720,"parsedSize":1079,"gzipSize":479},{"id":5728,"label":"index.ts","path":"./lib/errors/index.ts","statSize":1729,"parsedSize":900,"gzipSize":355},{"id":1243,"label":"types.ts","path":"./lib/errors/types.ts","statSize":1,"parsedSize":12,"gzipSize":32}],"parsedSize":6202,"gzipSize":1116},{"label":"exports","path":"./lib/exports","statSize":8211,"groups":[{"id":5140,"label":"authn.ts","path":"./lib/exports/authn.ts","statSize":3070,"parsedSize":1382,"gzipSize":625},{"label":"cdn","path":"./lib/exports/cdn","statSize":168,"groups":[{"id":593,"label":"authn.ts","path":"./lib/exports/cdn/authn.ts","statSize":168,"parsedSize":101,"gzipSize":105}],"parsedSize":101,"gzipSize":105},{"id":6736,"label":"common.ts","path":"./lib/exports/common.ts","statSize":4973,"parsedSize":2670,"gzipSize":612}],"parsedSize":4153,"gzipSize":1040},{"id":415,"label":"features.ts","path":"./lib/features.ts","statSize":1836,"parsedSize":935,"gzipSize":447},{"label":"fetch","path":"./lib/fetch","statSize":4580,"groups":[{"id":4447,"label":"fetchRequest.ts","path":"./lib/fetch/fetchRequest.ts","statSize":4580,"parsedSize":2383,"gzipSize":1232}],"parsedSize":2383,"gzipSize":1232},{"label":"http","path":"./lib/http","statSize":19086,"groups":[{"id":287,"label":"OktaUserAgent.ts","path":"./lib/http/OktaUserAgent.ts","statSize":1534,"parsedSize":736,"gzipSize":384},{"id":2281,"label":"headers.ts","path":"./lib/http/headers.ts","statSize":248,"parsedSize":126,"gzipSize":102},{"id":4777,"label":"index.ts","path":"./lib/http/index.ts","statSize":2046,"parsedSize":1108,"gzipSize":266},{"id":3334,"label":"mixin.ts","path":"./lib/http/mixin.ts","statSize":3400,"parsedSize":1435,"gzipSize":712},{"id":4090,"label":"options.ts","path":"./lib/http/options.ts","statSize":3185,"parsedSize":1284,"gzipSize":538},{"id":5385,"label":"request.ts","path":"./lib/http/request.ts","statSize":8660,"parsedSize":4558,"gzipSize":2085},{"id":8958,"label":"types.ts","path":"./lib/http/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":9259,"gzipSize":3162},{"label":"oidc","path":"./lib/oidc","statSize":168618,"groups":[{"id":3426,"label":"TokenManager.ts","path":"./lib/oidc/TokenManager.ts","statSize":17759,"parsedSize":8705,"gzipSize":2455},{"id":130,"label":"TransactionManager.ts","path":"./lib/oidc/TransactionManager.ts","statSize":3757,"parsedSize":1865,"gzipSize":650},{"id":1237,"label":"decodeToken.ts","path":"./lib/oidc/decodeToken.ts","statSize":495,"parsedSize":285,"gzipSize":227},{"label":"endpoints","path":"./lib/oidc/endpoints","statSize":8413,"groups":[{"id":2206,"label":"authorize.ts","path":"./lib/oidc/endpoints/authorize.ts","statSize":3290,"parsedSize":1887,"gzipSize":873},{"id":2642,"label":"index.ts","path":"./lib/oidc/endpoints/index.ts","statSize":1036,"parsedSize":567,"gzipSize":220},{"id":9231,"label":"token.ts","path":"./lib/oidc/endpoints/token.ts","statSize":2652,"parsedSize":1548,"gzipSize":707},{"id":52,"label":"well-known.ts","path":"./lib/oidc/endpoints/well-known.ts","statSize":1435,"parsedSize":662,"gzipSize":407}],"parsedSize":4664,"gzipSize":1741},{"id":9284,"label":"enrollAuthenticator.ts","path":"./lib/oidc/enrollAuthenticator.ts","statSize":673,"parsedSize":367,"gzipSize":241},{"id":8707,"label":"exchangeCodeForTokens.ts","path":"./lib/oidc/exchangeCodeForTokens.ts","statSize":1825,"parsedSize":789,"gzipSize":467},{"label":"factory","path":"./lib/oidc/factory","statSize":4341,"groups":[{"id":3859,"label":"OktaAuthOAuth.ts","path":"./lib/oidc/factory/OktaAuthOAuth.ts","statSize":741,"parsedSize":253,"gzipSize":189},{"id":7203,"label":"api.ts","path":"./lib/oidc/factory/api.ts","statSize":2902,"parsedSize":1375,"gzipSize":611},{"id":7276,"label":"index.ts","path":"./lib/oidc/factory/index.ts","statSize":698,"parsedSize":389,"gzipSize":207}],"parsedSize":2017,"gzipSize":832},{"id":3253,"label":"getToken.ts","path":"./lib/oidc/getToken.ts","statSize":3766,"parsedSize":1662,"gzipSize":842},{"id":6844,"label":"getUserInfo.ts","path":"./lib/oidc/getUserInfo.ts","statSize":3785,"parsedSize":1581,"gzipSize":706},{"id":9770,"label":"getWithPopup.ts","path":"./lib/oidc/getWithPopup.ts","statSize":664,"parsedSize":397,"gzipSize":302},{"id":6803,"label":"getWithRedirect.ts","path":"./lib/oidc/getWithRedirect.ts","statSize":1997,"parsedSize":848,"gzipSize":515},{"id":7625,"label":"getWithoutPrompt.ts","path":"./lib/oidc/getWithoutPrompt.ts","statSize":577,"parsedSize":355,"gzipSize":276},{"id":8676,"label":"handleOAuthResponse.ts","path":"./lib/oidc/handleOAuthResponse.ts","statSize":5683,"parsedSize":2366,"gzipSize":1081},{"id":9443,"label":"index.ts","path":"./lib/oidc/index.ts","statSize":7031,"parsedSize":3917,"gzipSize":732},{"id":8113,"label":"introspect.ts","path":"./lib/oidc/introspect.ts","statSize":3381,"parsedSize":1413,"gzipSize":794},{"label":"mixin","path":"./lib/oidc/mixin","statSize":29010,"groups":[{"id":4449,"label":"browser.ts","path":"./lib/oidc/mixin/browser.ts","statSize":3456,"parsedSize":1411,"gzipSize":593},{"id":498,"label":"index.ts","path":"./lib/oidc/mixin/index.ts","statSize":25554,"parsedSize":9995,"gzipSize":2930}],"parsedSize":11406,"gzipSize":3202},{"label":"options","path":"./lib/oidc/options","statSize":9551,"groups":[{"id":3234,"label":"OAuthOptionsConstructor.ts","path":"./lib/oidc/options/OAuthOptionsConstructor.ts","statSize":8985,"parsedSize":4680,"gzipSize":1511},{"id":5577,"label":"browser.ts","path":"./lib/oidc/options/browser.ts","statSize":135,"parsedSize":81,"gzipSize":81},{"id":3775,"label":"index.ts","path":"./lib/oidc/options/index.ts","statSize":431,"parsedSize":209,"gzipSize":179}],"parsedSize":4970,"gzipSize":1603},{"id":9094,"label":"parseFromUrl.ts","path":"./lib/oidc/parseFromUrl.ts","statSize":4757,"parsedSize":2056,"gzipSize":911},{"id":2476,"label":"renewToken.ts","path":"./lib/oidc/renewToken.ts","statSize":2914,"parsedSize":1153,"gzipSize":618},{"id":6268,"label":"renewTokens.ts","path":"./lib/oidc/renewTokens.ts","statSize":3398,"parsedSize":1403,"gzipSize":692},{"id":781,"label":"renewTokensWithRefresh.ts","path":"./lib/oidc/renewTokensWithRefresh.ts","statSize":2839,"parsedSize":1045,"gzipSize":605},{"id":6466,"label":"revokeToken.ts","path":"./lib/oidc/revokeToken.ts","statSize":2575,"parsedSize":1052,"gzipSize":626},{"id":2333,"label":"storage.ts","path":"./lib/oidc/storage.ts","statSize":3550,"parsedSize":1510,"gzipSize":618},{"label":"types","path":"./lib/oidc/types","statSize":7004,"groups":[{"id":5842,"label":"JWT.ts","path":"./lib/oidc/types/JWT.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":6488,"label":"Token.ts","path":"./lib/oidc/types/Token.ts","statSize":766,"parsedSize":422,"gzipSize":214},{"id":7088,"label":"TokenManager.ts","path":"./lib/oidc/types/TokenManager.ts","statSize":587,"parsedSize":286,"gzipSize":170},{"id":4319,"label":"Transaction.ts","path":"./lib/oidc/types/Transaction.ts","statSize":1450,"parsedSize":564,"gzipSize":302},{"id":6593,"label":"TransactionManager.ts","path":"./lib/oidc/types/TransactionManager.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":7615,"label":"UserClaims.ts","path":"./lib/oidc/types/UserClaims.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":2740,"label":"api.ts","path":"./lib/oidc/types/api.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":8665,"label":"endpoints.ts","path":"./lib/oidc/types/endpoints.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":8927,"label":"index.ts","path":"./lib/oidc/types/index.ts","statSize":4108,"parsedSize":2188,"gzipSize":356},{"id":8741,"label":"meta.ts","path":"./lib/oidc/types/meta.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":6370,"label":"options.ts","path":"./lib/oidc/types/options.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":9263,"label":"proto.ts","path":"./lib/oidc/types/proto.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":195,"label":"storage.ts","path":"./lib/oidc/types/storage.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":3568,"gzipSize":842},{"label":"util","path":"./lib/oidc/util","statSize":34185,"groups":[{"id":4970,"label":"browser.ts","path":"./lib/oidc/util/browser.ts","statSize":1905,"parsedSize":1013,"gzipSize":551},{"id":5078,"label":"defaultEnrollAuthenticatorParams.ts","path":"./lib/oidc/util/defaultEnrollAuthenticatorParams.ts","statSize":804,"parsedSize":382,"gzipSize":277},{"id":7756,"label":"defaultTokenParams.ts","path":"./lib/oidc/util/defaultTokenParams.ts","statSize":1176,"parsedSize":540,"gzipSize":351},{"id":8080,"label":"enrollAuthenticatorMeta.ts","path":"./lib/oidc/util/enrollAuthenticatorMeta.ts","statSize":591,"parsedSize":323,"gzipSize":208},{"id":9912,"label":"errors.ts","path":"./lib/oidc/util/errors.ts","statSize":1054,"parsedSize":501,"gzipSize":299},{"id":8785,"label":"index.ts","path":"./lib/oidc/util/index.ts","statSize":6588,"parsedSize":3271,"gzipSize":461},{"id":8221,"label":"loginRedirect.ts","path":"./lib/oidc/util/loginRedirect.ts","statSize":2394,"parsedSize":1074,"gzipSize":478},{"id":7599,"label":"oauth.ts","path":"./lib/oidc/util/oauth.ts","statSize":2473,"parsedSize":1262,"gzipSize":514},{"id":2865,"label":"oauthMeta.ts","path":"./lib/oidc/util/oauthMeta.ts","statSize":1982,"parsedSize":1090,"gzipSize":525},{"id":3611,"label":"pkce.ts","path":"./lib/oidc/util/pkce.ts","statSize":1259,"parsedSize":722,"gzipSize":453},{"id":6757,"label":"prepareEnrollAuthenticatorParams.ts","path":"./lib/oidc/util/prepareEnrollAuthenticatorParams.ts","statSize":1923,"parsedSize":1071,"gzipSize":518},{"id":6898,"label":"prepareTokenParams.ts","path":"./lib/oidc/util/prepareTokenParams.ts","statSize":6512,"parsedSize":2884,"gzipSize":1187},{"id":6635,"label":"refreshToken.ts","path":"./lib/oidc/util/refreshToken.ts","statSize":531,"parsedSize":263,"gzipSize":188},{"id":3327,"label":"sharedStorage.ts","path":"./lib/oidc/util/sharedStorage.ts","statSize":1657,"parsedSize":727,"gzipSize":315},{"id":1969,"label":"urlParams.ts","path":"./lib/oidc/util/urlParams.ts","statSize":807,"parsedSize":364,"gzipSize":257},{"id":6003,"label":"validateClaims.ts","path":"./lib/oidc/util/validateClaims.ts","statSize":1700,"parsedSize":976,"gzipSize":476},{"id":2482,"label":"validateToken.ts","path":"./lib/oidc/util/validateToken.ts","statSize":829,"parsedSize":569,"gzipSize":268}],"parsedSize":17032,"gzipSize":4674},{"id":1260,"label":"verifyToken.ts","path":"./lib/oidc/verifyToken.ts","statSize":4688,"parsedSize":1950,"gzipSize":932}],"parsedSize":78376,"gzipSize":17637},{"label":"services","path":"./lib/services","statSize":19710,"groups":[{"id":2282,"label":"AutoRenewService.ts","path":"./lib/services/AutoRenewService.ts","statSize":4939,"parsedSize":2388,"gzipSize":881},{"id":6748,"label":"LeaderElectionService.ts","path":"./lib/services/LeaderElectionService.ts","statSize":5685,"parsedSize":2393,"gzipSize":788},{"id":5550,"label":"SyncStorageService.ts","path":"./lib/services/SyncStorageService.ts","statSize":7891,"parsedSize":3907,"gzipSize":1150},{"id":2604,"label":"index.ts","path":"./lib/services/index.ts","statSize":1195,"parsedSize":569,"gzipSize":222}],"parsedSize":9257,"gzipSize":2014},{"label":"session","path":"./lib/session","statSize":6969,"groups":[{"id":3719,"label":"api.ts","path":"./lib/session/api.ts","statSize":1737,"parsedSize":1028,"gzipSize":472},{"id":2815,"label":"factory.ts","path":"./lib/session/factory.ts","statSize":418,"parsedSize":278,"gzipSize":172},{"id":8041,"label":"index.ts","path":"./lib/session/index.ts","statSize":1322,"parsedSize":749,"gzipSize":240},{"id":3980,"label":"mixin.ts","path":"./lib/session/mixin.ts","statSize":3479,"parsedSize":1356,"gzipSize":681},{"id":1249,"label":"types.ts","path":"./lib/session/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":3423,"gzipSize":1266},{"label":"storage","path":"./lib/storage","statSize":16437,"groups":[{"id":5437,"label":"BaseStorageManager.ts","path":"./lib/storage/BaseStorageManager.ts","statSize":3442,"parsedSize":1567,"gzipSize":689},{"id":5763,"label":"SavedObject.ts","path":"./lib/storage/SavedObject.ts","statSize":2766,"parsedSize":1378,"gzipSize":517},{"id":9927,"label":"index.ts","path":"./lib/storage/index.ts","statSize":1852,"parsedSize":928,"gzipSize":251},{"id":265,"label":"mixin.ts","path":"./lib/storage/mixin.ts","statSize":2704,"parsedSize":1032,"gzipSize":532},{"label":"options","path":"./lib/storage/options","statSize":5660,"groups":[{"id":4863,"label":"StorageOptionsConstructor.ts","path":"./lib/storage/options/StorageOptionsConstructor.ts","statSize":3822,"parsedSize":1745,"gzipSize":768},{"id":8009,"label":"browser.ts","path":"./lib/storage/options/browser.ts","statSize":1838,"parsedSize":1031,"gzipSize":525}],"parsedSize":2776,"gzipSize":1137},{"id":5752,"label":"types.ts","path":"./lib/storage/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":7693,"gzipSize":2272},{"label":"util","path":"./lib/util","statSize":10748,"groups":[{"id":3548,"label":"PromiseQueue.ts","path":"./lib/util/PromiseQueue.ts","statSize":2535,"parsedSize":1170,"gzipSize":597},{"id":146,"label":"console.ts","path":"./lib/util/console.ts","statSize":965,"parsedSize":501,"gzipSize":281},{"id":305,"label":"index.ts","path":"./lib/util/index.ts","statSize":2011,"parsedSize":1108,"gzipSize":267},{"id":8750,"label":"misc.ts","path":"./lib/util/misc.ts","statSize":883,"parsedSize":473,"gzipSize":338},{"id":3193,"label":"object.ts","path":"./lib/util/object.ts","statSize":2215,"parsedSize":1076,"gzipSize":513},{"id":4771,"label":"types.ts","path":"./lib/util/types.ts","statSize":636,"parsedSize":433,"gzipSize":183},{"id":6718,"label":"url.ts","path":"./lib/util/url.ts","statSize":1503,"parsedSize":829,"gzipSize":420}],"parsedSize":5590,"gzipSize":1935}],"parsedSize":164296,"gzipSize":34982},{"label":"node_modules","path":"./node_modules","statSize":112787,"groups":[{"label":"@babel/runtime","path":"./node_modules/@babel/runtime","statSize":28938,"groups":[{"label":"helpers","path":"./node_modules/@babel/runtime/helpers","statSize":28490,"groups":[{"id":3897,"label":"arrayLikeToArray.js","path":"./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","statSize":309,"parsedSize":179,"gzipSize":151},{"id":5372,"label":"arrayWithHoles.js","path":"./node_modules/@babel/runtime/helpers/arrayWithHoles.js","statSize":183,"parsedSize":116,"gzipSize":99},{"id":3405,"label":"arrayWithoutHoles.js","path":"./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","statSize":264,"parsedSize":137,"gzipSize":120},{"id":6115,"label":"assertThisInitialized.js","path":"./node_modules/@babel/runtime/helpers/assertThisInitialized.js","statSize":295,"parsedSize":196,"gzipSize":153},{"id":7156,"label":"asyncToGenerator.js","path":"./node_modules/@babel/runtime/helpers/asyncToGenerator.js","statSize":879,"parsedSize":389,"gzipSize":244},{"id":6690,"label":"classCallCheck.js","path":"./node_modules/@babel/runtime/helpers/classCallCheck.js","statSize":273,"parsedSize":167,"gzipSize":140},{"id":3515,"label":"construct.js","path":"./node_modules/@babel/runtime/helpers/construct.js","statSize":902,"parsedSize":427,"gzipSize":228},{"id":9728,"label":"createClass.js","path":"./node_modules/@babel/runtime/helpers/createClass.js","statSize":750,"parsedSize":347,"gzipSize":230},{"id":8416,"label":"defineProperty.js","path":"./node_modules/@babel/runtime/helpers/defineProperty.js","statSize":365,"parsedSize":193,"gzipSize":153},{"id":1588,"label":"get.js","path":"./node_modules/@babel/runtime/helpers/get.js","statSize":830,"parsedSize":465,"gzipSize":246},{"id":3808,"label":"getPrototypeOf.js","path":"./node_modules/@babel/runtime/helpers/getPrototypeOf.js","statSize":429,"parsedSize":275,"gzipSize":151},{"id":1655,"label":"inherits.js","path":"./node_modules/@babel/runtime/helpers/inherits.js","statSize":658,"parsedSize":370,"gzipSize":252},{"id":4836,"label":"interopRequireDefault.js","path":"./node_modules/@babel/runtime/helpers/interopRequireDefault.js","statSize":224,"parsedSize":124,"gzipSize":98},{"id":6035,"label":"isNativeFunction.js","path":"./node_modules/@babel/runtime/helpers/isNativeFunction.js","statSize":217,"parsedSize":149,"gzipSize":130},{"id":9617,"label":"isNativeReflectConstruct.js","path":"./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","statSize":475,"parsedSize":328,"gzipSize":203},{"id":9498,"label":"iterableToArray.js","path":"./node_modules/@babel/runtime/helpers/iterableToArray.js","statSize":273,"parsedSize":187,"gzipSize":150},{"id":8872,"label":"iterableToArrayLimit.js","path":"./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","statSize":705,"parsedSize":385,"gzipSize":270},{"id":2218,"label":"nonIterableRest.js","path":"./node_modules/@babel/runtime/helpers/nonIterableRest.js","statSize":308,"parsedSize":247,"gzipSize":194},{"id":5343,"label":"nonIterableSpread.js","path":"./node_modules/@babel/runtime/helpers/nonIterableSpread.js","statSize":307,"parsedSize":242,"gzipSize":192},{"id":215,"label":"objectWithoutProperties.js","path":"./node_modules/@babel/runtime/helpers/objectWithoutProperties.js","statSize":741,"parsedSize":332,"gzipSize":239},{"id":7071,"label":"objectWithoutPropertiesLoose.js","path":"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","statSize":459,"parsedSize":207,"gzipSize":172},{"id":4993,"label":"possibleConstructorReturn.js","path":"./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","statSize":542,"parsedSize":286,"gzipSize":213},{"id":7061,"label":"regeneratorRuntime.js","path":"./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","statSize":13835,"parsedSize":6632,"gzipSize":2419},{"id":6015,"label":"setPrototypeOf.js","path":"./node_modules/@babel/runtime/helpers/setPrototypeOf.js","statSize":421,"parsedSize":259,"gzipSize":147},{"id":7424,"label":"slicedToArray.js","path":"./node_modules/@babel/runtime/helpers/slicedToArray.js","statSize":517,"parsedSize":170,"gzipSize":140},{"id":1753,"label":"superPropBase.js","path":"./node_modules/@babel/runtime/helpers/superPropBase.js","statSize":367,"parsedSize":183,"gzipSize":153},{"id":861,"label":"toConsumableArray.js","path":"./node_modules/@babel/runtime/helpers/toConsumableArray.js","statSize":516,"parsedSize":164,"gzipSize":138},{"id":8698,"label":"typeof.js","path":"./node_modules/@babel/runtime/helpers/typeof.js","statSize":554,"parsedSize":368,"gzipSize":178},{"id":6116,"label":"unsupportedIterableToArray.js","path":"./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","statSize":607,"parsedSize":377,"gzipSize":273},{"id":3496,"label":"wrapNativeSuper.js","path":"./node_modules/@babel/runtime/helpers/wrapNativeSuper.js","statSize":1285,"parsedSize":625,"gzipSize":351}],"parsedSize":14526,"gzipSize":4116},{"label":"regenerator","path":"./node_modules/@babel/runtime/regenerator","statSize":448,"groups":[{"id":4687,"label":"index.js","path":"./node_modules/@babel/runtime/regenerator/index.js","statSize":448,"parsedSize":181,"gzipSize":146}],"parsedSize":181,"gzipSize":146}],"parsedSize":14707,"gzipSize":4173},{"label":"broadcast-channel","path":"./node_modules/broadcast-channel","statSize":51008,"groups":[{"label":"dist/lib","path":"./node_modules/broadcast-channel/dist/lib","statSize":50454,"groups":[{"id":8991,"label":"broadcast-channel.js","path":"./node_modules/broadcast-channel/dist/lib/broadcast-channel.js","statSize":8004,"parsedSize":2739,"gzipSize":1104},{"id":8437,"label":"index.es5.js","path":"./node_modules/broadcast-channel/dist/lib/index.es5.js","statSize":559,"parsedSize":221,"gzipSize":155},{"id":5585,"label":"index.js","path":"./node_modules/broadcast-channel/dist/lib/index.js","statSize":1169,"parsedSize":724,"gzipSize":267},{"id":4781,"label":"leader-election-util.js","path":"./node_modules/broadcast-channel/dist/lib/leader-election-util.js","statSize":1725,"parsedSize":579,"gzipSize":343},{"id":683,"label":"leader-election-web-lock.js","path":"./node_modules/broadcast-channel/dist/lib/leader-election-web-lock.js","statSize":2905,"parsedSize":1421,"gzipSize":667},{"id":6550,"label":"leader-election.js","path":"./node_modules/broadcast-channel/dist/lib/leader-election.js","statSize":8953,"parsedSize":3260,"gzipSize":1108},{"id":4632,"label":"method-chooser.js","path":"./node_modules/broadcast-channel/dist/lib/method-chooser.js","statSize":2790,"parsedSize":669,"gzipSize":407},{"label":"methods","path":"./node_modules/broadcast-channel/dist/lib/methods","statSize":20543,"groups":[{"id":9122,"label":"indexed-db.js","path":"./node_modules/broadcast-channel/dist/lib/methods/indexed-db.js","statSize":11573,"parsedSize":4357,"gzipSize":1645},{"id":4924,"label":"localstorage.js","path":"./node_modules/broadcast-channel/dist/lib/methods/localstorage.js","statSize":5332,"parsedSize":2053,"gzipSize":1007},{"id":2026,"label":"native.js","path":"./node_modules/broadcast-channel/dist/lib/methods/native.js","statSize":1856,"parsedSize":1066,"gzipSize":569},{"id":1574,"label":"simulate.js","path":"./node_modules/broadcast-channel/dist/lib/methods/simulate.js","statSize":1782,"parsedSize":902,"gzipSize":443}],"parsedSize":8378,"gzipSize":2711},{"id":423,"label":"options.js","path":"./node_modules/broadcast-channel/dist/lib/options.js","statSize":1566,"parsedSize":737,"gzipSize":396},{"id":6202,"label":"util.js","path":"./node_modules/broadcast-channel/dist/lib/util.js","statSize":2240,"parsedSize":874,"gzipSize":444}],"parsedSize":19602,"gzipSize":5444},{"label":"node_modules/@babel/runtime/helpers","path":"./node_modules/broadcast-channel/node_modules/@babel/runtime/helpers","statSize":554,"groups":[{"id":3762,"label":"typeof.js","path":"./node_modules/broadcast-channel/node_modules/@babel/runtime/helpers/typeof.js","statSize":554,"parsedSize":368,"gzipSize":178}],"parsedSize":368,"gzipSize":178}],"parsedSize":19970,"gzipSize":5537},{"label":"cross-fetch/dist","path":"./node_modules/cross-fetch/dist","statSize":15491,"groups":[{"id":4098,"label":"browser-ponyfill.js","path":"./node_modules/cross-fetch/dist/browser-ponyfill.js","statSize":15491,"parsedSize":8241,"gzipSize":2804}],"parsedSize":8241,"gzipSize":2804},{"label":"js-cookie/dist","path":"./node_modules/js-cookie/dist","statSize":4150,"groups":[{"id":646,"label":"js.cookie.js","path":"./node_modules/js-cookie/dist/js.cookie.js","statSize":4150,"parsedSize":1426,"gzipSize":706}],"parsedSize":1426,"gzipSize":706},{"label":"oblivious-set/dist/es","path":"./node_modules/oblivious-set/dist/es","statSize":2061,"groups":[{"id":2151,"label":"index.js","path":"./node_modules/oblivious-set/dist/es/index.js","statSize":2061,"parsedSize":639,"gzipSize":346}],"parsedSize":639,"gzipSize":346},{"label":"p-cancelable","path":"./node_modules/p-cancelable","statSize":6424,"groups":[{"id":3615,"label":"index.js","path":"./node_modules/p-cancelable/index.js","statSize":6424,"parsedSize":3179,"gzipSize":1368}],"parsedSize":3179,"gzipSize":1368},{"label":"tiny-emitter","path":"./node_modules/tiny-emitter","statSize":1565,"groups":[{"id":4279,"label":"index.js","path":"./node_modules/tiny-emitter/index.js","statSize":1565,"parsedSize":586,"gzipSize":325}],"parsedSize":586,"gzipSize":325},{"label":"unload/dist/es","path":"./node_modules/unload/dist/es","statSize":3150,"groups":[{"id":4810,"label":"index.js + 2 modules (concatenated)","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)","statSize":3150,"parsedSize":1286,"gzipSize":527,"concatenated":true,"groups":[{"label":"node_modules/unload/dist/es","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es","statSize":3150,"groups":[{"id":null,"label":"index.js","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es/index.js","statSize":1227,"parsedSize":500,"gzipSize":205,"inaccurateSizes":true},{"id":null,"label":"node.js","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es/node.js","statSize":695,"parsedSize":283,"gzipSize":116,"inaccurateSizes":true},{"id":null,"label":"browser.js","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es/browser.js","statSize":1228,"parsedSize":501,"gzipSize":205,"inaccurateSizes":true}],"parsedSize":1286,"gzipSize":527,"inaccurateSizes":true}]}],"parsedSize":1286,"gzipSize":527}],"parsedSize":50034,"gzipSize":14060}]}];
|
|
34
|
+
window.chartData = [{"label":"okta-auth-js.authn.min.js","isAsset":true,"statSize":472805,"parsedSize":219743,"gzipSize":49865,"groups":[{"label":"lib","path":"./lib","statSize":360018,"groups":[{"label":"authn","path":"./lib/authn","statSize":20983,"groups":[{"id":97,"label":"AuthnTransactionImpl.ts","path":"./lib/authn/AuthnTransactionImpl.ts","statSize":2549,"parsedSize":1410,"gzipSize":492},{"id":9859,"label":"api.ts","path":"./lib/authn/api.ts","statSize":2330,"parsedSize":1143,"gzipSize":457},{"id":8248,"label":"factory.ts","path":"./lib/authn/factory.ts","statSize":843,"parsedSize":453,"gzipSize":228},{"id":3398,"label":"index.ts","path":"./lib/authn/index.ts","statSize":1005,"parsedSize":569,"gzipSize":223},{"id":3164,"label":"mixin.ts","path":"./lib/authn/mixin.ts","statSize":5890,"parsedSize":2327,"gzipSize":910},{"id":2576,"label":"types.ts","path":"./lib/authn/types.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"label":"util","path":"./lib/authn/util","statSize":8353,"groups":[{"id":6693,"label":"flattenEmbedded.ts","path":"./lib/authn/util/flattenEmbedded.ts","statSize":942,"parsedSize":472,"gzipSize":312},{"id":8657,"label":"link2fn.ts","path":"./lib/authn/util/link2fn.ts","statSize":3027,"parsedSize":1386,"gzipSize":689},{"id":9265,"label":"links2fns.ts","path":"./lib/authn/util/links2fns.ts","statSize":760,"parsedSize":337,"gzipSize":246},{"id":3395,"label":"poll.ts","path":"./lib/authn/util/poll.ts","statSize":3253,"parsedSize":1336,"gzipSize":683},{"id":1349,"label":"stateToken.ts","path":"./lib/authn/util/stateToken.ts","statSize":371,"parsedSize":196,"gzipSize":139}],"parsedSize":3727,"gzipSize":1493}],"parsedSize":9641,"gzipSize":3009},{"label":"base","path":"./lib/base","statSize":4550,"groups":[{"id":9893,"label":"factory.ts","path":"./lib/base/factory.ts","statSize":2781,"parsedSize":1206,"gzipSize":599},{"id":3306,"label":"index.ts","path":"./lib/base/index.ts","statSize":1015,"parsedSize":569,"gzipSize":221},{"id":5093,"label":"options.ts","path":"./lib/base/options.ts","statSize":741,"parsedSize":251,"gzipSize":187},{"id":6429,"label":"types.ts","path":"./lib/base/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":2038,"gzipSize":795},{"label":"browser","path":"./lib/browser","statSize":8017,"groups":[{"id":5407,"label":"browserStorage.ts","path":"./lib/browser/browserStorage.ts","statSize":6256,"parsedSize":3041,"gzipSize":1133},{"id":8719,"label":"fingerprint.ts","path":"./lib/browser/fingerprint.ts","statSize":1761,"parsedSize":1016,"gzipSize":566}],"parsedSize":4057,"gzipSize":1567},{"id":6244,"label":"clock.ts","path":"./lib/clock.ts","statSize":1050,"parsedSize":408,"gzipSize":254},{"id":1971,"label":"constants.ts","path":"./lib/constants.ts","statSize":2594,"parsedSize":1272,"gzipSize":459},{"label":"core","path":"./lib/core","statSize":39031,"groups":[{"id":1018,"label":"AuthStateManager.ts","path":"./lib/core/AuthStateManager.ts","statSize":9938,"parsedSize":4168,"gzipSize":1540},{"label":"ServiceManager","path":"./lib/core/ServiceManager","statSize":13371,"groups":[{"id":2204,"label":"browser.ts","path":"./lib/core/ServiceManager/browser.ts","statSize":13035,"parsedSize":5916,"gzipSize":2035},{"id":6599,"label":"index.ts","path":"./lib/core/ServiceManager/index.ts","statSize":336,"parsedSize":209,"gzipSize":179}],"parsedSize":6125,"gzipSize":2107},{"id":1578,"label":"factory.ts","path":"./lib/core/factory.ts","statSize":808,"parsedSize":283,"gzipSize":205},{"id":3961,"label":"index.ts","path":"./lib/core/index.ts","statSize":2433,"parsedSize":1289,"gzipSize":284},{"id":8386,"label":"mixin.ts","path":"./lib/core/mixin.ts","statSize":8630,"parsedSize":3210,"gzipSize":1092},{"id":9133,"label":"options.ts","path":"./lib/core/options.ts","statSize":2599,"parsedSize":982,"gzipSize":469},{"id":2647,"label":"storage.ts","path":"./lib/core/storage.ts","statSize":210,"parsedSize":122,"gzipSize":117},{"label":"types","path":"./lib/core/types","statSize":1042,"groups":[{"id":2293,"label":"AuthState.ts","path":"./lib/core/types/AuthState.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":5675,"label":"Service.ts","path":"./lib/core/types/Service.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":6655,"label":"api.ts","path":"./lib/core/types/api.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":8553,"label":"index.ts","path":"./lib/core/types/index.ts","statSize":1015,"parsedSize":569,"gzipSize":223}],"parsedSize":605,"gzipSize":227}],"parsedSize":16784,"gzipSize":4327},{"label":"crypto","path":"./lib/crypto","statSize":5447,"groups":[{"id":7987,"label":"base64.ts","path":"./lib/crypto/base64.ts","statSize":1756,"parsedSize":945,"gzipSize":458},{"id":7594,"label":"browser.ts","path":"./lib/crypto/browser.ts","statSize":285,"parsedSize":189,"gzipSize":141},{"id":9718,"label":"index.ts","path":"./lib/crypto/index.ts","statSize":1711,"parsedSize":926,"gzipSize":251},{"id":5698,"label":"oidcHash.ts","path":"./lib/crypto/oidcHash.ts","statSize":519,"parsedSize":283,"gzipSize":230},{"id":6332,"label":"types.ts","path":"./lib/crypto/types.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":3154,"label":"verifyToken.ts","path":"./lib/crypto/verifyToken.ts","statSize":839,"parsedSize":410,"gzipSize":296},{"id":1,"label":"webcrypto.ts","path":"./lib/crypto/webcrypto.ts","statSize":336,"parsedSize":209,"gzipSize":179}],"parsedSize":2974,"gzipSize":993},{"label":"errors","path":"./lib/errors","statSize":14827,"groups":[{"id":3983,"label":"AuthApiError.ts","path":"./lib/errors/AuthApiError.ts","statSize":3201,"parsedSize":1333,"gzipSize":541},{"id":6573,"label":"AuthPollStopError.ts","path":"./lib/errors/AuthPollStopError.ts","statSize":1983,"parsedSize":778,"gzipSize":411},{"id":9123,"label":"AuthSdkError.ts","path":"./lib/errors/AuthSdkError.ts","statSize":2979,"parsedSize":1224,"gzipSize":521},{"id":401,"label":"CustomError.ts","path":"./lib/errors/CustomError.ts","statSize":2214,"parsedSize":876,"gzipSize":443},{"id":2886,"label":"OAuthError.ts","path":"./lib/errors/OAuthError.ts","statSize":2720,"parsedSize":1079,"gzipSize":479},{"id":5728,"label":"index.ts","path":"./lib/errors/index.ts","statSize":1729,"parsedSize":900,"gzipSize":355},{"id":1243,"label":"types.ts","path":"./lib/errors/types.ts","statSize":1,"parsedSize":12,"gzipSize":32}],"parsedSize":6202,"gzipSize":1116},{"label":"exports","path":"./lib/exports","statSize":8211,"groups":[{"id":5140,"label":"authn.ts","path":"./lib/exports/authn.ts","statSize":3070,"parsedSize":1382,"gzipSize":625},{"label":"cdn","path":"./lib/exports/cdn","statSize":168,"groups":[{"id":593,"label":"authn.ts","path":"./lib/exports/cdn/authn.ts","statSize":168,"parsedSize":101,"gzipSize":105}],"parsedSize":101,"gzipSize":105},{"id":6736,"label":"common.ts","path":"./lib/exports/common.ts","statSize":4973,"parsedSize":2670,"gzipSize":612}],"parsedSize":4153,"gzipSize":1039},{"id":415,"label":"features.ts","path":"./lib/features.ts","statSize":1836,"parsedSize":935,"gzipSize":447},{"label":"fetch","path":"./lib/fetch","statSize":4580,"groups":[{"id":4447,"label":"fetchRequest.ts","path":"./lib/fetch/fetchRequest.ts","statSize":4580,"parsedSize":2383,"gzipSize":1232}],"parsedSize":2383,"gzipSize":1232},{"label":"http","path":"./lib/http","statSize":19086,"groups":[{"id":287,"label":"OktaUserAgent.ts","path":"./lib/http/OktaUserAgent.ts","statSize":1534,"parsedSize":736,"gzipSize":384},{"id":2281,"label":"headers.ts","path":"./lib/http/headers.ts","statSize":248,"parsedSize":126,"gzipSize":102},{"id":4777,"label":"index.ts","path":"./lib/http/index.ts","statSize":2046,"parsedSize":1108,"gzipSize":266},{"id":3334,"label":"mixin.ts","path":"./lib/http/mixin.ts","statSize":3400,"parsedSize":1435,"gzipSize":712},{"id":4090,"label":"options.ts","path":"./lib/http/options.ts","statSize":3185,"parsedSize":1284,"gzipSize":538},{"id":5385,"label":"request.ts","path":"./lib/http/request.ts","statSize":8660,"parsedSize":4558,"gzipSize":2086},{"id":8958,"label":"types.ts","path":"./lib/http/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":9259,"gzipSize":3164},{"label":"oidc","path":"./lib/oidc","statSize":171050,"groups":[{"id":3426,"label":"TokenManager.ts","path":"./lib/oidc/TokenManager.ts","statSize":18238,"parsedSize":8897,"gzipSize":2502},{"id":130,"label":"TransactionManager.ts","path":"./lib/oidc/TransactionManager.ts","statSize":3757,"parsedSize":1865,"gzipSize":650},{"id":1237,"label":"decodeToken.ts","path":"./lib/oidc/decodeToken.ts","statSize":495,"parsedSize":285,"gzipSize":227},{"label":"endpoints","path":"./lib/oidc/endpoints","statSize":8413,"groups":[{"id":2206,"label":"authorize.ts","path":"./lib/oidc/endpoints/authorize.ts","statSize":3290,"parsedSize":1887,"gzipSize":873},{"id":2642,"label":"index.ts","path":"./lib/oidc/endpoints/index.ts","statSize":1036,"parsedSize":567,"gzipSize":220},{"id":9231,"label":"token.ts","path":"./lib/oidc/endpoints/token.ts","statSize":2652,"parsedSize":1548,"gzipSize":707},{"id":52,"label":"well-known.ts","path":"./lib/oidc/endpoints/well-known.ts","statSize":1435,"parsedSize":662,"gzipSize":407}],"parsedSize":4664,"gzipSize":1741},{"id":9284,"label":"enrollAuthenticator.ts","path":"./lib/oidc/enrollAuthenticator.ts","statSize":673,"parsedSize":367,"gzipSize":241},{"id":8707,"label":"exchangeCodeForTokens.ts","path":"./lib/oidc/exchangeCodeForTokens.ts","statSize":1825,"parsedSize":789,"gzipSize":467},{"label":"factory","path":"./lib/oidc/factory","statSize":4341,"groups":[{"id":3859,"label":"OktaAuthOAuth.ts","path":"./lib/oidc/factory/OktaAuthOAuth.ts","statSize":741,"parsedSize":253,"gzipSize":189},{"id":7203,"label":"api.ts","path":"./lib/oidc/factory/api.ts","statSize":2902,"parsedSize":1375,"gzipSize":611},{"id":7276,"label":"index.ts","path":"./lib/oidc/factory/index.ts","statSize":698,"parsedSize":389,"gzipSize":207}],"parsedSize":2017,"gzipSize":832},{"id":3253,"label":"getToken.ts","path":"./lib/oidc/getToken.ts","statSize":3766,"parsedSize":1662,"gzipSize":842},{"id":6844,"label":"getUserInfo.ts","path":"./lib/oidc/getUserInfo.ts","statSize":3785,"parsedSize":1581,"gzipSize":706},{"id":9770,"label":"getWithPopup.ts","path":"./lib/oidc/getWithPopup.ts","statSize":664,"parsedSize":397,"gzipSize":302},{"id":6803,"label":"getWithRedirect.ts","path":"./lib/oidc/getWithRedirect.ts","statSize":1997,"parsedSize":848,"gzipSize":515},{"id":7625,"label":"getWithoutPrompt.ts","path":"./lib/oidc/getWithoutPrompt.ts","statSize":577,"parsedSize":355,"gzipSize":276},{"id":8676,"label":"handleOAuthResponse.ts","path":"./lib/oidc/handleOAuthResponse.ts","statSize":5683,"parsedSize":2366,"gzipSize":1081},{"id":9443,"label":"index.ts","path":"./lib/oidc/index.ts","statSize":7031,"parsedSize":3917,"gzipSize":732},{"id":8113,"label":"introspect.ts","path":"./lib/oidc/introspect.ts","statSize":3381,"parsedSize":1413,"gzipSize":794},{"label":"mixin","path":"./lib/oidc/mixin","statSize":30959,"groups":[{"id":4449,"label":"browser.ts","path":"./lib/oidc/mixin/browser.ts","statSize":3456,"parsedSize":1411,"gzipSize":593},{"id":498,"label":"index.ts","path":"./lib/oidc/mixin/index.ts","statSize":27503,"parsedSize":10747,"gzipSize":3063}],"parsedSize":12158,"gzipSize":3335},{"label":"options","path":"./lib/oidc/options","statSize":9555,"groups":[{"id":3234,"label":"OAuthOptionsConstructor.ts","path":"./lib/oidc/options/OAuthOptionsConstructor.ts","statSize":8989,"parsedSize":4684,"gzipSize":1514},{"id":5577,"label":"browser.ts","path":"./lib/oidc/options/browser.ts","statSize":135,"parsedSize":81,"gzipSize":81},{"id":3775,"label":"index.ts","path":"./lib/oidc/options/index.ts","statSize":431,"parsedSize":209,"gzipSize":179}],"parsedSize":4974,"gzipSize":1606},{"id":9094,"label":"parseFromUrl.ts","path":"./lib/oidc/parseFromUrl.ts","statSize":4757,"parsedSize":2056,"gzipSize":911},{"id":2476,"label":"renewToken.ts","path":"./lib/oidc/renewToken.ts","statSize":2914,"parsedSize":1153,"gzipSize":618},{"id":6268,"label":"renewTokens.ts","path":"./lib/oidc/renewTokens.ts","statSize":3398,"parsedSize":1403,"gzipSize":692},{"id":781,"label":"renewTokensWithRefresh.ts","path":"./lib/oidc/renewTokensWithRefresh.ts","statSize":2839,"parsedSize":1045,"gzipSize":605},{"id":6466,"label":"revokeToken.ts","path":"./lib/oidc/revokeToken.ts","statSize":2575,"parsedSize":1052,"gzipSize":626},{"id":2333,"label":"storage.ts","path":"./lib/oidc/storage.ts","statSize":3550,"parsedSize":1510,"gzipSize":618},{"label":"types","path":"./lib/oidc/types","statSize":7004,"groups":[{"id":5842,"label":"JWT.ts","path":"./lib/oidc/types/JWT.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":6488,"label":"Token.ts","path":"./lib/oidc/types/Token.ts","statSize":766,"parsedSize":422,"gzipSize":214},{"id":7088,"label":"TokenManager.ts","path":"./lib/oidc/types/TokenManager.ts","statSize":587,"parsedSize":286,"gzipSize":170},{"id":4319,"label":"Transaction.ts","path":"./lib/oidc/types/Transaction.ts","statSize":1450,"parsedSize":564,"gzipSize":302},{"id":6593,"label":"TransactionManager.ts","path":"./lib/oidc/types/TransactionManager.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":7615,"label":"UserClaims.ts","path":"./lib/oidc/types/UserClaims.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":2740,"label":"api.ts","path":"./lib/oidc/types/api.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":8665,"label":"endpoints.ts","path":"./lib/oidc/types/endpoints.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":8927,"label":"index.ts","path":"./lib/oidc/types/index.ts","statSize":4108,"parsedSize":2188,"gzipSize":356},{"id":8741,"label":"meta.ts","path":"./lib/oidc/types/meta.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":6370,"label":"options.ts","path":"./lib/oidc/types/options.ts","statSize":13,"parsedSize":12,"gzipSize":32},{"id":9263,"label":"proto.ts","path":"./lib/oidc/types/proto.ts","statSize":1,"parsedSize":12,"gzipSize":32},{"id":195,"label":"storage.ts","path":"./lib/oidc/types/storage.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":3568,"gzipSize":842},{"label":"util","path":"./lib/oidc/util","statSize":34185,"groups":[{"id":4970,"label":"browser.ts","path":"./lib/oidc/util/browser.ts","statSize":1905,"parsedSize":1013,"gzipSize":551},{"id":5078,"label":"defaultEnrollAuthenticatorParams.ts","path":"./lib/oidc/util/defaultEnrollAuthenticatorParams.ts","statSize":804,"parsedSize":382,"gzipSize":277},{"id":7756,"label":"defaultTokenParams.ts","path":"./lib/oidc/util/defaultTokenParams.ts","statSize":1176,"parsedSize":540,"gzipSize":351},{"id":8080,"label":"enrollAuthenticatorMeta.ts","path":"./lib/oidc/util/enrollAuthenticatorMeta.ts","statSize":591,"parsedSize":323,"gzipSize":208},{"id":9912,"label":"errors.ts","path":"./lib/oidc/util/errors.ts","statSize":1054,"parsedSize":501,"gzipSize":299},{"id":8785,"label":"index.ts","path":"./lib/oidc/util/index.ts","statSize":6588,"parsedSize":3271,"gzipSize":461},{"id":8221,"label":"loginRedirect.ts","path":"./lib/oidc/util/loginRedirect.ts","statSize":2394,"parsedSize":1074,"gzipSize":478},{"id":7599,"label":"oauth.ts","path":"./lib/oidc/util/oauth.ts","statSize":2473,"parsedSize":1262,"gzipSize":514},{"id":2865,"label":"oauthMeta.ts","path":"./lib/oidc/util/oauthMeta.ts","statSize":1982,"parsedSize":1090,"gzipSize":525},{"id":3611,"label":"pkce.ts","path":"./lib/oidc/util/pkce.ts","statSize":1259,"parsedSize":722,"gzipSize":453},{"id":6757,"label":"prepareEnrollAuthenticatorParams.ts","path":"./lib/oidc/util/prepareEnrollAuthenticatorParams.ts","statSize":1923,"parsedSize":1071,"gzipSize":518},{"id":6898,"label":"prepareTokenParams.ts","path":"./lib/oidc/util/prepareTokenParams.ts","statSize":6512,"parsedSize":2884,"gzipSize":1188},{"id":6635,"label":"refreshToken.ts","path":"./lib/oidc/util/refreshToken.ts","statSize":531,"parsedSize":263,"gzipSize":188},{"id":3327,"label":"sharedStorage.ts","path":"./lib/oidc/util/sharedStorage.ts","statSize":1657,"parsedSize":727,"gzipSize":315},{"id":1969,"label":"urlParams.ts","path":"./lib/oidc/util/urlParams.ts","statSize":807,"parsedSize":364,"gzipSize":257},{"id":6003,"label":"validateClaims.ts","path":"./lib/oidc/util/validateClaims.ts","statSize":1700,"parsedSize":976,"gzipSize":476},{"id":2482,"label":"validateToken.ts","path":"./lib/oidc/util/validateToken.ts","statSize":829,"parsedSize":569,"gzipSize":268}],"parsedSize":17032,"gzipSize":4675},{"id":1260,"label":"verifyToken.ts","path":"./lib/oidc/verifyToken.ts","statSize":4688,"parsedSize":1950,"gzipSize":932}],"parsedSize":79324,"gzipSize":17808},{"label":"services","path":"./lib/services","statSize":24602,"groups":[{"id":2282,"label":"AutoRenewService.ts","path":"./lib/services/AutoRenewService.ts","statSize":4939,"parsedSize":2388,"gzipSize":881},{"id":6748,"label":"LeaderElectionService.ts","path":"./lib/services/LeaderElectionService.ts","statSize":5685,"parsedSize":2393,"gzipSize":788},{"id":2546,"label":"RenewOnTabActivationService.ts","path":"./lib/services/RenewOnTabActivationService.ts","statSize":4455,"parsedSize":2152,"gzipSize":785},{"id":5550,"label":"SyncStorageService.ts","path":"./lib/services/SyncStorageService.ts","statSize":7891,"parsedSize":3907,"gzipSize":1151},{"id":2604,"label":"index.ts","path":"./lib/services/index.ts","statSize":1632,"parsedSize":749,"gzipSize":239}],"parsedSize":11589,"gzipSize":2332},{"label":"session","path":"./lib/session","statSize":6969,"groups":[{"id":3719,"label":"api.ts","path":"./lib/session/api.ts","statSize":1737,"parsedSize":1028,"gzipSize":472},{"id":2815,"label":"factory.ts","path":"./lib/session/factory.ts","statSize":418,"parsedSize":278,"gzipSize":172},{"id":8041,"label":"index.ts","path":"./lib/session/index.ts","statSize":1322,"parsedSize":749,"gzipSize":240},{"id":3980,"label":"mixin.ts","path":"./lib/session/mixin.ts","statSize":3479,"parsedSize":1356,"gzipSize":681},{"id":1249,"label":"types.ts","path":"./lib/session/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":3423,"gzipSize":1268},{"label":"storage","path":"./lib/storage","statSize":16437,"groups":[{"id":5437,"label":"BaseStorageManager.ts","path":"./lib/storage/BaseStorageManager.ts","statSize":3442,"parsedSize":1567,"gzipSize":689},{"id":5763,"label":"SavedObject.ts","path":"./lib/storage/SavedObject.ts","statSize":2766,"parsedSize":1378,"gzipSize":517},{"id":9927,"label":"index.ts","path":"./lib/storage/index.ts","statSize":1852,"parsedSize":928,"gzipSize":251},{"id":265,"label":"mixin.ts","path":"./lib/storage/mixin.ts","statSize":2704,"parsedSize":1032,"gzipSize":532},{"label":"options","path":"./lib/storage/options","statSize":5660,"groups":[{"id":4863,"label":"StorageOptionsConstructor.ts","path":"./lib/storage/options/StorageOptionsConstructor.ts","statSize":3822,"parsedSize":1745,"gzipSize":768},{"id":8009,"label":"browser.ts","path":"./lib/storage/options/browser.ts","statSize":1838,"parsedSize":1031,"gzipSize":525}],"parsedSize":2776,"gzipSize":1137},{"id":5752,"label":"types.ts","path":"./lib/storage/types.ts","statSize":13,"parsedSize":12,"gzipSize":32}],"parsedSize":7693,"gzipSize":2272},{"label":"util","path":"./lib/util","statSize":10748,"groups":[{"id":3548,"label":"PromiseQueue.ts","path":"./lib/util/PromiseQueue.ts","statSize":2535,"parsedSize":1170,"gzipSize":597},{"id":146,"label":"console.ts","path":"./lib/util/console.ts","statSize":965,"parsedSize":501,"gzipSize":281},{"id":305,"label":"index.ts","path":"./lib/util/index.ts","statSize":2011,"parsedSize":1108,"gzipSize":267},{"id":8750,"label":"misc.ts","path":"./lib/util/misc.ts","statSize":883,"parsedSize":473,"gzipSize":338},{"id":3193,"label":"object.ts","path":"./lib/util/object.ts","statSize":2215,"parsedSize":1076,"gzipSize":513},{"id":4771,"label":"types.ts","path":"./lib/util/types.ts","statSize":636,"parsedSize":433,"gzipSize":183},{"id":6718,"label":"url.ts","path":"./lib/util/url.ts","statSize":1503,"parsedSize":829,"gzipSize":420}],"parsedSize":5590,"gzipSize":1935}],"parsedSize":167725,"gzipSize":35519},{"label":"node_modules","path":"./node_modules","statSize":112787,"groups":[{"label":"@babel/runtime","path":"./node_modules/@babel/runtime","statSize":28938,"groups":[{"label":"helpers","path":"./node_modules/@babel/runtime/helpers","statSize":28490,"groups":[{"id":3897,"label":"arrayLikeToArray.js","path":"./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","statSize":309,"parsedSize":179,"gzipSize":151},{"id":5372,"label":"arrayWithHoles.js","path":"./node_modules/@babel/runtime/helpers/arrayWithHoles.js","statSize":183,"parsedSize":116,"gzipSize":99},{"id":3405,"label":"arrayWithoutHoles.js","path":"./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","statSize":264,"parsedSize":137,"gzipSize":120},{"id":6115,"label":"assertThisInitialized.js","path":"./node_modules/@babel/runtime/helpers/assertThisInitialized.js","statSize":295,"parsedSize":196,"gzipSize":153},{"id":7156,"label":"asyncToGenerator.js","path":"./node_modules/@babel/runtime/helpers/asyncToGenerator.js","statSize":879,"parsedSize":389,"gzipSize":244},{"id":6690,"label":"classCallCheck.js","path":"./node_modules/@babel/runtime/helpers/classCallCheck.js","statSize":273,"parsedSize":167,"gzipSize":140},{"id":3515,"label":"construct.js","path":"./node_modules/@babel/runtime/helpers/construct.js","statSize":902,"parsedSize":427,"gzipSize":228},{"id":9728,"label":"createClass.js","path":"./node_modules/@babel/runtime/helpers/createClass.js","statSize":750,"parsedSize":347,"gzipSize":230},{"id":8416,"label":"defineProperty.js","path":"./node_modules/@babel/runtime/helpers/defineProperty.js","statSize":365,"parsedSize":193,"gzipSize":153},{"id":1588,"label":"get.js","path":"./node_modules/@babel/runtime/helpers/get.js","statSize":830,"parsedSize":465,"gzipSize":246},{"id":3808,"label":"getPrototypeOf.js","path":"./node_modules/@babel/runtime/helpers/getPrototypeOf.js","statSize":429,"parsedSize":275,"gzipSize":151},{"id":1655,"label":"inherits.js","path":"./node_modules/@babel/runtime/helpers/inherits.js","statSize":658,"parsedSize":370,"gzipSize":252},{"id":4836,"label":"interopRequireDefault.js","path":"./node_modules/@babel/runtime/helpers/interopRequireDefault.js","statSize":224,"parsedSize":124,"gzipSize":98},{"id":6035,"label":"isNativeFunction.js","path":"./node_modules/@babel/runtime/helpers/isNativeFunction.js","statSize":217,"parsedSize":149,"gzipSize":130},{"id":9617,"label":"isNativeReflectConstruct.js","path":"./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","statSize":475,"parsedSize":328,"gzipSize":203},{"id":9498,"label":"iterableToArray.js","path":"./node_modules/@babel/runtime/helpers/iterableToArray.js","statSize":273,"parsedSize":187,"gzipSize":150},{"id":8872,"label":"iterableToArrayLimit.js","path":"./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","statSize":705,"parsedSize":385,"gzipSize":270},{"id":2218,"label":"nonIterableRest.js","path":"./node_modules/@babel/runtime/helpers/nonIterableRest.js","statSize":308,"parsedSize":247,"gzipSize":194},{"id":5343,"label":"nonIterableSpread.js","path":"./node_modules/@babel/runtime/helpers/nonIterableSpread.js","statSize":307,"parsedSize":242,"gzipSize":192},{"id":215,"label":"objectWithoutProperties.js","path":"./node_modules/@babel/runtime/helpers/objectWithoutProperties.js","statSize":741,"parsedSize":332,"gzipSize":239},{"id":7071,"label":"objectWithoutPropertiesLoose.js","path":"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","statSize":459,"parsedSize":207,"gzipSize":172},{"id":4993,"label":"possibleConstructorReturn.js","path":"./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","statSize":542,"parsedSize":286,"gzipSize":213},{"id":7061,"label":"regeneratorRuntime.js","path":"./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","statSize":13835,"parsedSize":6632,"gzipSize":2420},{"id":6015,"label":"setPrototypeOf.js","path":"./node_modules/@babel/runtime/helpers/setPrototypeOf.js","statSize":421,"parsedSize":259,"gzipSize":147},{"id":7424,"label":"slicedToArray.js","path":"./node_modules/@babel/runtime/helpers/slicedToArray.js","statSize":517,"parsedSize":170,"gzipSize":140},{"id":1753,"label":"superPropBase.js","path":"./node_modules/@babel/runtime/helpers/superPropBase.js","statSize":367,"parsedSize":183,"gzipSize":153},{"id":861,"label":"toConsumableArray.js","path":"./node_modules/@babel/runtime/helpers/toConsumableArray.js","statSize":516,"parsedSize":164,"gzipSize":138},{"id":8698,"label":"typeof.js","path":"./node_modules/@babel/runtime/helpers/typeof.js","statSize":554,"parsedSize":368,"gzipSize":178},{"id":6116,"label":"unsupportedIterableToArray.js","path":"./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","statSize":607,"parsedSize":377,"gzipSize":273},{"id":3496,"label":"wrapNativeSuper.js","path":"./node_modules/@babel/runtime/helpers/wrapNativeSuper.js","statSize":1285,"parsedSize":625,"gzipSize":351}],"parsedSize":14526,"gzipSize":4114},{"label":"regenerator","path":"./node_modules/@babel/runtime/regenerator","statSize":448,"groups":[{"id":4687,"label":"index.js","path":"./node_modules/@babel/runtime/regenerator/index.js","statSize":448,"parsedSize":181,"gzipSize":146}],"parsedSize":181,"gzipSize":146}],"parsedSize":14707,"gzipSize":4171},{"label":"broadcast-channel","path":"./node_modules/broadcast-channel","statSize":51008,"groups":[{"label":"dist/lib","path":"./node_modules/broadcast-channel/dist/lib","statSize":50454,"groups":[{"id":8991,"label":"broadcast-channel.js","path":"./node_modules/broadcast-channel/dist/lib/broadcast-channel.js","statSize":8004,"parsedSize":2739,"gzipSize":1104},{"id":8437,"label":"index.es5.js","path":"./node_modules/broadcast-channel/dist/lib/index.es5.js","statSize":559,"parsedSize":221,"gzipSize":155},{"id":5585,"label":"index.js","path":"./node_modules/broadcast-channel/dist/lib/index.js","statSize":1169,"parsedSize":724,"gzipSize":267},{"id":4781,"label":"leader-election-util.js","path":"./node_modules/broadcast-channel/dist/lib/leader-election-util.js","statSize":1725,"parsedSize":579,"gzipSize":343},{"id":683,"label":"leader-election-web-lock.js","path":"./node_modules/broadcast-channel/dist/lib/leader-election-web-lock.js","statSize":2905,"parsedSize":1421,"gzipSize":667},{"id":6550,"label":"leader-election.js","path":"./node_modules/broadcast-channel/dist/lib/leader-election.js","statSize":8953,"parsedSize":3260,"gzipSize":1108},{"id":4632,"label":"method-chooser.js","path":"./node_modules/broadcast-channel/dist/lib/method-chooser.js","statSize":2790,"parsedSize":669,"gzipSize":407},{"label":"methods","path":"./node_modules/broadcast-channel/dist/lib/methods","statSize":20543,"groups":[{"id":9122,"label":"indexed-db.js","path":"./node_modules/broadcast-channel/dist/lib/methods/indexed-db.js","statSize":11573,"parsedSize":4357,"gzipSize":1645},{"id":4924,"label":"localstorage.js","path":"./node_modules/broadcast-channel/dist/lib/methods/localstorage.js","statSize":5332,"parsedSize":2053,"gzipSize":1006},{"id":2026,"label":"native.js","path":"./node_modules/broadcast-channel/dist/lib/methods/native.js","statSize":1856,"parsedSize":1066,"gzipSize":569},{"id":1574,"label":"simulate.js","path":"./node_modules/broadcast-channel/dist/lib/methods/simulate.js","statSize":1782,"parsedSize":902,"gzipSize":443}],"parsedSize":8378,"gzipSize":2711},{"id":423,"label":"options.js","path":"./node_modules/broadcast-channel/dist/lib/options.js","statSize":1566,"parsedSize":737,"gzipSize":396},{"id":6202,"label":"util.js","path":"./node_modules/broadcast-channel/dist/lib/util.js","statSize":2240,"parsedSize":874,"gzipSize":444}],"parsedSize":19602,"gzipSize":5444},{"label":"node_modules/@babel/runtime/helpers","path":"./node_modules/broadcast-channel/node_modules/@babel/runtime/helpers","statSize":554,"groups":[{"id":3762,"label":"typeof.js","path":"./node_modules/broadcast-channel/node_modules/@babel/runtime/helpers/typeof.js","statSize":554,"parsedSize":368,"gzipSize":178}],"parsedSize":368,"gzipSize":178}],"parsedSize":19970,"gzipSize":5537},{"label":"cross-fetch/dist","path":"./node_modules/cross-fetch/dist","statSize":15491,"groups":[{"id":4098,"label":"browser-ponyfill.js","path":"./node_modules/cross-fetch/dist/browser-ponyfill.js","statSize":15491,"parsedSize":8241,"gzipSize":2804}],"parsedSize":8241,"gzipSize":2804},{"label":"js-cookie/dist","path":"./node_modules/js-cookie/dist","statSize":4150,"groups":[{"id":646,"label":"js.cookie.js","path":"./node_modules/js-cookie/dist/js.cookie.js","statSize":4150,"parsedSize":1426,"gzipSize":706}],"parsedSize":1426,"gzipSize":706},{"label":"oblivious-set/dist/es","path":"./node_modules/oblivious-set/dist/es","statSize":2061,"groups":[{"id":2151,"label":"index.js","path":"./node_modules/oblivious-set/dist/es/index.js","statSize":2061,"parsedSize":639,"gzipSize":346}],"parsedSize":639,"gzipSize":346},{"label":"p-cancelable","path":"./node_modules/p-cancelable","statSize":6424,"groups":[{"id":3615,"label":"index.js","path":"./node_modules/p-cancelable/index.js","statSize":6424,"parsedSize":3179,"gzipSize":1368}],"parsedSize":3179,"gzipSize":1368},{"label":"tiny-emitter","path":"./node_modules/tiny-emitter","statSize":1565,"groups":[{"id":4279,"label":"index.js","path":"./node_modules/tiny-emitter/index.js","statSize":1565,"parsedSize":586,"gzipSize":325}],"parsedSize":586,"gzipSize":325},{"label":"unload/dist/es","path":"./node_modules/unload/dist/es","statSize":3150,"groups":[{"id":4810,"label":"index.js + 2 modules (concatenated)","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)","statSize":3150,"parsedSize":1286,"gzipSize":527,"concatenated":true,"groups":[{"label":"node_modules/unload/dist/es","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es","statSize":3150,"groups":[{"id":null,"label":"index.js","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es/index.js","statSize":1227,"parsedSize":500,"gzipSize":205,"inaccurateSizes":true},{"id":null,"label":"node.js","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es/node.js","statSize":695,"parsedSize":283,"gzipSize":116,"inaccurateSizes":true},{"id":null,"label":"browser.js","path":"./node_modules/unload/dist/es/index.js + 2 modules (concatenated)/node_modules/unload/dist/es/browser.js","statSize":1228,"parsedSize":501,"gzipSize":205,"inaccurateSizes":true}],"parsedSize":1286,"gzipSize":527,"inaccurateSizes":true}]}],"parsedSize":1286,"gzipSize":527}],"parsedSize":50034,"gzipSize":14061}]}];
|
|
35
35
|
window.defaultSizes = "stat";
|
|
36
36
|
</script>
|
|
37
37
|
</body>
|