{"version":3,"file":"5397.35f3174c4d948784.js","mappings":"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","names":["canAccessRouteWithoutAuthenticationGuard","_ref","_asyncToGenerator","activatedRouteSnapshot","routerStateSnapshot","router","inject","Router","authentication","AUTHENTICATION","navigationService","NavigationService","responsivenessViewMode","RESPONSIVENESS_VIEW_MODE","mobileNavigationService","MobileNavigationService","msalGuard","MsalGuard","subscription","getCurrentSubscription","result","firstValueFrom","canActivate","url","path","isPhone","getDefaultMobileRoute","getDefaultRoute","navigateByUrl","_x","_x2","apply","this","arguments","SignTermsAndConditionsComponent","_SignTermsAndConditionsComponent","constructor","runtimeEnvironment","agreesWithTermsAndConditions","ngOnInit","termsAndConditionsUrl","getEnvironment","i0","RUNTIME_APPLICATION_ENVIRONMENT","selectors","decls","vars","consts","template","rf","ctx","$event","_c0","loginRouting","RouterModule","forChild","component","_LoginComponent","LoginComponent","BaseComponent","profile","backendConfiguration","activatedRoute","dialogBuilderFactoryService","super","loggedOutAfterSessionExpired","showingSubscriptionSelection","showingTermsAndConditionsAcceptance","queryParams","pipe","takeUntil","unSubscribeOnViewDestroy","subscribe","params","AssertionUtils","isNullOrUndefined","authenticateUser","login","isLoggingIn","setSubscriptionAndContinue","subscriptions","setSubscriptionAndApplicationMaintenance","setProfileInfoAndNavigateToMainPage","signTermsAndConditions","find","id","profileInfo","activeSubscription","navigateToMainPage","canShowLoginForm","isAuthenticationInProgress","onAuthentication","switchMap","getSubscriptions","next","companySubscriptions","applicationMaintenance","previousActiveSubscriptionId","getSubscriptionId","t","sortedIndex","getSortedIndexBasedOnAlphabets","error","resetLocalStorageToDefaults","reduce","index","current","currentIndex","name","toUpperCase","getProfileInfo","hasPermission","Permission","CAN_SIGN_TERMSANDCONDITIONS","acceptedTermsAndConditions","clearLocalStorage","clearSubscription","showTermsAndConditionsAcceptance","redirect","getRedirectAfterAuthentication","setRedirectAfterAuthentication","setCurrentSubscription","setApplicationMaintenance","getBuilder","withCloseDisabled","withWidth","openDialog","PROFILE","i1","i2","i3","i4","i5","features","LoginComponent_Conditional_11_Template","LoginModule","_LoginModule","provide","useClass","HttpProfileService","imports","SharedModule"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./apps/texconnect/src/app/application/security/can-access-route-without-authentication-guard.ts","./apps/texconnect/src/app/presentation/components/sign-terms-and-conditons/sign-terms-and-conditions.component.ts","./apps/texconnect/src/app/presentation/components/sign-terms-and-conditons/sign-terms-and-conditions.component.html","./apps/texconnect/src/app/presentation/pages/login/login.component.html","./apps/texconnect/src/app/presentation/pages/login/login.routing.ts","./apps/texconnect/src/app/presentation/pages/login/login.component.ts","./apps/texconnect/src/app/presentation/pages/login/login.module.ts"],"sourcesContent":["import {inject} from '@angular/core';\nimport {ActivatedRouteSnapshot, Router, RouterStateSnapshot} from '@angular/router';\nimport {MobileNavigationService} from '@application/services/navigation/mobile-navigation.service';\nimport {NavigationService} from '@application/services/navigation/navigation.service';\nimport {MsalGuard} from '@azure/msal-angular';\nimport {AUTHENTICATION} from '@infrastructure/http/authentication/authentication';\nimport {RESPONSIVENESS_VIEW_MODE} from '@vdw/angular-component-library';\nimport {firstValueFrom} from 'rxjs';\n\nexport const canAccessRouteWithoutAuthenticationGuard = async (activatedRouteSnapshot: ActivatedRouteSnapshot, routerStateSnapshot: RouterStateSnapshot): Promise => {\n const router = inject(Router);\n const authentication = inject(AUTHENTICATION);\n const navigationService = inject(NavigationService);\n const responsivenessViewMode = inject(RESPONSIVENESS_VIEW_MODE);\n const mobileNavigationService = inject(MobileNavigationService);\n const msalGuard = inject(MsalGuard);\n\n let subscription = authentication.getCurrentSubscription();\n\n let result = subscription && (await firstValueFrom(msalGuard.canActivate(activatedRouteSnapshot, routerStateSnapshot)));\n\n if (result && router.url === '/') {\n const path = responsivenessViewMode.isPhone ? mobileNavigationService.getDefaultMobileRoute(subscription) : navigationService.getDefaultRoute(subscription);\n\n router.navigateByUrl(path);\n }\n\n return !result;\n};\n","import {Component, Inject, OnInit} from '@angular/core';\nimport {RUNTIME_APPLICATION_ENVIRONMENT, RuntimeApplicationEnvironment} from '@application/configuration/runtime-application-environment';\n\n@Component({\n selector: 'app-sign-terms-and-conditions',\n templateUrl: './sign-terms-and-conditions.component.html',\n styleUrls: ['./sign-terms-and-conditions.component.scss']\n})\nexport class SignTermsAndConditionsComponent implements OnInit {\n public termsAndConditionsUrl: string;\n public agreesWithTermsAndConditions = false;\n\n public constructor(@Inject(RUNTIME_APPLICATION_ENVIRONMENT) private readonly runtimeEnvironment: RuntimeApplicationEnvironment) {}\n\n public ngOnInit(): void {\n this.termsAndConditionsUrl = this.runtimeEnvironment.getEnvironment().termsAndConditionsUrl;\n }\n}\n","
\n \n\n
\n \n \n \n
\n\n \n
\n","
\n \n
\n
\n
\n
\n {{ 'AUTHENTICATION.LOGIN.WELCOME' | bmsTranslate }}\n {{ 'AUTHENTICATION.LOGIN.LOGIN_IN_VIA_AZURE' | bmsTranslate }}\n @if (this.loggedOutAfterSessionExpired) {\n \n \n {{ 'AUTHENTICATION.LOGIN.SESSION_EXPIRED_DESCRIPTION' | bmsTranslate }}\n }\n
\n
\n \n
\n
\n \n
\n","import {ModuleWithProviders} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {canAccessRouteWithoutAuthenticationGuard} from '@application/security/can-access-route-without-authentication-guard';\nimport {LoginComponent} from '@presentation/pages/login/login.component';\n\nexport const routes: Routes = [{path: '', component: LoginComponent, canActivate: [canAccessRouteWithoutAuthenticationGuard]}];\n\nexport const loginRouting: ModuleWithProviders = RouterModule.forChild(routes);\n","import {Component, Inject, OnInit} from '@angular/core';\nimport {ActivatedRoute, Params, Router} from '@angular/router';\nimport {BackendConfiguration} from '@application/configuration/backend-configuration';\nimport {MobileNavigationService} from '@application/services/navigation/mobile-navigation.service';\nimport {NavigationService} from '@application/services/navigation/navigation.service';\nimport {ApplicationMaintenance} from '@domain/profile/application-maintenance';\nimport {Permission} from '@domain/profile/permission.enum';\nimport {ProfileInfo} from '@domain/profile/profile-info';\nimport {Subscription} from '@domain/profile/subscription';\nimport {AUTHENTICATION, Authentication} from '@infrastructure/http/authentication/authentication';\nimport {CompanySubscriptions} from '@infrastructure/http/profile/company-subscriptions';\nimport {PROFILE, Profile} from '@infrastructure/http/profile/profile';\nimport {SignTermsAndConditionsComponent} from '@presentation/components/sign-terms-and-conditons/sign-terms-and-conditions.component';\nimport {AssertionUtils, BackendError, BaseComponent, DialogBuilderFactoryService, RESPONSIVENESS_VIEW_MODE, ResponsivenessViewMode} from '@vdw/angular-component-library';\nimport {switchMap, takeUntil} from 'rxjs';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss']\n})\nexport class LoginComponent extends BaseComponent implements OnInit {\n public isLoggingIn: boolean;\n private subscriptions: Subscription[];\n public loggedOutAfterSessionExpired = false;\n public showingSubscriptionSelection = false;\n public showingTermsAndConditionsAcceptance = false;\n\n private applicationMaintenance: ApplicationMaintenance;\n private profileInfo: ProfileInfo;\n\n public constructor(\n @Inject(AUTHENTICATION) private readonly authentication: Authentication,\n @Inject(PROFILE) private readonly profile: Profile,\n private readonly backendConfiguration: BackendConfiguration,\n private readonly router: Router,\n private readonly activatedRoute: ActivatedRoute,\n private readonly navigationService: NavigationService,\n private readonly mobileNavigationService: MobileNavigationService,\n private readonly dialogBuilderFactoryService: DialogBuilderFactoryService,\n @Inject(RESPONSIVENESS_VIEW_MODE) public readonly responsivenessViewMode: ResponsivenessViewMode\n ) {\n super();\n }\n\n public ngOnInit(): void {\n this.activatedRoute.queryParams.pipe(takeUntil(this.unSubscribeOnViewDestroy)).subscribe((params: Params) => {\n this.loggedOutAfterSessionExpired = !AssertionUtils.isNullOrUndefined(params['session-expired']);\n });\n this.authenticateUser();\n }\n\n public login(): void {\n this.loggedOutAfterSessionExpired = false;\n this.isLoggingIn = true;\n this.authentication.login();\n }\n\n public setSubscriptionAndContinue(subscription: Subscription): void {\n if (!AssertionUtils.isNullOrUndefined(subscription)) {\n this.setSubscriptionAndApplicationMaintenance(subscription);\n this.setProfileInfoAndNavigateToMainPage();\n } else {\n this.isLoggingIn = false;\n this.showingTermsAndConditionsAcceptance = false;\n this.showingSubscriptionSelection = false;\n this.subscriptions = [];\n }\n }\n\n public signTermsAndConditions(): void {\n this.setSubscriptionAndApplicationMaintenance(this.subscriptions.find((subscription: Subscription) => subscription.id === this.profileInfo.activeSubscription.id));\n\n this.profile\n .signTermsAndConditions()\n .pipe(takeUntil(this.unSubscribeOnViewDestroy))\n .subscribe(() => {\n this.navigateToMainPage();\n });\n }\n\n public canShowLoginForm(): boolean {\n return !this.showingSubscriptionSelection && !this.showingTermsAndConditionsAcceptance;\n }\n\n private authenticateUser(): void {\n this.authentication\n .isAuthenticationInProgress()\n .pipe(takeUntil(this.unSubscribeOnViewDestroy))\n .subscribe((isAuthenticationInProgress: boolean) => {\n this.isLoggingIn = isAuthenticationInProgress;\n });\n\n this.authentication\n .onAuthentication()\n .pipe(\n switchMap(() => this.profile.getSubscriptions()),\n takeUntil(this.unSubscribeOnViewDestroy)\n )\n .subscribe({\n next: (companySubscriptions: CompanySubscriptions) => {\n this.subscriptions = companySubscriptions.subscriptions;\n this.applicationMaintenance = companySubscriptions.applicationMaintenance;\n let previousActiveSubscriptionId = this.backendConfiguration.getSubscriptionId();\n let activeSubscription = this.subscriptions.find((t: Subscription) => t.id === previousActiveSubscriptionId);\n if (!AssertionUtils.isNullOrUndefined(previousActiveSubscriptionId) && !AssertionUtils.isNullOrUndefined(activeSubscription)) {\n this.setSubscriptionAndContinue(activeSubscription);\n } else {\n let sortedIndex = this.getSortedIndexBasedOnAlphabets(this.subscriptions);\n this.setSubscriptionAndContinue(this.subscriptions[sortedIndex]);\n }\n },\n error: (error: BackendError) => {\n this.isLoggingIn = false;\n\n this.authentication.resetLocalStorageToDefaults();\n throw error;\n }\n });\n }\n\n private getSortedIndexBasedOnAlphabets(subscriptions: Subscription[]): number {\n return subscriptions.reduce((index: number, current: Subscription, currentIndex: number) => {\n if (current.name[0].toUpperCase() < subscriptions[index].name[0].toUpperCase()) {\n return currentIndex;\n }\n return index;\n }, 0);\n }\n\n private setProfileInfoAndNavigateToMainPage(): void {\n this.profile\n .getProfileInfo()\n .pipe(takeUntil(this.unSubscribeOnViewDestroy))\n .subscribe((profileInfo: ProfileInfo) => {\n this.profileInfo = profileInfo;\n const {activeSubscription} = this.profileInfo;\n\n if (activeSubscription.hasPermission(Permission.CAN_SIGN_TERMSANDCONDITIONS) && !activeSubscription.acceptedTermsAndConditions) {\n this.showingSubscriptionSelection = false;\n this.backendConfiguration.clearLocalStorage();\n this.authentication.clearSubscription();\n\n this.showTermsAndConditionsAcceptance();\n } else {\n this.navigateToMainPage();\n }\n });\n }\n\n private navigateToMainPage(): void {\n const redirect: string = this.authentication.getRedirectAfterAuthentication();\n\n if (!AssertionUtils.isNullOrUndefined(redirect)) {\n this.authentication.setRedirectAfterAuthentication(null);\n this.router.navigateByUrl(redirect);\n } else {\n const subscription = this.profileInfo.activeSubscription;\n this.router.navigateByUrl(this.responsivenessViewMode.isPhone ? this.mobileNavigationService.getDefaultMobileRoute(subscription) : this.navigationService.getDefaultRoute(subscription));\n }\n }\n\n private setSubscriptionAndApplicationMaintenance(subscription: Subscription): void {\n this.authentication.setCurrentSubscription(subscription);\n this.backendConfiguration.setApplicationMaintenance(this.applicationMaintenance);\n }\n\n private showTermsAndConditionsAcceptance(): void {\n this.showingTermsAndConditionsAcceptance = true;\n\n this.dialogBuilderFactoryService\n .getBuilder()\n .withCloseDisabled()\n .withWidth('605px')\n .openDialog(SignTermsAndConditionsComponent)\n .subscribe(() => this.signTermsAndConditions());\n }\n}\n","import {NgModule} from '@angular/core';\nimport {HttpProfileService} from '@infrastructure/http/profile/http-profile.service';\nimport {PROFILE} from '@infrastructure/http/profile/profile';\nimport {loginRouting} from '@presentation/pages/login/login.routing';\nimport {SharedModule} from '@shared/shared.module';\nimport {LoginComponent} from './login.component';\n\n@NgModule({\n imports: [loginRouting, SharedModule],\n providers: [{provide: PROFILE, useClass: HttpProfileService}],\n declarations: [LoginComponent]\n})\nexport class LoginModule {}\n"],"x_google_ignoreList":[]}