{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/functions/functions.ts","./src/app/functions/index.ts","./src/app/interceptors/api/api.interceptor.ts","./src/app/interceptors/api/index.ts","./src/app/interceptors/app-interceptors.module.ts","./src/app/interceptors/auth/auth.interceptor.ts","./src/app/interceptors/auth/index.ts","./src/app/interceptors/error/error.interceptor.ts","./src/app/interceptors/error/index.ts","./src/app/interceptors/idle/idle.interceptor.ts","./src/app/interceptors/index.ts","./src/app/interceptors/target-market/index.ts","./src/app/interceptors/target-market/target-market.interceptor.ts","./src/app/layout/breadcrumbs/breadcrumbs.component.ts","./src/app/layout/breadcrumbs/breadcrumbs.component.html","./src/app/layout/breadcrumbs/breadcrumbs.module.ts","./src/app/layout/breadcrumbs/breadcrumbs.service.ts","./src/app/layout/breadcrumbs/index.ts","./src/app/layout/index.ts","./src/app/layout/layout.component.ts","./src/app/layout/layout.component.html","./src/app/layout/layout.module.ts","./src/app/layout/login-tool/index.ts","./src/app/layout/login-tool/login-tool.component.ts","./src/app/layout/login-tool/login-tool.component.html","./src/app/layout/login-tool/login-tool.module.ts","./src/app/layout/navs/index.ts","./src/app/layout/navs/navs.component.ts","./src/app/layout/navs/navs.component.html","./src/app/layout/navs/navs.module.ts","./src/app/layout/navs/navs.service.ts","./src/app/lib-classes/state/index.ts","./src/app/lib-classes/state/state.ts","./src/app/lib-pipes/execute-with/execute-with-pipe.module.ts","./src/app/lib-pipes/execute-with/index.ts","./src/app/lib-widgets/reactive/locale/index.ts","./src/app/lib-widgets/reactive/locale/locale.ts","./src/app/models/product-group-utils.ts","./src/app/models/user/user-role-util.ts","./src/app/services/account/account.service.ts","./src/app/services/account/index.ts","./src/app/services/alert-service.ts","./src/app/services/auth/auth-guard.service.ts","./src/app/services/auth/auth.service.ts","./src/app/services/auth/index.ts","./src/app/services/current-user/current-user.service.ts","./src/app/services/current-user/index.ts","./src/app/services/inactivity-session.service.ts","./src/app/services/locale/index.ts","./src/app/services/locale/locale.service.ts","./src/app/util/currency-input-mask/currency-input-mask.directive.ts","./src/app/widgets/local-spinner/index.ts","./src/app/widgets/local-spinner/local-spinner.component.ts","./src/app/widgets/local-spinner/local-spinner.component.html","./src/app/widgets/local-spinner/local-spinner.module.ts","./src/app/widgets/request-wrapper/index.ts","./src/app/widgets/request-wrapper/request-wrapper.component.ts","./src/app/widgets/request-wrapper/request-wrapper.component.html","./src/app/widgets/request-wrapper/request-wrapper.module.ts","./src/environments/environment.interfaces.ts","./src/environments/environment.stage-nizhpharm.ts","./src/main.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { PreloadAllModules, RouterModule, Routes } from '@angular/router';\nimport { AuthGuard } from '@services/auth';\n\nconst routes: Routes = [\n {\n path: 'welcome',\n canActivate: [AuthGuard],\n loadChildren: () => import('./views/welcome').then(m => m.WelcomeModule)\n },\n {\n path: 'reset-password',\n canActivate: [AuthGuard],\n loadChildren: () => import('./views/reset-password').then(m => m.ResetPasswordModule)\n },\n {\n path: '',\n canActivate: [AuthGuard],\n loadChildren: () => import('./views/track-n-trace').then(m => m.TrackNTraceModule)\n }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, {preloadingStrategy: PreloadAllModules})],\n exports: [RouterModule]\n})\nexport class AppRoutingModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { LocaleService } from '@services/locale';\n\n@Component({\n selector: 'app-root',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: ''\n})\nexport class AppComponent {\n\n constructor(\n private localeService: LocaleService,\n private translateService: TranslateService\n ) {\n this.translateService.setDefaultLang(this.localeService.localeState.value); // doesn't work for lazy children if do it by app.module providers\n }\n\n}\n\n","import { CurrencyPipe, registerLocaleData } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport ru from '@angular/common/locales/ru';\nimport en from '@angular/common/locales/en';\nimport { APP_INITIALIZER, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterModule } from '@angular/router';\nimport { environment } from '@environments/environment';\nimport { AppInterceptorsModule } from '@interceptors';\nimport { Locale } from '@lib-widgets/reactive/locale';\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { LocaleService } from '@services/locale';\nimport { en_US, NZ_I18N } from 'ng-zorro-antd/i18n';\nimport { NzMessageModule } from 'ng-zorro-antd/message';\nimport { NzNotificationModule } from 'ng-zorro-antd/notification';\nimport { AppComponent } from './app.component';\nimport { AppRoutingModule } from './app-routing.module';\nimport { LayoutModule } from './layout';\nimport { CurrencyInputMaskDirective } from './util/currency-input-mask/currency-input-mask.directive';\n\nregisterLocaleData(en);\nregisterLocaleData(ru);\n\nconst ANT_DESIGN_MODULES = [\n NzNotificationModule,\n NzMessageModule,\n];\n\n@NgModule({\n declarations: [\n AppComponent,\n CurrencyInputMaskDirective\n ],\n imports: [\n AppInterceptorsModule,\n LayoutModule,\n BrowserModule,\n AppRoutingModule,\n FormsModule,\n BrowserAnimationsModule,\n ReactiveFormsModule,\n RouterModule,\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: (http: HttpClient) => new TranslateHttpLoader(http),\n deps: [HttpClient]\n }\n }),\n ANT_DESIGN_MODULES\n ],\n providers: [\n CurrencyPipe,\n { provide: NZ_I18N, useValue: en_US },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [LocaleService],\n useFactory: (localeService: LocaleService) => () => (localeService.globalLocale = environment.defaultLanguage || Locale.en)\n }\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {\n}\n","import { TargetMarket } from '@environments/environment.interfaces';\nimport { interval, Observable } from 'rxjs';\nimport { concatMap, startWith } from 'rxjs/operators';\n\nexport const join = (items: unknown[], separator: string) => items?.join(separator);\n\nexport function enumToValueArray(e, valueType: T) {\n return Object.keys(e).filter(k => typeof e[k] === valueType).map(k => e[k]) as Array;\n}\n\nexport const feToBeFilter = (\n feFilter,\n dateFromKey: keyof T | 'createdAtFrom' = 'createdAtFrom',\n dateToKey: keyof T | 'createdAtTo' = 'createdAtTo'\n): T => {\n if (!feFilter) return {} as T;\n const {dateRange, ...filter} = feFilter;\n const [fromDate, toDate] = dateRange || [];\n if (fromDate) fromDate.setHours(0);\n if (toDate) toDate.setHours(23, 59, 59, 999);\n return {\n ...filter,\n ...fromDate && {[dateFromKey]: fromDate.toJSON()},\n ...toDate && {[dateToKey]: toDate.toJSON()}\n };\n};\n\nexport function byInterval(rq$: Observable, period = 10000) {\n return interval(period).pipe(\n startWith(rq$),\n concatMap(() => rq$)\n );\n}\n\nexport const getTabInfoFn = (\n tabs: number[],\n tabTargetMarketMap: Record,\n tabUrlMap: Record,\n tabLabelMap: Record\n) => (tm: TargetMarket) => tabs?.filter(el => tabTargetMarketMap[el]?.includes(tm))\n .map(type => ({url: tabUrlMap[type], label: tabLabelMap[type]}))\n .filter(tabInfo => tabInfo.label) || [];\n","export * from './functions';\n","import { Injectable } from '@angular/core';\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HttpHeaders } from '@angular/common/http';\nimport { environment } from '@environments/environment';\nimport isEmpty from 'lodash-es/isEmpty';\nimport includes from 'lodash-es/includes';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n let headers = isEmpty(request.headers.keys()) ? new HttpHeaders() : request.headers;\n if (!headers.has('Accept')) { headers = headers.set('Accept', 'application/json'); }\n const apiUrl = !includes(request.url, 'http') && !includes(request.url, 'assets') && environment.coreApiUrl;\n // todo сделать простое добавление \"sso/\" в конец #98\n const url = `${apiUrl || ''}${request.url.replace(environment.isSsoAuth && '/api/core/', '/api/core/sso/')}`;\n request = request.clone({headers, withCredentials: true, url});\n return next.handle(request);\n }\n}\n","export * from './api.interceptor';\n","import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { ApiInterceptor } from './api';\nimport { AuthInterceptor } from './auth';\nimport { ErrorInterceptor } from './error';\nimport { IdleInterceptor } from './idle/idle.interceptor';\nimport { TargetMarketInterceptor } from './target-market';\n\n@NgModule({\n imports: [HttpClientModule],\n providers: [\n {provide: HTTP_INTERCEPTORS, useClass: TargetMarketInterceptor, multi: true},\n {provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true},\n {provide: HTTP_INTERCEPTORS, useClass: ApiInterceptor, multi: true},\n {provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true},\n {provide: HTTP_INTERCEPTORS, useClass: IdleInterceptor, multi: true},\n ],\n exports: [HttpClientModule]\n})\nexport class AppInterceptorsModule {\n}\n","import { Injectable } from '@angular/core';\nimport { HttpHandler, HttpHeaders, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { AuthService } from '@services/auth';\nimport isEmpty from 'lodash-es/isEmpty';\n\n\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n\n constructor(\n private authService: AuthService\n ) {\n }\n\n intercept(request: HttpRequest, next: HttpHandler) {\n let headers = isEmpty(request.headers.keys()) ? new HttpHeaders() : request.headers;\n headers = headers.set('X-Requested-With', 'XMLHttpRequest'); // сделано для работы saml login в рамках #99\n if (this.authService.token && !headers.has('Authorization')) headers = headers.set('Authorization', 'Bearer ' + this.authService.token);\n request = request.clone({headers});\n return next.handle(request);\n }\n}\n","export * from './auth.interceptor';\n","import { Injectable } from '@angular/core';\nimport { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\n\nimport { environment } from '@environments/environment';\nimport { AlertService } from '@services/alert-service';\nimport { AuthService } from '@services/auth';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, filter } from 'rxjs/operators';\n\n@Injectable()\nexport class ErrorInterceptor implements HttpInterceptor {\n\n constructor(\n private authService: AuthService,\n private alertService: AlertService\n ) {\n }\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n return next.handle(request).pipe(\n filter(event => event.type !== 0),\n catchError((error: any) => {\n if (error instanceof HttpErrorResponse) {\n if (error.error instanceof ErrorEvent) {\n console.error(error.error.message);\n } else if (error.status >= 400 && error.status < 500) {\n if (error.status === 401) {\n environment.isSsoAuth\n ? window.location.assign(`${environment.coreApiUrl}sso/saml/login?redirectTo=${window.location.href}`)\n : this.authService.logout$().subscribe();\n return throwError(error);\n } else if (error.status === 422) {\n this.alertService.badRequestError(error.error.message);\n } else {\n this.alertService.badRequestError(error.message);\n }\n console.error(\n `Bad request ${error.status},` +\n `error: ${error.message}`);\n } else {\n console.error(\n `Server returned ${error.status},` +\n `error: ${error.message}`);\n }\n } else {\n console.error(error);\n }\n return throwError(error);\n }));\n }\n}\n","export * from './error.interceptor';\n","import { HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { environment } from '@environments/environment';\nimport { InactivitySessionService } from '@services/inactivity-session.service';\n\n@Injectable()\nexport class IdleInterceptor implements HttpInterceptor {\n\n constructor(private inactivitySessionService: InactivitySessionService) {\n }\n\n intercept(request: HttpRequest, next: HttpHandler) {\n if (environment.sessionIdleTimeoutMinutes && !environment.isSsoAuth) this.inactivitySessionService.resetTimer();\n return next.handle(request);\n }\n}\n","export * from './app-interceptors.module';\n","export * from './target-market.interceptor';\n","import { Injectable } from '@angular/core';\nimport { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { AccountService } from '@services/account';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class TargetMarketInterceptor implements HttpInterceptor {\n\n constructor(\n private accountService: AccountService\n ) {\n }\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n const targetMarket = this.accountService.targetMarketState.value;\n return next.handle(request.clone({\n params: !request.params.has('targetMarket') && targetMarket\n ? request.params.set('targetMarket', targetMarket)\n : request.params\n }));\n }\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { filter, map, startWith, takeUntil, tap } from 'rxjs/operators';\nimport isEmpty from 'lodash-es/isEmpty';\nimport includes from 'lodash-es/includes';\nimport { BreadcrumbsService } from './breadcrumbs.service';\n\ninterface Breadcrumbs {\n label: string;\n url?: string;\n}\n\nfunction getDynamicBreadcrumbs(route: ActivatedRoute, url: string, breadcrumbs: Breadcrumbs[]): Breadcrumbs[] {\n const children: ActivatedRoute[] = route.children;\n if (!children.length) { return breadcrumbs; }\n for (const child of children) {\n const routeUrl = child.snapshot.url.map(x => x.path).join('/');\n if (!isEmpty(routeUrl)) { url += `/${routeUrl}`; }\n const label = child.snapshot.data.breadcrumb;\n if (!isEmpty(label) && !includes(breadcrumbs.map(x => x.label), label)) { breadcrumbs = [...breadcrumbs, {label, url}]; }\n return getDynamicBreadcrumbs(child, url, breadcrumbs);\n }\n}\n\n@Component({\n selector: 'app-breadcrumbs',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './breadcrumbs.component.html'\n})\nexport class BreadcrumbsComponent implements OnDestroy {\n\n destroy$ = new ReplaySubject(1);\n breadcrumbs$: Observable = this.getBreadcrumbs$();\n hasLastBreadcrumb: boolean;\n\n constructor(\n private cdr: ChangeDetectorRef,\n private router: Router,\n private route: ActivatedRoute,\n private breadcrumbsService: BreadcrumbsService\n ) {\n this.breadcrumbsService.lastBreadcrumb$.pipe(\n tap(value => this.breadcrumbs$ = this.getBreadcrumbs$(value)),\n tap(value => this.hasLastBreadcrumb = !!value),\n tap(() => this.cdr.markForCheck()),\n takeUntil(this.destroy$)\n ).subscribe();\n }\n\n getBreadcrumbs$(lastBreadcrumb?: string) {\n return this.router.events.pipe(\n startWith(new NavigationEnd(0, window.location.pathname, '')),\n filter(event => event instanceof NavigationEnd),\n map(() => this.getBreadcrumbs(this.route.root, '', [], lastBreadcrumb))\n );\n }\n\n getBreadcrumbs(route: ActivatedRoute, url: string, breadcrumbs, lastBreadCrumb?: string): Breadcrumbs[] {\n return lastBreadCrumb ?\n [...getDynamicBreadcrumbs(route, '', []), {label: lastBreadCrumb}] :\n getDynamicBreadcrumbs(route, '', []);\n }\n\n ngOnDestroy() {\n this.destroy$.next(1);\n this.destroy$.complete();\n }\n}\n","\n \n Track and Trace\n \n \n \n {{item.label | translate}}\n \n {{item.label | translate}}\n {{item.label | translate}}\n \n {{item.label}}\n \n \n\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { NzBreadCrumbModule } from 'ng-zorro-antd/breadcrumb';\nimport { BreadcrumbsComponent } from './breadcrumbs.component';\nimport { TranslateModule } from '@ngx-translate/core';\n\nconst ANT_DESIGN_MODULES = [NzBreadCrumbModule];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n TranslateModule.forChild(),\n ANT_DESIGN_MODULES\n ],\n declarations: [BreadcrumbsComponent],\n exports: [BreadcrumbsComponent]\n})\nexport class BreadcrumbsModule {\n}\n","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable({providedIn: 'root'})\nexport class BreadcrumbsService {\n public lastBreadcrumb$ = new Subject();\n}\n","export * from './breadcrumbs.service';\nexport * from './breadcrumbs.module';\n","export * from './layout.component';\nexport * from './layout.module';\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject } from '@angular/core';\nimport { environment } from '@environments/environment';\nimport { Nav, NavsService } from '@layout/navs/navs.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { AuthService } from '@services/auth';\nimport { CurrentUserService } from '@services/current-user';\nimport { LocaleService } from '@services/locale';\nimport { Observable, of, throwError } from 'rxjs';\nimport { finalize, map, tap } from 'rxjs/operators';\n\nconst COLLAPSED_SIDER_WIDTH_PX = 80;\nconst SIDER_WIDTH_PX = 250;\n\nconst NAVS: Nav[] = [\n {label: 'MASTER', link: 'master-data', icon: 'audit'},\n {label: 'OMS', link: 'oms', icon: 'branches'},\n {label: 'LABEL_CODES', link: 'label-codes', icon: 'qrcode'},\n {label: 'PRODUCTS', link: 'products', icon: 'shopping-cart'},\n {label: 'DOCS', link: 'docs', icon: 'file-done'},\n];\n\n@Component({\n selector: 'app-layout',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './layout.component.html',\n styleUrls: ['./layout.component.scss']\n})\nexport class LayoutComponent {\n readonly localeService = inject(LocaleService);\n readonly authService = inject(AuthService);\n readonly cdr = inject(ChangeDetectorRef);\n readonly navsService = inject(NavsService);\n readonly currentUserService = inject(CurrentUserService);\n readonly translateService = inject(TranslateService);\n\n readonly environment = environment;\n\n readonly SIDER_WIDTH_PX = SIDER_WIDTH_PX;\n readonly COLLAPSED_SIDER_WIDTH_PX = COLLAPSED_SIDER_WIDTH_PX;\n\n readonly locale$ = this.localeService.localeState.value$;\n readonly navs$ = this.navsService.getAdditionalLinks().pipe(\n map(rs => [...NAVS, ...rs?.map(el => ({...el, isExternal: true}))])\n );\n\n widthPx: number;\n curUser$ = this.getCurUser$();\n logOut$: Observable;\n\n\n setWidthPx$ = (locale: Locale, navs: Nav[]) => {\n if (!locale || !navs) return;\n return this.translateService.get(navs.map(n => `NAVS.${n.label}`))\n .pipe(\n tap(rs => this.widthPx = Math.min(Math.max(...Object.values(rs).map((el: string) => el.length)) * 8 + 60, SIDER_WIDTH_PX)),\n );\n };\n\n getCurUser$() {\n const curUserState = this.currentUserService.curUser;\n if (curUserState.value.id) return curUserState.value$;\n return this.currentUserService.getCurrentUser$().pipe(\n tap(({\n error: () => environment.isSsoAuth\n ? throwError(() => 'Ошибка получения сведений о пользователе')\n : (this.logOut$ = this.getLogOut$())\n }))\n );\n }\n\n getLogOut$ = () => environment.isSsoAuth ? of(null) : this.authService.logout$().pipe(\n finalize(() => {\n this.logOut$ = null;\n this.cdr.markForCheck();\n })\n );\n}\n","\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { ExecuteWithPipeModule } from '@lib-pipes/execute-with';\nimport { RequestWrapperModule } from '@widgets/request-wrapper';\nimport { NzLayoutModule } from 'ng-zorro-antd/layout';\nimport { BreadcrumbsModule } from './breadcrumbs';\nimport { LayoutComponent } from './layout.component';\nimport { LoginToolModule } from './login-tool';\nimport { NavsModule } from './navs';\n\nconst ANT_DESIGN_MODULES = [\n NzLayoutModule\n];\n\n@NgModule({\n imports: [\n BreadcrumbsModule,\n CommonModule,\n ExecuteWithPipeModule,\n NavsModule,\n RouterModule,\n RequestWrapperModule,\n LoginToolModule,\n ANT_DESIGN_MODULES\n ],\n declarations: [LayoutComponent],\n})\nexport class LayoutModule {\n}\n","export * from './login-tool.module';\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { environment } from '@environments/environment';\nimport { TargetMarket } from '@environments/environment.interfaces';\nimport { Locale } from '@lib-widgets/reactive/locale';\nimport { TranslateService } from '@ngx-translate/core';\nimport { AccountService } from '@services/account';\nimport { CurrentUserService } from '@services/current-user';\nimport { LocaleService } from '@services/locale';\nimport { NzSelectOptionInterface } from 'ng-zorro-antd/select';\nimport { ProductGroup } from '../../models/product-group-utils';\nimport { UserRole } from '../../models/user/user-role-util';\n\n@Component({\n selector: 'app-login-tool',\n templateUrl: './login-tool.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoginToolComponent {\n\n @Input() hasLogout: boolean;\n @Output() logOutChanged = new EventEmitter();\n\n productGroup = ProductGroup;\n userRole = UserRole;\n\n environment = environment;\n\n availableLanguages = this.localeService.availableLanguages;\n locale$ = this.localeService.localeState.value$;\n targetMarket$ = this.accountService.targetMarketState.value$;\n curUser$ = this.currentUserService.curUser.value$;\n\n marketOptions: NzSelectOptionInterface[] = this.accountService.markets\n .map(value => ({\n label: this.translateService.instant(`TARGET_MARKETS.${value.toUpperCase()}`),\n value\n }) as NzSelectOptionInterface)\n .sort((oA, oB) => oA.label?.toString().localeCompare(oB.label?.toString()));\n\n constructor(\n public accountService: AccountService,\n private currentUserService: CurrentUserService,\n public localeService: LocaleService,\n public router: Router,\n private translateService: TranslateService\n ) {\n }\n\n openSwaggerPage() {\n window.open(environment.coreApiUrl + 'swagger-ui.html');\n }\n\n onProductGroupChange(productGroup) {\n this.accountService.productGroupObservable.next(productGroup);\n this.router.navigate(['']);\n }\n\n onTargetMarketChange(targetMarket: TargetMarket) {\n this.accountService.targetMarketState.value = targetMarket;\n const layoutChildPath = this.router.url?.split('/').filter(Boolean)[0];\n this.router.navigate(['/', layoutChildPath].filter(Boolean));\n }\n\n onLocaleChange = (locale: Locale) => this.localeService.globalLocale = locale;\n}\n","\n \n {{'LABELS.TARGET_MARKET' | translate}}: {{ selected.nzLabel }}\n \n \n \n \n {{'LABELS.PRODUCT_GROUP' | translate}}: {{ selected.nzLabel }}\n \n \n \n {{(((curUser$ | async)?.username || ('LABELS.BLANK_USERNAME' | translate)) | titlecase)}}\n \n \n \n \n \n \n\n\n\n \n {{'LABELS.ADMINISTRATION' | translate}}\n \n Swagger\n \n \n {{'LABELS.LOGOUT' | translate}}\n \n \n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { LoginToolComponent } from './login-tool.component';\n\nconst ANT_DESIGN_MODULES = [\n NzIconModule,\n NzDropDownModule,\n NzSelectModule\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n FormsModule,\n TranslateModule.forChild(),\n ANT_DESIGN_MODULES\n ],\n declarations: [LoginToolComponent],\n exports: [LoginToolComponent]\n})\nexport class LoginToolModule {\n}\n","export * from './navs.module';\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { Nav } from './navs.service';\n\n@Component({\n selector: 'app-navs',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './navs.component.html'\n})\nexport class NavsComponent {\n\n @Input() isCollapsed: boolean;\n @Input() navs: Nav[];\n\n}\n","\n \n \n \n \n \n \n \n \n \n \n \n {{label}}\n \n \n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzMenuModule } from 'ng-zorro-antd/menu';\nimport { NzTypographyModule } from 'ng-zorro-antd/typography';\nimport { NavsComponent } from './navs.component';\n\nconst ANT_DESIGN_MODULES = [\n NzIconModule,\n NzMenuModule,\n NzTypographyModule\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n TranslateModule.forChild(),\n ANT_DESIGN_MODULES\n ],\n exports: [NavsComponent],\n declarations: [NavsComponent]\n})\nexport class NavsModule {\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable, of } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nexport interface Nav {\n label: string;\n link: string;\n icon: string;\n target?: string;\n isExternal?: boolean;\n}\n\n@Injectable({providedIn: 'root'})\nexport class NavsService {\n\n constructor(\n private http: HttpClient\n ) {\n }\n\n getAdditionalLinks = (): Observable => this.http.get('/assets/additional-nav-links.json').pipe(\n catchError(() => of([]))\n );\n}\n","export * from './state';\n","import { BehaviorSubject } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nexport class State {\n\n private _state: BehaviorSubject;\n private readonly _initialValue: T;\n\n public set value(value: T) { this._state.next(value); }\n public get value() { return this._state.getValue(); }\n public get value$() { return this._state.asObservable().pipe(delay(0)); }\n\n constructor(initialValue: T) {\n this._state = new BehaviorSubject(initialValue);\n this._initialValue = initialValue;\n }\n\n public reset() { this.value = this._initialValue; }\n\n}\n","import { NgModule, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({name: 'executeWith'})\nexport class ExecuteWithPipe implements PipeTransform {\n transform(fn: (...args: any) => G, ...args: any[]): G {\n return fn && fn(...args);\n }\n}\n\n@NgModule({\n declarations: [ExecuteWithPipe],\n exports: [ExecuteWithPipe]\n})\nexport class ExecuteWithPipeModule {\n}\n","export * from './execute-with-pipe.module';\n","export * from './locale';\n","export enum Locale {\n ru = 'ru',\n en = 'en'\n}\n","export enum ProductGroup {\n pharma = 'pharma'\n}\n","export enum UserRole {\n ADMIN = 'ADMIN',\n USER = 'USER'\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { environment } from '@environments/environment';\nimport { TargetMarket } from '@environments/environment.interfaces';\nimport { State } from '@lib-classes/state';\nimport { BehaviorSubject } from 'rxjs';\nimport { enumToValueArray } from '../../functions';\nimport { ProductGroup } from '../../models/product-group-utils';\n\n@Injectable({providedIn: 'root'})\nexport class AccountService {\n\n productGroup = ProductGroup;\n targetMarket = TargetMarket;\n\n public markets: TargetMarket[] = environment.markets || enumToValueArray(this.targetMarket, 'string') as TargetMarket[];\n targetMarketState = new State(this.markets.includes(environment.defaultMarket) ? environment.defaultMarket : this.markets[0]);\n\n productGroupObservable = new BehaviorSubject(this.productGroup.pharma); // todo get rid\n productGroupState = new State(this.productGroup.pharma); // todo spread this approach through app\n\n constructor(\n private http: HttpClient\n ) {\n }\n\n resetPassword(newPassword: string, jwt: string) {\n const url = `${environment.coreApiUrl}users/current/password`;\n return this.http.put(url, {\n password: newPassword\n }, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${jwt}`)\n });\n }\n\n}\n","export * from './account.service';\n","import { Injectable } from '@angular/core';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AlertService {\n\n private readonly durationInSeconds = 3;\n private readonly secToMinMultiplier = 1000;\n private readonly requestErrorMessage = 'The request could not be completed. Internal server error';\n private readonly fileLoadingErrorMessage = 'File upload error';\n private readonly docSentSuccessMessage = 'The document was successfully sent for processing';\n private readonly temporaryUnavailable = 'The function is temporarily unavailable';\n\n constructor(private snackBar: NzMessageService) {\n }\n\n public error(message: string) {\n this.snackBar.error(message, {\n nzDuration: this.durationInSeconds * this.secToMinMultiplier\n });\n }\n\n public requestError() {\n this.error(this.requestErrorMessage);\n }\n\n public loginError(message: string) {\n this.error(message);\n }\n\n public badRequestError(message: string) {\n this.error(message);\n }\n\n public success(message: string) {\n this.snackBar.success(message, {\n nzDuration: this.durationInSeconds * this.secToMinMultiplier\n });\n }\n\n fileLoadingError() {\n this.error(this.fileLoadingErrorMessage);\n }\n\n docSent() {\n this.success(this.docSentSuccessMessage);\n }\n\n info(message: string) {\n this.snackBar.info(message, {\n nzDuration: this.durationInSeconds * this.secToMinMultiplier,\n });\n }\n\n temporaryUnavailableError() {\n this.error(this.temporaryUnavailable);\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { environment } from '@environments/environment';\nimport { AuthService } from './auth.service';\n\n@Injectable({providedIn: 'root'})\nexport class AuthGuard {\n readonly router = inject(Router);\n readonly authService = inject(AuthService);\n\n canActivate(route: ActivatedRouteSnapshot): boolean | Promise {\n const path = route.routeConfig.path;\n if ((this.authService.isLoggedIn || environment.isSsoAuth) && ['welcome', 'reset-password'].includes(path))\n this.router.navigate(['']);\n if (!this.authService.isLoggedIn && !environment.isSsoAuth && !['welcome', 'reset-password'].includes(path))\n this.router.navigate(['welcome']);\n return true;\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { environment } from '@environments/environment';\nimport { CurrentUserService } from '@services/current-user';\nimport { of } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\nconst AUTH_KEY = 'credentials';\n\nexport interface Auth {\n token: string;\n expirationAt: Date;\n}\n\n@Injectable({providedIn: 'root'})\nexport class AuthService {\n\n constructor(\n private currentUserService: CurrentUserService,\n private router: Router,\n private http: HttpClient\n ) {\n }\n\n private set auth(auth: Auth | null) {\n auth ? localStorage.setItem(AUTH_KEY, JSON.stringify(auth)) : localStorage.removeItem(AUTH_KEY);\n }\n private get auth(): Auth {\n const lsAuth = localStorage.getItem(AUTH_KEY);\n return lsAuth && JSON.parse(lsAuth);\n }\n\n get isLoggedIn() { return !!this.auth; }\n get token() { return this.auth?.token; }\n\n login$(body: {username: string; password: string}) {\n return this.http.post(environment.coreApiUrl + 'login', body).pipe(\n tap(auth => this.auth = auth),\n tap({error: () => this.logout$()})\n );\n }\n\n logout$ = () => (this.isLoggedIn ? this.http.post(environment.coreApiUrl + 'logout', null) : of(null)).pipe(\n tap(() => this.auth = null),\n tap(() => this.currentUserService.curUser.reset()),\n tap(() => this.router.navigate(['welcome']))\n );\n}\n","export * from './auth.service';\nexport * from './auth-guard.service';\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { environment } from '@environments/environment';\nimport { State } from '@lib-classes/state';\nimport { tap } from 'rxjs/operators';\nimport { UserDto } from '../../models/user/user-dto';\n\n@Injectable({providedIn: 'root'})\nexport class CurrentUserService {\n\n curUser = new State({} as UserDto);\n\n constructor(\n private http: HttpClient\n ) {\n }\n\n getCurrentUser$ = () => {\n const url = environment.coreApiUrl + 'users/current';\n return this.http.get(url).pipe(\n tap(curUser => this.curUser.value = curUser),\n tap({error: () => this.curUser.reset()})\n );\n };\n\n}\n","export * from './current-user.service';\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { environment } from '@environments/environment';\nimport { AuthService } from '@services/auth';\nimport { interval, Subscription } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InactivitySessionService implements OnDestroy {\n\n private readonly lsLastRequestTimeKey = 'lastApiRequest';\n private timerSubscription: Subscription;\n\n constructor(\n private authService: AuthService\n ) {\n }\n\n resetTimer() {\n const currentTime = Date.now();\n localStorage.setItem(this.lsLastRequestTimeKey, currentTime.toString());\n this.unsubscribe();\n this.timerSubscription = interval(1000).pipe(\n tap(_ => {\n const lastRequestTime = new Date(parseInt(localStorage.getItem(this.lsLastRequestTimeKey)));\n if ((Date.now() - lastRequestTime.getTime()) >= environment.sessionIdleTimeoutMinutes * 60 * 1000) {\n this.authService.logout$().subscribe();\n this.unsubscribe();\n }\n })\n ).subscribe();\n }\n\n ngOnDestroy(): void {\n this.unsubscribe();\n }\n\n private unsubscribe() {\n this.timerSubscription?.unsubscribe();\n }\n}\n","export * from './locale.service';\n","import { Injectable } from '@angular/core';\nimport { State } from '@lib-classes/state';\nimport { Locale } from '@lib-widgets/reactive/locale';\nimport { TranslateService } from '@ngx-translate/core';\nimport { en_US, NzI18nInterface, NzI18nService, ru_RU } from 'ng-zorro-antd/i18n';\n\n@Injectable({providedIn: 'root'})\nexport class LocaleService {\n\n localeState = new State(null);\n\n availableLanguages: Record = {\n [Locale.ru]: ru_RU,\n [Locale.en]: en_US\n };\n\n public set globalLocale(locale: Locale) {\n this.translateService.use(locale);\n this.i18nService.setLocale(this.availableLanguages[locale]);\n this.localeState.value = locale;\n }\n\n constructor(\n public translateService: TranslateService,\n private i18nService: NzI18nService\n ) {\n }\n}\n","import {Directive, ElementRef, forwardRef, HostListener, OnInit} from '@angular/core';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {DecimalPipe} from '@angular/common';\n\nexport const CURRENCY_INPUT_MASK_DIRECTIVE_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CurrencyInputMaskDirective),\n multi: true\n};\n\n@Directive({\n selector: '[appCurrencyInputMask]',\n providers: [\n CURRENCY_INPUT_MASK_DIRECTIVE_VALUE_ACCESSOR,\n DecimalPipe\n ]\n})\nexport class CurrencyInputMaskDirective implements ControlValueAccessor, OnInit {\n private el: HTMLInputElement;\n private onModelChange: Function;\n private onModelTouched: Function;\n private lastNumVal: number;\n private DECIMAL_MARK = '.';\n\n constructor(\n private elementRef: ElementRef,\n private decimalPipe: DecimalPipe\n ) { }\n\n ngOnInit() {\n this.el = this.elementRef.nativeElement;\n }\n\n @HostListener('focus', ['$event'])\n handleFocus(event: any) {\n const strVal: string = this.getInputValue();\n const unmaskedStr: string = this.getUnmaskedValue(strVal);\n this.updateInputValue(unmaskedStr);\n }\n\n @HostListener('cut', ['$event'])\n handleCut(event: any) {\n setTimeout(() => {\n this.inputUpdated();\n }, 0);\n }\n\n @HostListener('keypress', ['$event'])\n handleKeypress(event: any) {\n // Restrict characters\n const newChar: string = String.fromCharCode(event.which);\n const allowedChars: RegExp = /^[\\d.]+$/;\n if (!allowedChars.test(newChar)) {\n event.preventDefault();\n return;\n }\n // Handle decimal mark input\n const currentValue: string = event.target.value;\n const separatorIdx: number = currentValue.indexOf(this.DECIMAL_MARK);\n const hasFractionalPart: boolean = (separatorIdx >= 0);\n if (!hasFractionalPart || newChar !== this.DECIMAL_MARK) {\n return;\n }\n const isOutsideSelection = !this.isIdxBetweenSelection(separatorIdx);\n if (isOutsideSelection) {\n const positionAfterMark = separatorIdx + 1;\n this.setCursorPosition(positionAfterMark);\n event.preventDefault();\n return;\n }\n }\n\n @HostListener('input', ['$event'])\n handleInput(event: any) {\n try {\n this.inputUpdated();\n } catch (e) {\n // ignore\n }\n }\n\n @HostListener('paste', ['$event'])\n handlePaste(event: any) {\n setTimeout(() => {\n this.inputUpdated();\n }, 1);\n }\n\n @HostListener('blur', ['$event'])\n handleBlur(event: any) {\n const strVal: string = this.getInputValue();\n const numVal: number = this.convertStrToDecimal(strVal);\n this.maskInput(numVal);\n try {\n this.onModelTouched.apply(event);\n } catch (e) {\n // ignore\n }\n }\n\n registerOnChange(callbackFunction: Function): void {\n this.onModelChange = callbackFunction;\n }\n\n registerOnTouched(callbackFunction: Function): void {\n this.onModelTouched = callbackFunction;\n }\n\n setDisabledState(value: boolean): void {\n this.el.disabled = value;\n }\n\n writeValue(numValue: number): void {\n this.maskInput(numValue);\n }\n\n private maskInput(numVal: number): void {\n if (!this.isNumeric(numVal)) {\n this.updateInputValue('');\n return;\n }\n const strVal: string = this.convertDecimalToStr(numVal);\n const newVal: string = this.transformWithPipe(strVal);\n this.updateInputValue(newVal);\n }\n\n private inputUpdated() {\n this.restrictDecimalValue();\n const strVal: string = this.getInputValue();\n const unmaskedVal: string = this.getUnmaskedValue(strVal);\n const numVal: number = this.convertStrToDecimal(unmaskedVal);\n if (numVal !== this.lastNumVal) {\n this.lastNumVal = numVal;\n this.onModelChange(numVal);\n }\n }\n\n private restrictDecimalValue(): void {\n const strVal: string = this.getInputValue();\n const dotIdx: number = strVal.indexOf(this.DECIMAL_MARK);\n const hasFractionalPart: boolean = (dotIdx >= 0);\n if (hasFractionalPart) {\n const fractionalPart: string = strVal.substring(dotIdx + 1);\n if (fractionalPart.length > 2) {\n const choppedVal: string = strVal.substring(0, dotIdx + 3);\n this.updateInputValue(choppedVal, true);\n return;\n }\n }\n }\n\n private transformWithPipe(str: string): string {\n return this.decimalPipe.transform(str, '1.2-2');\n }\n\n private getUnmaskedValue(value: string): string {\n return value.replace(/[^-\\d\\\\.]/g, '');\n }\n\n private updateInputValue(value: string, savePosition = false) {\n if (savePosition) {\n this.saveCursorPosition();\n }\n this.el.value = value;\n }\n\n private getInputValue(): string {\n return this.el.value;\n }\n\n private convertStrToDecimal(str: string): number {\n return (this.isNumeric(str)) ? parseFloat(str) : null;\n }\n\n private convertDecimalToStr(n: number): string {\n return (this.isNumeric(n)) ? n + '' : '';\n }\n\n private isNumeric(n: any): boolean {\n return !isNaN(parseFloat(n)) && isFinite(n);\n }\n\n private saveCursorPosition() {\n const position: number = this.el.selectionStart;\n setTimeout(() => {\n this.setCursorPosition(position);\n }, 1);\n }\n\n private setCursorPosition(position: number) {\n this.el.selectionStart = position;\n this.el.selectionEnd = position;\n }\n\n private isIdxBetweenSelection(idx: number) {\n if (this.el.selectionStart === this.el.selectionEnd) {\n return false;\n }\n return (idx >= this.el.selectionStart && idx < this.el.selectionEnd);\n }\n\n}\n","export * from './local-spinner.module';\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'app-local-spinner',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './local-spinner.component.html',\n styleUrls: ['./local-spinner.component.scss']\n})\nexport class LocalSpinnerComponent {\n}\n","\n \n \n \n \n \n \n \n \n \n \n \n \n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { LocalSpinnerComponent } from './local-spinner.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [LocalSpinnerComponent],\n exports: [LocalSpinnerComponent]\n})\nexport class LocalSpinnerModule {\n}\n","export * from './request-wrapper.module';\nexport * from './request-wrapper.component';\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n inject,\n Input,\n Output\n} from '@angular/core';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport cloneDeep from 'lodash-es/cloneDeep';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { tap, delay } from 'rxjs/operators';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'app-request-wrapper',\n templateUrl: './request-wrapper.component.html',\n styles: [`\n :host { height: 100%; display: block }\n :host::ng-deep .ant-spin-container { height: 100% }\n :host::ng-deep .ant-spin-container:after { background-color: inherit }\n `]\n})\nexport class RequestWrapperComponent {\n\n private cdr = inject(ChangeDetectorRef);\n\n @Input() request$: Observable;\n\n @Input() loadingTip: string;\n\n @Input() backFn: () => void;\n\n private _noBack = false;\n @Input() set noBack(prop: boolean) { this._noBack = typeof prop === 'boolean' ? prop : true; }\n get noBack(): boolean { return this._noBack; }\n\n private _noRetry = false;\n @Input() set noRetry(prop: boolean | string) { this._noRetry = typeof prop === 'boolean' ? prop : true; }\n get noRetry(): boolean { return this._noRetry; }\n\n // В значении true устанавливает min-height в '0', иначе - 120px\n private _noMinHeight = false;\n @Input() set noMinHeight(prop: boolean | string) { this._noMinHeight = typeof prop === 'boolean' ? prop : true; }\n get noMinHeight(): boolean { return this._noMinHeight; }\n\n @Output() firstResponse = new EventEmitter();\n\n @Output() response = new EventEmitter();\n\n @Output() back = new EventEmitter();\n\n @Output() errorEvent = new EventEmitter();\n\n public hasFirstRs: boolean;\n\n public data: T;\n\n private isLoading$ = new BehaviorSubject(false);\n\n public get isLoading(): boolean {\n return this.isLoading$.getValue();\n };\n\n public error: { message: string, status: number };\n\n repeatRequest = () => {\n this.request$ = cloneDeep(this.request$);\n this.cdr.markForCheck();\n }\n\n getUpdatedRequest = (request$: Observable) => {\n this.error = null;\n if (!request$) return null;\n this.isLoading$.next(true);\n return request$.pipe(\n delay(0), // for correct processing of synchronously emitting observables (closes 8902)\n tap({\n next: data => {\n this.data = data;\n this.response.emit(data);\n if (!this.hasFirstRs) {\n this.firstResponse.emit(this.data);\n this.hasFirstRs = true;\n }\n this.isLoading$.next(false);\n },\n error: (err: HttpErrorResponse) => {\n this.isLoading$.next(false);\n this.error = { message: err.message, status: err.status };\n this.errorEvent.emit(err);\n this.cdr.markForCheck();\n }\n })\n );\n }\n\n isHTML(str: string) {\n const a = document.createElement('div');\n a.innerHTML = str;\n for (let c = a.childNodes, i = c.length; i--;) {\n if (c[i].nodeType === 1) return true;\n }\n return false;\n }\n}\n","\n\n\n \n \n {{ 'LABELS.RETRY' | translate }}\n \n {{ 'LABELS.BACK' | translate }}\n \n \n \n \n \n \n\n\n\n\n \n \n \n \n \n\n\n \n \n {{loadingTip}}...\n \n\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ExecuteWithPipeModule } from '@lib-pipes/execute-with';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzResultModule } from 'ng-zorro-antd/result';\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\nimport { RequestWrapperComponent } from './request-wrapper.component';\nimport { LocalSpinnerModule } from '../local-spinner';\n\nconst ANT_DESIGN_MODULES = [\n NzButtonModule,\n NzResultModule,\n NzSpinModule\n];\n\n@NgModule({\n imports: [\n CommonModule,\n LocalSpinnerModule,\n ExecuteWithPipeModule,\n TranslateModule.forChild(),\n ANT_DESIGN_MODULES\n ],\n declarations: [RequestWrapperComponent],\n exports: [RequestWrapperComponent]\n})\nexport class RequestWrapperModule {\n}\n","/**\n * sessionIdleTimeoutMinutes - fill it if you need to log out a user after N minutes. \"0\" or absence this property or \"isSsoAuth = true\" disables this option\n */\nimport { Locale } from '@lib-widgets/reactive/locale';\n\nexport enum TargetMarket {\n KZ = 'KZ',\n UZ = 'UZ',\n KG = 'KG'\n}\n\nexport interface Environment {\n production: boolean;\n coreApiUrl: string;\n isSsoAuth?: boolean;\n sessionIdleTimeoutMinutes?: number;\n defaultLanguage?: Locale;\n defaultMarket?: TargetMarket;\n markets?: TargetMarket[];\n}\n","import { Locale } from '@lib-widgets/reactive/locale';\nimport { Environment, TargetMarket } from './environment.interfaces';\n\nexport const environment: Environment = {\n production: true,\n coreApiUrl: \"http://\" + window.location.host + \"/api/core/\",\n isSsoAuth: true,\n defaultLanguage: Locale.ru,\n markets: [TargetMarket.KZ, TargetMarket.UZ]\n};\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"],"names":["PreloadAllModules","RouterModule","AuthGuard","routes","path","canActivate","loadChildren","then","m","WelcomeModule","ResetPasswordModule","TrackNTraceModule","AppRoutingModule","_","_2","_3","forRoot","preloadingStrategy","imports","i1","exports","AppComponent","constructor","localeService","translateService","setDefaultLang","localeState","value","i0","ɵɵdirectiveInject","LocaleService","i2","TranslateService","selectors","decls","vars","template","AppComponent_Template","rf","ctx","ɵɵelement","CurrencyPipe","registerLocaleData","HttpClient","ru","en","APP_INITIALIZER","FormsModule","ReactiveFormsModule","BrowserModule","BrowserAnimationsModule","environment","AppInterceptorsModule","Locale","TranslateLoader","TranslateModule","TranslateHttpLoader","en_US","NZ_I18N","NzMessageModule","NzNotificationModule","LayoutModule","CurrencyInputMaskDirective","ANT_DESIGN_MODULES","AppModule","bootstrap","provide","useValue","multi","deps","useFactory","globalLocale","defaultLanguage","loader","http","declarations","interval","concatMap","startWith","join","items","separator","enumToValueArray","e","valueType","Object","keys","filter","k","map","feToBeFilter","feFilter","dateFromKey","dateToKey","dateRange","fromDate","toDate","setHours","toJSON","byInterval","rq$","period","pipe","getTabInfoFn","tabs","tabTargetMarketMap","tabUrlMap","tabLabelMap","tm","el","includes","type","url","label","tabInfo","HttpHeaders","isEmpty","ApiInterceptor","intercept","request","next","headers","has","set","apiUrl","coreApiUrl","replace","isSsoAuth","clone","withCredentials","handle","factory","ɵfac","HTTP_INTERCEPTORS","HttpClientModule","AuthInterceptor","ErrorInterceptor","IdleInterceptor","TargetMarketInterceptor","useClass","authService","token","ɵɵinject","AuthService","HttpErrorResponse","throwError","catchError","alertService","event","error","ErrorEvent","console","message","status","window","location","assign","href","logout$","subscribe","badRequestError","AlertService","inactivitySessionService","sessionIdleTimeoutMinutes","resetTimer","InactivitySessionService","accountService","targetMarket","targetMarketState","params","AccountService","NavigationEnd","ReplaySubject","takeUntil","tap","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","item_r3","ɵɵproperty","ɵɵelementContainerStart","ɵɵtemplate","BreadcrumbsComponent_ng_container_4_nz_breadcrumb_item_1_ng_container_2_span_1_Template","BreadcrumbsComponent_ng_container_4_nz_breadcrumb_item_1_ng_container_2_a_2_Template","ɵɵelementContainerEnd","ctx_r6","hasLastBreadcrumb","BreadcrumbsComponent_ng_container_4_nz_breadcrumb_item_1_span_1_Template","BreadcrumbsComponent_ng_container_4_nz_breadcrumb_item_1_ng_container_2_Template","BreadcrumbsComponent_ng_container_4_nz_breadcrumb_item_1_a_3_Template","index_r4","breadcrumbs_r1","length","BreadcrumbsComponent_ng_container_4_nz_breadcrumb_item_1_Template","getDynamicBreadcrumbs","route","breadcrumbs","children","child","routeUrl","snapshot","x","data","breadcrumb","BreadcrumbsComponent","cdr","router","breadcrumbsService","destroy$","breadcrumbs$","getBreadcrumbs$","lastBreadcrumb$","markForCheck","lastBreadcrumb","events","pathname","getBreadcrumbs","root","lastBreadCrumb","ngOnDestroy","complete","ChangeDetectorRef","Router","ActivatedRoute","BreadcrumbsService","consts","BreadcrumbsComponent_Template","BreadcrumbsComponent_ng_container_4_Template","ɵɵpureFunction0","_c0","CommonModule","NzBreadCrumbModule","BreadcrumbsModule","forChild","Subject","providedIn","inject","NavsService","CurrentUserService","of","finalize","ɵɵelementContainer","_r3","_r4","nzCollapsed","ɵɵlistener","LayoutComponent_nz_layout_4_Template_app_login_tool_logOutChanged_3_listener","ɵɵrestoreView","_r7","ɵɵnextContext","ɵɵresetView","logOut$","getLogOut$","LayoutComponent_nz_layout_4_app_navs_9_Template","ctx_r2","navs$","widthPx","SIDER_WIDTH_PX","COLLAPSED_SIDER_WIDTH_PX","ɵɵpipeBind3","setWidthPx$","locale$","ɵɵstyleProp","NAVS","link","icon","LayoutComponent","navsService","currentUserService","value$","getAdditionalLinks","rs","isExternal","curUser$","getCurUser$","locale","navs","get","n","Math","min","max","values","curUserState","curUser","id","getCurrentUser$","LayoutComponent_Template","LayoutComponent_ng_container_0_Template","LayoutComponent_nz_layout_4_Template","_r1","ExecuteWithPipeModule","RequestWrapperModule","NzLayoutModule","LoginToolModule","NavsModule","EventEmitter","ProductGroup","UserRole","ɵɵtextInterpolate2","selected_r9","nzLabel","group_r10","key","selected_r11","lang_r12","ɵɵtextInterpolate1","LoginToolComponent_ng_container_29_Template_li_click_2_listener","_r14","ctx_r13","logOutChanged","emit","LoginToolComponent","productGroup","userRole","availableLanguages","targetMarket$","marketOptions","markets","instant","toUpperCase","sort","oA","oB","toString","localeCompare","onLocaleChange","openSwaggerPage","open","onProductGroupChange","productGroupObservable","navigate","onTargetMarketChange","layoutChildPath","split","Boolean","i3","i4","i5","inputs","hasLogout","outputs","LoginToolComponent_Template","LoginToolComponent_Template_nz_select_ngModelChange_1_listener","$event","LoginToolComponent_ng_template_3_Template","ɵɵtemplateRefExtractor","LoginToolComponent_Template_nz_select_ngModelChange_5_listener","LoginToolComponent_nz_option_7_Template","LoginToolComponent_ng_template_9_Template","LoginToolComponent_Template_nz_select_ngModelChange_17_listener","LoginToolComponent_nz_option_19_Template","LoginToolComponent_li_25_Template","LoginToolComponent_Template_li_click_27_listener","LoginToolComponent_ng_container_29_Template","_r0","_r6","tmp_7_0","username","tmp_10_0","role","ADMIN","NzDropDownModule","NzIconModule","NzSelectModule","NavsComponent_ul_0_li_1_ng_container_1_a_1_ng_container_1_Template","ɵɵpureFunction1","nav_r2","ɵɵattribute","label_r6","ɵɵpureFunction2","_c1","NavsComponent_ul_0_li_1_ng_container_1_a_2_ng_container_1_Template","ɵɵsanitizeUrl","target","NavsComponent_ul_0_li_1_ng_container_1_a_1_Template","NavsComponent_ul_0_li_1_ng_container_1_a_2_Template","label_r17","NavsComponent_ul_0_li_1_ng_template_3_span_1_Template","icon_r16","ctx_r5","isCollapsed","NavsComponent_ul_0_li_1_ng_container_1_Template","NavsComponent_ul_0_li_1_ng_template_3_Template","NavsComponent_ul_0_li_1_Template","ctx_r0","NavsComponent","NavsComponent_Template","NavsComponent_ul_0_Template","NzMenuModule","NzTypographyModule","BehaviorSubject","delay","State","_state","getValue","asObservable","initialValue","_initialValue","reset","ExecuteWithPipe","transform","fn","args","pure","TargetMarket","defaultMarket","pharma","productGroupState","resetPassword","newPassword","jwt","put","password","snackBar","durationInSeconds","secToMinMultiplier","requestErrorMessage","fileLoadingErrorMessage","docSentSuccessMessage","temporaryUnavailable","nzDuration","requestError","loginError","success","fileLoadingError","docSent","info","temporaryUnavailableError","NzMessageService","routeConfig","isLoggedIn","AUTH_KEY","post","auth","localStorage","setItem","JSON","stringify","removeItem","lsAuth","getItem","parse","login$","body","lsLastRequestTimeKey","currentTime","Date","now","unsubscribe","timerSubscription","lastRequestTime","parseInt","getTime","ru_RU","use","i18nService","setLocale","NzI18nService","forwardRef","NG_VALUE_ACCESSOR","DecimalPipe","CURRENCY_INPUT_MASK_DIRECTIVE_VALUE_ACCESSOR","useExisting","elementRef","decimalPipe","DECIMAL_MARK","ngOnInit","nativeElement","handleFocus","strVal","getInputValue","unmaskedStr","getUnmaskedValue","updateInputValue","handleCut","setTimeout","inputUpdated","handleKeypress","newChar","String","fromCharCode","which","allowedChars","test","preventDefault","currentValue","separatorIdx","indexOf","hasFractionalPart","isOutsideSelection","isIdxBetweenSelection","positionAfterMark","setCursorPosition","handleInput","handlePaste","handleBlur","numVal","convertStrToDecimal","maskInput","onModelTouched","apply","registerOnChange","callbackFunction","onModelChange","registerOnTouched","setDisabledState","disabled","writeValue","numValue","isNumeric","convertDecimalToStr","newVal","transformWithPipe","restrictDecimalValue","unmaskedVal","lastNumVal","dotIdx","fractionalPart","substring","choppedVal","str","savePosition","saveCursorPosition","parseFloat","isNaN","isFinite","position","selectionStart","selectionEnd","idx","ElementRef","hostBindings","CurrencyInputMaskDirective_HostBindings","CurrencyInputMaskDirective_cut_HostBindingHandler","CurrencyInputMaskDirective_keypress_HostBindingHandler","CurrencyInputMaskDirective_input_HostBindingHandler","CurrencyInputMaskDirective_paste_HostBindingHandler","CurrencyInputMaskDirective_blur_HostBindingHandler","LocalSpinnerComponent","LocalSpinnerComponent_Template","LocalSpinnerModule","cloneDeep","RequestWrapperComponent_div_3_button_4_Template_button_click_0_listener","_r11","ctx_r10","repeatRequest","RequestWrapperComponent_div_3_button_5_Template_button_click_0_listener","_r13","ctx_r12","backFn","back","ctx_r9","ɵɵsanitizeHtml","RequestWrapperComponent_div_3_button_4_Template","RequestWrapperComponent_div_3_button_5_Template","RequestWrapperComponent_div_3_ng_template_6_Template","ctx_r1","ɵɵpipeBind2","isHTML","_r8","noRetry","noBack","hasFirstRs","ɵɵprojection","RequestWrapperComponent_ng_template_4_div_1_Template","ctx_r3","isLoading","noMinHeight","ctx_r15","loadingTip","RequestWrapperComponent_ng_template_6_span_2_Template","RequestWrapperComponent","_noBack","_noRetry","_noMinHeight","firstResponse","response","errorEvent","isLoading$","request$","getUpdatedRequest","err","prop","a","document","createElement","innerHTML","c","childNodes","i","nodeType","ngContentSelectors","RequestWrapperComponent_Template","RequestWrapperComponent_ng_container_0_Template","RequestWrapperComponent_div_3_Template","RequestWrapperComponent_ng_template_4_Template","RequestWrapperComponent_ng_template_6_Template","_r2","NzButtonModule","NzResultModule","NzSpinModule","production","host","KZ","UZ","enableProdMode","__NgCli_bootstrap_1","platformBrowser","bootstrapModule","catch"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}