{"version":3,"file":"904.dbfde957739d702e.js","mappings":"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","names":["routes","path","component","Adb2cLoginComponent","constructor","oauthService","route","cookieService","localStorageService","envService","authService","rolePermissionService","router","this","sideBarMenu","DiscoveryDocumentConfig","signInURL","signInURLSSO","magicLink","claims","getIdentityClaims","ngOnInit","PasswordResetUrl","adb2cTenantUrl","clientId","window","location","origin","resetPasswordURLError","URLSearchParams","hash","get","resetPasswordURLErrorDesc","includes","replace","href","adb2cToken","snapshot","queryParamMap","idTokenHint","sessionStorage","getItem","console","log","setLocalStorage","configure","hasValidAccessToken","getIdToken","accessToken","getAccessToken","decodedToken","JwtHelperService","decodeToken","extension_role","logout","hostname","extension_instanceURL","test","deleteAll","deleteAllLocalStorage","removeItem","clear","setItem","email","set","deleteLocalStorageByKey","localStorageConstants","extension_tenantId","extension_agency","extension_userId","extension_tenantAbbreviation","tenant","undefined","redirectUrl","getPermissions","subscribe","res","StatusCode","permissions","Data","menuPermissions","isAuthorized","setTimeout","error","message","logOut","revokeTokenAndLogout","logoutUrl","authConfig","redirectUri","responseType","issuer","strictDiscoveryDocumentValidation","tokenEndpoint","loginUrl","scope","skipIssuerCheck","clearHashAfterLogin","oidc","customQueryParams","id_token_hint","tokenValidationHandler","NullValidationHandler","helper","url","split","tokenClaim","authenticationSource","loadDiscoveryDocument","then","tryLoginImplicitFlow","initImplicitFlow","params","error_description","initLoginFlow","static","core","selectors","Adb2cLoginRoutingModule","RouterModule","Adb2cLoginModule","CommonModule","FormsModule","ReactiveFormsModule","NgxPermissionsModule","MatFormFieldModule","MatInputModule","AlertModule","MatCheckboxModule","HttpClientModule"],"sourceRoot":"webpack:///","sources":["./src/app/components/adb2c-login/adb2c-login.routing.module.ts","./src/app/components/adb2c-login/adb2c-login.component.ts","./src/app/components/adb2c-login/adb2c-login.module.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { Adb2cLoginComponent } from './adb2c-login.component';\n\nconst routes: Routes = [\n {\n path: '', component: Adb2cLoginComponent\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class Adb2cLoginRoutingModule { }\n","import { Component, OnInit } from '@angular/core';\nimport { OAuthService, NullValidationHandler } from 'angular-oauth2-oidc';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { JwtHelperService } from '@auth0/angular-jwt';\nimport { CookieService } from 'ngx-cookie-service';\nimport { EnvService } from 'src/app/core/services/env.service';\nimport { AuthService } from 'src/app/shared/services/auth.service';\nimport { localStorageConstants } from 'src/app/core/localStorageConstants/localStorageConstants';\nimport { LocalStorageService } from 'src/app/core/services/local-storage.service';\nimport { RolePermissionService } from 'src/app/core/services/role-permission.service';\n@Component({\n selector: 'app-adb2c-login',\n templateUrl: './adb2c-login.component.html',\n styleUrls: ['./adb2c-login.component.scss'],\n})\nexport class Adb2cLoginComponent implements OnInit {\n adb2cToken: any;\n permissions: any;\n error: boolean;\n idTokenHint: string;\n\n constructor(\n private oauthService: OAuthService,\n private route: ActivatedRoute,\n public cookieService: CookieService,\n private localStorageService: LocalStorageService,\n private envService: EnvService,\n private authService: AuthService,\n private rolePermissionService: RolePermissionService,\n private router: Router,\n\n ) {\n this.DiscoveryDocumentConfig = {\n signInURL: this.envService.signInURL,\n signInURLSSO: this.envService.signInURLSSO,\n magicLink: this.envService.magicLink\n };\n }\n public get claims() {\n const claims = this.oauthService.getIdentityClaims();\n return claims;\n }\n authConfig;\n DiscoveryDocumentConfig;\n PasswordResetUrl;\n message: string;\n tenant: any\n menuPermissions: any = {\n sideBarMenu: false,\n };\n\n ngOnInit(): void {\n this.PasswordResetUrl = this.envService.adb2cTenantUrl + 'authorize?' + 'p=B2C_1A_PasswordReset' + '&client_id=' + this.envService.clientId + '&nonce=defaultNonce' + '&redirect_uri=' + window.location.origin + '&scope=openid' + '&response_type=id_token' + '&prompt=login';\n /*Forget Password in B2C SignIn Page will redirect to an error page with error code AADB2C90118.\n https://stackoverflow.com/questions/41224543/how-to-get-azure-aad-b2c-forgot-password-link-to-work\n User have to manully capture the error code and redirect it to our PasswordReset Policy URL */\n let resetPasswordURLError = new URLSearchParams(window.location.hash).get('#error');\n let resetPasswordURLErrorDesc = new URLSearchParams(window.location.hash).get('error_description');\n if (resetPasswordURLError == 'access_denied' && resetPasswordURLErrorDesc.includes('AADB2C90118')) {\n window.location.replace(this.PasswordResetUrl);\n window.location.href = this.PasswordResetUrl;\n return;\n }\n this.adb2cToken = this.route.snapshot.queryParamMap.get('token');\n this.idTokenHint = sessionStorage.getItem('token_hint');//this.route.snapshot.queryParamMap.get('token_hint');\n console.log('this.idTokenHint: ', this.idTokenHint);\n if (this.adb2cToken !== null) {\n this.authService.setLocalStorage(this.adb2cToken);\n }\n this.configure();\n if (!this.oauthService.hasValidAccessToken() && this.adb2cToken == null) {\n const idToken = this.oauthService.getIdToken();\n } else {\n const idToken = this.oauthService.getIdToken();\n let accessToken = \"\";\n if (this.adb2cToken == null) {\n accessToken = this.oauthService.getAccessToken();\n console.log('accessToken: 88 ', accessToken);\n } else {\n accessToken = this.adb2cToken;\n console.log('accessToken: 91', accessToken);\n }\n const helper = new JwtHelperService();\n const decodedToken = helper.decodeToken(accessToken);\n console.log('decodedToken: ', decodedToken);\n if (decodedToken) {\n if (decodedToken.extension_role === 'API User') {\n this.logout();\n } else {\n const hostname = window.location.origin;\n if (this.adb2cToken == null && !decodedToken.extension_instanceURL.includes(hostname)) {\n if (/^.*localhost.*/.test(hostname)) {\n window.location.href = 'https://localhost:4200/' + '?token=' + accessToken;\n } else {\n this.cookieService.deleteAll('');\n this.cookieService.deleteAll('/');\n this.cookieService.deleteAll('/', window.location.hostname);\n this.cookieService.deleteAll('/', 'https://' + window.location.hostname);\n this.localStorageService.deleteAllLocalStorage();\n sessionStorage.removeItem('isFirstLogin');\n sessionStorage.clear();\n window.location.href = decodedToken.extension_instanceURL + '?token=' + accessToken;\n return;\n }\n }\n console.log('inside///')\n this.authService.setLocalStorage(accessToken);\n sessionStorage.setItem('isFirstLogin', 'true');\n if (this.cookieService.get('email') != decodedToken.email) {\n this.cookieService.set('switchUser', 'true');\n this.cookieService.deleteAll('');\n this.cookieService.deleteAll('/');\n this.localStorageService.deleteLocalStorageByKey(localStorageConstants.userDetails);\n }\n this.cookieService.set('token', accessToken);\n this.cookieService.set('role', decodedToken.extension_role);\n this.cookieService.set('email', decodedToken.email);\n this.cookieService.set('agencyId', decodedToken.extension_tenantId);\n this.cookieService.set('Tenant', decodedToken.extension_tenantId);\n this.cookieService.set('agencyName', decodedToken.extension_agency);\n this.cookieService.set('UserId', decodedToken.extension_userId);\n this.cookieService.set(\n 'tenantAbbreviation',\n decodedToken.extension_tenantAbbreviation\n );\n this.tenant = decodedToken.extension_tenantAbbreviation;\n console.log('decodedToken 137: ', decodedToken);\n console.log('redirectUrl: ', sessionStorage.getItem('redirectUrl'));\n if (\n sessionStorage.getItem('redirectUrl') !== '' &&\n sessionStorage.getItem('redirectUrl') !== undefined &&\n sessionStorage.getItem('redirectUrl') !== null\n ) {\n if (decodedToken.extension_instanceURL.includes(hostname) || /^.*localhost.*/.test(hostname)) {\n console.log('hostname 145: ', hostname);\n const redirectUrl = sessionStorage.getItem('redirectUrl');\n console.log('redirectUrl inside if 147: ', redirectUrl);\n sessionStorage.removeItem('redirectUrl');\n window.location.href = redirectUrl;\n } else {\n console.log('inside else of decodedToken.extension_instanceURL.includes(hostname) 151: ');\n this.logout()\n }\n } else {\n this.getPermissions();\n }\n }\n }\n }\n }\n\n getPermissions() {\n console.log('Inside getPermissions: ');\n if (this.tenant) {\n // tslint:disable-next-line: deprecation\n this.rolePermissionService.getPermissions(this.tenant).subscribe(res => {\n if (res.StatusCode === 200) {\n this.permissions = res.Data;\n this.menuPermissions.sideBarMenu = this.rolePermissionService.isAuthorized('SidebarMenu', 'View');\n setTimeout(() => {\n if (this.menuPermissions.sideBarMenu) {\n window.location.href = 'dashboard';\n } else {\n window.location.href = 'people';\n }\n }, 100);\n }\n }, () => {\n this.error = true;\n this.message = localStorageConstants.errorMessage;\n });\n }\n }\n\n public logout() {\n this.cookieService.deleteAll('');\n this.cookieService.deleteAll('/');\n this.cookieService.deleteAll('/', window.location.hostname);\n this.cookieService.deleteAll('/', 'https://' + window.location.hostname);\n this.localStorageService.deleteAllLocalStorage();\n sessionStorage.removeItem('token_hint');\n // this.localStorageService.deleteAllSessionStorage();\n const claims = this.oauthService.getIdentityClaims();\n this.oauthService.logOut(false);\n this.oauthService.revokeTokenAndLogout();\n window.location.href = this.envService.logoutUrl;\n }\n\n configure() {\n console.log('Inside configure(): ');\n this.authConfig = {\n redirectUri: this.envService.redirectUri,\n responseType: this.envService.responseType,\n issuer: this.envService.issuer,\n strictDiscoveryDocumentValidation: this.envService\n .strictDiscoveryDocumentValidation,\n tokenEndpoint: this.envService.tokenEndpoint,\n loginUrl: this.envService.loginUrl,\n clientId: this.envService.clientId,\n scope: this.envService.scope,\n skipIssuerCheck: true,\n clearHashAfterLogin: true,\n oidc: true,\n logoutUrl: this.envService.logoutUrl,\n };\n if (this.idTokenHint !== '' && this.idTokenHint !== undefined && this.idTokenHint !== null) {\n this.authConfig.customQueryParams = {\n id_token_hint: this.idTokenHint\n }\n }\n console.log('this.authConfig.customQueryParams: ', this.authConfig.customQueryParams);\n if (this.claims == null) {\n this.oauthService.configure(this.authConfig);\n this.oauthService.tokenValidationHandler = new NullValidationHandler();\n const helper = new JwtHelperService();\n let url = this.DiscoveryDocumentConfig.signInURL;\n console.log('url 222 1st time: ', url);\n\n let accessToken = new URLSearchParams(window.location.hash).get('access_token');\n if (accessToken === '' || accessToken === undefined || accessToken === null) {\n accessToken = window.location.hash.split('=')[1];\n console.log('window.location.hash.split(=)[1]: ', window.location.hash.split('=')[1]);\n console.log('window.location.hash: ', window.location.hash);\n console.log('window.location: ', window.location);\n console.log('accessToken 232: ', accessToken);\n }\n if (accessToken === 'access_denied&error_description') {\n accessToken = undefined;\n }\n if (accessToken !== '' && accessToken !== undefined) {\n const tokenClaim = helper.decodeToken(accessToken);\n console.log('tokenClaim inside if - accessToken !== empty && accessToken !== undefined : ', tokenClaim);\n if (tokenClaim?.authenticationSource === 'socialIdpAuthentication') {\n url = this.DiscoveryDocumentConfig.signInURLSSO;\n console.log('url 241 tokenClaim?.authenticationSource === socialIdpAuthentication signInURLSSO: ', url);\n } else if (tokenClaim == null) {\n url = this.DiscoveryDocumentConfig.signInURL;\n console.log('url 244 tokenClaim == null: ', url);\n } else {\n url = this.DiscoveryDocumentConfig.signInURL;\n console.log('url 247: else case of if else if', url);\n }\n } else {\n url = this.DiscoveryDocumentConfig.signInURL;\n console.log('url: else case of accessToken !== empty && accessToken !== undefined 251', url);\n }\n if (this.idTokenHint !== '' && this.idTokenHint !== undefined && this.idTokenHint !== null) {\n console.log('this.idTokenHint for magic link: ', this.idTokenHint);\n url = this.DiscoveryDocumentConfig.magicLink\n }\n console.log('url: ', url);\n this.oauthService\n .loadDiscoveryDocument(url)\n .then(\n () => {\n this.oauthService.tryLoginImplicitFlow().then(\n () => {\n if (!this.oauthService.hasValidAccessToken()) {\n this.oauthService.initImplicitFlow();\n } else {\n const idToken = this.oauthService.getIdToken();\n let accessToken = \"\";\n if (this.adb2cToken == null) {\n accessToken = this.oauthService.getAccessToken();\n } else {\n accessToken = this.adb2cToken;\n }\n console.log('accessToken 268: ', accessToken);\n const helper = new JwtHelperService();\n const decodedToken = helper.decodeToken(accessToken);\n console.log('decodedToken 271: ', decodedToken);\n if (decodedToken) {\n if (decodedToken.extension_role === 'API User') {\n this.logout();\n } else {\n const hostname = window.location.origin;\n if (\n this.adb2cToken == null &&\n !decodedToken.extension_instanceURL.includes(hostname)\n ) {\n if (/^.*localhost.*/.test(hostname)) {\n let redirect =\n 'https://localhost:4200/' +\n '?token=' +\n accessToken;\n window.location.href = redirect;\n return;\n } else {\n this.cookieService.deleteAll('');\n this.cookieService.deleteAll('/');\n this.cookieService.deleteAll(\n '/',\n window.location.hostname\n );\n this.cookieService.deleteAll(\n '/',\n 'https://' + window.location.hostname\n );\n this.localStorageService.deleteAllLocalStorage();\n sessionStorage.removeItem('isFirstLogin');\n sessionStorage.clear()\n window.location.href = decodedToken.extension_instanceURL + '?token=' + accessToken;\n return;\n }\n }\n this.authService.setLocalStorage(accessToken);\n sessionStorage.setItem('isFirstLogin', 'true');\n if (\n this.cookieService.get('email') != decodedToken.email\n ) {\n this.cookieService.set('switchUser', 'true');\n this.cookieService.deleteAll('');\n this.cookieService.deleteAll('/');\n this.localStorageService.deleteLocalStorageByKey(\n localStorageConstants.userDetails\n );\n }\n this.cookieService.set('token', accessToken);\n this.cookieService.set(\n 'role',\n decodedToken.extension_role\n );\n this.cookieService.set('email', decodedToken.email);\n this.cookieService.set(\n 'agencyId',\n decodedToken.extension_tenantId\n );\n this.cookieService.set(\n 'Tenant',\n decodedToken.extension_tenantId\n );\n this.cookieService.set(\n 'agencyName',\n decodedToken.extension_agency\n );\n this.cookieService.set(\n 'UserId',\n decodedToken.extension_userId\n );\n this.cookieService.set(\n 'tenantAbbreviation',\n decodedToken.extension_tenantAbbreviation\n );\n this.tenant = decodedToken.extension_tenantAbbreviation;\n if (\n sessionStorage.getItem('redirectUrl') !== '' &&\n sessionStorage.getItem('redirectUrl') !== undefined &&\n sessionStorage.getItem('redirectUrl') !== null\n ) {\n if (decodedToken.extension_instanceURL.includes(hostname) || /^.*localhost.*/.test(hostname)) {\n console.log('redirectUrl 351: ', sessionStorage.getItem('redirectUrl'));\n window.location.href = sessionStorage.getItem('redirectUrl');\n // return false;\n } else {\n this.logout();\n }\n } else {\n this.getPermissions();\n }\n }\n }\n }\n },\n (error) => {\n if (\n error.params.error === 'access_denied' &&\n error.params.error_description.includes('AADB2C90118')\n ) {\n window.location.replace(this.PasswordResetUrl);\n window.location.href = this.PasswordResetUrl;\n return true;\n } else if (\n (error.params.error === 'access_denied' &&\n error.params.error_description.includes('AADB2C90091')) ||\n error.params.error === 'invalid_nonce_in_state'\n ) {\n // user has cancelled out of password reset\n this.oauthService.initLoginFlow();\n }\n }\n );\n },\n (error) => { }\n );\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { Adb2cLoginRoutingModule } from './adb2c-login.routing.module';\nimport { Adb2cLoginComponent } from './adb2c-login.component';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgxPermissionsModule } from 'ngx-permissions';\n\nimport {MatLegacyFormFieldModule as MatFormFieldModule} from '@angular/material/legacy-form-field';\nimport {MatLegacyInputModule as MatInputModule} from '@angular/material/legacy-input';\nimport {AlertModule} from './../../common/alert/alert.module';\nimport {MatLegacyCheckboxModule as MatCheckboxModule} from '@angular/material/legacy-checkbox';\nimport { HttpClientModule } from '@angular/common/http';\n\n@NgModule({\n declarations: [Adb2cLoginComponent],\n imports: [\n CommonModule,\n Adb2cLoginRoutingModule,\n FormsModule,\n ReactiveFormsModule,\n NgxPermissionsModule.forChild(),\n MatFormFieldModule,\n MatInputModule,\n AlertModule,\n MatCheckboxModule,\n HttpClientModule,\n ],\n exports: [\n MatFormFieldModule,\n MatInputModule\n ]\n})\nexport class Adb2cLoginModule { }\n"],"x_google_ignoreList":[]}