{ "version": 3, "sources": ["src/app/shared/auth-guards/login.auth-guard.ts", "src/app/modules/login/auth-template/auth-template.component.ts", "src/app/modules/login/auth-template/auth-template.component.html", "src/app/modules/login/forgot-password/forgot-password.component.ts", "src/app/modules/login/forgot-password/forgot-password.component.html", "src/app/modules/login/login/login.component.ts", "src/app/modules/login/login/login.component.html", "src/app/modules/login/set-password-form/set-password-form.component.ts", "src/app/modules/login/set-password-form/set-password-form.component.html", "src/app/modules/login/set-password/set-password.component.ts", "src/app/modules/login/set-password/set-password.component.html", "src/app/modules/login/login-routing.module.ts", "src/app/modules/login/login.module.ts"], "sourcesContent": ["import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { AuthService } from '../services/auth.service';\nimport { OrganizationService } from '../services/organization.service';\nimport { SelectionService } from '../services/selection.service';\nimport { SignalRService } from '../services/signalr.service';\nimport { StorageService } from '../services/storage.service';\n\n@Injectable({ providedIn: 'root' })\nexport class LoginAuthGuard {\n constructor(\n private organizationService: OrganizationService,\n private selectionService: SelectionService,\n private storageService: StorageService,\n private signalRService: SignalRService,\n private authService: AuthService,\n ) {}\n\n async canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise {\n this.storageService.clearStorage(true);\n this.selectionService.clear();\n this.organizationService.clear();\n await this.signalRService.stopConnection();\n await this.authService.logout();\n return true;\n }\n}\n", "import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'shared-auth-template',\n templateUrl: './auth-template.component.html',\n styleUrls: ['./auth-template.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AuthTemplateComponent {\n @Input() title: string;\n constructor() {}\n}\n", "
\n
\n
\n \"Pointee\n

{{title}}

\n
\n\n \n
\n
\n", "import { Component } from '@angular/core';\nimport { FormBuilder, Validators } from '@angular/forms';\nimport { FormHelper } from 'src/app/shared/helpers/form.helper';\nimport { ApiService } from 'src/app/shared/services/api/api.service';\nimport { NavigationService } from 'src/app/shared/services/navigation.service';\nimport { PopupService } from 'src/app/shared/services/popup.service';\n\n@Component({\n selector: 'auth-forgot-password',\n templateUrl: './forgot-password.component.html',\n styleUrls: ['./forgot-password.component.scss'],\n})\nexport class ForgotPasswordComponent {\n title = 'Forgot your password?';\n submitted = false;\n afterEmailReset = false;\n forgotPasswordForm = this.formBuilder.group({\n email: ['', [Validators.required, Validators.email]],\n });\n\n readonly loginRoute = this.navigationService.getLoginRoute();\n\n get f() {\n return this.forgotPasswordForm.controls;\n }\n\n constructor(private formBuilder: FormBuilder, private apiService: ApiService, private popupService: PopupService, private navigationService: NavigationService) {}\n\n isFieldInvalid(field: string): boolean {\n return this.submitted && FormHelper.isFieldInvalid(this.forgotPasswordForm, field);\n }\n\n async onSubmit() {\n this.submitted = true;\n\n if (!this.forgotPasswordForm.valid) {\n return;\n }\n\n try {\n await this.apiService.resetPassword(this.forgotPasswordForm.value.email);\n this.afterEmailReset = true;\n this.title = 'Done, instructions sent!';\n } catch (error) {\n await this.popupService.showInfo('Reset instructions could not be sent!', 'We are sorry');\n }\n }\n}\n", "\n
\n
\n @if (!afterEmailReset) {\n
\n We'll send you instructions to reset your password and get you back on track.\n
\n } @else {\n
\n Check your email {{ f.email.value }} and follow the instructions.\n Something not working? Contact us.\n
\n }\n
\n\n @if (!afterEmailReset) {\n
\n
\n
\n \n \n @if (isFieldInvalid('email')) {\n \n @if (f.email.errors?.required) {\n Where should we send you instructions?\n }\n @if (f.email.errors?.email) {\n The email address is not in a correct format.\n }\n \n }\n
\n \n
\n
\n }\n \n
\n
\n", "import { HttpErrorResponse } from '@angular/common/http';\nimport { Component, ElementRef, ViewChild } from '@angular/core';\nimport { FormBuilder, Validators } from '@angular/forms';\nimport { FormHelper } from 'src/app/shared/helpers/form.helper';\nimport { AuthService } from 'src/app/shared/services/auth.service';\nimport { NavigationService } from 'src/app/shared/services/navigation.service';\nimport { PopupService } from 'src/app/shared/services/popup.service';\nimport { Global } from 'src/app/shared/types/global.type';\n\n@Component({\n selector: 'auth-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss'],\n})\nexport class LoginComponent {\n @ViewChild('emailField', { static: false }) emailField: ElementRef;\n\n get f() {\n return this.loginForm.controls;\n }\n\n submitted = false;\n loading = false;\n loginForm = this.formBuilder.group({\n email: ['', [Validators.required, Validators.email]],\n password: ['', [Validators.required]],\n });\n\n private redirectUrl: string;\n\n constructor(private authService: AuthService, private formBuilder: FormBuilder, private popupService: PopupService, private navigationService: NavigationService) {\n this.redirectUrl = this.navigationService.getQueryParam('redirect-url');\n }\n\n async onSubmit(): Promise {\n this.submitted = true;\n\n if (this.loginForm.invalid || this.loading) {\n return;\n }\n\n await this.login(async () => await this.authService.loginWithPassword(this.loginForm.value.email, this.loginForm.value.password));\n }\n\n async loginWithMicrosoft(event: MouseEvent): Promise {\n // TODO: Remove this code after testing\n // Login after Token expiration with Microsoft account testing\n\n if (event.shiftKey) {\n confirm('Login TEST mode: Are you sure you want to login with Microsoft?') &&\n setTimeout(async () => {\n await this.login(async () => await this.authService.loginWithMicrosoft());\n }, 0);\n return;\n }\n\n await this.login(async () => await this.authService.loginWithMicrosoft());\n }\n\n isFieldInvalid(field: string): boolean {\n return this.submitted && FormHelper.isFieldInvalid(this.loginForm, field);\n }\n\n private async login(login: () => Promise) {\n this.loading = true;\n try {\n const loggedIn = await login();\n if (loggedIn) {\n if (this.redirectUrl) {\n await this.navigationService.navigateByUrl(this.redirectUrl);\n } else {\n await this.navigationService.navigateToRoot();\n }\n }\n } catch (error) {\n if (error instanceof HttpErrorResponse && (error.status === 400 || error.status === 401)) {\n // test if error.error is a string\n let errorResponse = error.message;\n if (typeof error.error === 'string') {\n // TODO: for backend errors -> string should be always in message, not in error.error\n errorResponse = error.error;\n } else {\n }\n await this.popupService.showInfo(errorResponse, 'Login failed');\n } else {\n await this.popupService.showInfo('Something went wrong.', 'Login failed');\n }\n } finally {\n this.loading = false;\n }\n }\n}\n", "\n @if (loginForm) {\n
\n
\n
\n \n
\n \n \n @if (isFieldInvalid('email')) {\n \n @if (f.email.errors.required) {\n Please enter a valid email address\n }\n @if (f.email.errors.email) {\n Please enter a valid email address\n }\n \n }\n
\n
\n \n \n @if (isFieldInvalid('password')) {\n \n Enter your password\n \n }\n
\n \n \n
\n
\n \n
\n }\n
\n", "import { HttpErrorResponse } from '@angular/common/http';\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { FormHelper } from 'src/app/shared/helpers/form.helper';\nimport { ApiService } from 'src/app/shared/services/api/api.service';\nimport { PopupService } from 'src/app/shared/services/popup.service';\nimport { API_CALL_DEBOUNCE_TIME } from '../../../shared/types/constants';\n\n@Component({\n selector: 'auth-set-password-form',\n templateUrl: './set-password-form.component.html',\n styleUrls: ['./set-password-form.component.scss'],\n})\nexport class SetPasswordFormComponent implements OnInit {\n @Input() isActivation: boolean;\n @Input() token: string;\n @Input() confirmButtonText: string;\n @Output() passwordChange: EventEmitter = new EventEmitter();\n\n score: number | null;\n suggestions: string[];\n warning: string | null;\n\n form = this.formBuilder.group(\n {\n password: ['', [Validators.required, Validators.minLength(8), Validators.maxLength(64)]],\n copassword: ['', []],\n currentPassword: [{ value: '', disabled: true }, [Validators.required]],\n agreeTermsOfUse: [{ value: false, disabled: true }, [Validators.requiredTrue]],\n },\n { validator: (f: FormGroup) => this.checkPasswordsEquality(f) },\n );\n\n get f() {\n return this.form.controls;\n }\n\n constructor(private formBuilder: FormBuilder, private apiService: ApiService, private popupService: PopupService) {}\n\n ngOnInit(): void {\n this.createForm();\n }\n\n private createForm(): void {\n if (!this.token) {\n this.f.currentPassword.enable();\n }\n if (this.isActivation) {\n this.f.agreeTermsOfUse.enable();\n }\n\n this.form.controls.password.valueChanges.pipe(distinctUntilChanged(), debounceTime(API_CALL_DEBOUNCE_TIME)).subscribe(async p => await this.onPasswordChange((p as string)));\n }\n\n private checkPasswordsEquality(form: FormGroup): null | { notSame: true } {\n const pass = form.get('password')?.value as string;\n const confirmPass = form.get('copassword')?.value as string;\n return pass === confirmPass ? null : { notSame: true };\n }\n\n private async onPasswordChange(password: string): Promise {\n if (!password || password.length < 8 || password.length > 64) {\n this.suggestions = [];\n this.warning = null;\n this.score = !password ? null : password?.length < 8 ? Math.round(password.length / 3) : 0;\n } else {\n const feedback = await this.apiService.evaluatePassword(password);\n this.suggestions = feedback.suggestions;\n this.warning = feedback.warning;\n this.score = feedback.score;\n if (this.score < 3) {\n this.form.controls.password.setErrors({ weekPassword: true });\n }\n }\n }\n\n fixSentence(sentence: string): string {\n return sentence.endsWith('.') ? sentence : `${sentence}.`;\n }\n\n isFieldInvalid(field: string): boolean {\n return FormHelper.isFieldInvalid(this.form, field);\n }\n\n async onSubmit(): Promise {\n if (this.form.invalid) {\n return;\n }\n\n try {\n const currentPassword = this.token ? null : this.form.get('currentPassword')?.value as string;\n const newPassword = this.form.get('password')?.value as string;\n await this.apiService.setPassword(this.token, currentPassword, newPassword);\n if (!this.isActivation) {\n this.popupService.showSnackBar('Your new password was saved');\n } else {\n this.popupService.showSnackBar('Account activated');\n }\n this.passwordChange.emit();\n } catch (error) {\n if (error instanceof HttpErrorResponse && error.error === 'Wrong password') {\n this.form.controls.currentPassword.setErrors({ wrongPassword: true });\n } else {\n await this.popupService.showInfo(\n '
If you are having issues resetting your password, please contact us.
',\n 'We could not save your new password',\n null,\n true,\n );\n }\n }\n }\n}\n", "
\n @if (isActivation) {\n
\n

Now choose your password you’ll be using to log in, and you’re all set. (You can always change your password later.)

\n
\n }\n\n @if (!token) {\n
\n \n \n @if (isFieldInvalid('currentPassword')) {\n \n @if (f.currentPassword.errors?.wrongPassword) {\n Incorrect password\n }\n \n }\n
\n }\n\n
\n @if (isActivation) {\n \n } @else {\n \n }\n\n \n\n
\n
\n
\n @if (f.password.hasError('passwordWeak') && f.password.dirty) {\n \n \n

Password is too weak

\n
\n
\n }\n
\n @if (f.password.value.length > 0 && (suggestions?.length > 0 || warning)) {\n

\n @if (warning) {\n {{ fixSentence(warning) }} \n }\n @if (suggestions?.length > 0 && score < 3) {\n @for (suggestion of suggestions; track suggestion) {\n {{ fixSentence(suggestion) }} \n }\n }\n

\n }\n

Must be at least 8 characters long. Spaces are allowed.

\n
\n
\n\n
\n @if (isActivation) {\n \n } @else {\n \n }\n\n \n\n @if (form.hasError('notSame') && f.copassword.dirty) {\n \n The passwords you entered do not match\n \n }\n
\n\n @if (isActivation && f.agreeTermsOfUse) {\n
\n I agree to the Terms of use\n
\n }\n\n \n
\n", "import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { ApiService } from 'src/app/shared/services/api/api.service';\nimport { NavigationService } from 'src/app/shared/services/navigation.service';\n\n@Component({\n selector: 'auth-set-password',\n templateUrl: './set-password.component.html',\n styleUrls: ['./set-password.component.scss'],\n})\nexport class SetPasswordComponent {\n isInitialized = false;\n hasExpired = false;\n otherError = false;\n token: string | null;\n firstName: string;\n title: string;\n\n constructor(private activatedRoute: ActivatedRoute, private apiService: ApiService, private navigationService: NavigationService) {\n void this.initPasswordReset();\n }\n\n async initPasswordReset(): Promise {\n this.token = this.activatedRoute.snapshot.paramMap.get('token');\n if (!this.token) {\n return;\n }\n try {\n this.firstName = await this.apiService.checkPasswordResetToken(this.token);\n this.title = !this.firstName ? 'Choose a new password' : `Welcome ${this.firstName}!`;\n this.isInitialized = true;\n } catch (error: any) {\n if (error.error === 'Expired token') {\n this.hasExpired = true;\n this.title = 'Sorry, the link has expired';\n } else {\n this.otherError = true;\n this.title = 'Sorry, the link is invalid';\n }\n }\n }\n\n async goToLogin(): Promise {\n await this.navigationService.navigateToLogin(null, false, false);\n }\n}\n", "\n
\n @if (isInitialized) {\n
\n \n
\n }\n @if (hasExpired) {\n
\n
\n

For security reasons, these links cannot be valid for too long.

\n

But don’t worry, we’ve already sent you a new one. Check your inbox and click the link in the email we just sent you.

\n
\n
\n

If you’re having any problems or need assistance,
please get in touch.

\n
\n
\n }\n @if (otherError) {\n
\n
\n

If you've received multiple emails with a password reset link, only the latest one is valid.

\n

Please enter your email again, and we'll send you a new link.

\n Continue\n
\n
\n }\n
\n
\n", "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { LoginAuthGuard } from 'src/app/shared/auth-guards/login.auth-guard';\nimport { ForgotPasswordComponent } from './forgot-password/forgot-password.component';\nimport { LoginComponent } from './login/login.component';\nimport { SetPasswordComponent } from './set-password/set-password.component';\n\nconst routes: Routes = [\n {\n path: '',\n redirectTo: 'login',\n pathMatch: 'full',\n },\n {\n path: 'login',\n component: LoginComponent,\n canActivate: [LoginAuthGuard],\n },\n {\n path: 'forgot-password',\n component: ForgotPasswordComponent,\n },\n {\n path: 'set-password/:token',\n component: SetPasswordComponent,\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AuthRoutingModule {}\n", "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { SharedModule } from 'src/app/shared/shared.module';\nimport { AuthRoutingModule } from './login-routing.module';\nimport { AuthTemplateComponent } from './auth-template/auth-template.component';\nimport { ForgotPasswordComponent } from './forgot-password/forgot-password.component';\nimport { LoginComponent } from './login/login.component';\nimport { SetPasswordComponent } from './set-password/set-password.component';\nimport { SetPasswordFormComponent } from './set-password-form/set-password-form.component';\n\n@NgModule({\n imports: [CommonModule, RouterModule, AuthRoutingModule, FormsModule, ReactiveFormsModule, SharedModule],\n declarations: [AuthTemplateComponent, LoginComponent, SetPasswordComponent, SetPasswordFormComponent, ForgotPasswordComponent],\n exports: [AuthTemplateComponent, LoginComponent, SetPasswordComponent, SetPasswordFormComponent, ForgotPasswordComponent],\n schemas: [],\n providers: [],\n})\nexport class LoginModule {\n static getSetPasswordFormComponent() {\n return SetPasswordFormComponent;\n }\n}\n"], "mappings": "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", "names": ["LoginAuthGuard", "constructor", "organizationService", "selectionService", "storageService", "signalRService", "authService", "canActivate", "route", "state", "__async", "clearStorage", "clear", "stopConnection", "logout", "\u0275\u0275inject", "OrganizationService", "SelectionService", "StorageService", "SignalRService", "AuthService", "factory", "\u0275fac", "providedIn", "_LoginAuthGuard", "AuthTemplateComponent", "constructor", "selectors", "inputs", "title", "ngContentSelectors", "_c1", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275element", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275projection", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "_AuthTemplateComponent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "ctx_r0", "f", "email", "value", "\u0275\u0275template", "ForgotPasswordComponent_Conditional_5_Conditional_6_Conditional_1_Template", "ForgotPasswordComponent_Conditional_5_Conditional_6_Conditional_2_Template", "\u0275\u0275conditional", "errors", "required", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r2", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onSubmit", "\u0275\u0275element", "ForgotPasswordComponent_Conditional_5_Conditional_6_Template", "\u0275\u0275property", "forgotPasswordForm", "\u0275\u0275pureFunction1", "_c0", "submitted", "isFieldInvalid", "ForgotPasswordComponent", "controls", "constructor", "formBuilder", "apiService", "popupService", "navigationService", "title", "afterEmailReset", "group", "Validators", "loginRoute", "getLoginRoute", "field", "FormHelper", "__async", "valid", "resetPassword", "showInfo", "\u0275\u0275directiveInject", "FormBuilder", "ApiService", "PopupService", "NavigationService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "ForgotPasswordComponent_Conditional_3_Template", "ForgotPasswordComponent_Conditional_4_Template", "ForgotPasswordComponent_Conditional_5_Template", "_ForgotPasswordComponent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275template", "LoginComponent_Conditional_1_Conditional_9_Conditional_1_Template", "LoginComponent_Conditional_1_Conditional_9_Conditional_2_Template", "\u0275\u0275advance", "\u0275\u0275conditional", "ctx_r1", "f", "email", "errors", "required", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onSubmit", "\u0275\u0275element", "LoginComponent_Conditional_1_Conditional_9_Template", "LoginComponent_Conditional_1_Conditional_14_Template", "$event", "loginWithMicrosoft", "\u0275\u0275i18nStart", "\u0275\u0275i18nEnd", "\u0275\u0275property", "loginForm", "isFieldInvalid", "\u0275\u0275pureFunction1", "_c1", "loading", "LoginComponent", "controls", "constructor", "authService", "formBuilder", "popupService", "navigationService", "submitted", "group", "Validators", "password", "redirectUrl", "getQueryParam", "__async", "invalid", "login", "loginWithPassword", "value", "event", "shiftKey", "confirm", "setTimeout", "field", "FormHelper", "navigateByUrl", "navigateToRoot", "error", "HttpErrorResponse", "status", "errorResponse", "message", "showInfo", "\u0275\u0275directiveInject", "AuthService", "FormBuilder", "PopupService", "NavigationService", "selectors", "viewQuery", "rf", "ctx", "$localize", "LoginComponent_Conditional_1_Template", "_LoginComponent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275template", "SetPasswordFormComponent_Conditional_2_Conditional_4_Conditional_1_Template", "\u0275\u0275advance", "\u0275\u0275conditional", "ctx_r0", "f", "currentPassword", "errors", "wrongPassword", "\u0275\u0275element", "SetPasswordFormComponent_Conditional_2_Conditional_4_Template", "\u0275\u0275property", "\u0275\u0275pureFunction1", "_c0", "invalid", "dirty", "isFieldInvalid", "\u0275\u0275textInterpolate1", "fixSentence", "warning", "suggestion_r2", "\u0275\u0275repeaterCreate", "SetPasswordFormComponent_Conditional_11_Conditional_2_For_1_Template", "\u0275\u0275repeaterTrackByIdentity", "\u0275\u0275repeater", "suggestions", "SetPasswordFormComponent_Conditional_11_Conditional_1_Template", "SetPasswordFormComponent_Conditional_11_Conditional_2_Template", "length", "score", "SetPasswordFormComponent", "form", "controls", "constructor", "formBuilder", "apiService", "popupService", "passwordChange", "EventEmitter", "group", "password", "Validators", "required", "minLength", "maxLength", "copassword", "value", "disabled", "agreeTermsOfUse", "requiredTrue", "validator", "checkPasswordsEquality", "ngOnInit", "createForm", "token", "enable", "isActivation", "valueChanges", "pipe", "distinctUntilChanged", "debounceTime", "API_CALL_DEBOUNCE_TIME", "subscribe", "p", "__async", "onPasswordChange", "pass", "get", "confirmPass", "notSame", "Math", "round", "feedback", "evaluatePassword", "setErrors", "weekPassword", "sentence", "endsWith", "field", "FormHelper", "onSubmit", "newPassword", "setPassword", "showSnackBar", "emit", "error", "HttpErrorResponse", "showInfo", "\u0275\u0275directiveInject", "FormBuilder", "ApiService", "PopupService", "selectors", "inputs", "confirmButtonText", "outputs", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275listener", "SetPasswordFormComponent_Conditional_1_Template", "SetPasswordFormComponent_Conditional_2_Template", "SetPasswordFormComponent_Conditional_4_Template", "SetPasswordFormComponent_Conditional_5_Template", "SetPasswordFormComponent_Conditional_9_Template", "SetPasswordFormComponent_Conditional_11_Template", "SetPasswordFormComponent_Conditional_15_Template", "SetPasswordFormComponent_Conditional_16_Template", "SetPasswordFormComponent_Conditional_18_Template", "SetPasswordFormComponent_Conditional_19_Template", "SetPasswordFormComponent_Conditional_21_Template", "SetPasswordFormComponent_Conditional_22_Template", "hasError", "_SetPasswordFormComponent", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "goToLogin", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275property", "token", "firstName", "\u0275\u0275text", "\u0275\u0275element", "SetPasswordComponent", "constructor", "activatedRoute", "apiService", "navigationService", "isInitialized", "hasExpired", "otherError", "initPasswordReset", "__async", "snapshot", "paramMap", "get", "checkPasswordResetToken", "title", "error", "navigateToLogin", "\u0275\u0275directiveInject", "ActivatedRoute", "ApiService", "NavigationService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "SetPasswordComponent_Conditional_2_Template", "SetPasswordComponent_Conditional_3_Template", "SetPasswordComponent_Conditional_4_Template", "\u0275\u0275conditional", "_SetPasswordComponent", "routes", "path", "redirectTo", "pathMatch", "component", "LoginComponent", "canActivate", "LoginAuthGuard", "ForgotPasswordComponent", "SetPasswordComponent", "AuthRoutingModule", "RouterModule", "forChild", "_AuthRoutingModule", "LoginModule", "getSetPasswordFormComponent", "SetPasswordFormComponent", "CommonModule", "RouterModule", "AuthRoutingModule", "FormsModule", "ReactiveFormsModule", "SharedModule", "_LoginModule"] }