{"version":3,"sources":["AppInsights.js","appConfig.js","sessionIdentifier.js","ui.jsx","authConfig.js","App.jsx","index.js"],"names":["reactPlugin","ReactPlugin","ai","ApplicationInsights","config","instrumentationKey","extensions","extensionConfig","identifier","history","loggingLevelConsole","loadAppInsights","prototype","trackEvent","event","customProperties","this","_analyticsPlugin","appInsights","require","setLogLevel","sessionIdentifier","v4","NavigationBar","instance","useMsal","DropdownButton","variant","className","drop","title","Dropdown","Item","as","onClick","accounts","getAllAccounts","logoutRequest","account","getAccountByHomeId","homeAccountId","postLogoutRedirectUri","mainWindowRedirectUri","logoutPopup","logoutRedirect","PageLayout","props","Navbar","href","id","children","IdTokenClaims","name","message","idTokenClaims","tid","iss","sub","username","idp","Date","auth_time","toISOString","iat","nbf","exp","Button","refresh","reauthenticate","lastRefreshTime","msalConfig","auth","clientId","authority","redirectUri","knownAuthorities","cache","cacheLocation","storeAuthStateInCookie","system","loggerOptions","loggerCallback","level","containsPii","LogLevel","Error","console","error","Info","info","Verbose","debug","Warning","warn","err","log","loginRequest","scopes","IdTokenContent","useState","setIdTokenClaims","setLastRefreshTime","GetIdTokenClaims","acquireTokenSilent","then","result","getTime","catch","forceRefresh","MainContent","loginPopup","loginRedirect","App","msalInstance","AppInsightsContext","Provider","value","PublicClientApplication","ReactDOM","render","StrictMode","document","getElementById"],"mappings":"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","file":"static/js/main.1bf9f068.chunk.js","sourcesContent":["import {ApplicationInsights} from '@microsoft/applicationinsights-web'\nimport {\n ReactPlugin,\n withAITracking,\n} from '@microsoft/applicationinsights-react-js'\nimport {config} from './appConfig';\n\nconst reactPlugin = new ReactPlugin()\nconst ai = new ApplicationInsights({\n config: {\n instrumentationKey: config.instrumentationKey,\n extensions: [reactPlugin],\n extensionConfig: {\n [reactPlugin.identifier]: {history: 'test'},\n },\n loggingLevelConsole: 4\n },\n})\nai.loadAppInsights()\n\nReactPlugin.prototype.trackEvent = function(event, customProperties) {\n this._analyticsPlugin.trackEvent(event, customProperties)\n}\n\nexport default Component => withAITracking(reactPlugin, Component)\nexport const appInsights = ai.appInsights\nexport {reactPlugin}","export const config = {\n instrumentationKey: 'df0444ee-40ba-4690-8cb6-e6daa703d38d'\n};","import {v4} from 'uuid';\nconst logger = require('@azure/logger');\nlogger.setLogLevel('verbose');\n\nconst sessionGuid = v4();\n\nexport const sessionIdentifier = sessionGuid;","import React from \"react\";\n\nimport { AuthenticatedTemplate, useMsal } from \"@azure/msal-react\";\n\nimport { Navbar, Dropdown, DropdownButton, Button } from \"react-bootstrap\";\nimport { appInsights } from \"./AppInsights\";\nimport { sessionIdentifier } from \"./sessionIdentifier\";\n\nconst NavigationBar = () => {\n const { instance } = useMsal();\n return (\n <>\n \n \n {\n const accounts = instance.getAllAccounts();\n const logoutRequest = { account: instance.getAccountByHomeId(accounts[0].homeAccountId), postLogoutRedirectUri: \"/\", mainWindowRedirectUri: \"/\" };\n instance.logoutPopup(logoutRequest);\n }}>Sign out using Popup\n {\n const accounts = instance.getAllAccounts();\n const logoutRequest = { account: instance.getAccountByHomeId(accounts[0].homeAccountId), postLogoutRedirectUri: \"/\" };\n instance.logoutRedirect(logoutRequest);\n }}>Sign out using Redirect\n \n \n\n \n );\n};\n\nexport const PageLayout = (props) => {\n return (\n <>\n \n Aderant Identity\n \n \n
\n
Authentication Test Application
\n
\n {props.children}\n
\n \n );\n};\n\nexport const IdTokenClaims = (props) => {\n appInsights.trackEvent({ name: `${sessionIdentifier}-PropertiesRefreshed` }, { message: props.idTokenClaims })\n return (\n
\n

Home Tenant Id: {props.idTokenClaims.tid}

\n

Issuer: {props.idTokenClaims.iss}

\n

OID: {props.idTokenClaims.sub}

\n

UPN: {props.idTokenClaims.username}

\n

IDP: {props.idTokenClaims.idp || 'Local Account, Not an IDP integration'}

\n

Authentication Time: {new Date(props.idTokenClaims.auth_time * 1000).toISOString()}

\n

Initiated At: {new Date(props.idTokenClaims.iat * 1000).toISOString()}

\n

Not Before: {new Date(props.idTokenClaims.nbf * 1000).toISOString()}

\n

Token will refresh: {new Date(props.idTokenClaims.exp * 1000).toISOString()}

\n

Session Identifier for tracking: {sessionIdentifier}

\n

\n

\n

View Last Refreshed: {new Date(props.lastRefreshTime).toISOString()}

\n
\n );\n}","/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { LogLevel } from \"@azure/msal-browser\";\nimport { config } from './appConfig';\nimport { appInsights } from './AppInsights';\nimport { sessionIdentifier } from \"./sessionIdentifier\";\n\n/**\n * Configuration object to be passed to MSAL instance on creation. \n * For a full list of MSAL.js configuration parameters, visit:\n * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/configuration.md \n */\nexport const msalConfig = {\n auth: {\n clientId: '7b2773f1-dc5f-4a84-ac82-0855ab6489ac',\n authority: 'https://aderantidentity.b2clogin.com/aderantidentity.onmicrosoft.com/B2C_1A_SIGNUP_SIGNIN',\n redirectUri: \"/\",\n postLogoutRedirectUri: \"/\",\n knownAuthorities: ['aderantidentity.b2clogin.com']\n },\n cache: {\n cacheLocation: \"sessionStorage\", // Configures cache location. \"sessionStorage\" is more secure, but \"localStorage\" gives you SSO between tabs.\n storeAuthStateInCookie: false, // Set this to \"true\" if you are having issues on IE11 or Edge\n },\n system: {\n loggerOptions: {\n loggerCallback: (level, message, containsPii) => {\n if (containsPii) {\n return;\n }\n switch (level) {\n case LogLevel.Error:\n trackEvent(`${sessionIdentifier}-error`, message);\n console.error(message);\n return;\n case LogLevel.Info:\n console.info(message);\n trackEvent(`${sessionIdentifier}-info`, message);\n return;\n case LogLevel.Verbose:\n console.debug(message);\n trackEvent(`${sessionIdentifier}-debug`, message);\n return;\n case LogLevel.Warning:\n console.warn(message);\n trackEvent(`${sessionIdentifier}-warn`, message);\n return;\n }\n }\n }\n }\n};\n\nconst trackEvent = (level, message) => {\n try {\n appInsights.trackEvent({ name: level, message }, { message: message })\n } catch (err) {\n console.log(err);\n }\n}\n\n/**\n * Scopes you add here will be prompted for user consent during sign-in.\n * By default, MSAL.js will add OIDC scopes (openid, profile, email) to any login request.\n * For more information about OIDC scopes, visit: \n * https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and-consent#openid-connect-scopes\n */\nexport const loginRequest = {\n scopes: [\"https://aderantidentity.onmicrosoft.com/UserManagement/UserManagement.User\", \"https://aderantidentity.onmicrosoft.com/UserManagement/UserManagement.Admin\"]\n};\n\n/**\n * An optional silentRequest object can be used to achieve silent SSO\n * between applications by providing a \"login_hint\" property.\n */\nexport const silentRequest = {\n scopes: [\"openid\", \"profile\"],\n loginHint: \"example@domain.net\"\n};","import React, { useState } from \"react\";\nimport { MsalProvider, AuthenticatedTemplate, UnauthenticatedTemplate, useMsal } from \"@azure/msal-react\";\nimport { Button, Dropdown, DropdownButton } from \"react-bootstrap\";\nimport { PageLayout, IdTokenClaims } from \"./ui.jsx\";\nimport { loginRequest, msalConfig } from \"./authConfig\";\n\n\nimport \"./styles/App.css\";\nimport { AppInsightsContext } from \"@microsoft/applicationinsights-react-js\";\nimport { appInsights, reactPlugin } from \"./AppInsights.js\";\nimport { sessionIdentifier } from \"./sessionIdentifier.js\";\n\nconst IdTokenContent = () => {\n const { accounts, instance } = useMsal();\n const [idTokenClaims, setIdTokenClaims] = useState(null);\n const [lastRefreshTime, setLastRefreshTime] = useState(0);\n const handleLogin = () => {\n instance.acquireTokenSilent({ account: accounts[0], forceRefresh: true, authority: msalConfig.authority, redirectUri: msalConfig.redirectUri })\n .then((result) => {\n accounts[0] = result.account;\n setIdTokenClaims(result.idTokenClaims);\n console.log(result);\n })\n .catch((error) => {\n appInsights.trackEvent({ name: `${sessionIdentifier}-error` }, { message: error });\n console.log(error)\n })\n }\n function GetIdTokenClaims() {\n instance.acquireTokenSilent({account: accounts[0]}).then((result) => {\n accounts[0] = result.account;\n setIdTokenClaims(result.idTokenClaims);\n setLastRefreshTime(new Date().getTime());\n }).catch((err) => {\n appInsights.trackEvent({ name: `${sessionIdentifier}-error` }, { message: err });\n console.log(err);\n })\n // setIdTokenClaims(accounts[0].idTokenClaims)\n // setLastRefreshTime(new Date().getTime());\n }\n\n return (\n <>\n
{accounts[0].name} is signed in.
\n {idTokenClaims ?\n \n :\n \n }\n \n );\n};\n\nconst MainContent = () => {\n const { instance } = useMsal();\n const handleLogin = () => {\n instance.loginPopup(loginRequest)\n .catch((error) => {\n appInsights.trackEvent({ name: `${sessionIdentifier}-error` }, { message: error });\n console.log(error)\n })\n }\n return (\n
\n \n \n \n\n \n
Please sign-in to see your profile information.
\n \n Sign in using Popup\n instance.loginRedirect(loginRequest)}>Sign in using Redirect\n \n
\n
\n );\n};\n\n/**\n * msal-react is built on the React context API and all parts of your app that require authentication must be \n * wrapped in the MsalProvider component. You will first need to initialize an instance of PublicClientApplication \n * then pass this to MsalProvider as a prop. All components underneath MsalProvider will have access to the \n * PublicClientApplication instance via context as well as all hooks and components provided by msal-react. For more, visit:\n * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-react/docs/getting-started.md\n */\nexport default function App({ msalInstance }) {\n return (\n\n \n \n \n \n \n \n \n );\n}\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { PublicClientApplication } from \"@azure/msal-browser\";\n\nimport App from \"./App.jsx\";\nimport { msalConfig } from \"./authConfig\";\n\nimport \"bootstrap/dist/css/bootstrap.min.css\";\nimport \"./styles/index.css\";\n\n/**\n * MSAL should be instantiated outside of the component tree to prevent it from being re-instantiated on re-renders. \n * For more, visit: https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-react/docs/getting-started.md\n */\nexport const msalInstance = new PublicClientApplication(msalConfig);\n\nReactDOM.render(\n \n \n ,\n document.getElementById(\"root\")\n);\n"],"sourceRoot":""}