{"version":3,"file":"866.d0407e3775e6516d.js","mappings":"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","names":["selectSubscriberStoreState","createFeatureSelector","selectSubscriberSelectedCategories","createSelector","selectCategoriesMap","s","c","selectedCategories","map","cc","selectSubscriberSelectedCategoryIds","selectSubscriberSelectedCategoriesMap","selectHeadCategories","result","reduce","d","categoryId","forEach","selectAtLeastOneCategorySelected","length","selectCategoriesTouched","categoriesTouched","selectResendMaxAttemptsReached","activationEmailResendMaxAttemptsReached","selectEmailVerificationResendToken","emailResendToken","selectEmailVerificationComplete","emailVerificationComplete","selectEmailVeririficationFailed","emailVerificationError","selectSubscriptionCategories","selectCategoriesMapNotEmpty","subscription","subscibedCategoryIds","selectSubscriptionLocalities","selectLocalitiesMapNotEmpty","l","selectedLocalityIds","selectIsEditModeOn","isEditMode","selectSubscriberCode","code","selectSubscriptionFormInitialValue","sub","name","email","localities","selectIsSubscriptionLoading","loading","selectIsEmailValidateLoading","emailValidateLoading","selectSubscriptionPageMetaData","selectCurrentWebsiteNameForSeo","w","website","metaData","i0","_r6","data_r1","ngIf","ctx_r4","onResend","SubscriptionSuccessComponent_div_0_div_4_Template","SubscriptionSuccessComponent_div_0_div_5_Template","_c0","maxResendAttemptsReached","SubscriptionSuccessComponent","constructor","store","this","dispatch","resendActivationEmail","payload","emailVerificationResendToken","ngOnInit","maxResendAttemptsReached$","pipe","select","emailResendToken$","static","t","i1","core","Xpm","selectors","decls","vars","consts","template","rf","ctx","SubscriptionSuccessComponent_div_0_Template","_c1","ctx_r7","getValidationMessage","subscriptionForm","controls","errors","server","$event","category_r11","_r13","$implicit","ctx_r12","onToggleCategory","selectedCategoriesMap","locality_r15","localityId","_r17","ctx_r16","onSubscribe","CreateEditSubscriptionComponent_ng_container_3_mat_error_17_Template","CreateEditSubscriptionComponent_ng_container_3_mat_error_18_Template","CreateEditSubscriptionComponent_ng_container_3_mat_error_26_Template","CreateEditSubscriptionComponent_ng_container_3_mat_error_27_Template","CreateEditSubscriptionComponent_ng_container_3_mat_error_28_Template","CreateEditSubscriptionComponent_ng_container_3_div_37_Template","CreateEditSubscriptionComponent_ng_container_3_mat_error_38_Template","CreateEditSubscriptionComponent_ng_container_3_mat_option_49_Template","ctx_r18","onCancelSubscribe","ctx_r0","formInitialValue$","_r2","submitted","touched","required","pattern","headCategories","atLeastOneCategorySelected","CreateEditSubscriptionComponent","subscriberService","router","metaService","UntypedFormGroup","UntypedFormControl","Validators","Patterns","emailNew","validateEmail","bind","personName","messagetTypeErrorTextMap","SubscriberRegistrationValidationMessage","EmailRegisteredToSubscriber","EmailRegisteredToJobseekerToAccessYourAccountPleaseLogin","CannotConnectToServer","getSubscriptionPageSeoData","headCategories$","atLeastOneCategorySelected$","selectedCategoriesMap$","selectedCategories$","categoriesTouched$","localities$","selectLocalities","isEditMode$","code$","isLoading$","isEmailValidateLoading$","metaDataSubscription","subscribe","data","updateMetaData","ngOnDestroy","unsubscribe","resetSubscriptionCategories","categoryIds","value","valid","createNewSubscription","Email","Name","OccupationCategoryIds","LocalityIds","DailyDigestOn","updateSubscription","Code","category","event","updateSelectedCategories","checked","navigate","setTimeout","setEmailValidateLoading","isValidateLoading","debounceTime","isSuccess","items","message","catchError","response","finalize","messageType","i2","i3","i4","CreateEditSubscriptionComponent_ng_container_3_Template","_c2","category_r4","last_r5","locality_r6","last_r7","ViewSubscriptionComponent_ng_container_0_span_11_Template","ViewSubscriptionComponent_ng_container_0_span_17_Template","_r9","ctx_r8","onEdit","subscriptionCategories","subscriptionLocalities","ViewSubscriptionComponent","activateEditMode","route","paramMap","p","loadSubscription","subscriberCode","get","subscriptionCategories$","subscriptionLocalities$","ViewSubscriptionComponent_ng_container_0_Template","SubscriberEmailVerificationComponentComponent","activatedRoute","verificationCode","verifySubscriberEmail","emailVerificationComplete$","emailVerificationFailed$","SubscriberEmailVerificationComponentComponent_div_1_Template","SubscriberEmailVerificationComponentComponent_div_3_Template","_r3","ctx_r2","onCancel","CancelSubscriptionComponent","cancelSubscription","CancelSubscriptionComponent_ng_container_2_Template","UnsubscribeCompleteComponent","subscriberRoutes","path","pathMatch","component","mode","canActivate","SubscribeGuard","next","state","authService","isJobseekerSignedIn","createUrlTree","Yz7","factory","ɵfac","providedIn","SubscriberRoutingModule","oAB","cJS","CommonModule","RouterModule","forChild","SubscriberModule","MatCheckboxModule","MatRadioModule","MatFormFieldModule","MatInputModule","SharedModule","FormsModule","ReactiveFormsModule","AngularSvgIconModule","HrUiModule","UiModule","MatSelectModule","MatProgressBarModule"],"sourceRoot":"webpack:///","sources":["./apps/public-web-app/src/app/root-store/subscriber-store/selectors.ts","./apps/public-web-app/src/app/subscriber/subscription-success/subscription-success.component.html","./apps/public-web-app/src/app/subscriber/subscription-success/subscription-success.component.ts","./apps/public-web-app/src/app/subscriber/create-edit-subscription/create-edit-subscription.component.html","./apps/public-web-app/src/app/subscriber/create-edit-subscription/create-edit-subscription.component.ts","./apps/public-web-app/src/app/subscriber/view-subscription/view-subscription.component.html","./apps/public-web-app/src/app/subscriber/view-subscription/view-subscription.component.ts","./apps/public-web-app/src/app/subscriber/subscriber-email-verification-component/subscriber-email-verification-component.component.html","./apps/public-web-app/src/app/subscriber/subscriber-email-verification-component/subscriber-email-verification-component.component.ts","./apps/public-web-app/src/app/subscriber/cancel-subscription/cancel-subscription.component.html","./apps/public-web-app/src/app/subscriber/cancel-subscription/cancel-subscription.component.ts","./apps/public-web-app/src/app/subscriber/unsubscribe-complete/unsubscribe-complete.component.ts","./apps/public-web-app/src/app/subscriber/unsubscribe-complete/unsubscribe-complete.component.html","./apps/public-web-app/src/app/subscriber/subscriber-routing.module.ts","./apps/public-web-app/src/app/subscriber/subscribe.guard.ts","./apps/public-web-app/src/app/subscriber/subscriber.module.ts"],"sourcesContent":["import { createFeatureSelector, createSelector } from '@ngrx/store';\nimport { AppState } from '../state';\nimport { SubscriberState } from './state';\nimport { selectCategoriesMap, selectCategoriesMapNotEmpty, selectCurrentWebsiteNameForSeo, selectHeadCategories, selectLocalitiesMapNotEmpty } from '../selectors';\n\n\nexport const selectSubscriberStoreState = createFeatureSelector<SubscriberState>('subscriber');\n\n\nexport const selectSubscriberSelectedCategories = createSelector(\n    selectSubscriberStoreState,\n    selectCategoriesMap,\n    (s, c) => s.selectedCategories.map(cc => c[cc])\n);\n\nexport const selectSubscriberSelectedCategoryIds = createSelector(\n    selectSubscriberStoreState,\n    s => s.selectedCategories\n);\n\nexport const selectSubscriberSelectedCategoriesMap = createSelector(\n    selectSubscriberSelectedCategories,\n    selectHeadCategories,\n    (s, cc) => {\n\n        let result = cc.reduce((d, c) => {\n            d[c.categoryId] = false;\n            return d;\n        }, {})\n\n        s.forEach(c =>{\n            result[c.categoryId] = true;\n        });\n\n        return result;\n    }\n);\n\nexport const selectAtLeastOneCategorySelected = createSelector(\n    selectSubscriberSelectedCategories,\n    s => s.length > 0\n);\n\n\nexport const selectCategoriesTouched = createSelector(\n    selectSubscriberStoreState,\n    s => s.categoriesTouched\n);\n\n\nexport const selectResendMaxAttemptsReached = createSelector(\n    selectSubscriberStoreState,\n    s => s.activationEmailResendMaxAttemptsReached\n);\n\nexport const selectEmailVerificationResendToken = createSelector(\n    selectSubscriberStoreState,\n    s => s.emailResendToken\n);\n\nexport const selectEmailVerificationComplete = createSelector(\n    selectSubscriberStoreState,\n    s => s.emailVerificationComplete\n);\n\nexport const selectEmailVeririficationFailed = createSelector(\n    selectSubscriberStoreState,\n    s => s.emailVerificationError\n);\n\nexport const selectSubscriptionCategories = createSelector(\n    selectSubscriberStoreState,\n    selectCategoriesMapNotEmpty,\n    (s, c) => c == null ? [] : s.subscription?.subscibedCategoryIds.map(cc => c[cc]) ?? []\n);\n\nexport const selectSubscriptionLocalities = createSelector(\n    selectSubscriberStoreState,\n    selectLocalitiesMapNotEmpty,\n    (s, l) => l == null ? [] : s.subscription?.selectedLocalityIds.map(c => l[c]) ?? []\n);\n\nexport const selectIsEditModeOn = createSelector(\n    selectSubscriberStoreState,\n    s => s.isEditMode\n);\n\nexport const selectSubscriberCode = createSelector(\n    selectSubscriberStoreState,\n    s => s.subscription?.code\n);\n\nexport const selectSubscriptionFormInitialValue = createSelector(\n    selectSubscriberStoreState,\n    s => {\n        let sub = s.subscription;\n        return sub && {\n            name: sub.name,\n            email: sub.email,\n            localities: sub.selectedLocalityIds\n        };\n    }\n);\n\nexport const selectIsSubscriptionLoading = createSelector(\n    selectSubscriberStoreState,\n    s => s.loading\n);\n\nexport const selectIsEmailValidateLoading = createSelector(\n    selectSubscriberStoreState,\n    s => s.emailValidateLoading\n);\n\nexport const selectSubscriptionPageMetaData = createSelector(\n    selectSubscriberStoreState,\n    selectCurrentWebsiteNameForSeo,\n    (s, w) => {\n        return {\n            website: w,\n            metaData: s.metaData\n        };\n    }\n);","<div style=\"padding: 1rem 0.5rem 0.5rem 1.9375rem;\" *ngIf=\"{maxResendAttemptsReached: maxResendAttemptsReached$ | async, emailResendToken: emailResendToken$ | async } as data\">\n    <div [innerHtml]=\"'text.SubscriberActivationLinkPageInformation' | translate: { 'email': 'mail@example.com'} | safeHtml\" >\n    </div>\n    <div *ngIf=\"!data.maxResendAttemptsReached && data.emailResendToken!=null\">\n        <span style=\"text-decoration: underline; cursor: pointer;\" (click)=\"onResend(data.emailResendToken)\">{{ 'label.ResendActivationEmail' | translate}}</span>\n    </div>\n    <div *ngIf=\"data.maxResendAttemptsReached\">\n        <div class=\"warning\" [innerHtml]=\"('message.MaxNumberOfAttemptsReached' | translate) | safeHtml\"></div>\n    </div>\n</div>\n","import { Component, OnInit } from '@angular/core';\nimport { select, Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { AppState } from 'src/app/root-store/state';\nimport { resendActivationEmail } from 'src/app/root-store/subscriber-store/actions';\nimport { selectEmailVerificationResendToken, selectResendMaxAttemptsReached } from 'src/app/root-store/subscriber-store/selectors';\n\n@Component({\n  selector: 'app-subscription-success',\n  templateUrl: './subscription-success.component.html',\n  styleUrls: ['./subscription-success.component.scss']\n})\nexport class SubscriptionSuccessComponent implements OnInit {\n\n  public maxResendAttemptsReached$: Observable<boolean>;\n  public emailResendToken$: Observable<string>;\n\n  constructor(private store: Store<AppState>) { }\n\n  public onResend(emailResendToken: string){\n    this.store.dispatch(resendActivationEmail({ payload: { emailVerificationResendToken: emailResendToken }}));\n  }\n\n  ngOnInit(): void {\n\n    this.maxResendAttemptsReached$ = this.store.pipe(select(selectResendMaxAttemptsReached));\n    this.emailResendToken$ = this.store.pipe(select(selectEmailVerificationResendToken));\n  }\n\n}\n","<app-spinner [isLoading]=\"(isLoading$ | async) || (isEmailValidateLoading$ | async)\">\n  <ng-container *ngIf=\"{\n    headCategories: headCategories$ | async,\n    selectedCategoriesMap: selectedCategoriesMap$ | async,\n    categoriesTouched: categoriesTouched$ | async,\n    atLeastOneCategorySelected: atLeastOneCategorySelected$ | async,\n    localities: localities$ | async,\n    selectedCategories: selectedCategories$ | async,\n    isEditMode: isEditMode$ | async,\n    code: code$ | async\n  } as data\">\n    <div class=\"top-container\">\n      <h1>{{'label.Subscribe' | translate}}</h1>\n      <form [formGroup]=\"subscriptionForm\" #ngForm=\"ngForm\" [appConnectForm]=\"formInitialValue$ | async\"\n        (ngSubmit)=\"onSubscribe(data.selectedCategories, data.isEditMode, data.code)\">\n        <div [ngClass]=\"{ 'common-info-container': !data.isEditMode, 'common-info-container--hidden': data.isEditMode}\">\n          <div class=\"personal-info\">\n            <div class=\"personal-info__name personal-info__form-item\">\n              <div class=\"personal-info__label\">{{ \"label.Name\" | translate }}:</div>\n              <div class=\"personal-info__input-container\">\n                <input class=\"personal-info__text-input\" formControlName=\"name\" placeholder=\"{{'label.YourName' | translate}}\" />\n                <mat-error\n                  *ngIf=\"(ngForm.submitted || subscriptionForm.controls['name'].touched) && subscriptionForm.controls['name'].errors?.required \">\n                  {{'message.MandatoryField' | translate}}\n                </mat-error>\n                <mat-error *ngIf=\"subscriptionForm.controls['name'].errors?.pattern\">\n                  {{'message.IncorrectFormat' | translate}}\n                </mat-error>\n              </div>\n            </div>\n            <div class=\"personal-info__email personal-info__form-item\">\n              <div class=\"personal-info__label\">{{ \"label.Email\" | translate }}:</div>\n              <div class=\"personal-info__input-container\">\n                <input class=\"personal-info__text-input\" formControlName=\"email\" placeholder=\"{{'label.YourEmail' | translate}}\" />\n                <mat-error\n                  *ngIf=\"(ngForm.submitted || subscriptionForm.controls['email'].touched) &&subscriptionForm.controls['email'].errors?.required \">\n                  {{'message.MandatoryField' | translate}}\n                </mat-error>\n                <mat-error\n                  *ngIf=\"(ngForm.submitted || subscriptionForm.controls['email'].touched) && subscriptionForm.controls['email'].errors?.pattern\">\n                  {{'message.IncorrectFormat' | translate}}\n                </mat-error>\n                <mat-error\n                  *ngIf=\"(ngForm.submitted || subscriptionForm.controls['email'].touched) && subscriptionForm.controls['email'].errors?.server\">\n                  {{ getValidationMessage(subscriptionForm.controls['email'].errors?.server) | translate}}\n                </mat-error>\n              </div>\n            </div>\n          </div>\n          <div class=\"help-text\">\n            <div [innerHTML]=\"'text.SubscriptionInfo' | translate\"></div>\n          </div>\n        </div>\n        <div class=\"subscription-details-container\">\n          <div>{{'text.SelectCategoriesInfo' | translate}}</div>\n          <div class=\"categories-container\">\n            <div *ngFor=\"let category of data.headCategories\" class=\"categories-container__item\">\n              <mat-checkbox (change)=\"onToggleCategory(category, $event)\"\n                [ngModel]=\"data.selectedCategoriesMap[category.categoryId]\" [ngModelOptions]=\"{standalone: true}\">\n                {{category.name}}</mat-checkbox>\n            </div>\n          </div>\n          <mat-error *ngIf=\"(data.categoriesTouched || ngForm.submitted) && !data.atLeastOneCategorySelected\">\n            {{'message.SelectAtLeastOneCategory' | translate}}</mat-error>\n          <div class=\"localities-container\">\n            <div class=\"localities-container__description\">{{'text.SelectLocalitiesInfo' | translate}}</div>\n            <div class=\"localities-container__input\">\n              <mat-form-field appearance=\"outline\" class=\"localities-container__mat-form-field\">\n                <mat-label>{{'label.SelectCities' | translate}}</mat-label>\n                <mat-select formControlName=\"localities\" multiple>\n                  <mat-option *ngFor=\"let locality of data.localities\" [value]=\"locality.localityId\">{{locality.name}}\n                  </mat-option>\n                </mat-select>\n              </mat-form-field>\n            </div>\n          </div>\n        </div>\n        <div class=\"button-container\">\n          <button class=\"button-container__item button-container__item--green\"\n            type=\"submit\">{{'label.Save' | translate}}</button>\n          <button (click)=\"onCancelSubscribe()\" class=\"button-container__item button-container__item--grey\"\n            type=\"button\">{{'label.Cancel' | translate}}</button>\n        </div>\n      </form>\n    </div>\n  </ng-container>\n</app-spinner>","import { Component, OnInit } from '@angular/core';\nimport { AbstractControl, UntypedFormControl, UntypedFormGroup, ValidationErrors, Validators } from '@angular/forms';\nimport { MatLegacyCheckboxChange as MatCheckboxChange } from '@angular/material/legacy-checkbox';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { select, Store } from '@ngrx/store';\nimport { Observable, ObservedValueOf, Subscription } from 'rxjs';\nimport { catchError, debounceTime, finalize, map } from 'rxjs/operators';\nimport { ApiResponse } from '@hrra/core';\nimport { ServerValidationResult } from 'src/app/jobseeker/shared/services/jobseeker.service';\nimport { selectDisplayCategories } from 'src/app/root-store/announcement-store/search-page/selectors';\nimport { selectHeadCategories, selectLocalities } from 'src/app/root-store/selectors';\nimport { AppState } from 'src/app/root-store/state';\nimport { createNewSubscription, getSubscriptionPageSeoData, resetSubscriptionCategories, setEmailValidateLoading, updateSelectedCategories, updateSubscription } from 'src/app/root-store/subscriber-store/actions';\nimport { selectAtLeastOneCategorySelected, selectCategoriesTouched, selectIsEditModeOn, selectIsEmailValidateLoading, selectIsSubscriptionLoading, selectSubscriberCode, selectSubscriberSelectedCategories, selectSubscriberSelectedCategoriesMap, selectSubscriberSelectedCategoryIds, selectSubscriptionFormInitialValue, selectSubscriptionPageMetaData } from 'src/app/root-store/subscriber-store/selectors';\nimport { Dictionary } from '@hrra/core';\nimport { MetaDataModel } from 'src/app/shared/models/meta-model';\nimport { MetaService } from 'src/app/shared/services/meta.service';\nimport { SubscriberRegistrationRequestViewModel, SubscriberRegistrationValidationMessage, SubscriberService } from '../shared/services/subsriber.service';\nimport { Patterns } from '@hrra/core';\nimport { Locality, OccupationCategory } from '@hrra/common-models';\n\n@Component({\n  selector: 'app-create-edit-subscription',\n  templateUrl: './create-edit-subscription.component.html',\n  styleUrls: ['./create-edit-subscription.component.scss']\n})\nexport class CreateEditSubscriptionComponent implements OnInit {\n\n  metaDataSubscription: Subscription;\n  \n  subscriptionForm: UntypedFormGroup;\n\n  messagetTypeErrorTextMap: { [index: number]: string };\n\n  public headCategories$: Observable<OccupationCategory[]>;\n  public selectedCategoriesMap$: Observable<Dictionary<boolean>>;\n  public selectedCategories$: Observable<number[]>;\n  public atLeastOneCategorySelected$: Observable<boolean>;\n  public categoriesTouched$: Observable<boolean>;\n  public localities$: Observable<Locality[]>;\n  public isEditMode$: Observable<boolean>;\n  public code$: Observable<string>;\n\n  public formInitialValue$: Observable<any>;\n  public isLoading$: Observable<boolean>;\n  public isEmailValidateLoading$: Observable<boolean>;\n\n  constructor(private store: Store<AppState>, private subscriberService: SubscriberService, private router: Router,  private metaService: MetaService) {\n    this.subscriptionForm = new UntypedFormGroup({\n\n      email: new UntypedFormControl(null, [Validators.required, Validators.pattern(Patterns.emailNew)], this.validateEmail.bind(this),),\n      name: new UntypedFormControl(null, [Validators.required, Validators.pattern(Patterns.personName)]),\n      localities: new UntypedFormControl(null)\n\n    });\n\n    this.messagetTypeErrorTextMap = {\n      [SubscriberRegistrationValidationMessage.EmailRegisteredToSubscriber]: 'message.EmailRegisteredToSubscriber',\n      [SubscriberRegistrationValidationMessage.EmailRegisteredToJobseekerToAccessYourAccountPleaseLogin]: 'message.SubscriberEmailRegisteredToJobseeker',\n      [SubscriberRegistrationValidationMessage.CannotConnectToServer]: 'text.CannotConnectToServer',\n    };\n  }\n\n  ngOnInit(): void {\n    this.store.dispatch(getSubscriptionPageSeoData());\n\n    this.headCategories$ = this.store.pipe(select(selectHeadCategories));\n    this.atLeastOneCategorySelected$ = this.store.pipe(select(selectAtLeastOneCategorySelected));\n    this.selectedCategoriesMap$ = this.store.pipe(select(selectSubscriberSelectedCategoriesMap));\n    this.selectedCategories$ = this.store.pipe(select(selectSubscriberSelectedCategoryIds));\n    this.categoriesTouched$ = this.store.pipe(select(selectCategoriesTouched));\n    this.localities$ = this.store.pipe(select(selectLocalities));\n    this.isEditMode$ = this.store.pipe(select(selectIsEditModeOn));\n    this.code$ = this.store.pipe(select(selectSubscriberCode));\n    this.formInitialValue$ = this.store.pipe(select(selectSubscriptionFormInitialValue));\n    this.isLoading$ = this.store.pipe(select(selectIsSubscriptionLoading));\n    this.isEmailValidateLoading$ = this.store.pipe(select(selectIsEmailValidateLoading));\n\n    this. metaDataSubscription = this.store.pipe(select(selectSubscriptionPageMetaData)).subscribe(\n      (data) => {\n        this.metaService.updateMetaData(data.website, data.metaData);\n      }\n    )\n  }\n\n  ngOnDestroy() {\n    this.metaDataSubscription.unsubscribe();\n    this.store.dispatch(resetSubscriptionCategories());\n  }\n\n  onSubscribe(categoryIds: number[], isEditMode: boolean, code: string) {\n      let value = this.subscriptionForm.value;\n\n      if (!isEditMode && this.subscriptionForm.valid) {\n        this.store.dispatch(createNewSubscription({\n          payload: {\n            Email: value.email,\n            Name: value.name,\n            OccupationCategoryIds: categoryIds,\n            LocalityIds: value.localities,\n            DailyDigestOn: false,\n          }\n        }));\n      }\n      else if(categoryIds.length > 0){\n        this.store.dispatch(updateSubscription({\n          payload: {\n            Code: code,\n            OccupationCategoryIds: categoryIds,\n            LocalityIds: value.localities,\n            DailyDigestOn: false,\n          }\n        }));\n      }\n  }\n\n  onToggleCategory(category: OccupationCategory, event: MatCheckboxChange) {\n    this.store.dispatch(updateSelectedCategories({ payload: { categoryId: category.categoryId, checked: event.checked } }));\n  }\n\n  onCancelSubscribe(){\n    this.router.navigate(['/']);\n  }\n\n  validateEmail({ value }: AbstractControl): Observable<ValidationErrors | null> {\n\n    setTimeout(() =>\n      this.store.dispatch(setEmailValidateLoading({ payload: { isValidateLoading: true } }))\n    );\n\n    return this.subscriberService.validateEmail(value).pipe(\n      debounceTime(500),\n      map(d => {\n        if (d.data.isSuccess) {\n          return null;\n        }\n        else {\n          return { server: d.data.items[0].message };\n        }\n      }),\n      catchError((response: ApiResponse<ServerValidationResult<SubscriberRegistrationValidationMessage>>) => {\n        if (response.error.isConnectionFailure) {\n          return null;\n        }\n        else {\n          return null;\n          //TODO some message about failed validation?\n          //return of({ server: JobseekerRegistrationValidationMessage.CannotConnectToServer })\n        }\n      }),\n      finalize(() => this.store.dispatch(setEmailValidateLoading({ payload: { isValidateLoading: false } })))\n    );\n  }\n\n  getValidationMessage(messageType: SubscriberRegistrationValidationMessage) {\n    return this.messagetTypeErrorTextMap[messageType];\n  }\n\n}\n","<ng-container *ngIf=\"{\n    subscriptionCategories: subscriptionCategories$ | async,\n    subscriptionLocalities: subscriptionLocalities$ | async\n  } as data\">\n\n<div class=\"subscription-edit\">\n    <h1>{{'label.Subscription' | translate}}</h1>\n    <div class=\"subscription-details\">\n        <div class=\"subscription-details__categories display-item\">\n            <div class=\"categories__label display-item__label\">{{'label.Categories' | translate}}:</div>\n            <div class=\"categories__list display-item__list\">\n                <span *ngFor=\"let category of data.subscriptionCategories; let last=last;\">\n                    {{category.name}}{{last ? '' : ', '}}\n                </span>\n            </div>\n        </div>\n        <div  class=\"subscription-details__localities display-item\">\n            <div class=\"localities__label display-item__label\">{{'label.Cities' | translate}}:</div>\n            <div class=\"localities__list display-item__list\">\n                <span *ngFor=\"let locality of data.subscriptionLocalities; let last=last;\">\n                    {{locality.name}}{{last ? '' : ', '}}\n                </span>\n            </div>\n        </div>\n    </div>\n    <div class=\"button-container\">\n        <button class=\"subscription-edit__button\" (click)=\"onEdit()\">{{'label.Edit' | translate}}</button>\n    </div>\n</div>\n\n</ng-container>\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Locality, OccupationCategory } from '@hrra/common-models';\nimport { select, Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { AppState } from 'src/app/root-store/state';\nimport { activateEditMode, loadSubscription } from 'src/app/root-store/subscriber-store/actions';\nimport { selectSubscriptionCategories, selectSubscriptionLocalities } from 'src/app/root-store/subscriber-store/selectors';\n\n@Component({\n  selector: 'app-view-subscription',\n  templateUrl: './view-subscription.component.html',\n  styleUrls: ['./view-subscription.component.scss']\n})\nexport class ViewSubscriptionComponent implements OnInit {\n\n  public subscriptionCategories$: Observable<OccupationCategory[]>;\n  public subscriptionLocalities$: Observable<Locality[]>;\n\n\n  onEdit(){\n    this.store.dispatch(activateEditMode());\n  }\n\n  constructor(private route: ActivatedRoute, private router: Router, private store: Store<AppState>) { }\n\n  ngOnInit(): void {\n    this.route.paramMap.subscribe(p => {\n      this.store.dispatch(loadSubscription({ payload: { subscriberCode: p.get('code')}}));\n    });\n\n    this.subscriptionCategories$ = this.store.pipe(select(selectSubscriptionCategories));\n    this.subscriptionLocalities$ = this.store.pipe(select(selectSubscriptionLocalities));\n  }\n\n}\n","<div style=\"padding: 1rem;\">\n    <div *ngIf=\"emailVerificationComplete$ | async\">\n    {{ 'message.AccountIsActivated' | translate}}\n    </div>\n    <div *ngIf=\"emailVerificationFailed$ | async\">\n        <app-jobseeker-error-message\n        [messageHeading]=\"'message.CommonServerErrorSummary' | translate\"\n        [message]=\"'message.CommonServerErrorDetail' | translate\">\n    </app-jobseeker-error-message>\n    </div>\n</div>","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { select, Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { AppState } from 'src/app/root-store/state';\nimport { verifySubscriberEmail } from 'src/app/root-store/subscriber-store/actions';\nimport { selectEmailVerificationComplete, selectEmailVeririficationFailed } from 'src/app/root-store/subscriber-store/selectors';\n\n@Component({\n  selector: 'app-subscriber-email-verification-component',\n  templateUrl: './subscriber-email-verification-component.component.html',\n  styleUrls: ['./subscriber-email-verification-component.component.scss']\n})\nexport class SubscriberEmailVerificationComponentComponent implements OnInit {\n\n  public emailVerificationComplete$: Observable<boolean>;\n  public emailVerificationFailed$: Observable<boolean>;\n  \n  constructor(private activatedRoute: ActivatedRoute, private router: Router, private store: Store<AppState>) { }\n\n  ngOnInit(): void {\n    this.activatedRoute.paramMap.subscribe(p => {\n      let verificationCode = p.get('code');\n      this.store.dispatch(verifySubscriberEmail({payload: { verificationCode: verificationCode }}));\n    });\n\n    this.emailVerificationComplete$ = this.store.pipe(select(selectEmailVerificationComplete));\n    this.emailVerificationFailed$ = this.store.pipe(select(selectEmailVeririficationFailed));\n  }\n\n}\n","\n<app-spinner [isLoading]=\"isLoading$ | async\">\n    <ng-container *ngIf=\"{\n        code: code$ | async\n      } as data\">\n        <div class=\"top-container\">\n            <div class=\"header\">\n                <h1>{{'label.CancelSubscription' | translate}}</h1>\n            </div>\n            <div class=\"form\">\n                <div class=\"form-item cancel-row\">\n                    <div class=\"form-item__label\">{{'label.YesCancelSubscription' | translate}}</div>\n                    <div class=\"form-item__button-container\">\n                        <button class=\"form-item__button form-item__button--grey\" (click)=\"onCancel(data.code)\">{{'label.Cancel' | translate}}</button>\n                    </div>\n                </div>\n                <div class=\"form-item edit-row\">\n                    <div class=\"form-item__label\">{{'label.DoNotCancelButChangeSubscription' | translate}}</div>\n                    <div class=\"form-item__button-container\">\n                        <button class=\"form-item__button form-item__button--grey\" (click)=\"onEdit(data.code)\">{{'label.Edit' | translate}}</button>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </ng-container>\n</app-spinner>  ","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { select, Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { AppState } from 'src/app/root-store/state';\nimport { cancelSubscription, loadSubscription } from 'src/app/root-store/subscriber-store/actions';\nimport { selectIsSubscriptionLoading, selectSubscriberCode } from 'src/app/root-store/subscriber-store/selectors';\n\n@Component({\n  selector: 'app-cancel-subscription',\n  templateUrl: './cancel-subscription.component.html',\n  styleUrls: ['./cancel-subscription.component.scss']\n})\nexport class CancelSubscriptionComponent implements OnInit {\n\n  public code$: Observable<string>;\n  public isLoading$: Observable<boolean>;\n\n  public onCancel(code: string){\n    this.store.dispatch(cancelSubscription({ payload: { subscriberCode: code }}));\n  }\n\n  public onEdit(code: string){\n    this.router.navigate(['subscription', code]);\n  }\n\n  constructor(private route: ActivatedRoute, private router: Router, private store: Store<AppState>) { }\n\n  ngOnInit(): void {\n    this.route.paramMap.subscribe(p => {\n      this.store.dispatch(loadSubscription({ payload: { subscriberCode: p.get('code')}}));\n    });\n\n    this.code$ = this.store.pipe(select(selectSubscriberCode));\n\n    this.isLoading$ = this.store.pipe(select(selectIsSubscriptionLoading));\n  }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { AppState } from 'src/app/root-store/state';\nimport { verifySubscriberEmail } from 'src/app/root-store/subscriber-store/actions';\n\n@Component({\n  selector: 'app-unsubscriber-complete',\n  templateUrl: './unsubscribe-complete.component.html',\n  styleUrls: ['./unsubscribe-complete.component.scss']\n})\nexport class UnsubscribeCompleteComponent implements OnInit {\n\n  constructor() { }\n\n  ngOnInit(): void {\n  }\n\n}\n","<div style=\"padding: 1rem 0.5rem 0.5rem 1.9375rem;\">\n    <div [innerHtml]=\"'message.SubscriptionCanceled' | translate | safeHtml\" >\n    </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Routes, RouterModule } from '@angular/router';\nimport { SubscriptionSuccessComponent } from './subscription-success/subscription-success.component';\nimport { CreateEditSubscriptionComponent } from './create-edit-subscription/create-edit-subscription.component';\nimport { ViewSubscriptionComponent } from './view-subscription/view-subscription.component';\nimport { SubscriberEmailVerificationComponentComponent } from './subscriber-email-verification-component/subscriber-email-verification-component.component';\nimport { CancelSubscriptionComponent } from './cancel-subscription/cancel-subscription.component';\nimport { UnsubscribeCompleteComponent } from './unsubscribe-complete/unsubscribe-complete.component';\nimport { SubscribeGuard } from './subscribe.guard';\n\nconst subscriberRoutes: Routes = [\n  {\n    path: ':code/subscription',\n    pathMatch: 'full',\n    component: ViewSubscriptionComponent\n  },\n  {\n    path: 'subscription',\n    pathMatch: 'full',\n    data: { mode: 'create' },\n    component: CreateEditSubscriptionComponent,\n    canActivate: [SubscribeGuard]\n  },\n  {\n    path: 'subscription-complete',\n    pathMatch: 'full',\n    component: SubscriptionSuccessComponent\n  },\n  {\n    path: ':code/activate',\n    pathMatch: 'full',\n    component: SubscriberEmailVerificationComponentComponent\n  },\n  {\n    path: ':code/unsubscribe',\n    pathMatch: 'full',\n    component: CancelSubscriptionComponent\n  },\n  {\n    path: 'unsubscribe-complete',\n    pathMatch: 'full',\n    component: UnsubscribeCompleteComponent\n  }\n];\n\n@NgModule({\n  declarations: [],\n  imports: [CommonModule, RouterModule.forChild(subscriberRoutes)],\n  exports: [RouterModule],\n})\nexport class SubscriberRoutingModule { }\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\nimport { select, Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { filter, map, take, takeLast, takeUntil, tap } from 'rxjs/operators';\nimport { AuthService } from '../core/auth.service';\nimport { AppState } from '../root-store/state';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class SubscribeGuard  {\n  canActivate(\n    next: ActivatedRouteSnapshot,\n    state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n    let isJobseekerSignedIn = this.authService.isJobseekerSignedIn();\n\n    return isJobseekerSignedIn ? this.router.createUrlTree(['/jobseeker/subscription']) : true;\n  }\n\n  constructor(private authService: AuthService, private router: Router, private store: Store<AppState> ){\n\n  }\n  \n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CreateEditSubscriptionComponent } from './create-edit-subscription/create-edit-subscription.component';\nimport { ViewSubscriptionComponent } from './view-subscription/view-subscription.component';\nimport { CancelSubscriptionComponent } from './cancel-subscription/cancel-subscription.component';\nimport { SubscriptionSuccessComponent } from './subscription-success/subscription-success.component';\nimport { MatLegacyCheckboxModule as MatCheckboxModule } from '@angular/material/legacy-checkbox';\nimport { MatLegacyRadioModule as MatRadioModule } from '@angular/material/legacy-radio';\nimport { MatLegacyFormFieldModule as MatFormFieldModule } from '@angular/material/legacy-form-field';\nimport { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';\nimport { SharedModule } from '../shared/shared.module';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { AngularSvgIconModule } from 'angular-svg-icon';\nimport { HrUiModule } from '../hr-ui/hr-ui.module';\nimport { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';\nimport { MatLegacyProgressBarModule as MatProgressBarModule } from '@angular/material/legacy-progress-bar';\nimport { SubscriberRoutingModule } from './subscriber-routing.module';\nimport { UnsubscribeCompleteComponent } from './unsubscribe-complete/unsubscribe-complete.component';\nimport { JobseekerModule } from '../jobseeker/jobseeker.module';\nimport { SubscriberEmailVerificationComponentComponent } from './subscriber-email-verification-component/subscriber-email-verification-component.component';\nimport { UiModule } from '@hrra/ui';\n\n\n\n@NgModule({\n  declarations: [\n    CreateEditSubscriptionComponent, ViewSubscriptionComponent, CancelSubscriptionComponent, \n    SubscriptionSuccessComponent, UnsubscribeCompleteComponent, SubscriberEmailVerificationComponentComponent],\n  imports: [\n    CommonModule,\n    MatCheckboxModule,\n    MatRadioModule,\n    MatFormFieldModule,\n    MatInputModule,\n    SharedModule,\n    FormsModule,\n    ReactiveFormsModule,\n    SubscriberRoutingModule,\n    AngularSvgIconModule,\n    HrUiModule,\n    UiModule,\n    MatSelectModule,\n    MatProgressBarModule\n  ]\n})\nexport class SubscriberModule { }\n"],"x_google_ignoreList":[]}