{"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.component.html","./src/app/core/core.module.ts","./src/app/core/menu.service.ts","./src/app/core/pages/callback/callback.component.ts","./src/app/core/pages/callback/callback.component.html","./src/app/core/pages/help-page/help-page.component.ts","./src/app/core/pages/help-page/help-page.component.html","./src/app/core/pages/home/home.component.ts","./src/app/core/pages/home/home.component.html","./src/app/core/pages/login-supplier-hub/_enum/authorization-sh-state.enum.ts","./src/app/core/pages/login-supplier-hub/_enum/login-option.enum.ts","./src/app/core/pages/login-supplier-hub/login-supplier-hub.component.ts","./src/app/core/pages/login-supplier-hub/login-supplier-hub.component.html","./src/app/core/pages/login/login.component.ts","./src/app/core/pages/login/login.component.html","./src/app/core/pages/main-layer/dialog-components/information-dialog/information-dialog.component.ts","./src/app/core/pages/main-layer/dialog-components/information-dialog/information-dialog.component.html","./src/app/core/pages/main-layer/dialog-components/user-sh-access-terminated/_enums/dialog-user-sh-access-term-state.enum.ts","./src/app/core/pages/main-layer/dialog-components/user-sh-access-terminated/user-sh-access-terminated.component.ts","./src/app/core/pages/main-layer/dialog-components/user-sh-access-terminated/user-sh-access-terminated.component.html","./src/app/core/pages/main-layer/dialog-components/user-sh-access-terminated/user-sh-access-terminated.service.ts","./src/app/core/pages/main-layer/dialog-components/user-sh-first-login/_enum/dialog-state.enum.ts","./src/app/core/pages/main-layer/dialog-components/user-sh-first-login/user-sh-first-login.component.ts","./src/app/core/pages/main-layer/dialog-components/user-sh-first-login/user-sh-first-login.component.html","./src/app/core/pages/main-layer/dialog-components/user-sh-first-login/user-sh-first-login.constant.ts","./src/app/core/pages/main-layer/dialog-components/user-sh-first-login/user-sh-first-login.service.ts","./src/app/core/pages/main-layer/footer-menu-item/footer-menu-item.component.ts","./src/app/core/pages/main-layer/footer-menu-item/footer-menu-item.component.html","./src/app/core/pages/main-layer/main-layer.component.ts","./src/app/core/pages/main-layer/main-layer.component.html","./src/app/core/pages/main-layer/menu-item/menu-item.component.ts","./src/app/core/pages/main-layer/menu-item/menu-item.component.html","./src/app/core/pages/not-found/not-found.component.ts","./src/app/core/pages/not-found/not-found.component.html","./src/app/core/pages/profile/_enum/dialog-state-change-pin.ts","./src/app/core/pages/profile/_enum/dialog-state-create-pin.enum.ts","./src/app/core/pages/profile/_enum/dialog-state-email-verify.enum.ts","./src/app/core/pages/profile/_enum/dialog-state-phone-change.enum.ts","./src/app/core/pages/profile/_enum/dialog-state-phone-verify.enum.ts","./src/app/core/pages/profile/_enum/error-text.enum.ts","./src/app/core/pages/profile/_enum/pin-btn-text.enum.ts","./src/app/core/pages/profile/_enum/user-otp-send-option.enum.ts","./src/app/core/pages/profile/change-phone-number/change-phone-number.component.ts","./src/app/core/pages/profile/change-phone-number/change-phone-number.component.html","./src/app/core/pages/profile/change-pin-code/change-pin-code.component.ts","./src/app/core/pages/profile/change-pin-code/change-pin-code.component.html","./src/app/core/pages/profile/create-pin/create-pin.component.ts","./src/app/core/pages/profile/create-pin/create-pin.component.html","./src/app/core/pages/profile/email-verification/email-verification.component.ts","./src/app/core/pages/profile/email-verification/email-verification.component.html","./src/app/core/pages/profile/enter-new-pin-code/enter-new-pin-code.component.ts","./src/app/core/pages/profile/enter-new-pin-code/enter-new-pin-code.component.html","./src/app/core/pages/profile/enter-phone-number/enter-phone-number.component.ts","./src/app/core/pages/profile/enter-phone-number/enter-phone-number.component.html","./src/app/core/pages/profile/otp-dialog/otp-dialog.component.ts","./src/app/core/pages/profile/otp-dialog/otp-dialog.component.html","./src/app/core/pages/profile/phone-number-verification/phone-number-verification.component.ts","./src/app/core/pages/profile/phone-number-verification/phone-number-verification.component.html","./src/app/core/pages/profile/profile.component.ts","./src/app/core/pages/profile/profile.component.html","./src/app/core/pages/profile/profile.service.ts","./src/app/core/pages/settings/_enum/theme-mode.enum.ts","./src/app/core/pages/settings/settings.component.ts","./src/app/core/pages/settings/settings.component.html","./src/app/pages/permissions-management/permissions-management.service.ts","./src/app/shared/components/base-component/base.component.ts","./src/app/shared/components/card/card.component.ts","./src/app/shared/components/card/card.component.html","./src/app/shared/components/dialog/dialog-ref/dialog-ref.component.ts","./src/app/shared/components/dialog/dialog-ref/dialog-ref.component.html","./src/app/shared/components/dialog/dialog.component.ts","./src/app/shared/components/dialog/dialog.component.html","./src/app/shared/components/icon/icon-base.component.ts","./src/app/shared/components/icon/icon-mat/icon-mat.component.ts","./src/app/shared/components/icon/icon-mat/icon-mat.component.html","./src/app/shared/components/icon/icon-svg/icon-svg.component.ts","./src/app/shared/components/icon/icon-svg/icon-svg.component.html","./src/app/shared/components/otp-input/otp-input.component.ts","./src/app/shared/components/otp-input/otp-input.component.html","./src/app/shared/components/progress-spinner/progress-spinner.component.ts","./src/app/shared/components/progress-spinner/progress-spinner.component.html","./src/app/shared/components/snack-bar/snack-bar.component.ts","./src/app/shared/components/snack-bar/snack-bar.component.html","./src/app/shared/components/snack-bar/snack-bar.service.ts","./src/app/shared/components/table/_directive/table-item-size-custom.directive.ts","./src/app/shared/components/table/_enum/table-tree-state.ts","./src/app/shared/components/table/table-column/table-column-resize-handler.directive.ts","./src/app/shared/components/table/table-column/table-column.component.ts","./src/app/shared/components/table/table-column/table-column.component.html","./src/app/shared/components/table/table-mobile-item/table-mobile-item-field/table-mobile-item-field.component.ts","./src/app/shared/components/table/table-mobile-item/table-mobile-item-field/table-mobile-item-field.component.html","./src/app/shared/components/table/table-mobile-item/table-mobile-item.component.ts","./src/app/shared/components/table/table-mobile-item/table-mobile-item.component.html","./src/app/shared/components/table/table.component.ts","./src/app/shared/components/table/table.component.html","./src/app/shared/components/validation-hitn/validation-hint.component.ts","./src/app/shared/components/validation-hitn/validation-hint.component.html","./src/app/shared/constants/constants.ts","./src/app/shared/directives/custom-tooltip-renderer/custom-tooltip-renderer.directive.ts","./src/app/shared/directives/custom-tooltip-renderer/custom-tooltip/custom-tooltip.component.ts","./src/app/shared/directives/custom-tooltip-renderer/custom-tooltip/custom-tooltip.component.html","./src/app/shared/directives/highlight-text/highlight-text.directive.ts","./src/app/shared/directives/input-text-mask/input-text-mask.directive.ts","./src/app/shared/directives/latin-letters/latin-letters.directive.ts","./src/app/shared/directives/only-number/only-number.directive.ts","./src/app/shared/directives/resized/resized-event.ts","./src/app/shared/directives/resized/resized.directive.ts","./src/app/shared/directives/show-tooltip-if-truncated/show-tooltip-if-truncated.directive.ts","./src/app/shared/functions/debbug.ts","./src/app/shared/functions/utils.ts","./src/app/shared/guards/autorization.guard.ts","./src/app/shared/interceptors/base-url-interceptor.ts","./src/app/shared/interceptors/retry-http-errorrs.interceptor.ts","./src/app/shared/pipe/mask/mask.pipe.ts","./src/app/shared/pipe/phone-number-mask-hide/phone-number-mask-hide.pipe.ts","./src/app/shared/services/access.service.ts","./src/app/shared/services/app.service.ts","./src/app/shared/services/auth.service.ts","./src/app/shared/services/client-info.service.ts","./src/app/shared/services/locale-info.service.ts","./src/app/shared/services/navigation.service.ts","./src/app/shared/services/oauth-storage-service.ts","./src/app/shared/services/request.service.ts","./src/app/shared/services/theme-mode.service.ts","./src/app/shared/validation/validation-password.ts","./src/app/shared/validation/validation-phone-length.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { MainLayerComponent } from './core/pages/main-layer/main-layer.component';\nimport { CallbackComponent } from './core/pages/callback/callback.component';\nimport { LoginComponent } from './core/pages/login/login.component';\nimport { HomeComponent } from './core/pages/home/home.component';\nimport { ProfileComponent } from './core/pages/profile/profile.component';\nimport { HelpPageComponent } from './core/pages/help-page/help-page.component';\nimport { SettingsComponent } from './core/pages/settings/settings.component';\nimport { NotFoundComponent } from './core/pages/not-found/not-found.component';\nimport { LoginSupplierHubComponent } from './core/pages/login-supplier-hub/login-supplier-hub.component';\nimport { AuthorizationGuard } from './shared/guards/autorization.guard';\n\nconst routes: Routes = [\n {\n path: 'login',\n component: LoginComponent,\n pathMatch: 'full'\n },\n {\n path: 'login-supplier-hub',\n component: LoginSupplierHubComponent,\n pathMatch: 'full'\n },\n {\n path: 'callback',\n component: CallbackComponent,\n pathMatch: 'prefix'\n },\n {\n path: '',\n redirectTo: 'home',\n pathMatch: 'full'\n },\n {\n path: '',\n canActivateChild: [AuthorizationGuard],\n component: MainLayerComponent,\n children: [\n {\n path: 'home',\n data: { caption: 'Домашня сторінка' },\n component: HomeComponent,\n pathMatch: 'full'\n },\n {\n path: 'profile',\n data: { caption: 'Картка співробітника' },\n component: ProfileComponent,\n pathMatch: 'full'\n },\n {\n path: 'supplier-hub-profile',\n data: { caption: 'Картка постачальника' },\n loadChildren: () =>\n import('./core/pages/supplier-hub-profile/supplier-hub-profile.module').then(\n (m) => m.SupplierHubProfileModule\n ),\n pathMatch: 'full'\n },\n {\n path: 'help-page',\n data: { caption: 'Сторінка допомоги' },\n component: HelpPageComponent,\n pathMatch: 'full'\n },\n {\n path: 'settings',\n data: { caption: 'Налаштування' },\n component: SettingsComponent,\n pathMatch: 'full'\n },\n {\n path: 'not-found',\n data: { caption: 'Сторінка не знайдена' },\n component: NotFoundComponent,\n pathMatch: 'full'\n },\n {\n path: 'permissions-management',\n pathMatch: 'full',\n redirectTo: 'permissions-management/apps-and-objects'\n },\n {\n path: 'permissions-management',\n data: { caption: 'Управління правами та доступами користувачів' },\n loadChildren: () =>\n import('./pages/permissions-management/permissions-management.module').then(\n (m) => m.PermissionsManagementModule\n )\n },\n {\n path: 'filials-management',\n data: { caption: 'Управління філіями' },\n loadChildren: () =>\n import('./pages/filials-management/filials-management.module').then((m) => m.FilialsManagementModule)\n },\n {\n path: 'dictionaries-management',\n data: { caption: 'Управління довідниками' },\n loadChildren: () =>\n import('./pages/dictionaries-management/dictionaries-management.module').then(\n (m) => m.DictionariesManagementModule\n )\n },\n {\n path: 'suppliers-management',\n data: { caption: 'Управління поставками' },\n loadChildren: () =>\n import('./pages/suppliers-management/suppliers-management.module').then((m) => m.SuppliersManagementModule)\n },\n {\n path: 'assortment-management',\n data: { caption: 'Управління асортиментом' },\n loadChildren: () =>\n import('./pages/assortment-management/assortment-management.module').then((m) => m.AssortmentManagementModule)\n },\n {\n path: 'supplier-hab-management',\n data: { caption: 'Управління Supplier Hub' },\n loadChildren: () =>\n import('./pages/supplier-hab-management/supplier-hab-management.module').then(\n (m) => m.SupplierHabManagementModule\n )\n },\n {\n path: 'supplier-hub',\n data: { caption: 'Supplier Hub' },\n loadChildren: () => import('./pages/supplier-hub/supplier-hub.module').then((m) => m.SupplierHubModule)\n },\n {\n path: 'applications',\n data: { caption: 'Заявки' },\n loadChildren: () => import('./pages/applications/applications.module').then((m) => m.ApplicationsModule)\n },\n {\n path: '**',\n redirectTo: 'not-found'\n }\n ]\n }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule {}\n","import { Component, OnInit } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport { environment } from '../environments/environment';\nimport { PrimeNGConfig } from 'primeng/api';\nimport { ThemeModeService } from './shared/services/theme-mode.service';\nimport { RouterOutlet } from '@angular/router';\nimport { ToastModule } from 'primeng/toast';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n standalone: true,\n imports: [ToastModule, RouterOutlet]\n})\nexport class AppComponent implements OnInit {\n constructor(\n private readonly title: Title,\n private themeModeService: ThemeModeService,\n private config: PrimeNGConfig\n ) {\n this.title.setTitle((environment.titlePref ? environment.titlePref + ' ' : '') + environment.defaultTitle);\n this.themeModeService.detectTheme();\n }\n\n ngOnInit(): void {\n this._setRedirectUrlToSessionStorage();\n this.config.setTranslation({\n startsWith: 'Починається з',\n clear: 'Очистити',\n apply: 'Застосувати',\n matchAll: 'Вибрати все',\n matchAny: 'Уникнути',\n contains: 'Містить',\n notContains: 'Не містить',\n notEquals: 'Не дорівнює',\n endsWith: 'Закінчується на',\n addRule: 'Додати фільтр',\n removeRule: 'Видалити фільтр'\n });\n }\n\n private _setRedirectUrlToSessionStorage(): void {\n let redirectUrl: string = sessionStorage.getItem('loginRedirectUrl');\n\n if (!redirectUrl) {\n redirectUrl = window.location.pathname + window.location.search;\n sessionStorage.setItem('loginRedirectUrl', redirectUrl);\n }\n }\n}\n","\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule, NgOptimizedImage } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { RouterOutlet } from '@angular/router';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { HomeComponent } from './pages/home/home.component';\nimport { ProfileComponent } from './pages/profile/profile.component';\nimport { LoginComponent } from './pages/login/login.component';\nimport { MainLayerComponent } from './pages/main-layer/main-layer.component';\nimport { HelpPageComponent } from './pages/help-page/help-page.component';\nimport { SettingsComponent } from './pages/settings/settings.component';\nimport { MenuService } from './menu.service';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MenuItemComponent } from './pages/main-layer/menu-item/menu-item.component';\nimport { FooterMenuItemComponent } from './pages/main-layer/footer-menu-item/footer-menu-item.component';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\n\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { CallbackComponent } from './pages/callback/callback.component';\n\nimport { MatInputModule } from '@angular/material/input';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\n\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\n\nimport { PermissionsManagementService } from '../pages/permissions-management/permissions-management.service';\nimport { PhoneNumberVerificationComponent } from './pages/profile/phone-number-verification/phone-number-verification.component';\nimport { MatTableModule } from '@angular/material/table';\n\nimport { OtpDialogComponent } from './pages/profile/otp-dialog/otp-dialog.component';\nimport { EmailVerificationComponent } from './pages/profile/email-verification/email-verification.component';\nimport { CreatePinComponent } from './pages/profile/create-pin/create-pin.component';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { NotFoundComponent } from './pages/not-found/not-found.component';\nimport { ChangePinCodeComponent } from './pages/profile/change-pin-code/change-pin-code.component';\nimport { EnterNewPinCodeComponent } from './pages/profile/enter-new-pin-code/enter-new-pin-code.component';\n\nimport { ChangePhoneNumberComponent } from './pages/profile/change-phone-number/change-phone-number.component';\nimport { EnterPhoneNumberComponent } from './pages/profile/enter-phone-number/enter-phone-number.component';\nimport { MaskPipe } from '../shared/pipe/mask/mask.pipe';\n\nimport { MatStepperModule } from '@angular/material/stepper';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\n\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatNativeDateModule } from '@angular/material/core';\nimport { UserShFirstLoginComponent } from './pages/main-layer/dialog-components/user-sh-first-login/user-sh-first-login.component';\nimport { UserShAccessTerminatedComponent } from './pages/main-layer/dialog-components/user-sh-access-terminated/user-sh-access-terminated.component';\nimport { InformationDialogComponent } from './pages/main-layer/dialog-components/information-dialog/information-dialog.component';\nimport { LoginSupplierHubComponent } from './pages/login-supplier-hub/login-supplier-hub.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterOutlet,\n MatButtonModule,\n MatSidenavModule,\n MatIconModule,\n MatFormFieldModule,\n ScrollingModule,\n MatTooltipModule,\n MatMenuModule,\n MatProgressBarModule,\n MatDialogModule,\n MatInputModule,\n FormsModule,\n MatSelectModule,\n MatSlideToggleModule,\n MatAutocompleteModule,\n MatTableModule,\n ReactiveFormsModule,\n MatRadioModule,\n NgOptimizedImage,\n MatStepperModule,\n MatCheckboxModule,\n MatDatepickerModule,\n MatNativeDateModule,\n LoginComponent,\n CallbackComponent,\n MainLayerComponent,\n HomeComponent,\n ProfileComponent,\n HelpPageComponent,\n SettingsComponent,\n MenuItemComponent,\n FooterMenuItemComponent,\n PhoneNumberVerificationComponent,\n OtpDialogComponent,\n EmailVerificationComponent,\n CreatePinComponent,\n EnterNewPinCodeComponent,\n EmailVerificationComponent,\n NotFoundComponent,\n ChangePinCodeComponent,\n ChangePhoneNumberComponent,\n EnterPhoneNumberComponent,\n UserShFirstLoginComponent,\n UserShAccessTerminatedComponent,\n InformationDialogComponent,\n LoginSupplierHubComponent\n ],\n providers: [MenuService, PermissionsManagementService, MaskPipe]\n})\nexport class CoreModule {}\n","import { Injectable } from '@angular/core';\nimport { MainLayerFooterItemModel } from './_models/main-layer-footer-item.model';\nimport { MainLayerMenuItemModel } from './_models/main-layer-menu-item.model';\nimport * as sidePanelFooterDataJson from './menu-data/side-panel-footer-data.json';\nimport * as sidePanelMainDataJson from './menu-data/side-panel-main-data.json';\nimport { map, Observable } from 'rxjs';\nimport { MainLayerMenuResponseDataModel } from './_models/main-layer-menu-response-data.model';\nimport { AccessService } from '../shared/services/access.service';\nimport { UserDataModel } from '../shared/models/user-data.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MenuService {\n constructor(private readonly _accessService: AccessService) {}\n\n private _userData: UserDataModel;\n\n get userData() {\n return this._userData;\n }\n\n set userData(value: UserDataModel) {\n this._userData = value;\n }\n\n getSidePanelFooterData(): MainLayerFooterItemModel[] {\n const sidePanelData: any = sidePanelFooterDataJson;\n return sidePanelData.data;\n }\n\n getSidePanelMainMenuData$(): Observable {\n return this._accessService.getAccessObjects$().pipe(\n map((accessObjects: MainLayerMenuResponseDataModel[]) => {\n const result: MainLayerMenuItemModel[] = [];\n if (accessObjects) {\n const sidePanelData: any = sidePanelMainDataJson;\n for (const rootItem of sidePanelData.data) {\n const childs = Object.assign([], rootItem.childs);\n for (const childItem of rootItem.childs) {\n if (\n !childItem.accessObjects.some((x) => accessObjects.some((apiAccessKey) => (apiAccessKey).key == x))\n ) {\n const index: number = childs.indexOf(childItem);\n\n if (index !== -1) {\n childs.splice(index, 1);\n }\n }\n }\n\n rootItem.childs = childs;\n\n if (rootItem.childs.length > 0) {\n result.push(rootItem);\n }\n }\n }\n return result;\n })\n );\n }\n}\n","import { Component } from '@angular/core';\nimport { OidcSecurityService } from 'angular-auth-oidc-client';\nimport { Router } from '@angular/router';\nimport { BaseComponent } from '../../../shared/components/base-component/base.component';\nimport { takeUntil } from 'rxjs';\n\n@Component({\n selector: 'fws-callback',\n templateUrl: './callback.component.html',\n styleUrls: ['./callback.component.scss'],\n standalone: true\n})\nexport class CallbackComponent extends BaseComponent {\n constructor(\n public readonly _oidcSecurityService: OidcSecurityService,\n private readonly _router: Router\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.checkAuth();\n }\n\n checkAuth(): void {\n this._oidcSecurityService\n .checkAuth()\n .pipe(takeUntil(this._destroy$))\n .subscribe((isAuthenticated) => {\n if (isAuthenticated.isAuthenticated) {\n let redirectUrl: string = sessionStorage.getItem('loginRedirectUrl');\n if (redirectUrl.split('?')[0] == '/callback') {\n redirectUrl = '';\n }\n this._router.navigateByUrl(redirectUrl ?? '/home');\n } else {\n this._router.navigate(['/login']);\n }\n sessionStorage.removeItem('loginRedirectUrl');\n });\n }\n}\n","
\n

Перенаправлення...

\n
\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'fws-help-page',\n templateUrl: './help-page.component.html',\n styleUrls: ['./help-page.component.scss'],\n standalone: true\n})\nexport class HelpPageComponent {}\n","

help-page works!

\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'fws-home',\n templateUrl: './home.component.html',\n styleUrls: ['./home.component.scss'],\n standalone: true\n})\nexport class HomeComponent {}\n","

HOME

\n","export enum authorizationSHState {\n authorizationSH,\n enterLoginSH,\n loginFirstEntry,\n passRecovery,\n support\n}\n","export enum LoginOptionEnum {\n RecoveryPass = 'recoveryPass',\n Authorization = 'authorization'\n}\n","import { Component, ElementRef, QueryList, ViewChildren } from '@angular/core';\nimport { BaseComponent } from '../../../shared/components/base-component/base.component';\nimport { FormBuilder, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BreakpointType } from '../../../shared/types/breakpoint.type';\nimport { ClientInfoService } from '../../../shared/services/client-info.service';\nimport { Subscription, takeUntil } from 'rxjs';\nimport { AuthService } from '../../../shared/services/auth.service';\nimport { convertUTCDateToLocalTime } from '../../../shared/functions/utils';\nimport { ErrorResponseModel } from './_models/error-response.model';\nimport { ProfileService } from '../profile/profile.service';\nimport { Router } from '@angular/router';\nimport { authorizationSHState } from './_enum/authorization-sh-state.enum';\nimport { OtpTimeLimitModel } from '../profile/_model/otp-time-limit.model';\nimport { PhoneNumberMaskHidePipe } from '../../../shared/pipe/phone-number-mask-hide/phone-number-mask-hide.pipe';\nimport { LoginFormModel } from '../../../shared/models/login-form-model';\nimport { LoginOptionModel } from './_models/login-option.model';\nimport { LoginOptionEnum } from './_enum/login-option.enum';\nimport { SnackBarService } from '../../../shared/components/snack-bar/snack-bar.service';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatSuffix } from '@angular/material/form-field';\nimport { IconSvgComponent } from '../../../shared/components/icon/icon-svg/icon-svg.component';\nimport { NgOptimizedImage, NgIf, NgSwitch, NgSwitchCase, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-login-supplier-hub',\n templateUrl: './login-supplier-hub.component.html',\n styleUrls: ['./login-supplier-hub.component.scss'],\n providers: [ProfileService, PhoneNumberMaskHidePipe],\n standalone: true,\n imports: [\n NgOptimizedImage,\n IconSvgComponent,\n NgIf,\n NgSwitch,\n NgSwitchCase,\n FormsModule,\n ReactiveFormsModule,\n MatFormField,\n MatInput,\n MatIcon,\n MatSuffix,\n NgClass\n ]\n})\nexport class LoginSupplierHubComponent extends BaseComponent {\n authorizationForm: FormGroup;\n loginForm: FormGroup;\n passRecoveryForm: FormGroup;\n hideAuthPasswordInput: boolean = true;\n hideRecoveryPasswordInput: boolean = true;\n\n invalidAuthUserNotFoundMessage: string = 'Користувача з таким логіном не знайдено.';\n invalidAuthEmailFormatMessage: string = 'Пароль або логін введено неправильно.';\n invalidLoginFormatForgotPassMessage: string = 'Логін введено неправильно.';\n notFoundLoginForgotPassMessage: string = 'Користувача модулю “Supplier Hub” з таким логіном не знайдено.';\n isBlocked: boolean = false;\n disableLoginForgotPassBtn: boolean = true;\n initialLoginForgotPassValue: string;\n isIncorrectEnterPass: boolean = false;\n blockedMessage: string;\n incorrectEnterPassMessage: string;\n breakpoint: BreakpointType;\n\n authorizationSHState: number;\n otpCode: string = '';\n isLoadSendOTPRequest: boolean = false;\n otpTimeLimitInfo: OtpTimeLimitModel;\n disableOTPCode: boolean;\n\n readonly authorizationSHStateEnum = authorizationSHState;\n readonly loginOptionEnum = LoginOptionEnum;\n private _timer: Subscription;\n private _timeoutAuthPass: any;\n private _timeoutRecoveryPass: any;\n\n @ViewChildren('loginInput') loginInput: QueryList;\n\n constructor(\n private readonly _formBuilder: FormBuilder,\n private readonly _authService: AuthService,\n private readonly _clientInfoService: ClientInfoService,\n private readonly _profileService: ProfileService,\n private readonly _snackbar: SnackBarService,\n private readonly _router: Router\n ) {\n super();\n\n this._initializeForms();\n this.authorizationSHState = this.authorizationSHStateEnum.authorizationSH;\n\n _clientInfoService.breakpoint$.pipe(takeUntil(this._destroy$)).subscribe((bp) => {\n this.breakpoint = bp;\n });\n }\n\n private _initializeForms(): void {\n this.authorizationForm = this._formBuilder.group({\n login: [''],\n password: ['']\n });\n this.loginForm = this._formBuilder.group({\n login: ['']\n });\n this.passRecoveryForm = this._formBuilder.group({\n password: ['']\n });\n\n this.authorizationForm.valueChanges.pipe(takeUntil(this._destroy$)).subscribe((value) => {\n this.authorizationForm.get('login').setErrors(null);\n this.authorizationForm.get('password').setErrors(null);\n this.isIncorrectEnterPass = false;\n this.isBlocked = false;\n });\n\n this.loginForm.valueChanges.pipe(takeUntil(this._destroy$)).subscribe((value) => {\n this.loginForm.get('login').setErrors(null);\n const currentLoginForgotPassValue = value.login;\n this.disableLoginForgotPassBtn =\n this.initialLoginForgotPassValue === currentLoginForgotPassValue ||\n currentLoginForgotPassValue.trim().length === 0;\n });\n\n this.passRecoveryForm.valueChanges.pipe(takeUntil(this._destroy$)).subscribe((value) => {\n this.passRecoveryForm.get('password').setErrors(null);\n this.isIncorrectEnterPass = false;\n this.isBlocked = false;\n });\n }\n\n public redirectToSupportLinkClick(): void {\n window.location.href = 'https://forait.atlassian.net/servicedesk/customer/portal/5/group/29/create/67';\n }\n\n public visibleIconClick(input: string): void {\n switch (input) {\n case 'authPassword':\n this.toggleVisibilityForInputs('hideAuthPasswordInput', '_timeoutAuthPass');\n break;\n case 'password':\n this.toggleVisibilityForInputs('hideRecoveryPasswordInput', '_timeoutRecoveryPass');\n break;\n default:\n break;\n }\n }\n\n private toggleVisibilityForInputs(\n hideInputProp: 'hideAuthPasswordInput' | 'hideRecoveryPasswordInput',\n timeoutProp: '_timeoutAuthPass' | '_timeoutRecoveryPass'\n ): void {\n this[hideInputProp] = !this[hideInputProp];\n\n clearTimeout(this[timeoutProp]);\n if (!this[hideInputProp]) {\n this[timeoutProp] = setTimeout(() => {\n this[hideInputProp] = !this[hideInputProp];\n }, 5000);\n }\n }\n\n returnToAuthPageClick(): void {\n this._router.navigate(['/login']);\n }\n\n public onForgotPassBtnClick(): void {\n this.isBlocked = false;\n this.isIncorrectEnterPass = false;\n this.authorizationSHState = this.authorizationSHStateEnum.enterLoginSH;\n }\n\n public onCheckLoginClick(): void {\n this.initialLoginForgotPassValue = this.loginForm.get('login').value;\n this._authService\n .forgotPassCheckEmail(this.initialLoginForgotPassValue)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (): void => {\n this.authorizationSHState = this.authorizationSHStateEnum.passRecovery;\n },\n error: (err): void => {\n this.disableLoginForgotPassBtn = true;\n if (err?.error) {\n switch (err.error) {\n case 'user.not_found': {\n this.loginForm.get('login').setErrors({ 'notFoundLogin': true });\n break;\n }\n case 'reset.locked.not_registered': {\n this.authorizationSHState = this.authorizationSHStateEnum.loginFirstEntry;\n break;\n }\n default: {\n this.loginForm.get('login').setErrors({ 'invalidLoginFormat': true });\n }\n }\n }\n }\n });\n }\n\n onLoginClick(operation: LoginOptionModel): void {\n this.isBlocked = false;\n this.isIncorrectEnterPass = false;\n\n const recoveryPassData: LoginFormModel = {\n login: this.initialLoginForgotPassValue,\n password: this.passRecoveryForm.get('password').value\n };\n this._authService\n .loginSupplierHub(\n operation === this.loginOptionEnum.Authorization ? this.authorizationForm.value : recoveryPassData\n )\n .subscribe({\n next: () => {\n operation === this.loginOptionEnum.RecoveryPass &&\n this._snackbar.open(\n 'Пароль успішно відновлено! Ви можете перейти в “Картку постачальника” та змінити пароль.',\n 'info',\n '420px'\n );\n },\n error: (err) => {\n if (err?.error?.error_description) {\n switch (err.error.error_description) {\n case 'invalid_user.not_found': {\n this.authorizationForm.get('login').setErrors({ 'invalidUserNotFound': true });\n this.authorizationForm.get('password').setErrors({ 'invalidUserNotFound': true });\n break;\n }\n case 'invalid_user.not_sh': {\n this._authService.loginEmployee();\n break;\n }\n case 'invalid_user_data.incorrect_pwd': {\n this.isIncorrectEnterPass = true;\n this._setIncorrectEnterPassMessage(err.error);\n break;\n }\n case 'invalid_user.blocked': {\n this._startBlockingTimer(err.error);\n break;\n }\n case 'invalid_user.blocked_permanently': {\n this.authorizationSHState = this.authorizationSHStateEnum.support;\n break;\n }\n default: {\n this.authorizationForm.get('login').setErrors({ 'invalidEmailFormat': true });\n this.authorizationForm.get('password').setErrors({ 'invalidEmailFormat': true });\n }\n }\n }\n }\n });\n }\n\n private _setBlockedText(time: string) {\n this.blockedMessage = `Пароль неправильно введено тричі. Спробуйте після “${time}”.`;\n }\n\n private _setIncorrectEnterPassMessage(error: ErrorResponseModel): void {\n if (\n error.negativeAttemptsCount === 1 ||\n (error.negativeAttemptsCount > 1 && (error.negativeAttemptsCount - 1) % 3 === 0)\n ) {\n this.incorrectEnterPassMessage = `Пароль введено неправильно. У Вас залишилось 2 спроби.`;\n } else {\n this.incorrectEnterPassMessage = `Пароль введено неправильно. У Вас залишилась 1 спроба.`;\n }\n }\n\n private _startBlockingTimer(error: ErrorResponseModel): void {\n this.isBlocked = true;\n const targetTime = new Date(convertUTCDateToLocalTime(this.calculateEndBlockingTime(error)));\n const formattedTime = `${targetTime.getHours()}:${targetTime.getMinutes()}`;\n\n this._setBlockedText(formattedTime);\n\n this._timer = this._profileService\n .calculateTimeRemaining(this.calculateEndBlockingTime(error).toString())\n .subscribe((time: string) => {\n if (time === '00:00') {\n this.isBlocked = false;\n }\n });\n }\n\n private calculateEndBlockingTime(error: ErrorResponseModel): Date {\n const startTime = new Date(error.startBlockingDateTime);\n const endTime = new Date(startTime.getTime() + error.blockingDuration * 60000);\n return endTime;\n }\n}\n","
\n
\n \"login\n
\n\n
\n
\n \n fg-chevron-back\n Назад\n \n \n fg-help\n Cлужба підтримки\n \n
\n\n
\n \n
\n

Ласкаво просимо до сервісу постачальників Фори!

\n

Введіть свої дані, щоб увійти в систему.

\n
\n
\n
\n \n \n \n \n
\n
\n \n \n \n {{ hideAuthPasswordInput ? 'visibility_off' : 'visibility' }}\n \n
\n
\n
\n info {{ invalidAuthUserNotFoundMessage }}
\n
\n
\n info {{ invalidAuthEmailFormatMessage }}
\n
\n
\n info {{ incorrectEnterPassMessage }}
\n
\n
\n info {{ blockedMessage }}
\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 info {{ invalidLoginFormatForgotPassMessage }}
\n
\n
\n info {{ notFoundLoginForgotPassMessage }}
\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
\n
\n
\n \n \n \n {{ hideRecoveryPasswordInput ? 'visibility_off' : 'visibility' }}\n \n
\n
\n
\n info {{ incorrectEnterPassMessage }}
\n
\n
\n info {{ blockedMessage }}
\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 { Component } from '@angular/core';\nimport { BaseComponent } from '../../../shared/components/base-component/base.component';\nimport { Router } from '@angular/router';\nimport { AuthService } from '../../../shared/services/auth.service';\nimport { ThemeMode } from '../settings/_enum/theme-mode.enum';\nimport { ThemeModeService } from '../../../shared/services/theme-mode.service';\n\n@Component({\n selector: 'fws-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss'],\n standalone: true\n})\nexport class LoginComponent extends BaseComponent {\n protected readonly themeMode = ThemeMode;\n readonly currentMode: ThemeMode = ThemeMode.LIGHT;\n constructor(\n private readonly _router: Router,\n private readonly _authService: AuthService,\n private readonly _themeModeService: ThemeModeService\n ) {\n super();\n this.currentMode = this._themeModeService.getThemeModeFromStore();\n }\n\n onForaEmployeeClick(): void {\n this._authService.loginEmployee();\n }\n\n onShUserClick(): void {\n this._router.navigate(['/login-supplier-hub']);\n }\n}\n","
\n
\n \n
\n
\n
\n

Вас вітає сервіс ФОРИ!

\n
\n
Оберіть тип авторизації:
\n
\n
\n
\n \"fora\n
\n \n
\n
\n
\n \"sh\n
\n \n
\n
\n
\n
\n
\n
\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { takeUntil } from 'rxjs';\nimport { ClientInfoService } from '../../../../../shared/services/client-info.service';\nimport { BaseComponent } from '../../../../../shared/components/base-component/base.component';\nimport { BreakpointType } from '../../../../../shared/types/breakpoint.type';\nimport { NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-information-dialog',\n templateUrl: './information-dialog.component.html',\n styleUrls: ['./information-dialog.component.scss'],\n standalone: true,\n imports: [NgClass]\n})\nexport class InformationDialogComponent extends BaseComponent {\n breakpoint: BreakpointType;\n\n @Input() imgSrc: string;\n @Input() imgAlt: string = '';\n @Input() title: string = '';\n @Input() information: string = '';\n @Input() btnText: string = '';\n @Output() onBtnClick: EventEmitter = new EventEmitter();\n\n constructor(private readonly _clientInfoService: ClientInfoService) {\n super();\n this._clientInfoService.breakpoint$.pipe(takeUntil(this._destroy$)).subscribe((bp) => {\n this.breakpoint = bp;\n });\n }\n}\n","
\n
\n \n
\n
\n

{{ title }}

\n

\n {{ information }}\n

\n
\n\n \n {{ btnText }}\n \n
\n","export enum DialogUserShAccessTermStateEnum {\n accessToShEnded,\n updateEdrpouRnocpp,\n accessToShContinue\n}\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { UserDataModel } from '../../../../../shared/models/user-data.model';\nimport { takeUntil } from 'rxjs';\nimport { TableColumnModel } from '../../../../../shared/components/table/_models/table-column.model';\nimport { columnsEdrpouErokppTable } from '../user-sh-first-login/user-sh-first-login.constant';\nimport { BaseComponent } from '../../../../../shared/components/base-component/base.component';\nimport { DialogUserShAccessTermStateEnum } from './_enums/dialog-user-sh-access-term-state.enum';\nimport { UserShAccessTerminatedService } from './user-sh-access-terminated.service';\nimport { EdrpouRnokppTableModel } from './_models/edrpou-rnokpp-table.model';\nimport { InformationDialogConfigModel } from '../information-dialog/_models/information-dialog-config.model';\nimport { TableComponent } from '../../../../../shared/components/table/table.component';\nimport { ContinueAccessRequestModel } from './_models/continue-access-request.model';\nimport { InformationDialogComponent } from '../information-dialog/information-dialog.component';\nimport { NgIf } from '@angular/common';\n\n@Component({\n selector: 'fws-user-sh-access-terminated',\n templateUrl: './user-sh-access-terminated.component.html',\n styleUrls: ['./user-sh-access-terminated.component.scss'],\n providers: [UserShAccessTerminatedService],\n standalone: true,\n imports: [NgIf, InformationDialogComponent, TableComponent]\n})\nexport class UserShAccessTerminatedComponent extends BaseComponent {\n @Input() userData: UserDataModel;\n\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n\n @ViewChild('tableTemplate') tableTemplate: TableComponent;\n\n readonly dialogStateEnum = DialogUserShAccessTermStateEnum;\n readonly _columnsEdrpouErokppTable: TableColumnModel[] = structuredClone(columnsEdrpouErokppTable);\n\n dialogState: number;\n firstDialogInformationConfig: InformationDialogConfigModel = {\n imgSrc: 'assets/icons/png/fg-pensive-face-emoji.png',\n imgAlt: 'emoji pensive face',\n title: 'Ваш доступ до модулю Supplier Hub завершився!',\n information:\n 'Щоб продовжити користування модулем та використовувати усі функції - актуалізуйте свої ЄДРПОУ/РНОКПП. Приємного користування!',\n btnText: 'Продовжити доступ'\n };\n accessFinishDialogInformationConfig: InformationDialogConfigModel = {\n imgSrc: 'assets/icons/png/fg-party-popper-emoji.png',\n imgAlt: 'emoji party popper',\n title: 'Доступ до модулю Supplier Hub продовжено!',\n information: 'Ви можете продовжити користування модулем.',\n btnText: 'Ок'\n };\n edrpouRnokppTableDataSource: EdrpouRnokppTableModel[] = [];\n\n constructor(private _userShAccessTerminatedService: UserShAccessTerminatedService) {\n super();\n }\n\n ngOnInit(): void {\n this.dialogState = this.dialogStateEnum.accessToShEnded;\n this._getUserShCompanyData();\n }\n\n private _getUserShCompanyData(): void {\n this._userShAccessTerminatedService\n .getUserShCompanyInfo$()\n .pipe(takeUntil(this._destroy$))\n .subscribe((response) => {\n this.edrpouRnokppTableDataSource = [...response];\n });\n }\n\n onStartingReactivateAccessClick() {\n this.dialogState = this.dialogStateEnum.updateEdrpouRnocpp;\n }\n\n onApproveChoosingCompany(): void {\n const data: ContinueAccessRequestModel = {\n continueAccessRights: true,\n addContractorIds: this.edrpouRnokppTableDataSource.filter((item) => item.fwsSelectedRow).map((item) => item.id),\n delContractorIds: this.edrpouRnokppTableDataSource.filter((item) => !item?.fwsSelectedRow).map((item) => item.id)\n };\n this._userShAccessTerminatedService\n .putContinueAccess$(data)\n .pipe(takeUntil(this._destroy$))\n .subscribe(() => {\n this.dialogState = this.dialogStateEnum.accessToShContinue;\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 { Injectable } from '@angular/core';\nimport { map, Observable } from 'rxjs';\nimport { RequestService } from '../../../../../shared/services/request.service';\nimport { LastOperationInfoModel } from '../../../../../shared/models/last-operation-info.model';\nimport { EdrpouRnokppTableModel } from './_models/edrpou-rnokpp-table.model';\nimport { ContinueAccessRequestModel } from './_models/continue-access-request.model';\n\n@Injectable()\nexport class UserShAccessTerminatedService {\n private readonly _SUPPLIER_HAB: string = 'api/supplierHabManagement/';\n\n constructor(private readonly _requestService: RequestService) {}\n\n getUserShCompanyInfo$(): Observable {\n return this._requestService\n .get$<{\n lastOperation: LastOperationInfoModel;\n usersSHCompany: EdrpouRnokppTableModel[];\n }>(this._SUPPLIER_HAB + `UsersSHCompanyInfoUser/user`)\n .pipe(\n map((response) => {\n return response.usersSHCompany;\n })\n );\n }\n\n putContinueAccess$(data: ContinueAccessRequestModel): Observable {\n return this._requestService.put$(this._SUPPLIER_HAB + `UserSHUser/user`, data);\n }\n}\n","export enum DialogStateEnum {\n greetingSH,\n registrationStepper,\n successRegistration,\n support\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { UserShFirstLoginService } from './user-sh-first-login.service';\nimport { mergeMap, takeUntil } from 'rxjs';\nimport { MatStepper, MatStep, MatStepLabel, MatStepperNext, MatStepperPrevious } from '@angular/material/stepper';\nimport { DialogStateEnum } from './_enum/dialog-state.enum';\nimport { ProfileService } from '../../../profile/profile.service';\nimport { BaseComponent } from '../../../../../shared/components/base-component/base.component';\nimport { fwsPhoneMask } from '../../../../../shared/constants/constants';\nimport { DictionaryModel } from '../../../../../shared/models/dictionary.model';\nimport { OtpTimeLimitModel } from '../../../profile/_model/otp-time-limit.model';\nimport { UserDataModel } from '../../../../../shared/models/user-data.model';\nimport { ValidationPhoneLength } from '../../../../../shared/validation/validation-phone-length';\nimport { passwordValidator } from '../../../../../shared/validation/validation-password';\nimport { InformationDialogConfigModel } from '../information-dialog/_models/information-dialog-config.model';\nimport { AuthService } from '../../../../../shared/services/auth.service';\nimport { PhoneNumberMaskHidePipe } from '../../../../../shared/pipe/phone-number-mask-hide/phone-number-mask-hide.pipe';\nimport { BreakpointType } from '../../../../../shared/types/breakpoint.type';\nimport { ClientInfoService } from '../../../../../shared/services/client-info.service';\nimport { MatIcon } from '@angular/material/icon';\nimport { OtpDialogComponent } from '../../../profile/otp-dialog/otp-dialog.component';\nimport { InputTextMaskDirective } from '../../../../../shared/directives/input-text-mask/input-text-mask.directive';\nimport { MatCheckbox } from '@angular/material/checkbox';\nimport { IconSvgComponent } from '../../../../../shared/components/icon/icon-svg/icon-svg.component';\nimport { MatDatepickerInput, MatDatepickerToggleIcon, MatDatepicker } from '@angular/material/datepicker';\nimport { MatOption } from '@angular/material/core';\nimport { MatSelect } from '@angular/material/select';\nimport { ValidationHintComponent } from '../../../../../shared/components/validation-hitn/validation-hint.component';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatHint, MatSuffix, MatPrefix } from '@angular/material/form-field';\nimport { InformationDialogComponent } from '../information-dialog/information-dialog.component';\nimport { NgIf, NgClass, NgFor } from '@angular/common';\n\n@Component({\n selector: 'fws-user-sh-first-login',\n templateUrl: './user-sh-first-login.component.html',\n styleUrls: ['./user-sh-first-login.component.scss'],\n providers: [UserShFirstLoginService, ProfileService, PhoneNumberMaskHidePipe],\n standalone: true,\n imports: [\n NgIf,\n InformationDialogComponent,\n MatStepper,\n MatStep,\n FormsModule,\n ReactiveFormsModule,\n MatStepLabel,\n MatFormField,\n NgClass,\n MatInput,\n MatHint,\n MatSuffix,\n ValidationHintComponent,\n MatSelect,\n NgFor,\n MatOption,\n MatDatepickerInput,\n IconSvgComponent,\n MatDatepickerToggleIcon,\n MatDatepicker,\n MatCheckbox,\n MatStepperNext,\n MatPrefix,\n InputTextMaskDirective,\n MatStepperPrevious,\n OtpDialogComponent,\n MatIcon\n ]\n})\nexport class UserShFirstLoginComponent extends BaseComponent {\n @Input() userData: UserDataModel;\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n @Output() onChangeDialogHeight: EventEmitter<{ height: string; width: string }> = new EventEmitter<{\n height: string;\n width: string;\n }>();\n\n readonly dialogStateEnum = DialogStateEnum;\n readonly maskPhoneInput: Array = fwsPhoneMask;\n readonly inputMaxLength: number = 256;\n\n private _timeoutPass: any;\n private _timeoutRepeatPass: any;\n\n dialogState: number;\n\n mainInfoFormGroup: FormGroup;\n contactInfoFormGroup: FormGroup;\n passwordsFormGroup: FormGroup;\n userEmail: string = '';\n positionDictionary: DictionaryModel[] = [];\n isLoadSendOTPRequest: boolean = false;\n otpCaption: string = '';\n otpCode: string = '';\n isFocusLastNameInput: boolean;\n isFocusFirstNameInput: boolean;\n isFocusSurnameInput: boolean;\n otpTimeLimitInfo: OtpTimeLimitModel;\n disableOTPCode: boolean;\n password: string;\n hidePasswordInput: boolean = true;\n repeatPassword: string;\n hideRepeatPasswordInput: boolean = true;\n showPasswordsMatchError: boolean = false;\n breakpoint: BreakpointType;\n\n firstDialogInformationConfig: InformationDialogConfigModel = {\n imgSrc: 'assets/icons/png/fg-waving-hand-emoji.png',\n imgAlt: 'emoji hand',\n title: 'Вітаємо Вас в Supplier Hub!',\n information:\n 'Щоб розпочати користування модулем та використовувати усі функції - пройдіть реєстрацію та верифікацію. Приємного користування!',\n btnText: 'Розпочати'\n };\n successRegistrationDialogInformationConfig: InformationDialogConfigModel = {\n imgSrc: 'assets/icons/png/fg-party-popper-emoji.png',\n imgAlt: 'emoji party popper',\n title: 'Реєстрацію успішно завершено!',\n information: 'Ви можете розпочати користування модулем.',\n btnText: 'Ок'\n };\n\n constructor(\n private _formBuilder: FormBuilder,\n private _userShFirstLoginService: UserShFirstLoginService,\n private readonly _phoneNumberMaskHidePipe: PhoneNumberMaskHidePipe,\n private readonly _profileService: ProfileService,\n private readonly _authService: AuthService,\n private readonly _clientInfoService: ClientInfoService\n ) {\n super();\n this._clientInfoService.breakpoint$.pipe(takeUntil(this._destroy$)).subscribe((bp) => {\n this.breakpoint = bp;\n });\n }\n\n ngOnInit(): void {\n this.dialogState = this.dialogStateEnum.greetingSH;\n this._initializeForms();\n this._getData();\n }\n\n private _initializeForms(): void {\n this.mainInfoFormGroup = this._formBuilder.group({\n lastName: ['', [Validators.required, Validators.minLength(2), Validators.maxLength(this.inputMaxLength)]],\n firstName: ['', [Validators.required, Validators.minLength(2), Validators.maxLength(this.inputMaxLength)]],\n surname: ['', [Validators.minLength(2), Validators.maxLength(this.inputMaxLength)]],\n positionUserShId: [null, Validators.required],\n birthDate: null,\n agreePersonalData: [false, Validators.requiredTrue]\n });\n this.contactInfoFormGroup = this._formBuilder.group({\n email: { value: this.userEmail, disabled: true },\n phoneNumber: [null, [Validators.required, ValidationPhoneLength]]\n });\n\n this.passwordsFormGroup = this._formBuilder.group({\n password: ['', [passwordValidator()]],\n repeatPassword: ['', [Validators.required]]\n });\n\n this.passwordsFormGroup.valueChanges.pipe(takeUntil(this._destroy$)).subscribe((value) => {\n this.showPasswordsMatchError = false;\n if (value.password === '' || value.repeatPassword === '') {\n this.showPasswordsMatchError = false;\n return;\n }\n this.showPasswordsMatchError = value.password !== value.repeatPassword;\n });\n }\n\n onStartRegistrationClick() {\n this.onChangeDialogHeight.emit({ height: '850px', width: '550px' });\n this.dialogState = this.dialogStateEnum.registrationStepper;\n }\n\n private _getData() {\n this._userShFirstLoginService\n .getUserEmail$()\n .pipe(\n mergeMap((response) => {\n this.userEmail = response;\n this.contactInfoFormGroup.get('email').setValue(this.userEmail, { emitEvent: false });\n return this._userShFirstLoginService.getPositionUserSh$();\n }),\n takeUntil(this._destroy$)\n )\n .subscribe((response) => {\n this.positionDictionary = response;\n });\n }\n\n private _setOtpCaption(phone: string): string {\n return `На ваш телефон ${phone}
відправлено код підтвердження`;\n }\n\n sendOtpAgain(isSendOtpAgain: boolean) {\n if (isSendOtpAgain) {\n this.isLoadSendOTPRequest = true;\n const phoneNumber = this.contactInfoFormGroup.get('phoneNumber').value.replaceAll(' ', '');\n this._profileService\n .postVerifyPhoneStart(phoneNumber)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this._loadOtpTimeLimit();\n this.isLoadSendOTPRequest = false;\n },\n error: (error) => {\n if (error.code === 'Locked' && error.description === 'user.is.locked') {\n this.dialogState = this.dialogStateEnum.support;\n return;\n }\n\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n this.isLoadSendOTPRequest = false;\n }\n });\n }\n }\n\n onContactDataNextClick() {\n this.isLoadSendOTPRequest = true;\n const phoneNumber = this.contactInfoFormGroup.get('phoneNumber').value.replaceAll(' ', '');\n this._profileService\n .postVerifyPhoneStart(phoneNumber)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this._loadOtpTimeLimit();\n const maskPhone = this._phoneNumberMaskHidePipe.transform(phoneNumber);\n this.otpCaption = this._setOtpCaption(maskPhone);\n this.isLoadSendOTPRequest = false;\n },\n error: (error) => {\n if (error.code === 'Locked' && error.description === 'user.is.locked') {\n this.dialogState = this.dialogStateEnum.support;\n return;\n }\n this._loadOtpTimeLimit();\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n\n const maskPhone = this._phoneNumberMaskHidePipe.transform(phoneNumber);\n this.otpCaption = this._setOtpCaption(maskPhone);\n\n this.isLoadSendOTPRequest = false;\n }\n });\n }\n\n onOtpVerificationNextClick(stepper: MatStepper): void {\n this.isLoadSendOTPRequest = true;\n this._profileService\n .postVerifyPhone(this.otpCode)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n stepper.next();\n this.otpCode = '';\n this.isLoadSendOTPRequest = false;\n },\n error: (error) => {\n this.otpCode = '';\n this.isLoadSendOTPRequest = false;\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n }\n });\n }\n\n private _loadOtpTimeLimit() {\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this.disableOTPCode = otpTimeLimitStatus.possibilityAttemptCount === 0;\n\n if (otpTimeLimitStatus?.nextAttempt) {\n this.otpTimeLimitInfo = otpTimeLimitStatus;\n }\n }\n });\n }\n\n visibleIconClick(input: string): void {\n if (input === 'password') {\n this.hidePasswordInput = !this.hidePasswordInput;\n\n clearTimeout(this._timeoutPass);\n if (!this.hidePasswordInput) {\n this._timeoutPass = setTimeout(() => {\n this.hidePasswordInput = !this.hidePasswordInput;\n }, 5000);\n }\n }\n\n if (input === 'repeatPassword') {\n this.hideRepeatPasswordInput = !this.hideRepeatPasswordInput;\n\n clearTimeout(this._timeoutRepeatPass);\n if (!this.hidePasswordInput) {\n this._timeoutRepeatPass = setTimeout(() => {\n this.hideRepeatPasswordInput = !this.hideRepeatPasswordInput;\n }, 5000);\n }\n }\n }\n\n onSendRequestForRegistration(stepper: MatStepper) {\n const sentData = {\n lastName: this.mainInfoFormGroup.get('lastName').value,\n firstName: this.mainInfoFormGroup.get('firstName').value,\n surname: this.mainInfoFormGroup.get('surname').value,\n birthDate: this.mainInfoFormGroup.get('birthDate').value,\n positionUserShId: this.mainInfoFormGroup.get('positionUserShId').value,\n password: this.passwordsFormGroup.get('password').value\n };\n this._userShFirstLoginService\n .putRegistrationSH$(sentData)\n .pipe(takeUntil(this._destroy$))\n .subscribe((response) => {\n this.dialogState = this.dialogStateEnum.successRegistration;\n });\n }\n\n onMoveToContactInfoStepper(stepper: MatStepper): void {\n stepper.selectedIndex = 1;\n }\n\n redirectToSupportLink() {\n window.location.href = 'https://forait.atlassian.net/servicedesk/customer/portal/5/group/29/create/67';\n }\n\n goToContactInfoStep() {\n this.onChangeDialogHeight.emit({ height: 'auto', width: '550px' });\n }\n}\n","\n \n\n\n\n
Реєстрація
\n \n \n
\n Особисті дані \n
\n \n \n \n {{\n (mainInfoFormGroup.get('lastName').value?.length || '0') + '/' + inputMaxLength\n }}\n \n \n
\n
\n \n \n \n {{\n (mainInfoFormGroup.get('firstName').value?.length || '0') + '/' + inputMaxLength\n }}\n \n \n
\n
\n \n \n \n {{\n (mainInfoFormGroup.get('surname').value?.length || '0') + '/' + inputMaxLength\n }}\n \n
\n
\n \n \n \n \n {{ position.name }}\n \n \n \n \n
\n
\n \n \n \n fg-close\n fg-calendar\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 \n \n
\n fg-flag-ua\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 Далі\n \n
\n
\n \n Створення паролю \n
\n
\n \n \n \n {{ hidePasswordInput ? 'visibility_off' : 'visibility' }}\n \n
\n info \n {{\n 'Пароль має складатися щонайменше з 8 символів, містити велику та малу літеру, цифру. Дозволені символи: . ! @ - _ = + / .'\n }}\n
\n
\n \n
\n
\n \n \n \n {{ hideRepeatPasswordInput ? 'visibility_off' : 'visibility' }}\n \n \n
\n info \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
\n
\n \n
\n
\n
\n","import { SELECTED_ROW } from '../../../../../shared/components/table/table.component';\nimport { TableColumnModel } from '../../../../../shared/components/table/_models/table-column.model';\n\nexport const columnsEdrpouErokppTable: TableColumnModel[] = [\n {\n property: SELECTED_ROW,\n contentType: 'boolean',\n maxWidth: '48px',\n minWidth: '48px',\n isSelecting: true\n },\n {\n property: 'name',\n caption: 'Скорочена назва контрагента',\n contentType: 'text',\n minWidth: '232px'\n },\n {\n property: 'edrpou',\n caption: 'ЄДРПОУ/РНОКПП',\n contentType: 'number'\n }\n];\n","import { Injectable } from '@angular/core';\nimport { map, Observable } from 'rxjs';\nimport { RegistrationShUserModel } from './_models/registration-sh-user.model';\nimport { RequestService } from '../../../../../shared/services/request.service';\nimport { DictionaryModel } from '../../../../../shared/models/dictionary.model';\nimport { DictionaryWithLastOperationModel } from '../../../../../shared/models/dictionaryWithLastOperation.model';\n\n@Injectable()\nexport class UserShFirstLoginService {\n private readonly _SUPPLIER_HAB: string = 'api/supplierHabManagement/';\n private readonly _DICTIONARY: string = 'api/dictionaryManagement/';\n\n constructor(private readonly _requestService: RequestService) {}\n\n getUserEmail$(): Observable {\n return this._requestService.get$(this._SUPPLIER_HAB + `UserEmailUser/user`);\n }\n\n getPositionUserSh$(): Observable {\n return this._requestService\n .get$(this._DICTIONARY + 'PositionUserSH')\n .pipe(map((value) => value.dictionary));\n }\n\n putRegistrationSH$(sendData: RegistrationShUserModel): Observable {\n return this._requestService.put$(this._SUPPLIER_HAB + `RegistrationUser/user`, sendData);\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { MainLayerFooterItemModel } from '../../../_models/main-layer-footer-item.model';\nimport { MainLayerComponent } from '../main-layer.component';\nimport { AuthService } from '../../../../shared/services/auth.service';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { NgIf, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-footer-menu-item',\n templateUrl: './footer-menu-item.component.html',\n styleUrls: ['./footer-menu-item.component.scss'],\n standalone: true,\n imports: [NgIf, NgClass, MatTooltip]\n})\nexport class FooterMenuItemComponent implements OnInit {\n @Input() item: MainLayerFooterItemModel;\n\n constructor(\n readonly mainLayer: MainLayerComponent,\n readonly _authService: AuthService\n ) {}\n\n ngOnInit(): void {\n const currentUrl: string = window.location.pathname.substring(1).substring(1);\n const selectedItem: boolean = this.item.link == currentUrl;\n if (selectedItem) {\n this.mainLayer.setSelectedMenuItem(this.item);\n }\n }\n\n footerItemClickHandler(link: string, action: string): void {\n this.mainLayer.setSelectedMenuItem(this.item);\n if (link) {\n this.mainLayer.navigate(link);\n } else if (action) {\n if (action == 'logout') {\n this._authService.logout();\n sessionStorage.removeItem('loginRedirectUrl');\n }\n }\n }\n}\n","\n {{ item.icon }}\n {{ item.label }}\n\n
\n \n {{ item.icon }}\n
\n\n","import { AfterViewChecked, Component, ViewChild } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\nimport { MainLayerFooterItemModel } from '../../_models/main-layer-footer-item.model';\nimport { MenuService } from '../../menu.service';\nimport { MainLayerMenuItemModel } from '../../_models/main-layer-menu-item.model';\nimport { Observable, takeUntil, tap } from 'rxjs';\nimport { MainLayerMenuItemSelectableModel } from '../../_models/main-layer-menu-item-selectable.model';\nimport * as packageJson from '../../../../../package.json';\nimport { NavigationService } from '../../../shared/services/navigation.service';\nimport { BreadcrumbModel } from '../../../shared/models/breadcrumb.model';\nimport { AppService } from '../../../shared/services/app.service';\nimport { UserDataModel } from '../../../shared/models/user-data.model';\nimport { BaseComponent } from '../../../shared/components/base-component/base.component';\nimport { ClientInfoService } from '../../../shared/services/client-info.service';\nimport { BreakpointType } from '../../../shared/types/breakpoint.type';\nimport { MatMenuTrigger, MatMenu } from '@angular/material/menu';\nimport { UserShAccessTerminatedComponent } from './dialog-components/user-sh-access-terminated/user-sh-access-terminated.component';\nimport { UserShFirstLoginComponent } from './dialog-components/user-sh-first-login/user-sh-first-login.component';\nimport { DialogComponent } from '../../../shared/components/dialog/dialog.component';\nimport { FooterMenuItemComponent } from './footer-menu-item/footer-menu-item.component';\nimport { MenuItemComponent } from './menu-item/menu-item.component';\nimport { MatProgressBar } from '@angular/material/progress-bar';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { MatIcon } from '@angular/material/icon';\nimport { IconSvgComponent } from '../../../shared/components/icon/icon-svg/icon-svg.component';\nimport { NgIf, NgTemplateOutlet, NgClass, NgStyle, NgFor, AsyncPipe } from '@angular/common';\n\n@Component({\n selector: 'fws-main-layer',\n templateUrl: './main-layer.component.html',\n styleUrls: ['./main-layer.component.scss'],\n standalone: true,\n imports: [\n NgIf,\n NgTemplateOutlet,\n IconSvgComponent,\n NgClass,\n NgStyle,\n MatIcon,\n MatTooltip,\n MatProgressBar,\n NgFor,\n MenuItemComponent,\n FooterMenuItemComponent,\n RouterOutlet,\n MatMenuTrigger,\n MatMenu,\n DialogComponent,\n UserShFirstLoginComponent,\n UserShAccessTerminatedComponent,\n AsyncPipe\n ]\n})\nexport class MainLayerComponent extends BaseComponent implements AfterViewChecked {\n userData: UserDataModel = {\n iconUrl: 'assets/images/default_user_icon.png'\n };\n isNarrowMode: boolean;\n isBreadcrumbsNarrowMode: boolean;\n expandBreadcrumbsMenu: boolean;\n isExpanded: boolean = true;\n isSidePanelShow: boolean = true;\n isMenuLoaded: boolean = false;\n version: string;\n breadcrumbsDataSource: BreadcrumbModel[] = [];\n showFirstLoginForUserSHDialog: boolean = false;\n showUserSHAccessTerminatedDialog: boolean = false;\n currentBreadcrumb: BreadcrumbModel;\n previousPageBreadcrumb: BreadcrumbModel;\n breakpoint: BreakpointType;\n dialogFirstLoginHeight = 'auto';\n dialogFirstLoginWidth = '550px';\n\n @ViewChild('breadcrumbsMenuTrigger') breadcrumbsMenuTrigger: MatMenuTrigger;\n\n sidepanelFooterData: MainLayerFooterItemModel[] = this._menuService.getSidePanelFooterData();\n sidepanelMenuData: Observable = this._menuService.getSidePanelMainMenuData$().pipe(\n tap(() => {\n setTimeout(() => {\n this.isMenuLoaded = true;\n });\n })\n );\n\n private _selectedMenuItem: MainLayerMenuItemSelectableModel = {};\n\n constructor(\n private readonly _router: Router,\n private readonly _menuService: MenuService,\n private readonly _navigationService: NavigationService,\n private readonly _appService: AppService,\n private readonly _clientInfoService: ClientInfoService\n ) {\n super();\n this._navigationService.breadcrumbsChange\n .pipe(takeUntil(this._destroy$))\n .subscribe((breadcrumbs: BreadcrumbModel[]) => {\n this.breadcrumbsDataSource = breadcrumbs;\n this.currentBreadcrumb = breadcrumbs[breadcrumbs.length - 1];\n this.previousPageBreadcrumb = breadcrumbs[breadcrumbs.length - 2];\n });\n }\n\n ngOnInit(): void {\n const pkg: any = packageJson;\n this.version = pkg.version;\n this._appService.getUserData$().subscribe((userData: UserDataModel) => {\n this.userData = userData;\n this._checkShUsersLogin(userData);\n this._menuService.userData = userData;\n });\n this._clientInfoService.breakpoint$.pipe(takeUntil(this._destroy$)).subscribe((breakepoint) => {\n this.breakpoint = breakepoint;\n this.isNarrowMode = ['md', 'sm', 'xs', 'xxs'].includes(breakepoint);\n this.isBreadcrumbsNarrowMode = ['sm', 'xs', 'xxs'].includes(breakepoint);\n this.dialogFirstLoginWidth = ['xs', 'xxs'].includes(this.breakpoint) ? 'calc(100% - 32px)' : '550px';\n\n if (this.isNarrowMode) {\n this.isExpanded = true;\n this.isSidePanelShow = false;\n } else {\n this.isSidePanelShow = true;\n }\n });\n }\n\n ngAfterViewChecked() {\n this._setStylesForBreadcrumbsMenu();\n }\n\n private _setStylesForBreadcrumbsMenu(): void {\n this.breadcrumbsMenuTrigger?.menuOpened.subscribe(() => {\n this._adjustOverlay();\n });\n }\n\n private _adjustOverlay(): void {\n const overlayPane = document.querySelector('.cdk-overlay-pane');\n overlayPane && overlayPane.classList.add('fws-custom-breadcrumbs-menu-overlay');\n\n const overlayBox = document.querySelector('.cdk-overlay-connected-position-bounding-box');\n overlayBox && overlayBox.classList.add('fws-custom-breadcrumbs-overlay');\n }\n\n navigate(url: string): void {\n if (url != null) {\n this._router.navigate(['/' + url]);\n }\n }\n\n setSelectedMenuItem(item: MainLayerMenuItemSelectableModel): void {\n if (this._selectedMenuItem != item) {\n this._selectedMenuItem.isSelected = false;\n if ((this._selectedMenuItem).childs) {\n (this._selectedMenuItem).childs.forEach((menuItem) => (menuItem.isSelected = false));\n }\n item.isSelected = true;\n this._selectedMenuItem = item;\n }\n }\n\n onProfileClick(): void {\n this._selectedMenuItem.isSelected = false;\n (this._selectedMenuItem).isExpanded = false;\n if ((this._selectedMenuItem).childs) {\n (this._selectedMenuItem).childs.forEach((menuItem) => (menuItem.isSelected = false));\n }\n this._menuService.userData.isUserSh\n ? this._router.navigate(['supplier-hub-profile'])\n : this._router.navigate(['profile']);\n }\n\n public goToPreviousPage() {\n this._router.navigate(['/' + this.previousPageBreadcrumb.link]);\n }\n\n private _checkShUsersLogin(userData: UserDataModel) {\n this.showFirstLoginForUserSHDialog = userData.isUserSh && userData.isFirstLogin;\n this.showUserSHAccessTerminatedDialog = userData.isUserSh && userData.countActiveDays === 0;\n }\n\n onChangeDialogHeight(dialogSize: { height: string; width: string }) {\n this.dialogFirstLoginHeight = dialogSize.height;\n this.dialogFirstLoginWidth = dialogSize.width;\n }\n}\n","
\n
\n \n
\n \n
\n\n \n
\n
\n chevron_right\n
\n
\n
\n
\n {{ isExpanded ? 'chevron_left' : 'chevron_right' }}\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n {{ userData.position }}\n fg-notification\n
\n {{ userData.name }}\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\n\n
\n
\n 2\"\n (click)=\"goToPreviousPage()\"\n class=\"fws-btn-icon-extra-small fws-btn-without-border\"\n >\n fg-chevron-back\n \n \n \n \n {{ bc.caption }}\n
\n i + 1\" size=\"md\">fg-chevron\n
\n
\n
\n \n \n
{{ currentBreadcrumb.caption }}
\n fg-chevron-back\n
\n \n \n \n \n {{ bc.caption }}\n
\n \n \n \n \n \n
version {{ version }}
\n \n
\n\n\n \n\n\n\n \n\n","import { Component, Input, OnInit } from '@angular/core';\nimport { MainLayerComponent } from '../main-layer.component';\nimport { MainLayerMenuItemModel } from '../../../_models/main-layer-menu-item.model';\nimport { MainLayerMenuSubitemModel } from '../../../_models/main-layer-menu-subitem.model';\nimport { NavigationService } from '../../../../shared/services/navigation.service';\nimport { MatMenuTrigger, MatMenu, MatMenuItem } from '@angular/material/menu';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { IconSvgComponent } from '../../../../shared/components/icon/icon-svg/icon-svg.component';\nimport { NgIf, NgClass, NgFor } from '@angular/common';\n\n@Component({\n selector: 'fws-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrls: ['./menu-item.component.scss'],\n standalone: true,\n imports: [NgIf, NgClass, IconSvgComponent, NgFor, MatTooltip, MatMenuTrigger, MatMenu, MatMenuItem]\n})\nexport class MenuItemComponent implements OnInit {\n @Input() item: MainLayerMenuItemModel;\n private _selectedChild: MainLayerMenuSubitemModel = {};\n\n constructor(\n readonly mainLayer: MainLayerComponent,\n private readonly _navigationService: NavigationService\n ) {}\n\n ngOnInit(): void {\n const currentUrl: string = window.location.pathname.substring(1);\n this._setSelectedMenuItem(this._modifyUrl(currentUrl));\n this._navigationService.changeUrl.subscribe({\n next: (url: string) => {\n this._setSelectedMenuItem(this._modifyUrl(url));\n }\n });\n }\n\n private _setSelectedMenuItem(url: string): void {\n const selectedItem: MainLayerMenuSubitemModel = this.item.childs.find((x) => x.link == url);\n if (selectedItem) {\n this._setMenuItemProperty(selectedItem, this.item);\n }\n }\n\n private _setMenuItemProperty(child: MainLayerMenuSubitemModel, item?: MainLayerMenuItemModel) {\n this._selectedChild.isSelected = false;\n if (item) {\n item.isSelected = true;\n item.isExpanded = true;\n }\n child.isSelected = true;\n this._selectedChild = child;\n this.mainLayer.setSelectedMenuItem(this.item);\n }\n\n private _modifyUrl(url: string): string {\n let parts = url.split('/');\n\n if (parts.length >= 2) {\n return parts.slice(0, 2).join('/');\n }\n return '';\n }\n\n menuItemSelected(child: MainLayerMenuSubitemModel): void {\n this._setMenuItemProperty(child);\n this.mainLayer.navigate(this._selectedChild.link);\n }\n}\n","\n
\n \n
\n {{ item.icon }}\n
\n
{{ item.label }}
\n \n fg-chevron\n \n
\n
\n \n
\n
\n
\n
\n
\n
\n \n {{ child.label }}\n
\n
\n \n \n\n\n
\n \n {{ item.icon }}\n
\n \n
\n \n {{ child.label }}\n
\n \n
\n\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'fws-not-found',\n templateUrl: './not-found.component.html',\n styleUrls: ['./not-found.component.scss'],\n standalone: true\n})\nexport class NotFoundComponent {}\n","

not-found works!

\n","export enum DialogStateChangePin {\n enterPin,\n success\n}\n","export enum DialogStateCreatePinEnum {\n chooseMethod,\n enterOTP,\n enterNewPin,\n success\n}\n","export enum DialogStateEmailVerifyEnum {\n enterOTP,\n success\n}\n","export enum DialogStatePhoneChangeEnum {\n enterCurrentPin,\n enterNewPhoneNumber,\n enterOTP,\n success,\n missingPinCode\n}\n","export enum DialogStatePhoneVerifyEnum {\n enterPhone,\n enterOTP,\n success\n}\n","export enum ErrorText {\n emailNeedVerify = 'Email потребує верифікації',\n phoneNeedVerify = ' Номер телефону потребує верифікації',\n pinMissing = 'ПІН-код відсутній. Натисніть “Створити ПІН-код“',\n pinCantCreate = 'Верифікуйте Email або номер телефону для створення ПІН-коду'\n}\n","export enum PinBtnText {\n createPin = 'Створити ПІН-код',\n editPin = 'Змінити ПІН-код'\n}\n","export enum UserOTPSendOptionEnum {\n usingPhone,\n usingEmail\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { DialogStatePhoneChangeEnum } from '../_enum/dialog-state-phone-change.enum';\nimport { ProfileService } from '../profile.service';\nimport { BaseComponent } from '../../../../shared/components/base-component/base.component';\nimport { Subscription, switchMap, takeUntil } from 'rxjs';\nimport { OtpTimeLimitModel } from '../_model/otp-time-limit.model';\nimport { CheckPinCode } from '../_model/check-pin-code';\nimport { UserDataModel } from '../_model/user-data.model';\nimport { MaskPipe } from '../../../../shared/pipe/mask/mask.pipe';\nimport { OtpDialogComponent } from '../otp-dialog/otp-dialog.component';\nimport { EnterPhoneNumberComponent } from '../enter-phone-number/enter-phone-number.component';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { MatIcon } from '@angular/material/icon';\nimport { OnlyNumberDirective } from '../../../../shared/directives/only-number/only-number.directive';\nimport { FormsModule } from '@angular/forms';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatSuffix } from '@angular/material/form-field';\nimport { NgIf, NgSwitch, NgSwitchCase, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-change-phone-number',\n templateUrl: './change-phone-number.component.html',\n styleUrls: ['./change-phone-number.component.scss'],\n standalone: true,\n imports: [\n NgIf,\n NgSwitch,\n NgSwitchCase,\n MatFormField,\n MatInput,\n FormsModule,\n OnlyNumberDirective,\n MatIcon,\n MatSuffix,\n NgClass,\n MatTooltip,\n EnterPhoneNumberComponent,\n OtpDialogComponent\n ]\n})\nexport class ChangePhoneNumberComponent extends BaseComponent {\n @Input() userData: UserDataModel;\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n @Output() openCreateDialog: EventEmitter = new EventEmitter();\n @Output() openResetDialog: EventEmitter = new EventEmitter();\n\n readonly dialogStateEnum = DialogStatePhoneChangeEnum;\n dialogState: number;\n currentPassword: string = '';\n hideCurrentPasswordInput: boolean = true;\n finishStep: boolean;\n disableNextBtn: boolean = true;\n showError: boolean;\n errorMessage: string;\n disableWaitTime: boolean = false;\n tooltipBtnDisableText: string;\n disabledInputs: boolean = false;\n phoneNumber: string;\n otpCaption: string;\n otpCode: string;\n isLoadSendOTPRequest: boolean = false;\n otpTimeLimitInfo: OtpTimeLimitModel;\n disableOTPCode: boolean;\n private _timeoutPassword: any;\n private _timer: Subscription;\n private _otpTimeLimitInfo: OtpTimeLimitModel;\n private _maskPhoneHide: Array = [\n '(+',\n /\\d/,\n /\\d/,\n /\\d/,\n ')',\n /\\d/,\n /\\d/,\n '*',\n '*',\n '*',\n '*',\n '*',\n /\\d/,\n /\\d/\n ];\n\n constructor(\n private readonly _profileService: ProfileService,\n private readonly _maskPipe: MaskPipe\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.phoneNumber = this.userData.phoneNumber.slice(4);\n this.dialogState = this.userData.isPIN ? this.dialogStateEnum.enterCurrentPin : this.dialogStateEnum.missingPinCode;\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this._otpTimeLimitInfo = otpTimeLimitStatus;\n this.disableWaitTime = otpTimeLimitStatus.isOverLimit;\n this._timer && this._timer.unsubscribe();\n this._otpTimeLimitInfo.nextAttempt && this._startTimer();\n }\n });\n }\n\n visibleIconClick() {\n this.hideCurrentPasswordInput = !this.hideCurrentPasswordInput;\n\n clearTimeout(this._timeoutPassword);\n if (!this.hideCurrentPasswordInput) {\n this._timeoutPassword = setTimeout(() => {\n this.hideCurrentPasswordInput = !this.hideCurrentPasswordInput;\n }, 5000);\n }\n }\n\n nextStep() {\n if (this.dialogState === this.dialogStateEnum.enterCurrentPin) {\n this._profileService\n .postCheckPinCode(this.currentPassword)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (response: CheckPinCode) => {\n if (response.isCorrect) {\n this.dialogState += 1;\n return;\n }\n },\n error: (err) => {\n this.showError = true;\n this._resetInputsValue();\n if (!err?.details?.isCorrect && err?.details?.availableAttemptCount !== 0) {\n this.errorMessage = `ПІН-код введено неправильно. У Вас залишилось ${err.details.availableAttemptCount} спроби.`;\n }\n\n if (!err?.details?.isCorrect && err?.details?.availableAttemptCount === 0) {\n this.errorMessage = 'Ви ввели не правильний ПІН-код 3 рази. Відновіть ПІН-код.';\n this.disableNextBtn = true;\n this.disabledInputs = true;\n }\n }\n });\n }\n\n if (this.dialogState === this.dialogStateEnum.enterNewPhoneNumber) {\n const phoneForSave = `+380${this.phoneNumber.replace(/ /g, '')}`;\n this.isLoadSendOTPRequest = true;\n this._profileService\n .postRefreshPhone({ phone: phoneForSave, pinCode: this.currentPassword })\n .pipe(\n switchMap(() => this._profileService.postVerifyPhoneStart(phoneForSave)),\n takeUntil(this._destroy$)\n )\n .subscribe({\n next: (maskPhone: string) => {\n this._loadOtpTimeLimit();\n this.otpCaption = this._setOtpCaption(maskPhone);\n this.isLoadSendOTPRequest = false;\n this.disableNextBtn = true;\n this.dialogState += 1;\n },\n error: (error) => {\n this._loadOtpTimeLimit();\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n\n const maskPhone = this._maskPipe.transform(this.phoneNumber, this._maskPhoneHide);\n this.otpCaption = this._setOtpCaption(maskPhone);\n\n this.isLoadSendOTPRequest = false;\n }\n });\n }\n if (this.dialogState === this.dialogStateEnum.enterOTP) {\n this._profileService\n .postVerifyPhone(this.otpCode)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this.dialogState += 1;\n this.otpCode = null;\n },\n error: (error) => {\n this.otpCode = null;\n this.disableNextBtn = true;\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n }\n });\n }\n }\n\n closePopup() {\n this.onClosePopup.emit(true);\n }\n\n passwordChange() {\n this.disableNextBtn = !(this.currentPassword?.length === 4);\n }\n\n checkDisableNextBtn(invalidStatus: boolean): void {\n setTimeout(() => {\n this.disableNextBtn = invalidStatus;\n });\n }\n\n private _resetInputsValue() {\n this.currentPassword = null;\n this.disableNextBtn = true;\n }\n\n private _setOtpCaption(phone: string): string {\n return `На ваш телефон ${phone}
відправлено код підтвердження`;\n }\n\n private _startTimer(): void {\n this._timer = this._profileService\n .calculateTimeRemaining(this._otpTimeLimitInfo.nextAttempt)\n .subscribe((time: string) => {\n if (time === '00:00') {\n this.disableWaitTime = false;\n }\n this._setTooltipBtnDisableText(time);\n });\n }\n\n private _setTooltipBtnDisableText(time: string) {\n this.tooltipBtnDisableText = `Ви використали усі спроби для введення коду. Спробуйте після ${time}.`;\n }\n\n sendOtpAgain(isSendOtpAgain: boolean) {\n if (isSendOtpAgain) {\n this._profileService\n .postVerifyPhoneStart(this.phoneNumber)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this._loadOtpTimeLimit();\n },\n error: (error) => {\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n }\n });\n }\n }\n\n private _loadOtpTimeLimit() {\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this.disableOTPCode = otpTimeLimitStatus.possibilityAttemptCount === 0;\n\n if (otpTimeLimitStatus?.nextAttempt) {\n this.otpTimeLimitInfo = otpTimeLimitStatus;\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 {{ hideCurrentPasswordInput ? 'visibility_off' : 'visibility' }}\n \n \n Забули ПІН-код?\n
\n
\n info {{ errorMessage }}\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
\n \n
\n\n","import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { DialogStateChangePin } from '../_enum/dialog-state-change-pin';\nimport { ProfileService } from '../profile.service';\nimport { CheckPinCode } from '../_model/check-pin-code';\nimport { EnterNewPinCodeComponent } from '../enter-new-pin-code/enter-new-pin-code.component';\nimport { NgIf, NgSwitch, NgSwitchCase } from '@angular/common';\n\n@Component({\n selector: 'fws-change-pin-code',\n templateUrl: './change-pin-code.component.html',\n styleUrls: ['./change-pin-code.component.scss'],\n standalone: true,\n imports: [NgIf, NgSwitch, NgSwitchCase, EnterNewPinCodeComponent]\n})\nexport class ChangePinCodeComponent {\n @Input() showDialog: boolean;\n @Output() showDialogChange: EventEmitter = new EventEmitter();\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n @Output() openResetDialog: EventEmitter = new EventEmitter();\n readonly dialogStateEnum = DialogStateChangePin;\n\n dialogState: number = this.dialogStateEnum.enterPin;\n disableNextBtn: boolean = true;\n newPassword: string;\n repeatNewPassword: string;\n currentPassword: string;\n showError: boolean;\n errorMessage: string;\n checkPinCodeResponse: CheckPinCode;\n disabledInputs: boolean = false;\n\n constructor(private readonly _profileService: ProfileService) {}\n\n passwordChange() {\n this.disableNextBtn = !(\n this.newPassword?.length === 4 &&\n this.repeatNewPassword?.length === 4 &&\n this.currentPassword?.length === 4\n );\n }\n\n nextStep() {\n if (this.dialogState === this.dialogStateEnum.enterPin && this.newPassword !== this.repeatNewPassword) {\n this.showError = true;\n this.errorMessage = 'ПІН-коди не збігаються. Спробуйте ще раз.';\n this._resetInputsValue();\n } else if (this.currentPassword === this.newPassword) {\n this.showError = true;\n this.errorMessage = 'Поточний та новий ПІН-коди збігаються. Спробуйте ще раз.';\n this._resetInputsValue();\n } else {\n this._profileService\n .postCheckPinCode(this.currentPassword)\n .pipe()\n .subscribe({\n next: (response: CheckPinCode) => {\n this.checkPinCodeResponse = response;\n if (this.checkPinCodeResponse.isCorrect) {\n this._updatePinCode();\n }\n },\n error: (err) => {\n this.showError = true;\n this._resetInputsValue();\n if (!err?.details?.isCorrect && err?.details?.availableAttemptCount !== 0)\n err.details.availableAttemptCount !== 1\n ? (this.errorMessage = `Поточний ПІН-код неправильний. У Вас залишилось ${err.details.availableAttemptCount} спроби.`)\n : (this.errorMessage = `Поточний ПІН-код неправильний. У Вас залишилась ${err.details.availableAttemptCount} спроба.`);\n\n if (!err?.details?.isCorrect && err?.details?.availableAttemptCount === 0) {\n this.errorMessage = 'Ви ввели не правильний ПІН-код 3 рази. Відновіть ПІН-код.';\n this.disableNextBtn = true;\n this.disabledInputs = true;\n }\n }\n });\n }\n }\n\n private _resetInputsValue() {\n this.newPassword = null;\n this.repeatNewPassword = null;\n this.currentPassword = null;\n this.disableNextBtn = true;\n }\n\n private _updatePinCode(): void {\n this._profileService\n .postUpdatePinCode({ oldPinCode: this.currentPassword, newPinCode: this.newPassword })\n .pipe()\n .subscribe({\n next: () => {\n this.dialogState += 1;\n }\n });\n }\n closePopup() {\n this.onClosePopup.emit(true);\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 \n
\n
\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { DialogStateCreatePinEnum } from '../_enum/dialog-state-create-pin.enum';\nimport { ProfileService } from '../profile.service';\nimport { UserOtpOption } from '../_model/user-otp-option';\nimport { OtpTimeLimitModel } from '../_model/otp-time-limit.model';\nimport { UserOTPSendOptionEnum } from '../_enum/user-otp-send-option.enum';\nimport { finalize, takeUntil } from 'rxjs';\nimport { BaseComponent } from '../../../../shared/components/base-component/base.component';\nimport { UserDataModel } from '../_model/user-data.model';\nimport { MaskPipe } from '../../../../shared/pipe/mask/mask.pipe';\nimport { MethodTypeModel } from '../_model/method-type.model';\nimport { DialogStateEmailVerifyEnum } from '../_enum/dialog-state-email-verify.enum';\nimport { EnterNewPinCodeComponent } from '../enter-new-pin-code/enter-new-pin-code.component';\nimport { OtpDialogComponent } from '../otp-dialog/otp-dialog.component';\nimport { FormsModule } from '@angular/forms';\nimport { MatRadioGroup, MatRadioButton } from '@angular/material/radio';\nimport { MatProgressBar } from '@angular/material/progress-bar';\nimport { NgIf, NgSwitch, NgSwitchCase, NgFor, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-create-pin',\n templateUrl: './create-pin.component.html',\n styleUrls: ['./create-pin.component.scss'],\n providers: [MaskPipe],\n standalone: true,\n imports: [\n NgIf,\n NgSwitch,\n NgSwitchCase,\n MatProgressBar,\n MatRadioGroup,\n FormsModule,\n NgFor,\n MatRadioButton,\n OtpDialogComponent,\n EnterNewPinCodeComponent,\n NgClass\n ]\n})\nexport class CreatePinComponent extends BaseComponent implements OnInit {\n @Input() isResetPin: boolean = false;\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n\n readonly dialogStateEnum = DialogStateCreatePinEnum;\n\n userData: UserDataModel;\n dialogState: number;\n finishStep: boolean;\n disableNextBtn: boolean = true;\n methodTypeChoose: number = null;\n userOtpOption: UserOtpOption;\n otpCaption: string;\n otpCode: string;\n isLoadRequest: boolean = false;\n otpTimeLimitInfo: OtpTimeLimitModel;\n disableOTPCode: boolean;\n\n methodTypes: MethodTypeModel[] = [\n { id: 0, name: 'Через номер телефону', disabled: false },\n { id: 1, name: 'Через Email', disabled: false }\n ];\n private _maskPhoneHide: Array = [\n '(+',\n /\\d/,\n /\\d/,\n /\\d/,\n ')',\n /\\d/,\n /\\d/,\n '*',\n '*',\n '*',\n '*',\n '*',\n /\\d/,\n /\\d/\n ];\n password: string;\n repeatPassword: string;\n showError: boolean;\n\n constructor(\n private readonly _profileService: ProfileService,\n private readonly _maskPipe: MaskPipe\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.isLoadRequest = true;\n this.dialogState = this.dialogStateEnum.chooseMethod;\n this._profileService\n .getUserFullData$()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (userData: UserDataModel) => {\n this.userData = userData;\n this._userOTPOptionCheck();\n }\n });\n }\n\n closePopup() {\n this.onClosePopup.emit(true);\n }\n\n nextStep() {\n if (this.dialogState === this.dialogStateEnum.chooseMethod && this.methodTypeChoose !== null) {\n this.dialogState += 1;\n this._sendOtp();\n return;\n }\n\n if (this.dialogState === this.dialogStateEnum.enterOTP) {\n this.disableOTPCode = true;\n this.disableNextBtn = true;\n this._profileService\n .postApproveOtp(this.otpCode)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this.dialogState += 1;\n this.disableOTPCode = false;\n },\n error: (error) => {\n this._handleError(error);\n this.otpCode = null;\n }\n });\n }\n\n if (this.dialogState === this.dialogStateEnum.enterNewPin && this.password === this.repeatPassword) {\n this.disableNextBtn = true;\n this._profileService.postResetPinCode({ newPinCode: this.password, otpToken: this.otpCode }).subscribe({\n next: () => {\n this.dialogState += 1;\n this.disableNextBtn = false;\n }\n });\n } else {\n this.showError = !(this.password === this.repeatPassword);\n this.disableNextBtn = true;\n this.repeatPassword = null;\n this.password = null;\n }\n }\n\n private _sendOtp(): void {\n this.isLoadRequest = true;\n if (this.methodTypeChoose === UserOTPSendOptionEnum.usingEmail) {\n this._profileService\n .getEmailOTP()\n .pipe(\n finalize(() => {\n this.isLoadRequest = false;\n this.otpCode = null;\n })\n )\n .subscribe({\n next: (maskEmail) => {\n this._loadOtpTimeLimit();\n this.otpCaption = this._setOtpCaption(maskEmail, 'email');\n },\n error: (error) => {\n const maskEmail = this._profileService._maskEmail(this.userData.email);\n this.otpCaption = this._setOtpCaption(maskEmail, 'email');\n this._handleError(error);\n }\n });\n }\n if (this.methodTypeChoose === UserOTPSendOptionEnum.usingPhone) {\n this._profileService\n .getSmsOTP()\n .pipe(\n finalize(() => {\n this.isLoadRequest = false;\n this.otpCode = null;\n })\n )\n .subscribe({\n next: (phoneMask) => {\n this._loadOtpTimeLimit();\n this.otpCaption = this._setOtpCaption(phoneMask, 'phone');\n },\n error: (error) => {\n const maskPhone = this._maskPipe.transform(this.userData.phoneNumber, this._maskPhoneHide);\n this.otpCaption = this._setOtpCaption(maskPhone, 'phone');\n this._handleError(error);\n }\n });\n }\n }\n\n private _handleError(error): void {\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n this.disableOTPCode = error?.details?.possibilityAttemptCount === 0;\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n }\n\n private _userOTPOptionCheck(): void {\n this._profileService.getUserOTPOption().subscribe({\n next: (userOtpOption: UserOtpOption) => {\n this.isLoadRequest = false;\n this.userOtpOption = userOtpOption;\n if (!this.userOtpOption.isPhoneVerification) {\n this.methodTypes[0].name = 'Через номер телефону (номер не верифіковано)';\n this.methodTypes[0].disabled = true;\n this.methodTypeChoose = 1;\n this.disableNextBtn = false;\n }\n if (!this.userOtpOption.isEmailVerification) {\n this.methodTypes[1].name = 'Через Email (Email не верифіковано)';\n this.methodTypes[1].disabled = true;\n this.methodTypeChoose = 0;\n this.disableNextBtn = false;\n }\n }\n });\n }\n\n private _setOtpCaption(mask: string, otpOption: string): string {\n return otpOption === 'email'\n ? `На ваш Email ${mask} відправлено код підтвердження`\n : `На ваш телефон ${mask} відправлено код підтвердження`;\n }\n\n private _loadOtpTimeLimit() {\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this.disableOTPCode = otpTimeLimitStatus.possibilityAttemptCount === 0;\n\n if (otpTimeLimitStatus?.nextAttempt) {\n this.otpTimeLimitInfo = otpTimeLimitStatus;\n }\n }\n });\n }\n\n checkDisableNextBtn(invalidStatus: boolean): void {\n setTimeout(() => {\n this.disableNextBtn = invalidStatus;\n });\n }\n\n sendOtpAgain() {\n this._sendOtp();\n }\n\n passwordChange() {\n this.disableNextBtn = !(this.password?.length === 4 && this.repeatPassword?.length === 4);\n }\n}\n","
\n
\n \n {{ isResetPin ? 'Відновлення ПІН-коду' : 'Створення ПІН-коду' }}\n \n \n {{ isResetPin ? 'ПІН-код успішно відновлено' : 'ПІН-код успішно створено' }}\n \n
\n\n
\n \n \n
\n
Оберіть спосіб {{ isResetPin ? 'відновлення' : 'створення ' }} ПІН-коду:
\n \n \n {{ methodType.name }}\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 { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { DialogStateEmailVerifyEnum } from '../_enum/dialog-state-email-verify.enum';\nimport { OtpTimeLimitModel } from '../_model/otp-time-limit.model';\nimport { takeUntil } from 'rxjs';\nimport { ProfileService } from '../profile.service';\nimport { BaseComponent } from '../../../../shared/components/base-component/base.component';\nimport { OtpDialogComponent } from '../otp-dialog/otp-dialog.component';\nimport { NgIf, NgSwitch, NgSwitchCase, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-email-verification',\n templateUrl: './email-verification.component.html',\n styleUrls: ['./email-verification.component.scss'],\n standalone: true,\n imports: [NgIf, NgSwitch, NgSwitchCase, OtpDialogComponent, NgClass]\n})\nexport class EmailVerificationComponent extends BaseComponent {\n @Input() email: string;\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n\n readonly dialogStateEnum = DialogStateEmailVerifyEnum;\n\n dialogState: number;\n isLoadSendOTPRequest: boolean = false;\n otpCaption: string;\n otpCode: string;\n disableNextBtn: boolean = false;\n otpTimeLimitInfo: OtpTimeLimitModel;\n disableOTPCode: boolean;\n finishStep: boolean;\n\n constructor(private readonly _profileService: ProfileService) {\n super();\n }\n\n ngOnInit(): void {\n this.dialogState = this.dialogStateEnum.enterOTP;\n this.sendOtpAgain();\n }\n\n checkDisableNextBtn(invalidStatus: boolean): void {\n setTimeout(() => {\n this.disableNextBtn = invalidStatus;\n });\n }\n\n closePopup() {\n this.onClosePopup.emit(true);\n }\n\n nextStep() {\n this.disableNextBtn = true;\n this._profileService\n .postVerifyEmail(this.otpCode)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this.dialogState += 1;\n this.otpCode = null;\n },\n error: (error) => {\n this.otpCode = null;\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n }\n });\n }\n\n sendOtpAgain() {\n this.isLoadSendOTPRequest = true;\n this._profileService\n .postVerifyEmailStart(this.email)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (maskEmail: string) => {\n this.otpCaption = this._setOtpCaption(maskEmail);\n this._loadOtpTimeLimit();\n this.isLoadSendOTPRequest = false;\n },\n error: (error) => {\n if (error?.details) {\n this._loadOtpTimeLimit();\n this.otpTimeLimitInfo = error.details;\n const maskEmail = this._profileService._maskEmail(this.email);\n this.otpCaption = this._setOtpCaption(maskEmail);\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n }\n this.isLoadSendOTPRequest = false;\n }\n });\n }\n\n private _loadOtpTimeLimit() {\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this.disableOTPCode = otpTimeLimitStatus.possibilityAttemptCount === 0;\n\n if (otpTimeLimitStatus?.nextAttempt) {\n this.otpTimeLimitInfo = otpTimeLimitStatus;\n }\n }\n });\n }\n\n private _setOtpCaption(email: string): string {\n return `На ваш Email ${email} відправлено код підтвердження`;\n }\n}\n","
\n
\n \n {{ 'Верифікація Email' }}\n \n \n {{ 'Ваш Email успішно верифіковано' }}\n \n
\n
\n \n \n \n \n
Ви можете повернутись до картки співробітника
\n
\n
\n \n \n \n
\n\n
\n \n
\n\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { BaseComponent } from '../../../../shared/components/base-component/base.component';\nimport { Subscription, takeUntil } from 'rxjs';\nimport { ProfileService } from '../profile.service';\nimport { OtpTimeLimitModel } from '../_model/otp-time-limit.model';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { MatIcon } from '@angular/material/icon';\nimport { OnlyNumberDirective } from '../../../../shared/directives/only-number/only-number.directive';\nimport { FormsModule } from '@angular/forms';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatSuffix } from '@angular/material/form-field';\nimport { NgIf, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-enter-new-pin-code',\n templateUrl: './enter-new-pin-code.component.html',\n styleUrls: ['./enter-new-pin-code.component.scss'],\n standalone: true,\n imports: [NgIf, MatFormField, MatInput, FormsModule, OnlyNumberDirective, MatIcon, MatSuffix, NgClass, MatTooltip]\n})\nexport class EnterNewPinCodeComponent extends BaseComponent {\n @Input({ transform: _checkPassword }) password: string;\n @Input({ transform: _checkPassword }) repeatPassword: string;\n @Input({ transform: _checkPassword }) currentPassword: string;\n @Input() showError: boolean;\n @Input() isCreateMode: boolean;\n @Input() disabledInputs: boolean = false;\n @Input() showForgotPinOption: boolean = true;\n @Input() errorMessage: string = 'ПІН-коди не збігаються. Спробуйте ще раз.';\n @Output() passwordChange = new EventEmitter();\n @Output() repeatPasswordChange = new EventEmitter();\n @Output() currentPasswordChange = new EventEmitter();\n @Output() forgotPinCodeClick = new EventEmitter();\n\n hidePasswordInput: boolean = true;\n hideRepeatPassword: boolean = true;\n hideCurrentPasswordInput: boolean = true;\n disableWaitTime: boolean = false;\n tooltipBtnDisableText: string;\n private _timeoutPassword: any;\n private _timeoutRepeatPass: any;\n private _timeoutCurrentPass: any;\n private _timer: Subscription;\n private _otpTimeLimitInfo: OtpTimeLimitModel;\n\n constructor(private readonly _profileService: ProfileService) {\n super();\n }\n\n ngOnInit(): void {\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this._otpTimeLimitInfo = otpTimeLimitStatus;\n this.disableWaitTime = otpTimeLimitStatus.isOverLimit;\n this._timer && this._timer.unsubscribe();\n this._otpTimeLimitInfo.nextAttempt && this._startTimer();\n }\n });\n }\n\n visibleIconClick(inputName: string) {\n if (inputName === 'password') {\n this.hidePasswordInput = !this.hidePasswordInput;\n\n clearTimeout(this._timeoutPassword);\n if (!this.hidePasswordInput) {\n this._timeoutPassword = setTimeout(() => {\n this.hidePasswordInput = !this.hidePasswordInput;\n }, 5000);\n }\n }\n\n if (inputName === 'repeatPassword') {\n this.hideRepeatPassword = !this.hideRepeatPassword;\n\n clearTimeout(this._timeoutRepeatPass);\n if (!this.hideRepeatPassword) {\n this._timeoutRepeatPass = setTimeout(() => {\n this.hideRepeatPassword = !this.hideRepeatPassword;\n }, 5000);\n }\n }\n\n if (inputName === 'currentPassword') {\n this.hideCurrentPasswordInput = !this.hideCurrentPasswordInput;\n\n clearTimeout(this._timeoutCurrentPass);\n if (!this.hideCurrentPasswordInput) {\n this._timeoutCurrentPass = setTimeout(() => {\n this.hideCurrentPasswordInput = !this.hideCurrentPasswordInput;\n }, 5000);\n }\n }\n }\n\n private _setTooltipBtnDisableText(time: string) {\n this.tooltipBtnDisableText = `Ви використали усі спроби для введення коду. Спробуйте після ${time}.`;\n }\n\n private _startTimer(): void {\n this._timer = this._profileService\n .calculateTimeRemaining(this._otpTimeLimitInfo.nextAttempt)\n .subscribe((time: string) => {\n if (time === '00:00') {\n this.disableWaitTime = false;\n }\n this._setTooltipBtnDisableText(time);\n });\n }\n}\n\nfunction _checkPassword(value: string | undefined) {\n return value || '';\n}\n","
\n
\n \n \n \n {{ hideCurrentPasswordInput ? 'visibility_off' : 'visibility' }}\n \n
\n\n
\n \n \n \n {{ hidePasswordInput ? 'visibility_off' : 'visibility' }}\n \n
\n
\n \n \n \n {{ hideRepeatPassword ? 'visibility_off' : 'visibility' }}\n \n \n Забули ПІН-код?\n
\n
\n info {{ errorMessage }}\n
\n
\n\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { NgModel, FormsModule } from '@angular/forms';\nimport { InputTextMaskDirective } from '../../../../shared/directives/input-text-mask/input-text-mask.directive';\nimport { OnlyNumberDirective } from '../../../../shared/directives/only-number/only-number.directive';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatPrefix } from '@angular/material/form-field';\n\n@Component({\n selector: 'fws-enter-phone-number',\n templateUrl: './enter-phone-number.component.html',\n styleUrls: ['./enter-phone-number.component.scss'],\n standalone: true,\n imports: [MatFormField, MatInput, FormsModule, OnlyNumberDirective, InputTextMaskDirective, MatPrefix]\n})\nexport class EnterPhoneNumberComponent {\n @Input() phoneNumber: string;\n @Output() phoneNumberChange: EventEmitter = new EventEmitter();\n @Output() changeInputStatus: EventEmitter = new EventEmitter();\n\n maskPhoneInput: Array = [/\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/, /\\d/];\n\n changeNumber(phoneInput: NgModel) {\n this.phoneNumberChange.emit(phoneInput.value);\n this.changeInputStatus.emit(phoneInput.invalid);\n }\n}\n","
\n
Введіть номер телефону
\n
\n
\n
\n \n \n +380\n \n
\n
\n
\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\nimport { NgModel, FormsModule } from '@angular/forms';\nimport { ProfileService } from '../profile.service';\nimport { OtpTimeLimitModel } from '../_model/otp-time-limit.model';\nimport { convertUTCDateToLocalTime } from '../../../../shared/functions/utils';\nimport { DatePipe, NgIf } from '@angular/common';\nimport { BaseComponent } from '../../../../shared/components/base-component/base.component';\nimport { Subscription, takeUntil } from 'rxjs';\nimport { OtpInputComponent } from '../../../../shared/components/otp-input/otp-input.component';\nimport { MatProgressBar } from '@angular/material/progress-bar';\n\n@Component({\n selector: 'fws-otp-dialog',\n templateUrl: './otp-dialog.component.html',\n styleUrls: ['./otp-dialog.component.scss'],\n providers: [DatePipe],\n standalone: true,\n imports: [NgIf, MatProgressBar, OtpInputComponent, FormsModule]\n})\nexport class OtpDialogComponent extends BaseComponent implements OnInit, OnChanges {\n @Input() caption: string;\n @Input() otpCode: string;\n @Input() otpTimeLimitInfo: OtpTimeLimitModel;\n @Input() disableOtpInput: boolean;\n @Input() isLoadSendOTPRequest: boolean = false;\n @Output() changeInputStatus: EventEmitter = new EventEmitter();\n @Output() otpCodeChange: EventEmitter = new EventEmitter();\n @Output() sendOtpAgain: EventEmitter = new EventEmitter();\n @Output() isLoadSendOTPRequestChange: EventEmitter = new EventEmitter();\n\n @ViewChild('otpInput') otpInput: NgModel;\n\n countdown: string;\n errorCountText: string;\n timer: Subscription;\n isOneMinuteTimeLimit: boolean;\n\n constructor(\n private readonly _profileService: ProfileService,\n private readonly _datePipe: DatePipe\n ) {\n super();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['otpTimeLimitInfo'] && !changes['otpTimeLimitInfo'].firstChange && this.otpTimeLimitInfo) {\n this.errorCountText = this._setErrorText(this.otpTimeLimitInfo.possibilityAttemptCount);\n this.isOneMinuteTimeLimit = this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n this.timer && this.timer.unsubscribe();\n this._startTimer();\n }\n }\n\n ngOnInit() {\n this.changeInputStatus.emit(true);\n }\n\n sendOtpAgainClick(): void {\n this.sendOtpAgain.emit(true);\n this.otpTimeLimitInfo.isOverLimit = false;\n this.disableOtpInput = false;\n this.otpCode = null;\n this.changeInputStatus.emit(true);\n }\n\n changeInputValue(input: NgModel) {\n setTimeout(() => {\n this.changeInputStatus.emit(input.invalid);\n this.otpCodeChange.emit(this.otpCode);\n });\n }\n\n private _startTimer() {\n this.timer = this._profileService\n .calculateTimeRemaining(this.otpTimeLimitInfo.nextAttempt)\n .pipe(takeUntil(this._destroy$))\n .subscribe((time: string) => {\n if (time === '00:00') {\n this.otpTimeLimitInfo.isOverLimit = false;\n }\n this.countdown = time;\n });\n }\n\n private _setErrorText(count: number): string {\n if (count === 0) {\n const time = this._datePipe.transform(\n new Date(convertUTCDateToLocalTime(this.otpTimeLimitInfo.nextAttempt)),\n 'HH:mm'\n );\n const isOneMinuteTimeLimit = this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n return isOneMinuteTimeLimit\n ? ` info Ви використали усі спроби для введення коду.`\n : ` info Ви використали усі спроби для введення коду.
Спробуйте після ${time}.`;\n } else {\n return count !== 1\n ? ` info Код неправильний. У вас залишилось ${count} спроби`\n : ` info Код неправильний. У вас залишилась ${count} спроба`;\n }\n }\n}\n","\n\n\n
\n
\n
\n \n
\n
\n \n
Відправити ще раз
\n
\n {{ countdown }}\n
\n \n
\n
\n \n
\n","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { NgModel } from '@angular/forms';\nimport { DialogStatePhoneVerifyEnum } from '../_enum/dialog-state-phone-verify.enum';\nimport { ProfileService } from '../profile.service';\nimport { OtpTimeLimitModel } from '../_model/otp-time-limit.model';\nimport { MaskPipe } from '../../../../shared/pipe/mask/mask.pipe';\nimport { BaseComponent } from '../../../../shared/components/base-component/base.component';\nimport { takeUntil } from 'rxjs';\nimport { OtpDialogComponent } from '../otp-dialog/otp-dialog.component';\nimport { EnterPhoneNumberComponent } from '../enter-phone-number/enter-phone-number.component';\nimport { NgSwitch, NgSwitchCase, NgSwitchDefault, NgIf, NgClass } from '@angular/common';\n\n@Component({\n selector: 'fws-phone-number-verification',\n templateUrl: './phone-number-verification.component.html',\n styleUrls: ['./phone-number-verification.component.scss'],\n standalone: true,\n imports: [NgSwitch, NgSwitchCase, NgSwitchDefault, EnterPhoneNumberComponent, OtpDialogComponent, NgIf, NgClass]\n})\nexport class PhoneNumberVerificationComponent extends BaseComponent implements OnInit {\n @Input() phoneNumber: string;\n @Output() onClosePopup: EventEmitter = new EventEmitter();\n\n readonly dialogStateEnum = DialogStatePhoneVerifyEnum;\n\n otpCode: string;\n\n disableNextBtn: boolean = false;\n dialogState: number;\n otpCaption: string;\n otpTimeLimitInfo: OtpTimeLimitModel;\n disableOTPCode: boolean;\n isLoadSendOTPRequest: boolean = false;\n\n finishStep: boolean;\n private _maskPhoneHide: Array = [\n '(+',\n /\\d/,\n /\\d/,\n /\\d/,\n ')',\n /\\d/,\n /\\d/,\n '*',\n '*',\n '*',\n '*',\n '*',\n /\\d/,\n /\\d/\n ];\n\n constructor(\n private readonly _profileService: ProfileService,\n private readonly _maskPipe: MaskPipe\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.dialogState = this.dialogStateEnum.enterPhone;\n this.phoneNumber = this.phoneNumber.slice(4);\n }\n\n closePopup(): void {\n this.onClosePopup.emit(true);\n }\n\n nextStep() {\n if (this.dialogState === this.dialogStateEnum.enterOTP) {\n this.disableNextBtn = true;\n this._profileService\n .postVerifyPhone(this.otpCode)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this.dialogState += 1;\n this.otpCode = null;\n },\n error: (error) => {\n this.otpCode = null;\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n }\n });\n return;\n } else {\n this.dialogState += 1;\n }\n\n if (this.dialogState === this.dialogStateEnum.enterOTP) {\n this.phoneNumber = `+380${this.phoneNumber.replace(/ /g, '')}`;\n this.isLoadSendOTPRequest = true;\n this._profileService\n .postVerifyPhoneStart(this.phoneNumber)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (maskPhone: string) => {\n this._loadOtpTimeLimit();\n this.otpCaption = this._setOtpCaption(maskPhone);\n this.isLoadSendOTPRequest = false;\n },\n error: (error) => {\n this._loadOtpTimeLimit();\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\n }\n if (error?.details?.possibilityAttemptCount === 0) {\n this.disableOTPCode = true;\n }\n this.finishStep =\n error?.details?.possibilityAttemptCount === 0 &&\n !this._profileService.isOneMinuteTimeLimit(this.otpTimeLimitInfo?.nextAttempt);\n\n const maskPhone = this._maskPipe.transform(this.phoneNumber, this._maskPhoneHide);\n this.otpCaption = this._setOtpCaption(maskPhone);\n\n this.isLoadSendOTPRequest = false;\n }\n });\n }\n }\n\n private _setOtpCaption(phone: string): string {\n return `На ваш телефон ${phone}
відправлено код підтвердження`;\n }\n\n private _loadOtpTimeLimit() {\n this._profileService\n .getOTPTimeLimit()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this.disableOTPCode = otpTimeLimitStatus.possibilityAttemptCount === 0;\n\n if (otpTimeLimitStatus?.nextAttempt) {\n this.otpTimeLimitInfo = otpTimeLimitStatus;\n }\n }\n });\n }\n\n checkDisableNextBtn(invalidStatus: boolean): void {\n setTimeout(() => {\n this.disableNextBtn = invalidStatus;\n });\n }\n\n sendOtpAgain(isSendOtpAgain: boolean) {\n if (isSendOtpAgain) {\n this._profileService\n .postVerifyPhoneStart(this.phoneNumber)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: () => {\n this._loadOtpTimeLimit();\n },\n error: (error) => {\n if (error?.details) {\n this.otpTimeLimitInfo = error.details;\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
Ви можете повернутись до картки співробітника
\n
\n
\n \n \n \n
\n\n
\n \n
\n\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { ErrorText } from './_enum/error-text.enum';\nimport { PinBtnText } from './_enum/pin-btn-text.enum';\nimport { ProfileService } from './profile.service';\nimport { Subscription, switchMap, takeUntil } from 'rxjs';\nimport { UserDataModel } from './_model/user-data.model';\nimport { BaseComponent } from '../../../shared/components/base-component/base.component';\nimport { OtpTimeLimitModel } from './_model/otp-time-limit.model';\nimport { CheckBlockingModel } from './_model/check-blocking.model';\nimport { ClientInfoService } from '../../../shared/services/client-info.service';\nimport { AuthService } from '../../../shared/services/auth.service';\nimport { MaskPipe } from '../../../shared/pipe/mask/mask.pipe';\nimport { ChangePhoneNumberComponent } from './change-phone-number/change-phone-number.component';\nimport { ChangePinCodeComponent } from './change-pin-code/change-pin-code.component';\nimport { CreatePinComponent } from './create-pin/create-pin.component';\nimport { EmailVerificationComponent } from './email-verification/email-verification.component';\nimport { PhoneNumberVerificationComponent } from './phone-number-verification/phone-number-verification.component';\nimport { DialogComponent } from '../../../shared/components/dialog/dialog.component';\nimport { IconMatComponent } from '../../../shared/components/icon/icon-mat/icon-mat.component';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { CardComponent } from '../../../shared/components/card/card.component';\nimport { NgClass, NgIf, SlicePipe, DatePipe } from '@angular/common';\n\n@Component({\n selector: 'fws-profile',\n templateUrl: './profile.component.html',\n styleUrls: ['./profile.component.scss'],\n providers: [ProfileService],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n CardComponent,\n MatTooltip,\n IconMatComponent,\n DialogComponent,\n PhoneNumberVerificationComponent,\n EmailVerificationComponent,\n CreatePinComponent,\n ChangePinCodeComponent,\n ChangePhoneNumberComponent,\n SlicePipe,\n DatePipe,\n MaskPipe\n ]\n})\nexport class ProfileComponent extends BaseComponent implements OnInit {\n readonly errorText = ErrorText;\n readonly pinBtnTextEnum = PinBtnText;\n\n userData: UserDataModel = {};\n isLoading: boolean = false;\n pinBtnText: string = '';\n showPhoneVerificationDialog: boolean = false;\n showEmailVerificationDialog: boolean = false;\n showCreatePinDialog: boolean = false;\n showChangePinCodeDialog: boolean = false;\n showBlockUserDialog: boolean = false;\n showResetPinDialog: boolean = false;\n showChangePhoneDialog: boolean = false;\n showNumberMask: Array = [' ', /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/, /\\d/];\n disableBtn: boolean = false;\n disableLockedBtn: boolean = false;\n tooltipBtnDisableText: string;\n tooltipLockedText: string;\n tooltipBtnEditPhone: string = 'Щоб змінити верифікований номер телефону натисніть кнопку “Редагувати”';\n checkBlockingChangePin: CheckBlockingModel;\n mobileMode: boolean;\n\n private _timer: Subscription;\n private _timerChangePinBtn: Subscription;\n private _otpTimeLimitInfo: OtpTimeLimitModel;\n\n constructor(\n private readonly _profileService: ProfileService,\n private readonly _authService: AuthService,\n private readonly _changeDetection: ChangeDetectorRef,\n private readonly _clientInfoService: ClientInfoService\n ) {\n super();\n _clientInfoService.breakpoint$\n .pipe(takeUntil(this._destroy$))\n .subscribe((bp) => (this.mobileMode = ['xxs', 'xs', 'sm', 'md'].includes(bp)));\n }\n\n ngOnInit(): void {\n this.isLoading = true;\n this._profileService\n .getUserFullData$()\n .pipe(\n takeUntil(this._destroy$),\n switchMap((userData: UserDataModel) => {\n this.userData = userData;\n this._setPinBtnText();\n return this._profileService.getOTPTimeLimit();\n })\n )\n .subscribe({\n next: (otpTimeLimitStatus: OtpTimeLimitModel) => {\n this._otpTimeLimitInfo = otpTimeLimitStatus;\n this.disableBtn = otpTimeLimitStatus.isOverLimit;\n this._timer && this._timer.unsubscribe();\n this._otpTimeLimitInfo.nextAttempt && this._startTimer();\n },\n error: () => (this.isLoading = false),\n complete: () => (this.isLoading = false)\n });\n\n this._profileService\n .getCheckBlocking()\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (response: CheckBlockingModel) => {\n this.checkBlockingChangePin = response;\n this.showBlockUserDialog = this.checkBlockingChangePin.isLockedUser;\n this.disableLockedBtn = this.checkBlockingChangePin.isLocked;\n let time = new Date(this.checkBlockingChangePin.startBlockingDateTime);\n time.setMinutes(time.getMinutes() + this.checkBlockingChangePin.blockingDuration);\n this._timerChangePinBtn && this._timerChangePinBtn.unsubscribe();\n this._startTimerForChangePinBtn(String(time));\n }\n });\n }\n\n private _startTimer(): void {\n this._timer = this._profileService\n .calculateTimeRemaining(this._otpTimeLimitInfo.nextAttempt)\n .subscribe((time: string) => {\n if (time === '00:00') {\n this.disableBtn = false;\n }\n this._setTooltipBtnDisableText(time);\n });\n }\n\n private _startTimerForChangePinBtn(time: string): void {\n if (this.checkBlockingChangePin.isLocked) {\n const targetDateTime = this.checkBlockingChangePin.startBlockingDateTime;\n this._timerChangePinBtn = this._profileService.calculateTimeRemaining(time).subscribe((time: string) => {\n if (time === '00:00') {\n this.disableLockedBtn = false;\n }\n this._setTooltipLockedText(time);\n });\n }\n }\n\n private _setPinBtnText() {\n this.pinBtnText =\n this.userData.isPIN && (this.userData.phoneNumber || this.userData.emailVerified)\n ? this.pinBtnTextEnum.editPin\n : this.pinBtnTextEnum.createPin;\n }\n\n private _setTooltipBtnDisableText(time: string) {\n this.tooltipBtnDisableText = `Ви використали усі спроби для введення коду. Спробуйте після ${time}.`;\n }\n\n private _setTooltipLockedText(time: string) {\n this.tooltipLockedText = `ПІН-код неправильно введено тричі. Спробуйте після ${time}.`;\n }\n\n phoneEdit(): void {\n this.showChangePhoneDialog = true;\n }\n\n verifyPhone(): void {\n this.showPhoneVerificationDialog = true;\n }\n\n onClosePopup() {\n this.showPhoneVerificationDialog = false;\n this.showEmailVerificationDialog = false;\n this.showCreatePinDialog = false;\n this.showChangePinCodeDialog = false;\n this.showResetPinDialog = false;\n this.showChangePhoneDialog = false;\n this.ngOnInit();\n }\n\n verifyEmail(): void {\n this.showEmailVerificationDialog = true;\n }\n\n changePinClick() {\n if (this.pinBtnText === this.pinBtnTextEnum.createPin) {\n this.showCreatePinDialog = true;\n } else {\n this.showChangePinCodeDialog = true;\n }\n }\n\n logOut() {\n this._authService.logout();\n }\n\n forgotPicClick() {\n if (!this.disableBtn) {\n this.showResetPinDialog = !this.showResetPinDialog;\n }\n }\n\n createDialogOpen() {\n this.showChangePhoneDialog = false;\n this._changeDetection.detectChanges();\n this.showCreatePinDialog = true;\n }\n\n resetDialogPinOpen() {\n this.showChangePhoneDialog = false;\n this.showResetPinDialog = true;\n }\n}\n","
Картка співробітника
\n
\n
\n
\n \n
\n
\n
ПІБ
\n
{{ userData.name }}
\n
\n
\n
Дата народження
\n
{{ userData.birthday | date: 'dd MMMM yyyy' }}
\n
\n
\n
Посада
\n
{{ userData.position }}
\n
\n
\n
\n
\n\n
\n \n
\n
\n
Обліковий запис
\n
{{ userData.account }}
\n
\n\n
\n
\n
Email
\n
{{ userData.email }}
\n \n info {{ errorText.emailNeedVerify }}\n
\n
\n
\n
\n \n Верифікувати Email\n \n
\n
\n\n
\n
\n
Телефон
\n
\n +380{{ userData.phoneNumber | slice: 4 | mask: showNumberMask }}\n
\n
Відсутній номер телефону
\n \n info {{ errorText.phoneNeedVerify }}\n
\n
\n
\n \n edit\n \n \n
\n
\n \n Верифікувати номер\n \n
\n
\n
\n \n\n \n
\n
\n
\n \n \n Забули ПІН-код?\n \n \n
\n
\n info \n {{ errorText.pinCantCreate }}\n \n {{ errorText.pinMissing }} \n
\n
\n\n
\n \n {{ pinBtnText }}\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\n
\n
Ви використали усі спроби для введення ПІН-коду
\n
Для зміни ПІН-коду зверніться в Службу підтримки
\n
\n \n
\n
\n
\n\n\n \n\n","import { Injectable } from '@angular/core';\nimport { RequestService } from '../../../shared/services/request.service';\nimport { map, Observable, takeWhile, timer } from 'rxjs';\nimport { UserDataModel } from './_model/user-data.model';\nimport { OtpTimeLimitModel } from './_model/otp-time-limit.model';\nimport { convertUTCDateToLocalTime } from '../../../shared/functions/utils';\nimport { UserOtpOption } from './_model/user-otp-option';\nimport { ResetPinCodeResponse } from './_model/reset-pin-code-response';\nimport { CheckPinCode } from './_model/check-pin-code';\nimport { UpdatePinCodeModel } from './_model/update-pin-code.model';\nimport { CheckBlockingModel } from './_model/check-blocking.model';\nimport { RefreshPhoneDataModel } from './_model/refresh-phone-data.model';\n\n@Injectable()\nexport class ProfileService {\n constructor(private readonly _requestService: RequestService) {}\n\n getUserFullData$(): Observable {\n return this._requestService.get$('api/user/full');\n }\n\n getOTPTimeLimit(): Observable {\n return this._requestService.get$('api/identity/otp/timeLimit');\n }\n\n getEmailOTP(): Observable {\n return this._requestService.get$('api/identity/otp/email');\n }\n\n getSmsOTP(): Observable {\n return this._requestService.get$('api/identity/otp/sms');\n }\n\n getUserOTPOption(): Observable {\n return this._requestService.get$('api/identity/otp/userOptions');\n }\n\n getCheckBlocking(): Observable {\n return this._requestService.get$('api/identity/pinCode/change/blocking');\n }\n\n postCheckPinCode(pinCode: string): Observable {\n return this._requestService.post$('api/identity/pinCode/check', { pinCode: pinCode });\n }\n\n postUpdatePinCode(data: { oldPinCode: string; newPinCode: string }): Observable {\n return this._requestService.post$('api/identity/pinCode/update', data);\n }\n\n postResetPinCode(resetData: { otpToken: string; newPinCode: string }): Observable {\n return this._requestService.post$('api/identity/pinCode/reset', resetData);\n }\n\n postApproveOtp(otpToken: string): Observable {\n return this._requestService.post$('api/identity/otp/approve', { 'otpToken': otpToken });\n }\n\n postVerifyPhoneStart(fullPhoneNumber: string): Observable {\n return this._requestService.post$('api/identity/verify/phone/start', { 'phone': fullPhoneNumber });\n }\n\n postVerifyPhone(otpToken: string): Observable {\n return this._requestService.post$('api/identity/verify/phone', {\n 'otpToken': otpToken\n });\n }\n\n postRefreshPhone(refreshData: RefreshPhoneDataModel): Observable {\n return this._requestService.post$('api/identity/phone/refresh', refreshData);\n }\n postVerifyEmailStart(email: string): Observable {\n return this._requestService.post$('api/identity/verify/email/start', { 'email': email });\n }\n\n postVerifyEmail(otpToken: string): Observable {\n return this._requestService.post$('api/identity/verify/email', {\n 'otpToken': otpToken\n });\n }\n\n calculateTimeRemaining(targetDateTime: string): Observable {\n const targetTime = new Date(convertUTCDateToLocalTime(targetDateTime)).getTime();\n return timer(0, 1000).pipe(\n map(() => {\n const currentTime = new Date().getTime();\n const timeRemaining = targetTime - currentTime;\n\n if (timeRemaining <= 0) {\n // Timer has expired, return \"00:00\"\n return '00:00';\n }\n\n const minutes = Math.floor(timeRemaining / 1000 / 60);\n const seconds = Math.floor((timeRemaining / 1000) % 60);\n\n const formattedTime = `${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;\n return formattedTime;\n }),\n takeWhile((timeRemaining) => timeRemaining !== '00:00', true)\n );\n }\n\n isOneMinuteTimeLimit(nextAttempt: string): boolean {\n if (!nextAttempt) {\n return false;\n }\n\n const targetTime = new Date(convertUTCDateToLocalTime(nextAttempt)).getTime();\n const currentTime = new Date().getTime();\n const timeRemaining = targetTime - currentTime;\n\n return timeRemaining < 60000;\n }\n\n _maskEmail(email: string): string {\n const parts = email.split('@');\n if (parts.length !== 2) {\n return email;\n }\n\n const firstPart = parts[0].substring(0, 2) + '*'.repeat(parts[0].length - 2);\n\n return `${firstPart}@${parts[1]}`;\n }\n}\n","export enum ThemeMode {\n LIGHT = 'light',\n DARK = 'dark'\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ThemeModeService } from '../../../shared/services/theme-mode.service';\nimport { ThemeMode } from './_enum/theme-mode.enum';\nimport { FormsModule } from '@angular/forms';\nimport { MatSlideToggle } from '@angular/material/slide-toggle';\n\n@Component({\n selector: 'fws-settings',\n templateUrl: './settings.component.html',\n styleUrls: ['./settings.component.scss'],\n standalone: true,\n imports: [MatSlideToggle, FormsModule]\n})\nexport class SettingsComponent implements OnInit {\n isToggleTheme = true;\n\n token: string;\n\n constructor(private themeModeService: ThemeModeService) {}\n\n ngOnInit(): void {\n this.isToggleTheme = this.themeModeService.getThemeModeFromStore() !== ThemeMode.LIGHT;\n }\n toggleTheme() {\n this.themeModeService.toggleThemeMode();\n }\n}\n","
\n
Колір теми
\n
\n \n \n \n
\n
\n\n
{{ token }}
\n
\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { RequestService } from '../../shared/services/request.service';\nimport { Observable } from 'rxjs';\nimport { ResourceGroupOperationModel } from './_models/resource-group-operation.model';\nimport { ResourceGroupOperationsParamsModel } from './_models/resource-group-operations-params.model';\nimport { ResourceGroupModel } from './resource-groups/_models/resource-group.model';\nimport { ResourceGroupFilterModel } from './_models/resource-group-filter.model';\nimport { DictionaryModel } from '../../shared/models/dictionary.model';\nimport { GlobalFilterChangeModel } from './_models/global-filter-change.model';\nimport { FilterDataCountsModel } from './_models/filter-data-counts.model';\nimport { FilterParamRequestModel } from './_models/filter-param-request.model';\n\n@Injectable()\nexport class PermissionsManagementService {\n private readonly _RESOURCE_GROUP: string = 'api/resourceGroup';\n\n clearFilterPanels: EventEmitter = new EventEmitter();\n filterChange: EventEmitter = new EventEmitter();\n tagDeleting: EventEmitter = new EventEmitter();\n\n constructor(private readonly _requestService: RequestService) {}\n\n getResourceGroupOperations$(data: ResourceGroupOperationsParamsModel): Observable {\n return this._requestService.get$(\n this._RESOURCE_GROUP + '/Operations',\n this._requestService.getHttpParams(data)\n );\n }\n\n getResourceGroups$(data: ResourceGroupFilterModel): Observable {\n return this._requestService.get$(\n this._RESOURCE_GROUP + '/filter',\n this._requestService.getHttpParams(data)\n );\n }\n\n getFilterDataCounts$(): Observable {\n return this._requestService.get$(this._RESOURCE_GROUP + '/filterResourceCounts');\n }\n\n getFilterDataByParams$(data: FilterParamRequestModel): Observable {\n return this._requestService.get$(\n this._RESOURCE_GROUP + '/filterParam',\n this._requestService.getHttpParams(data)\n );\n }\n}\n","import { Component, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Component({\n template: ''\n})\nexport abstract class BaseComponent implements OnDestroy {\n protected _destroy$: Subject = new Subject();\n\n ngOnDestroy(): void {\n this._destroy$.next(true);\n this._destroy$.unsubscribe();\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { NgStyle } from '@angular/common';\n\n@Component({\n selector: 'fws-card',\n templateUrl: './card.component.html',\n styleUrls: ['./card.component.scss'],\n standalone: true,\n imports: [NgStyle]\n})\nexport class CardComponent {\n @Input() caption: string;\n @Input() captionFontSize: string;\n}\n","
\n
{{ caption }}
\n
\n \n
\n
\n","import { ChangeDetectorRef, Component, Inject, OnInit, TemplateRef, ViewChild } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { DialogButtonsAlign, DialogConfigModel } from '../_models/dialog-config.model';\nimport { DialogHeaderModel } from '../_models/dialog-header.model';\nimport { ButtonModel } from '../../../models/button.model';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { NgStyle, NgIf, NgTemplateOutlet, NgClass, NgFor } from '@angular/common';\n\n@Component({\n selector: 'fws-dialog-ref',\n templateUrl: './dialog-ref.component.html',\n styleUrls: ['./dialog-ref.component.scss'],\n standalone: true,\n imports: [NgStyle, NgIf, NgTemplateOutlet, NgClass, NgFor, MatTooltip]\n})\nexport class DialogRefComponent implements OnInit {\n readonly contentMargin: number = 24;\n\n contentHeaderTemplate: TemplateRef;\n contentTemplate: TemplateRef;\n contentFooterTemplate: TemplateRef;\n headerMiddleTemplate: TemplateRef;\n header: DialogHeaderModel;\n buttonsAlign: DialogButtonsAlign;\n buttons: ButtonModel[] = [];\n contentText: string;\n headerText: string;\n\n constructor(\n @Inject(MAT_DIALOG_DATA) private _dialogData: DialogConfigModel,\n private readonly _dialogRef: MatDialogRef,\n private readonly _changeDetector: ChangeDetectorRef\n ) {}\n\n ngOnInit(): void {\n this._dialogRef.disableClose = this._dialogData.disableClose;\n this.contentTemplate = this._dialogData.contentTemplateRef;\n this.headerMiddleTemplate = this._dialogData.headerMiddleTemplate;\n this.contentHeaderTemplate = this._dialogData.headerTemplateRef;\n this.buttons = this._dialogData.buttons;\n this.header = this._dialogData.header;\n this.buttonsAlign = this._dialogData.buttonsAlign;\n this.contentText = this._dialogData.contentText;\n this.headerText = this._dialogData.headerText;\n this._changeDetector.detectChanges();\n }\n\n get allowHeader(): boolean {\n return [this.header?.caption, this.header?.icon, this.header?.closeButton].some((item) => !!item);\n }\n\n onCloseClick(): void {\n this._dialogRef.close();\n }\n\n onButtonClick(btn: ButtonModel): void {\n this._dialogData.onButtonClick.emit(btn);\n }\n}\n","
\n \n \n
\n
\n \n
\n \n
\n
\n {{ header.icon }}\n {{ header?.caption }}\n \n
\n
\n
\n close\n
\n
\n
\n
\n \n
\n {{ headerText }}\n
\n
\n
\n \n \n
\n \n
\n \n
\n {{ contentText }}\n
\n
\n
\n \n \n
\n \n
\n \n
\n \n \n
\n {{ btn.icon }}\n {{ btn.text }}\n
\n \n
\n
\n
\n
\n \n\n","import { Component, EventEmitter, Input, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { DialogRefComponent } from './dialog-ref/dialog-ref.component';\nimport { DialogButtonsAlign, DialogConfigModel } from './_models/dialog-config.model';\nimport { DialogHeaderModel } from './_models/dialog-header.model';\nimport { ButtonModel } from '../../models/button.model';\nimport { StubType } from '../../types/stub.type';\nimport { fwsCoerceBooleanProperty } from '../../functions/utils';\n\n@Component({\n selector: 'fws-dialog',\n templateUrl: './dialog.component.html',\n styleUrls: ['./dialog.component.scss'],\n standalone: true\n})\nexport class DialogComponent {\n private _show: boolean;\n private _header: DialogHeaderModel = {};\n private _height: string = 'auto';\n private _width: string;\n private _matDialogRef: MatDialogRef;\n\n @Input() maxWidth: string;\n @Input() maxHeight: string = 'auto';\n @Input() buttons: ButtonModel[] = [];\n @Input() buttonsAlign: DialogButtonsAlign = 'flex-end';\n @Input() disableClose: boolean;\n @Input() headerTemplateRef: TemplateRef;\n @Input() headerMiddleTemplate: TemplateRef;\n @Input() footerTemplateRef: TemplateRef;\n @Input()\n set height(value: string) {\n this._height = value;\n if (this._matDialogRef) {\n this._matDialogRef.updateSize(this._width, this._height);\n }\n }\n @Input()\n set width(value: string) {\n this._width = value;\n if (this._matDialogRef) {\n this._matDialogRef.updateSize(this._width, this._height);\n }\n }\n @Input()\n set caption(value: string) {\n this._header.caption = value;\n }\n @Input()\n set icon(value: string) {\n this._header.icon = value;\n }\n @Input()\n set closeButton(value: StubType | boolean) {\n this._header.closeButton = fwsCoerceBooleanProperty(value);\n }\n @Input()\n set show(value: boolean) {\n this._show = value;\n if (this._show) {\n this._matDialogRef = this._dialog.open(DialogRefComponent, {\n width: this._width,\n maxWidth: this.maxWidth,\n height: this._height,\n maxHeight: this.maxHeight,\n data: this.dialogRefConfigData\n });\n\n this._matDialogRef.afterClosed().subscribe(() => {\n this._show = false;\n this.showChange.emit(this._show);\n });\n } else {\n this._dialog.closeAll();\n }\n }\n get show(): boolean {\n return this._show;\n }\n\n @Output() showChange: EventEmitter = new EventEmitter();\n @Output() onButtonClick: EventEmitter = new EventEmitter();\n\n @ViewChild('contentTemplateRef') contentTemplateRef: TemplateRef;\n\n constructor(private readonly _dialog: MatDialog) {}\n\n get dialogRefConfigData(): DialogConfigModel {\n const keys: string[] = [\n 'buttons',\n 'buttonsAlign',\n 'disableClose',\n 'headerTemplateRef',\n 'headerMiddleTemplate',\n 'contentTemplateRef',\n 'footerTemplateRef',\n 'onButtonClick'\n ];\n const configData: DialogConfigModel = {};\n configData.header = this._header;\n for (let key of keys) {\n configData[key] = this[key];\n }\n return configData;\n }\n}\n","\n \n\n","import { Component, Input } from '@angular/core';\nimport { IconSizeType } from '../../types/icon-size.type';\n\n@Component({\n template: ''\n})\nexport abstract class IconBaseComponent {\n @Input() color:\n | 'main'\n | 'select'\n | 'secondary'\n | 'table-placeholder'\n | 'disabled'\n | 'warning'\n | 'success'\n | 'error'\n | 'white'\n | 'purple' = 'main';\n @Input() size: IconSizeType = 'md';\n @Input() disabled: boolean;\n}\n","import { Component, Input } from '@angular/core';\nimport { IconBaseComponent } from '../icon-base.component';\n\n@Component({\n selector: 'fws-icon-mat',\n templateUrl: './icon-mat.component.html',\n styleUrls: ['./icon-mat.component.scss'],\n standalone: true\n})\nexport class IconMatComponent extends IconBaseComponent {\n @Input() appearance: 'regular' | 'outlined' | 'round' | 'sharp' | 'two-tone' = 'outlined';\n @Input() type: 'icons' | 'symbols' = 'icons';\n @Input() fontWeight: number = 400;\n}\n","\n","import { AfterViewInit, Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\nimport { IconColorType } from '../../../types/icon-color-type';\nimport { IconSizeType } from '../../../types/icon-size.type';\nimport { NgIf } from '@angular/common';\n\n@Component({\n selector: 'fws-icon-svg',\n templateUrl: './icon-svg.component.html',\n styleUrls: ['./icon-svg.component.scss'],\n standalone: true,\n imports: [NgIf]\n})\nexport class IconSvgComponent implements AfterViewInit {\n name: string = '';\n sizePx: string = '24px';\n viewBox: string = '0 0 24 24';\n @Input()\n set size(value: IconSizeType) {\n switch (value) {\n case 'xxs': {\n this.sizePx = '12px';\n break;\n }\n case 'xs': {\n this.sizePx = '16px';\n break;\n }\n case 'sm': {\n this.sizePx = '20px';\n break;\n }\n case 'md': {\n this.sizePx = '24px';\n break;\n }\n case 'lg': {\n this.sizePx = '28px';\n break;\n }\n case 'xl': {\n this.sizePx = '32px';\n break;\n }\n }\n }\n @Input() color: IconColorType = 'main';\n @Input() disabled: boolean;\n @Input() readonly: boolean;\n\n @ViewChild('contentContainer') contentContainer: ElementRef;\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.name = this.contentContainer.nativeElement.innerText.trim();\n });\n }\n\n getIconUrl(): string {\n return `assets/icons/svg/${this.name}.svg#${this.name}`;\n }\n\n getColor(): string {\n return this.disabled ? 'var(--iconColor--disable)' : `var(--iconColor--${this.color})`;\n }\n}\n","
\n \n \n \n \n
\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Input,\n isDevMode,\n QueryList,\n ViewChildren\n} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n FormArray,\n FormControl,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n ValidationErrors,\n Validator,\n FormsModule\n} from '@angular/forms';\nimport { NgFor } from '@angular/common';\n\nfunction getFormArray(size: number): FormArray {\n const arr = [];\n\n for (let i = 0; i < size; i++) {\n arr.push(new FormControl(''));\n }\n\n return new FormArray(arr);\n}\n\n@Component({\n selector: 'fws-otp-input',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: OtpInputComponent,\n multi: true\n },\n {\n provide: NG_VALIDATORS,\n useExisting: OtpInputComponent,\n multi: true\n }\n ],\n templateUrl: './otp-input.component.html',\n styleUrls: ['./otp-input.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [NgFor, FormsModule, ReactiveFormsModule]\n})\nexport class OtpInputComponent implements ControlValueAccessor, Validator {\n private _size = 4;\n\n @Input()\n set size(size: number) {\n this.inputs = getFormArray(size);\n this._size = size;\n }\n\n @ViewChildren('inputEl') inputEls!: QueryList>;\n\n private _scheduledFocus: number = null;\n\n inputs = getFormArray(this._size);\n\n onChange?: (value: string) => void;\n onTouched?: () => void;\n\n writeValue(value: string): void {\n if (isDevMode() && value?.length) {\n throw new Error('Otp input is not supposed to be prefilled with data');\n }\n\n // Reset all input values\n this.inputs.setValue(new Array(this._size).fill(''));\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n if (isDisabled) {\n this.inputs.disable();\n } else {\n this.inputs.enable();\n }\n }\n\n validate(control: AbstractControl): ValidationErrors | null {\n if (!control.value || control.value.length < this._size) {\n return {\n otpInput: 'Value is incorrect'\n };\n }\n\n return null;\n }\n\n handleKeyDown(e: KeyboardEvent, idx: number) {\n const key = e.key.toLowerCase();\n if (key === 'backspace' || key === 'delete') {\n if (idx > 0) {\n this._scheduledFocus = idx - 1;\n }\n }\n }\n\n // Due to iOS/iPadOS Safari bug/special behavior we are forced to\n // schedule focus transition during keypress/keydown event and only\n // after input event happened - execute the transition\n // otherwise inputs don't get their values filled\n handleInput() {\n this._updateWiredValue();\n\n if (this._scheduledFocus != null) {\n this._focusInput(this._scheduledFocus);\n this._scheduledFocus = null;\n }\n }\n\n handleKeyPress(e: KeyboardEvent, idx: number) {\n const isDigit = /\\d/.test(e.key);\n\n // Safari fires Cmd + V through keyPress event as well\n // so we need to handle it here and let it through\n if (e.key === 'v' && e.metaKey) {\n return true;\n }\n\n if (isDigit && idx + 1 < this._size) {\n // If user inputs digits & we are not on the last input we want\n // to advance the focus\n this._scheduledFocus = idx + 1;\n }\n\n if (isDigit && this.inputs.controls[idx].value) {\n // If user deselects an input which already has a value\n // we want to clear it so that it doesn't have more than 1 digit\n this.inputs.controls[idx].setValue('');\n }\n\n return isDigit;\n }\n\n handlePaste(e: ClipboardEvent, idx: number) {\n e.preventDefault();\n\n if (idx !== 0) {\n // If the target input is not the first one - ignore\n return;\n }\n\n const pasteData = e.clipboardData?.getData('text');\n const regex = new RegExp(`\\\\d{${this._size}}`);\n\n if (!pasteData || !regex.test(pasteData)) {\n // If there is nothing to be pasted or the pasted data does not\n // comply with the required format - ignore the event\n return;\n }\n\n for (let i = 0; i < pasteData.length; i++) {\n this.inputs.controls[i].setValue(pasteData[i]);\n }\n\n this._focusInput(this.inputEls.length - 1);\n this._updateWiredValue();\n this.onTouched();\n }\n\n handleFocus(e: FocusEvent) {\n // Select previously entered value to replace with a new input\n (e.target as HTMLInputElement).select();\n }\n\n private _focusInput(idx: number) {\n // In order not to interfere with the input we setTimeout\n // before advancing the focus\n setTimeout(() => this.inputEls.get(idx)?.nativeElement.focus());\n }\n\n private _updateWiredValue() {\n // We want to expose the value as a plain string\n //\n // In order not to interfere with the input we setTimeout\n // before advancing the focus\n setTimeout(() => this.onChange?.(this.inputs.value.join('')));\n }\n}\n","\n","import { Component, Input, TemplateRef } from '@angular/core';\nimport { ProgressSpinnerMode, MatProgressSpinner } from '@angular/material/progress-spinner';\nimport { NgStyle, NgClass, NgIf, NgTemplateOutlet } from '@angular/common';\n\nexport type SpinnerHorizontalPosition =\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n | 'stretch'\n | 'revert';\n\nexport type SpinnerPositionVertical = 'center' | 'flex-end' | 'flex-start' | 'stretch' | 'baseline';\n\n@Component({\n selector: 'fws-progress-spinner',\n templateUrl: './progress-spinner.component.html',\n styleUrls: ['./progress-spinner.component.scss'],\n standalone: true,\n imports: [NgStyle, NgClass, MatProgressSpinner, NgIf, NgTemplateOutlet]\n})\nexport class ProgressSpinnerComponent {\n @Input() mode: ProgressSpinnerMode = 'indeterminate';\n @Input() textTemplate: TemplateRef;\n @Input() value = 50;\n @Input() diameter = 30;\n @Input() spinnerPositionHorizontal: SpinnerHorizontalPosition = 'center';\n @Input() spinnerPositionVertical: SpinnerPositionVertical = 'center';\n}\n","\n \n \n \n \n\n","import { Component, Inject } from '@angular/core';\nimport { MAT_SNACK_BAR_DATA, MatSnackBarRef } from '@angular/material/snack-bar';\nimport { SnapBarTypeType } from '../../types/snapBarType.type';\nimport { IconColorType } from '../../types/icon-color-type';\nimport { IconSvgComponent } from '../icon/icon-svg/icon-svg.component';\nimport { NgStyle } from '@angular/common';\n\n@Component({\n selector: 'fws-snack-bar',\n templateUrl: './snack-bar.component.html',\n styleUrls: ['./snack-bar.component.scss'],\n standalone: true,\n imports: [NgStyle, IconSvgComponent]\n})\nexport class SnackBarComponent {\n bgIconColor: IconColorType = 'main';\n\n constructor(\n @Inject(MAT_SNACK_BAR_DATA) public data: any,\n private _snackBarRef: MatSnackBarRef\n ) {}\n\n ngOnInit(): void {\n switch (this.data.type as SnapBarTypeType) {\n case 'success':\n this.bgIconColor = 'bg-success';\n break;\n case 'error':\n this.bgIconColor = 'error';\n break;\n case 'warning':\n this.bgIconColor = 'warning';\n break;\n case 'info':\n this.bgIconColor = 'information';\n break;\n }\n }\n\n dismissWithAction() {\n this._snackBarRef.dismissWithAction();\n }\n}\n","
\n
{{ data.message }}
\n
\n {{\n 'fg-' + data.actionIcon\n }}\n
\n
\n","import { Injectable } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { SnackBarComponent } from './snack-bar.component';\nimport { SnapBarTypeType } from '../../types/snapBarType.type';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SnackBarService {\n constructor(private _snackBar: MatSnackBar) {}\n\n open(message: string, type: SnapBarTypeType, width?: string) {\n let config;\n switch (type) {\n case 'success':\n config = {\n data: { message, actionIcon: 'checkmark', type: type, width: width },\n panelClass: 'snackbar-success'\n };\n break;\n case 'error':\n config = {\n data: { message, actionIcon: 'close', type: type, width: width },\n panelClass: 'snackbar-error',\n duration: 10000\n };\n break;\n case 'warning':\n config = {\n data: { message, actionIcon: 'alert-triangle', type: type, width: width },\n panelClass: 'snackbar-warning'\n };\n break;\n case 'info':\n config = {\n data: { message, actionIcon: 'info', type: type, width: width },\n panelClass: 'snackbar-info'\n };\n break;\n }\n return this._snackBar.openFromComponent(SnackBarComponent, config);\n }\n}\n","import { AfterContentInit, Directive, forwardRef, Input } from '@angular/core';\nimport { VIRTUAL_SCROLL_STRATEGY } from '@angular/cdk/scrolling';\nimport { _tableVirtualScrollDirectiveStrategyFactory, TableItemSizeDirective } from 'ng-table-virtual-scroll';\nimport { MatTable } from '@angular/material/table';\n\n@Directive({\n selector: 'cdk-virtual-scroll-viewport[appItemSize]',\n providers: [\n {\n provide: VIRTUAL_SCROLL_STRATEGY,\n useFactory: _tableVirtualScrollDirectiveStrategyFactory,\n deps: [forwardRef(() => TableItemSizeCustomDirective)]\n }\n ],\n standalone: true\n})\nexport class TableItemSizeCustomDirective extends TableItemSizeDirective implements AfterContentInit {\n @Input()\n set appItemSize(itemSize: string | number) {\n this.rowHeight = itemSize;\n }\n\n @Input()\n set tableComponent(table: MatTable) {\n this.table = table;\n this.ngAfterContentInit();\n }\n\n override ngAfterContentInit() {\n if (!!this.table) {\n super.ngAfterContentInit();\n }\n }\n}\n","export enum TableTreeState {\n active = 'active',\n deleted = 'deleted',\n dislocated = 'dislocated',\n added = 'added'\n}\n\nexport type TableTreeStateType = keyof typeof TableTreeState;\n","import { Directive, ElementRef, Input, Optional, Renderer2 } from '@angular/core';\nimport { TableColumnComponent } from './table-column.component';\n\n@Directive({\n selector: '[fwsTableColumnResizeHandler]',\n standalone: true\n})\nexport class TableColumnResizeHandlerDirective {\n @Input('fwsTableColumnResizeHandler') allowResize: boolean = false;\n\n constructor(\n @Optional() public tableColumn: TableColumnComponent,\n private readonly element: ElementRef,\n private readonly renderer: Renderer2\n ) {}\n\n ngAfterViewInit(): void {\n if (this.allowResize) {\n const divider = this.renderer.createElement('div');\n this.renderer.setStyle(divider, 'z-index', '1000');\n this.renderer.setStyle(divider, 'cursor', 'col-resize');\n this.renderer.setStyle(divider, 'align-self', 'normal');\n this.renderer.setStyle(divider, 'position', 'relative');\n this.renderer.setStyle(divider, 'right', '-10px');\n this.renderer.listen(divider, 'click', (event) => {\n event.stopPropagation();\n });\n this.renderer.listen(divider, 'mousedown', (event) => {\n this.tableColumn.onColumnDividerMouseDown(event);\n });\n this.renderer.addClass(divider, 'resizable');\n this.renderer.appendChild(this.element.nativeElement, divider);\n }\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Renderer2,\n ViewChild\n} from '@angular/core';\nimport { MatColumnDef, MatTable, MatHeaderCellDef, MatHeaderCell, MatCellDef, MatCell } from '@angular/material/table';\nimport { TableColumnWidthModel } from '../_models/table-column-width.model';\nimport { TableColumnModel } from '../_models/table-column.model';\nimport { MatCheckbox } from '@angular/material/checkbox';\nimport { SELECTED_ROW, TableComponent } from '../table.component';\nimport { TableColumnMenuItemModel } from '../_models/table-column-menu-item.model';\nimport { TableColumnFilterItemModel } from '../_models/table-column-filter-item.model';\nimport { TableColumnFilterEventModel } from '../_models/table-column-filter-event.model';\nimport { fwsGetObjectAllValues } from '../../../functions/utils';\nimport { TableColumnEventCheckboxModel } from '../_models/table-column-event-checkbox.model';\nimport { ResizedEvent } from '../../../directives/resized/resized-event';\nimport { fwsCheckValue } from '../../../functions/debbug';\nimport { TableTreeState } from '../_enum/table-tree-state';\nimport { TableColumnColorPickerModel } from '../_models/table-column-color-picker.model';\nimport { MatButton } from '@angular/material/button';\nimport { CustomTooltipRendererDirective } from '../../../directives/custom-tooltip-renderer/custom-tooltip-renderer.directive';\nimport { HighlightTextDirective } from '../../../directives/highlight-text/highlight-text.directive';\nimport { ShowTooltipIfTruncatedDirective } from '../../../directives/show-tooltip-if-truncated/show-tooltip-if-truncated.directive';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatPrefix } from '@angular/material/form-field';\nimport { MatMenuTrigger, MatMenu, MatMenuItem } from '@angular/material/menu';\nimport { FormsModule } from '@angular/forms';\nimport { IconSvgComponent } from '../../icon/icon-svg/icon-svg.component';\nimport { MatSortHeader } from '@angular/material/sort';\nimport { ResizedDirective } from '../../../directives/resized/resized.directive';\nimport { TableColumnResizeHandlerDirective } from './table-column-resize-handler.directive';\nimport {\n NgClass,\n NgStyle,\n NgIf,\n NgFor,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n NgTemplateOutlet,\n PercentPipe,\n CurrencyPipe,\n DatePipe\n} from '@angular/common';\nimport { MatTooltip } from '@angular/material/tooltip';\n\n@Component({\n selector: 'fws-table-column',\n templateUrl: './table-column.component.html',\n styleUrls: ['./table-column.component.scss'],\n standalone: true,\n imports: [\n MatColumnDef,\n MatHeaderCellDef,\n MatHeaderCell,\n MatTooltip,\n NgClass,\n NgStyle,\n TableColumnResizeHandlerDirective,\n ResizedDirective,\n MatSortHeader,\n NgIf,\n IconSvgComponent,\n MatCheckbox,\n FormsModule,\n MatMenuTrigger,\n MatMenu,\n MatFormField,\n MatInput,\n MatPrefix,\n NgFor,\n ShowTooltipIfTruncatedDirective,\n MatCellDef,\n MatCell,\n NgSwitch,\n NgSwitchCase,\n HighlightTextDirective,\n CustomTooltipRendererDirective,\n NgSwitchDefault,\n NgTemplateOutlet,\n MatButton,\n MatMenuItem,\n PercentPipe,\n CurrencyPipe,\n DatePipe\n ]\n})\nexport class TableColumnComponent implements OnInit, OnDestroy, AfterViewInit {\n columnWidth: TableColumnWidthModel = {};\n columnCaptionWidth: string = '100%';\n widthExpanded: string = '100%';\n menuDataSource: TableColumnMenuItemModel[] = [];\n isActiveFilter: boolean = false;\n columnFilterData: TableColumnFilterItemModel[] = [];\n filteredColumnFilterData: TableColumnFilterItemModel[] = [];\n columnSearchInput: string;\n allRowsSelected: boolean = false;\n tableTreeState = TableTreeState;\n selectedColor: string;\n\n private readonly _btnSize: number = 34;\n private readonly _tebleCellPadding: number = 8;\n private _column: TableColumnModel = null;\n private _searchColFilterDelayTimer: any;\n private _colFilterIsActive: boolean;\n\n private _isColumnResizing: boolean;\n private _columnWidth: number;\n private _isCellDividerPressed: boolean;\n private _startX: number;\n private _startColumnWidth: number;\n\n private _ableColumnFilterChange: boolean = true;\n\n @Input() locale: string;\n @Input()\n set dataSource(value: any) {\n if (value?.length > 0 && this._ableColumnFilterChange && this._column.isFiltering) {\n const propArr: any[] = value.map((item: any) => {\n switch (this._column.contentType) {\n case 'boolean': {\n return item[this._column.property] ? 'Лише обрані' : 'Лише необрані';\n }\n case 'custom': {\n if (this._column.customColumnFilterProperty) {\n return item[this._column.property][this._column.customColumnFilterProperty];\n }\n return typeof item[this._column.property] !== 'undefined'\n ? fwsGetObjectAllValues(item[this._column.property]).join('')\n : '';\n }\n default:\n return item[this._column.property];\n }\n });\n const dataSet: Set = new Set(propArr);\n this.columnFilterData = Array.from(dataSet).map((item): { isSelected: boolean; value: any } => {\n return { isSelected: false, value: item };\n });\n this.filteredColumnFilterData = [...this.columnFilterData].sort((a, b) => {\n if (a.value < b.value) {\n return -1;\n }\n if (a.value > b.value) {\n return 1;\n }\n return 0;\n });\n }\n\n if (value?.length === 0) {\n this.filteredColumnFilterData = [];\n }\n this._ableColumnFilterChange = true;\n }\n @Input()\n set column(value: TableColumnModel) {\n if (this.columnDef) {\n this._column = value;\n if (!this._column.tooltip) {\n this._column.tooltip = this._column.caption;\n }\n if (this._column.contentType == 'buttons') {\n this._column.isFiltering = false;\n this._column.isSorting = false;\n this._column.isResizing = false;\n const width: string = this._btnSize * this._column.type.length + this._tebleCellPadding + 'px';\n this.columnWidth['max-width'] = width;\n this.columnWidth['min-width'] = width;\n } else if (this._column.contentType == 'menu') {\n this._column.isFiltering = false;\n this._column.isSorting = false;\n this._column.isResizing = false;\n const width: string = this._btnSize + this._tebleCellPadding + 'px';\n this.columnWidth['max-width'] = width;\n this.columnWidth['min-width'] = width;\n this.menuDataSource = this._column.type;\n } else {\n this.columnWidth['width'] = this._column.width;\n this.columnWidth['max-width'] = this._column.maxWidth;\n this.columnWidth['min-width'] = this._column.minWidth;\n }\n this.widthExpanded = this._column.widthExpanded;\n this.columnDef.name = this._column.property;\n }\n }\n get column(): TableColumnModel {\n return this._column;\n }\n\n @Input() searchStr: string = '';\n @Input() menuMessage: string;\n @Input() detailTemplateIsOpen: boolean = false;\n @Input() colorsToPicker: TableColumnColorPickerModel[];\n\n @Output() onFilterChanged: EventEmitter =\n new EventEmitter();\n @Output() onAllSelectedChanged: EventEmitter = new EventEmitter();\n\n @Output() onColumnResizing: EventEmitter = new EventEmitter();\n @Output() onSetColor: EventEmitter = new EventEmitter();\n\n @ViewChild(MatColumnDef, { static: true }) columnDef: MatColumnDef;\n @ViewChild('columnCaption') columnCaption!: ElementRef;\n @ViewChild('headerCellContent') headerCellContent!: ElementRef;\n\n constructor(\n @Optional() public table: MatTable,\n readonly tableComponent: TableComponent,\n private readonly _changeDetectorRef: ChangeDetectorRef,\n private readonly _renderer: Renderer2\n ) {}\n\n get colFilterIsActive(): boolean {\n return this._colFilterIsActive;\n }\n\n ngOnInit(): void {\n if (this.table) {\n this.table.addColumnDef(this.columnDef);\n }\n }\n\n ngAfterViewInit(): void {\n this._changeDetectorRef.detectChanges();\n setTimeout(() => {\n if (this._column.isResizing) {\n const defaultColumnCaptionWidth = this.columnCaption?.nativeElement.offsetWidth;\n\n this.columnCaptionWidth =\n this.headerCellContent?.nativeElement?.offsetWidth < defaultColumnCaptionWidth\n ? this.headerCellContent?.nativeElement?.offsetWidth - 45 + 'px'\n : '100%';\n }\n }, 4);\n }\n\n onCheckBoxChange(checkbox: MatCheckbox, row: any, checked: boolean, property: string): void {\n const eventData: TableColumnEventCheckboxModel = {\n checkbox: checkbox,\n row: row,\n checked: checked,\n property: property\n };\n\n if (property == SELECTED_ROW) {\n this.tableComponent.onRowSelectedChange.emit(eventData);\n } else {\n this.tableComponent.onCheckBoxChange.emit(eventData);\n }\n }\n\n cellClick(row: any) {\n if (this.tableComponent.visibleColumns[0] === SELECTED_ROW && !row?.disabledSelectCheckBox) {\n row[SELECTED_ROW] ? this.tableComponent.unselectRow(row) : this.tableComponent.selectRow(row);\n\n this.allRowsSelected = !!this.tableComponent.dataSource?.data.every((row) => row[SELECTED_ROW]);\n this.tableComponent.selectedRows = this.tableComponent.dataSource.data\n .filter((row) => row[SELECTED_ROW])\n .map((row) => ({ ...row }));\n }\n }\n\n onButtonClick(row: any, btn: string): void {\n this.tableComponent.onButtonClick.emit({ row: row, button: btn });\n }\n\n onMenuItemSelected(row: any, menuBtn: TableColumnMenuItemModel): void {\n this.tableComponent.onMenuSelected.emit({ row: row, menuItem: menuBtn });\n }\n\n onMenuClick(row: any) {\n this.tableComponent.onMenuClick.emit(row);\n }\n\n onFilterClick(): void {\n this.isActiveFilter = !this.isActiveFilter;\n }\n\n onSelectAllRows(): void {\n this.onAllSelectedChanged.emit(this.allRowsSelected);\n }\n\n onGoBackState(row: any): void {\n this.tableComponent.onGoBackState.emit(row);\n }\n\n onSomeRowsSelected(): boolean {\n return !this.allRowsSelected && this.tableComponent.dataSource?.data.some((row) => row[SELECTED_ROW]);\n }\n\n ngOnDestroy(): void {\n if (this.table) {\n this.table.removeColumnDef(this.columnDef);\n }\n }\n\n dropColumnFilter(totalDrop?: boolean): void {\n this.columnSearchInput = '';\n this._searchInputChangeHandler('');\n this.columnFilterData.forEach((item: TableColumnFilterItemModel): boolean => (item.isSelected = false));\n this._onColumFilterChange(true, totalDrop);\n }\n\n protected _onColumFilterChange(isDropFilters?: boolean, totalDrop?: boolean): void {\n if (!isDropFilters) {\n this._ableColumnFilterChange = false;\n }\n this._colFilterIsActive = this.columnFilterData.some((item: TableColumnFilterItemModel) => item.isSelected);\n if (!totalDrop) {\n this.onFilterChanged.emit({\n property: this._column.property,\n values: this.columnFilterData\n .filter((item: TableColumnFilterItemModel) => item.isSelected)\n .map((item: TableColumnFilterItemModel) => {\n if (this._column.contentType === 'boolean') {\n return item.value === 'Лише обрані';\n }\n return item.value;\n })\n });\n }\n }\n\n onSearchColumnFilter(e: any): void {\n clearTimeout(this._searchColFilterDelayTimer);\n this._searchColFilterDelayTimer = setTimeout((): void => {\n this._searchInputChangeHandler(e.target.value);\n }, 300);\n }\n\n onResized(e: ResizedEvent): void {\n this._columnWidth = e.newRect.width + 17;\n }\n onColumnDividerMouseDown(e: any): void {\n this._isCellDividerPressed = true;\n this._startX = e.pageX;\n this._pressedMouseMove();\n }\n private _pressedMouseMove(): void {\n const resizableMousemove = this._renderer.listen('document', 'mousemove', (event) => {\n if (this._isCellDividerPressed && event.buttons) {\n if (!this._isColumnResizing) {\n this._isColumnResizing = true;\n this._startColumnWidth = this._columnWidth;\n this.onColumnResizing.emit(true);\n }\n let newWidth: number = this._startColumnWidth + (event.pageX - this._startX);\n if (newWidth < 110) {\n newWidth = 110;\n }\n this.columnWidth['width'] = newWidth + 'px';\n this.columnWidth['max-width'] = newWidth + 'px';\n this.columnWidth['min-width'] = newWidth + 'px';\n this.columnCaptionWidth = newWidth - 80 + 'px';\n const defaultColumnCaptionWidth = this.columnCaption?.nativeElement.offsetWidth;\n if (Number(this.columnCaptionWidth.split('px')[0]) > defaultColumnCaptionWidth) {\n this.columnCaptionWidth = '100%';\n }\n }\n });\n const resizableMouseup = this._renderer.listen('document', 'mouseup', (event) => {\n if (this._isCellDividerPressed) {\n resizableMousemove();\n resizableMouseup();\n this._isCellDividerPressed = false;\n this._isColumnResizing = false;\n this._startColumnWidth = null;\n this.onColumnResizing.emit(false);\n }\n });\n }\n\n private _searchInputChangeHandler(str: string): void {\n const regExp: RegExp = new RegExp(str, 'i');\n this.filteredColumnFilterData = [\n ...this.columnFilterData.filter((item: TableColumnFilterItemModel) => regExp.test(item.value?.toString() || ''))\n ];\n }\n\n filterMenuClosed(): void {\n this.isActiveFilter = this.columnFilterData.some((item: TableColumnFilterItemModel) => item.isSelected);\n }\n\n setColor({ color, colorText }, row: any) {\n this.selectedColor = color;\n this.onSetColor.emit({\n ...row,\n color,\n colorText\n });\n }\n\n protected readonly fwsCheckValue = fwsCheckValue;\n}\n","\n \n
\n \n {{ column.icon }}\n {{ column.fwsIcon }}\n {{\n column.caption\n }}\n
\n \n
\n \n
\n
\n \n
\n \n filter_list\n \n \n
\n
\n Скинути фільтр\n \n fg-close\n \n
\n \n \n search\n \n
\n Пошук не дав результату\n
\n \n
\n \n
\n \n {{ item.value || '(Пусті)' }}\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n {{ row[column.property] }}\n \n \n\n \n \n \n \n {{ row[column.property] | currency: '' : '' : '' : tableComponent.locale }}\n \n \n \n \n {{ row[column.property] | percent }}\n \n \n \n \n {{ row[column.property] }}\n \n \n \n \n\n \n \n \n\n \n \n \n \n {{ row[column.property] | date: 'dd.MM.yyyy' }}\n \n \n \n \n {{ row[column.property] | date: 'dd.MM.yyyy HH:mm' }}\n \n \n \n \n {{ row[column.property] | date: 'HH:mm' }}\n \n \n \n \n {{ row[column.property] | date: 'HH:mm:ss' }}\n \n \n \n \n {{ row[column.property] | date: 'middle' : '' : locale }}\n \n \n \n \n\n \n {{ row[column.property] }}\n \n\n \n {{ row[column.property] }}\n \n\n \n
\n \n
\n
\n\n \n \n \n \n \n\n \n \n \n
\n more_horiz\n
\n \n \n
\n
{{ menuMessage }}
\n \n {{ item.icon }}\n {{ item.label }}\n \n \n \n \n
\n
\n
\n \n \n
\n refresh\n
\n \n
\n
\n\n \n \n
\n
\n \n \n \n
\n
\n
Обрано
\n
\n
\n \n fg-close\n {{ row.colorText }}\n
\n fg-checkmark\n
\n
\n
\n
Доступні кольори
\n \n \n \n fg-close\n \n {{ item.colorText }}\n
\n \n
\n \n
\n
\n\n \n \n {{ row[column.property] }}\n \n \n \n \n\n","import { Component, Input } from '@angular/core';\nimport { TableMobileModeItemFieldModel } from '../../_models/table-mobile-mode-item-field.model';\nimport { MatCheckbox } from '@angular/material/checkbox';\nimport { LocaleInfoService } from '../../../../services/locale-info.service';\nimport { TableComponent } from '../../table.component';\nimport {\n NgClass,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n NgTemplateOutlet,\n PercentPipe,\n CurrencyPipe,\n DatePipe\n} from '@angular/common';\n\n@Component({\n selector: 'fws-table-mobile-item-field',\n templateUrl: './table-mobile-item-field.component.html',\n styleUrls: ['./table-mobile-item-field.component.scss'],\n standalone: true,\n imports: [\n NgClass,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n MatCheckbox,\n NgTemplateOutlet,\n PercentPipe,\n CurrencyPipe,\n DatePipe\n ]\n})\nexport class TableMobileItemFieldComponent {\n @Input() dataSource: TableMobileModeItemFieldModel;\n @Input() lastItem: boolean;\n @Input() row: any;\n\n constructor(\n private readonly _localeInfoService: LocaleInfoService,\n private readonly _tableComponent: TableComponent\n ) {}\n\n get locale(): string {\n return this._localeInfoService.currentLocale;\n }\n\n onCheckBoxChange(checkbox: MatCheckbox, checked: boolean, property: string): void {\n this._tableComponent.onCheckBoxChange.emit({\n checkbox: checkbox,\n row: this.row,\n checked: checked,\n property: property\n });\n }\n}\n","
\n
\n {{ dataSource.caption }}\n
\n
\n \n \n {{ dataSource.data }}\n \n \n \n \n {{ dataSource.data | currency: '' : '' : '' : locale }}\n \n \n {{ dataSource.data | percent }}\n \n \n {{ dataSource.data }}\n \n \n \n \n \n \n \n \n \n {{ dataSource.data | date: 'dd.MM.yyyy' }}\n \n \n {{ dataSource.data | date: 'dd.MM.yyyy HH:mm' }}\n \n \n {{ dataSource.data | date: 'HH:mm' }}\n \n \n {{ dataSource.data | date: 'HH:mm:ss' }}\n \n \n {{ dataSource.data | date: 'middle' : '' : locale }}\n \n \n \n \n {{ dataSource.data }}\n \n \n {{ dataSource.data }}\n \n \n
\n \n
\n
\n \n {{ dataSource.data }}\n \n
\n
\n
\n","import { Component, Input, TemplateRef } from '@angular/core';\nimport { TableMobileModeItemFieldModel } from '../_models/table-mobile-mode-item-field.model';\nimport { TableMobileModeItemHeaderModel } from '../_models/table-mobile-mode-item-header.model';\nimport { StubType } from '../../../types/stub.type';\nimport { fwsCoerceBooleanProperty } from '../../../functions/utils';\nimport { MatCard } from '@angular/material/card';\nimport { TableMobileItemFieldComponent } from './table-mobile-item-field/table-mobile-item-field.component';\nimport {\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription\n} from '@angular/material/expansion';\nimport { NgIf, NgClass, NgTemplateOutlet, NgFor } from '@angular/common';\n\n@Component({\n selector: 'fws-table-mobile-item',\n templateUrl: './table-mobile-item.component.html',\n styleUrls: ['./table-mobile-item.component.scss'],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n NgTemplateOutlet,\n NgFor,\n TableMobileItemFieldComponent,\n MatCard\n ]\n})\nexport class TableMobileItemComponent {\n private _border: boolean;\n\n caption: string;\n headerTemplate: TemplateRef;\n\n @Input() header: StubType | boolean | TableMobileModeItemHeaderModel;\n @Input() expandableMobileMode: StubType | boolean;\n @Input() fields: TableMobileModeItemFieldModel[] = [];\n @Input() row: any;\n @Input()\n set border(value: StubType | boolean) {\n this._border = fwsCoerceBooleanProperty(value);\n }\n\n get border(): boolean {\n return this._border;\n }\n\n ngOnInit(): void {\n const headerProp: TableMobileModeItemHeaderModel = this.header as TableMobileModeItemHeaderModel;\n\n if (headerProp.captionProperty) {\n this.caption = this.row[headerProp.captionProperty];\n }\n\n this.headerTemplate = headerProp.headerTemplate;\n }\n}\n","
\n \n \n \n {{ caption }}\n \n \n \n \n
\n \n
\n
\n
\n
\n
\n \n \n \n
\n","import {\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewChildren\n} from '@angular/core';\nimport {\n MatTable,\n MatTableDataSource,\n MatHeaderRowDef,\n MatHeaderRow,\n MatRowDef,\n MatRow,\n MatNoDataRow\n} from '@angular/material/table';\nimport { MatSort } from '@angular/material/sort';\nimport { TableColumnModel } from './_models/table-column.model';\nimport { LocaleInfoService } from '../../services/locale-info.service';\nimport { TableColumnEventCheckboxModel } from './_models/table-column-event-checkbox.model';\nimport { TableColumnEventButtonModel } from './_models/table-column-event-button.model';\nimport { TableColumnEventMenuModel } from './_models/table-column-event-menu.model';\nimport { TableColumnFilterEventModel } from './_models/table-column-filter-event.model';\nimport {\n fwsCoerceBooleanProperty,\n fwsGetObjectAllValues,\n fwsGuid,\n fwsObjectEquals,\n fwsObjFromList\n} from '../../functions/utils';\nimport { TableColumnCustomTemplateModel } from './_models/table-column-custom-template.model';\nimport * as Excel from 'exceljs';\nimport { saveAs } from 'file-saver';\nimport { ExcelExportOptionsModel } from '../../models/excel-export-options.model';\nimport { ExcelColumnOptionsModel } from '../../models/excel-column-options.model';\nimport { ExcelRowOptionsModel } from '../../models/excel-row-options.model';\nimport { MatMenuTrigger, MatMenu } from '@angular/material/menu';\nimport { MatCheckbox, MatCheckboxChange } from '@angular/material/checkbox';\nimport { ClientInfoService } from '../../services/client-info.service';\nimport { takeUntil } from 'rxjs';\nimport { BaseComponent } from '../base-component/base.component';\nimport { BreakpointType } from '../../types/breakpoint.type';\nimport { TableMobileModeItemHeaderModel } from './_models/table-mobile-mode-item-header.model';\nimport { TableMobileModeItemModel } from './_models/table-mobile-mode-item.model';\nimport { TableColumnNoDataMessageModel } from './_models/table-column-nodatamessage.model';\nimport { StubType } from '../../types/stub.type';\nimport { TableColumnComponent } from './table-column/table-column.component';\nimport { ButtonModel } from '../../models/button.model';\nimport { NgForm, FormsModule } from '@angular/forms';\nimport { TableTreeState } from './_enum/table-tree-state';\nimport { TableVirtualScrollDataSource } from 'ng-table-virtual-scroll';\nimport { SearchSizeType } from './_type/search-size.type';\nimport { TableColumnColorPickerModel } from './_models/table-column-color-picker.model';\nimport { TableSearchNotCyrillicLetterDirective } from '../../directives/latin-letters/latin-letters.directive';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatPrefix, MatSuffix } from '@angular/material/form-field';\nimport { ProgressSpinnerComponent } from '../progress-spinner/progress-spinner.component';\nimport { TableMobileItemComponent } from './table-mobile-item/table-mobile-item.component';\nimport { TableItemSizeCustomDirective } from './_directive/table-item-size-custom.directive';\nimport { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\nimport { IconSvgComponent } from '../icon/icon-svg/icon-svg.component';\nimport { NgStyle, NgClass, NgIf, NgTemplateOutlet, NgFor } from '@angular/common';\n\nexport const SELECTED_ROW: string = 'fwsSelectedRow';\nexport const DISABLED_ROW: string = 'fwsDisabledRow';\n\n@Component({\n selector: 'fws-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.scss'],\n standalone: true,\n imports: [\n NgStyle,\n NgClass,\n NgIf,\n IconSvgComponent,\n MatMenuTrigger,\n CdkVirtualScrollViewport,\n TableItemSizeCustomDirective,\n NgTemplateOutlet,\n MatTable,\n MatSort,\n NgFor,\n TableColumnComponent,\n MatHeaderRowDef,\n MatHeaderRow,\n MatRowDef,\n MatRow,\n MatNoDataRow,\n TableMobileItemComponent,\n MatMenu,\n MatCheckbox,\n FormsModule,\n ProgressSpinnerComponent,\n MatFormField,\n MatInput,\n TableSearchNotCyrillicLetterDirective,\n MatPrefix,\n MatSuffix\n ]\n})\nexport class TableComponent extends BaseComponent implements AfterViewInit, OnChanges, AfterViewChecked {\n visibleColumns: string[] = [];\n minRowWidth: string = 'unset';\n tableMaxHeight: string;\n selectedRow: any;\n allowTopBar: boolean;\n allowBottomBar: boolean;\n selectedAllColumns: boolean = true;\n indeterminate: boolean = true;\n searchStr: string = '';\n isNarrowMode: boolean;\n generalContainerHeight: string;\n breakpoint: BreakpointType;\n mobileDataSource: TableMobileModeItemModel[];\n\n selectedRows: any[] = [];\n\n detailTemplateIsOpen: boolean = false;\n\n private readonly _btns: string[] = ['buttons', 'menu'];\n private _elementRow: HTMLElement;\n private _registredWidth: number;\n private _dataSource: TableVirtualScrollDataSource | MatTableDataSource = new TableVirtualScrollDataSource();\n private _columns: TableColumnModel[] = [];\n private _columnDataSource: any[] = [];\n private _columnsFilterDict: any = {};\n private _isContentReady: boolean;\n private _searchInputTimer: any;\n\n private _allowAdd: boolean;\n private _highlightSelected: boolean;\n private _doubleClickSelected: boolean;\n private _border: boolean;\n private _withoutPadding: boolean;\n private _allowSearchOnlyLatinLetters: boolean;\n private _headerAddBtn: ButtonModel;\n private _refreshBtn: boolean;\n private _columnsFilter: boolean;\n private _search: boolean;\n private _expandableMobileMode: boolean;\n private _fullWidthOnlySearch: boolean;\n private _fwsOnlyHeaderBtnToolbar: boolean;\n private _fwsOnlySearchFieldToolbar: boolean;\n private _exportExcel: boolean | ExcelExportOptionsModel;\n private _mobileMode: boolean | TableMobileModeItemHeaderModel;\n private _multiselect: boolean;\n\n @Input() maxHeight: string = '100%';\n @Input() noDataMessage: TableColumnNoDataMessageModel = { message: 'Дані відсутні', fontSize: '32px' };\n @Input() addDisabled: boolean;\n @Input() name: string;\n @Input() caption: string;\n @Input() captionFontSize: string;\n @Input() captionIconBefore: string;\n @Input() captionIconAfter: string;\n @Input() searchPlaceholder: string = 'Пошук...';\n @Input() searchSize: SearchSizeType;\n @Input() customColumns: TableColumnCustomTemplateModel[] = [];\n @Input() rowDetailTemplate: TemplateRef;\n @Input() contentRowDetailCaptionTemplate: TemplateRef;\n @Input() canChangeRowWindow: boolean = true;\n @Input() rowDetailCaption: string;\n @Input() filterMenu: TemplateRef;\n @Input() sortingDataAccessor: (row: any, columnName: string) => string | null;\n @Input() exportExcelName: string;\n @Input() menuMessage: string;\n @Input() virtualScroll: boolean = false;\n @Input() colorsToPicker: TableColumnColorPickerModel[];\n @Input() loading: boolean = false;\n @Input() showLoader: boolean = true;\n @Input() mobileModeToEdit: TemplateRef;\n @Input() hideToolbar: boolean = false;\n\n @Input()\n set exportExcel(value: StubType | boolean | ExcelExportOptionsModel) {\n this._exportExcel = fwsCoerceBooleanProperty(value);\n }\n\n get exportExcel(): boolean | ExcelExportOptionsModel {\n return this._exportExcel;\n }\n\n @Input()\n set headerAddBtn(value: StubType | ButtonModel) {\n this._headerAddBtn = fwsCoerceBooleanProperty(value);\n }\n\n get headerAddBtn(): ButtonModel {\n return this._headerAddBtn;\n }\n\n @Input()\n set refreshBtn(value: StubType | boolean) {\n this._refreshBtn = fwsCoerceBooleanProperty(value);\n }\n\n get refreshBtn(): boolean {\n return this._refreshBtn;\n }\n\n @Input()\n set columnsFilter(value: StubType | boolean) {\n this._columnsFilter = fwsCoerceBooleanProperty(value);\n }\n\n get columnsFilter(): boolean {\n return this._columnsFilter;\n }\n\n @Input()\n set search(value: StubType | boolean) {\n this._search = fwsCoerceBooleanProperty(value);\n }\n\n get search(): boolean {\n return this._search;\n }\n\n @Input()\n set expandableMobileMode(value: StubType | boolean) {\n this._expandableMobileMode = fwsCoerceBooleanProperty(value);\n }\n\n get expandableMobileMode(): boolean {\n return this._expandableMobileMode;\n }\n\n @Input()\n set fullWidthOnlySearch(value: StubType | boolean) {\n this._fullWidthOnlySearch = fwsCoerceBooleanProperty(value);\n }\n\n get fullWidthOnlySearch(): boolean {\n return this._fullWidthOnlySearch;\n }\n\n @Input()\n set fwsOnlyHeaderBtnToolbar(value: StubType | boolean) {\n this._fwsOnlyHeaderBtnToolbar = fwsCoerceBooleanProperty(value);\n }\n\n get fwsOnlyHeaderBtnToolbar(): boolean {\n return this._fwsOnlyHeaderBtnToolbar;\n }\n\n @Input()\n set fwsOnlySearchFieldToolbar(value: StubType | boolean) {\n this._fwsOnlySearchFieldToolbar = fwsCoerceBooleanProperty(value);\n }\n\n get fwsOnlySearchFieldToolbar(): boolean {\n return this._fwsOnlySearchFieldToolbar;\n }\n\n @Input()\n set multiselect(value: StubType | boolean) {\n this._multiselect = fwsCoerceBooleanProperty(value);\n }\n\n get multiselect(): boolean {\n return this._multiselect;\n }\n\n @Input()\n set doubleClickSelected(value: StubType | boolean) {\n this._doubleClickSelected = fwsCoerceBooleanProperty(value);\n }\n\n get doubleClickSelected(): boolean {\n return this._doubleClickSelected;\n }\n\n @Input()\n set border(value: StubType | boolean) {\n this._border = fwsCoerceBooleanProperty(value);\n }\n\n get border(): boolean {\n return this._border;\n }\n\n @Input()\n set withoutPadding(value: StubType | boolean) {\n this._withoutPadding = fwsCoerceBooleanProperty(value);\n }\n\n get withoutPadding(): boolean {\n return this._withoutPadding;\n }\n\n @Input()\n set allowSearchOnlyLatinLetters(value: StubType | boolean) {\n this._allowSearchOnlyLatinLetters = fwsCoerceBooleanProperty(value);\n }\n\n get allowSearchOnlyLatinLetters(): boolean {\n return this._allowSearchOnlyLatinLetters;\n }\n\n @Input()\n set columns(value: TableColumnModel[]) {\n const customColumnsDict: Record> = >>(\n fwsObjFromList(this.customColumns, 'property', 'template')\n );\n this._columns = value;\n this.visibleColumns = [];\n if (this._multiselect && this._columns.length > 0 && this._columns[0].property != SELECTED_ROW) {\n this._columns.unshift({ property: SELECTED_ROW, contentType: 'boolean', maxWidth: '50px', minWidth: '50px' });\n }\n this._columns.forEach((col) => {\n if (this._btns.includes(col.contentType)) {\n col.caption = '';\n col.property = col.contentType;\n }\n if (col.isVisible || col.isVisible == null) {\n this.visibleColumns.push(col.property);\n }\n if (col.contentType == 'custom' && customColumnsDict[col.property]) {\n col.customTemplate = customColumnsDict[col.property];\n }\n });\n }\n\n get columns(): TableColumnModel[] {\n return this._columns;\n }\n\n @Input()\n set dataSource(value: any) {\n setTimeout(() => {\n this._columnDataSource = value;\n this._dataSource = this.virtualScroll ? new TableVirtualScrollDataSource() : new MatTableDataSource();\n this._dataSource.data = value;\n this.assembleMobileDataSource();\n if (this._multiselect) {\n this.selectedRows = [];\n this._highlightSelected = false;\n if (value) {\n value = value.map((item: any) => {\n return { [SELECTED_ROW]: false, ...item };\n });\n }\n }\n\n if (this.sortingDataAccessor) {\n this._dataSource.sortingDataAccessor = (row: any, columnName: string) => {\n return this.sortingDataAccessor(row, columnName);\n };\n }\n if (this.sortingDataAccessor === undefined) {\n this._dataSource.sortingDataAccessor = (row: any, columnName: string): any => {\n return this.defaultSortingDataCast(row, columnName);\n };\n }\n this._dataSource.sort = this.tabSort;\n });\n }\n\n get dataSource(): TableVirtualScrollDataSource | MatTableDataSource {\n return this._dataSource;\n }\n\n @Input()\n set allowAdd(value: StubType | boolean) {\n this._allowAdd = fwsCoerceBooleanProperty(value);\n }\n\n get allowAdd(): boolean {\n return this._allowAdd;\n }\n\n @Input()\n set highlightSelected(value: StubType | boolean) {\n this._highlightSelected = fwsCoerceBooleanProperty(value);\n }\n\n get highlightSelected(): boolean {\n return this._highlightSelected;\n }\n\n @Input()\n set mobileMode(value: StubType | boolean | TableMobileModeItemHeaderModel) {\n this._mobileMode = fwsCoerceBooleanProperty(value);\n }\n\n get mobileMode(): TableMobileModeItemHeaderModel | boolean {\n return this._mobileMode;\n }\n\n @Output() onCheckBoxChange: EventEmitter =\n new EventEmitter();\n @Output() onRowSelectedChange: EventEmitter =\n new EventEmitter();\n @Output() onButtonClick: EventEmitter = new EventEmitter();\n @Output() onMenuSelected: EventEmitter = new EventEmitter();\n @Output() onMenuClick: EventEmitter = new EventEmitter();\n @Output() onRowClick: EventEmitter = new EventEmitter();\n @Output() onRowClickBeforeLogic: EventEmitter = new EventEmitter();\n @Output() onGoBackState: EventEmitter = new EventEmitter();\n @Output() onRowDblClick: EventEmitter = new EventEmitter();\n @Output() onAddClick: EventEmitter = new EventEmitter();\n @Output() onContentReady: EventEmitter = new EventEmitter();\n @Output() onRefresh: EventEmitter = new EventEmitter();\n @Output() onFilterChanged: EventEmitter =\n new EventEmitter();\n @Output() onCloseRowDetailTemplate: EventEmitter = new EventEmitter();\n @Output() onOpenRowDetailTemplate: EventEmitter = new EventEmitter();\n @Output() onChangeRowDetailTemplate: EventEmitter = new EventEmitter();\n @Output() onAllSelectedChanged: EventEmitter = new EventEmitter();\n @Output() setColor: EventEmitter = new EventEmitter();\n @ViewChild('table') table: MatTable;\n @ViewChild('tabSort') set tabSort(ms: MatSort) {\n setTimeout(() => {\n this._dataSource.sort = ms;\n });\n }\n @ViewChild('generalContainer') generalContainer: ElementRef;\n @ViewChild('tableContainer') tableContainer: ElementRef;\n @ViewChild('topToolBar') topToolBar: ElementRef;\n @ViewChild('mainContainer') mainContainer: ElementRef;\n @ViewChild('bottomToolBar') bottomToolBar: ElementRef;\n @ViewChild('menuEmptyResultTrigger') menuEmptyResultTrigger: MatMenuTrigger;\n @ViewChild('menuColumnsFilterTrigger') menuColumnsFilterTrigger: MatMenuTrigger;\n @ViewChild('tabForm') tabForm: NgForm;\n\n @ViewChildren('tableColumn') tableColumns: QueryList;\n\n constructor(\n private readonly _localeInfoService: LocaleInfoService,\n private readonly _changeDetector: ChangeDetectorRef,\n private readonly _clientInfoService: ClientInfoService\n ) {\n super();\n }\n\n get locale(): string {\n return this._localeInfoService.currentLocale;\n }\n\n get columnDataSource(): any[] {\n return this._columnDataSource;\n }\n\n ngOnInit(): void {\n this.name = this.name || fwsGuid();\n this.onVisibleColumnChange();\n this._clientInfoService.breakpoint$.pipe(takeUntil(this._destroy$)).subscribe((breakpoint: BreakpointType) => {\n this.isNarrowMode = ['md', 'sm', 'xs', 'xxs'].includes(breakpoint);\n if (this.isNarrowMode) {\n this._columnsFilterDict = {};\n }\n this.breakpoint = breakpoint;\n });\n }\n\n ngAfterViewInit(): void {\n this._elementRow = document.getElementById('headerRow' + this.name);\n this._checkPageSize();\n this.allowTopBar = [this.headerAddBtn, this.refreshBtn, !!this.filterMenu, this.columnsFilter].some(\n (allow: boolean) => !!allow\n );\n this.allowBottomBar = [this.allowAdd].some((allow) => !!allow);\n this._changeDetector.detectChanges();\n }\n\n ngAfterViewChecked(): void {\n this.generalContainerHeight =\n this.topToolBar.nativeElement.offsetHeight > 0\n ? 'calc(100% - ' + (this.topToolBar.nativeElement.offsetHeight + 12) + 'px' + ')'\n : '100%';\n this._changeDetector.detectChanges();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['maxHeight'] && !changes['maxHeight'].firstChange) {\n this.tableMaxHeight = this.maxHeight;\n }\n }\n\n onResized(): void {\n this._checkPageSize();\n }\n\n addClick(): void {\n this.onAddClick.emit();\n }\n\n excelClick(): void {\n const sheetName: string = this.exportExcelName || this.caption || 'table_data';\n const workbook: Excel.Workbook = new Excel.Workbook();\n const worksheet: Excel.Worksheet = workbook.addWorksheet(sheetName);\n\n let booleanKeyName: string[] = [];\n worksheet.columns = this.columns\n .filter(\n (col: TableColumnModel) =>\n (col.isVisible || col.isVisible == null) && col.contentType != 'menu' && col.contentType != 'buttons'\n )\n .map((col: TableColumnModel) => {\n if (col.contentType === 'boolean') {\n booleanKeyName.push(col.property);\n }\n return { header: col.caption, key: col.property, width: this._getExcelColumnWidth(col) };\n });\n\n const filteredExcelData = structuredClone(this._dataSource.filteredData).map((item) => {\n Object.keys(item).forEach((key) => {\n if (booleanKeyName.includes(key)) {\n item[key] = item[key] ? 'Так' : 'Ні';\n }\n });\n return { ...item };\n });\n\n worksheet.addRows(filteredExcelData);\n worksheet.getRow(1).fill = { type: 'pattern', pattern: 'solid', fgColor: { argb: 'eeeeee' } };\n\n if ((this.exportExcel as ExcelExportOptionsModel).columns?.length > 0) {\n (this.exportExcel).columns.forEach((opt: ExcelColumnOptionsModel) => {\n worksheet.getColumn(opt.property)[opt.key] = opt.data;\n });\n }\n if ((this.exportExcel as ExcelExportOptionsModel).rows?.length > 0) {\n (this.exportExcel).rows.forEach((opt: ExcelRowOptionsModel) => {\n worksheet.getRow(opt.index)[opt.key] = opt.data;\n });\n }\n if ((this.exportExcel as ExcelExportOptionsModel).eachRow) {\n worksheet.eachRow({ includeEmpty: true }, (row: Excel.Row, rowNumber) =>\n (this.exportExcel).eachRow(row, rowNumber)\n );\n }\n\n workbook.xlsx.writeBuffer().then((buffer: BlobPart) => {\n saveAs(new Blob([buffer], { type: 'application/octet-stream' }), `${sheetName}.xlsx`);\n });\n }\n\n onSorting(e): void {}\n\n onEvenRowStyles(index: number): boolean {\n return index % 2 !== 0;\n }\n\n isRowSelected(row: any): boolean {\n if (row[DISABLED_ROW]) {\n return false;\n }\n return fwsObjectEquals(row, this.selectedRow) || row.fwsSelectedRow;\n }\n\n rowClick(row: any): void {\n if (row[DISABLED_ROW]) {\n return;\n }\n\n this.onRowClickBeforeLogic.emit(row);\n if (this._highlightSelected && !this._doubleClickSelected && this.canChangeRowWindow) {\n this.selectedRow = fwsObjectEquals(this.selectedRow, row) ? null : row;\n }\n\n if (this.rowDetailTemplate && this.canChangeRowWindow) {\n const currentOpenStatus = this.detailTemplateIsOpen;\n this.detailTemplateIsOpen = false;\n this._changeDetector.detectChanges();\n this.detailTemplateIsOpen = currentOpenStatus;\n !this.detailTemplateIsOpen && this.onOpenRowDetailTemplate.emit(row);\n this.detailTemplateIsOpen && !this.selectedRow && this.onCloseRowDetailTemplate.emit(row);\n this.detailTemplateIsOpen && this.selectedRow && this.onChangeRowDetailTemplate.emit(row);\n this.hideResizeOnDetailTemplate(this.detailTemplateIsOpen);\n\n this.selectedRow ? this.activateRowDetailTemplate(true) : this.activateRowDetailTemplate(false);\n }\n\n this.onRowClick.emit(row);\n }\n\n rowDblClick(row: any): void {\n if (row[DISABLED_ROW]) {\n return;\n }\n\n if (this._highlightSelected && this._doubleClickSelected) {\n this.selectedRow = row == this.selectedRow ? null : row;\n }\n if (this.rowDetailTemplate && this.canChangeRowWindow) {\n !this.detailTemplateIsOpen && this.onOpenRowDetailTemplate.emit(row);\n this.detailTemplateIsOpen && !this.selectedRow && this.onCloseRowDetailTemplate.emit(row);\n this.detailTemplateIsOpen && this.selectedRow && this.onChangeRowDetailTemplate.emit(row);\n this.selectedRow ? this.activateRowDetailTemplate(true) : this.activateRowDetailTemplate(false);\n this.hideResizeOnDetailTemplate(this.detailTemplateIsOpen);\n }\n this.onRowDblClick.emit(row);\n }\n\n activateRowDetailTemplate(isOpen: boolean): void {\n if (!isOpen) {\n this.visibleColumns = this.columns.map((column: TableColumnModel) => column.property);\n this.detailTemplateIsOpen = false;\n return;\n }\n\n const visibleColumns: string[] = this.columns\n .filter((column: TableColumnModel) => column?.showIfActiveRowDetail)\n .map((column: TableColumnModel) => column.property);\n\n if (!visibleColumns.length) {\n this.visibleColumns = [this.visibleColumns[0]];\n } else {\n this.visibleColumns = visibleColumns;\n }\n this.detailTemplateIsOpen = true;\n }\n\n closeRowDetailTemplate(): void {\n this.onCloseRowDetailTemplate.emit();\n }\n\n hideResizeOnDetailTemplate(detailTemplateIsOpen: boolean): void {\n this.visibleColumns = this.columns\n .filter((column: TableColumnModel) => column?.showIfActiveRowDetail && column.contentType !== 'menu')\n .map((column: TableColumnModel) => {\n column.isResizing = detailTemplateIsOpen;\n return column.property;\n });\n }\n\n onColumnFilterChanged(e: TableColumnFilterEventModel): void {\n if (e.values.length) {\n this._columnsFilterDict[e.property] = e.values;\n } else {\n delete this._columnsFilterDict[e.property];\n }\n\n this._tableSearch();\n this.onFilterChanged.emit(e);\n }\n\n defaultSortingDataCast(row: any, columnName: string): any {\n if (Object.prototype.toString.call(row[columnName]) == '[object String]') {\n return row[columnName]?.toLowerCase().replace(/[^a-zа-я0-9_\\s]/g, '') || '';\n }\n return row[columnName];\n }\n\n onContentChanged() {\n if (!this._isContentReady && this.dataSource.data?.length) {\n this._isContentReady = true;\n this.onContentReady.emit();\n }\n }\n\n refresh(): void {\n this.dropAllColumnsFilters();\n this.onRefresh.emit();\n }\n\n onSearchInput(): void {\n this.menuEmptyResultTrigger?.closeMenu();\n clearTimeout(this._searchInputTimer);\n this._searchInputTimer = setTimeout(() => {\n this._tableSearch();\n if (!this._dataSource.filteredData.length) {\n setTimeout(() => {\n this.tabForm.form.controls['searchStr'].markAllAsTouched();\n this.tabForm.form.controls['searchStr'].setErrors({});\n this.menuEmptyResultTrigger.openMenu();\n });\n }\n }, 300);\n }\n\n onSerchClearClick(inputRef: HTMLInputElement): void {\n inputRef.value = '';\n this.searchStr = '';\n setTimeout(() => {\n this._tableSearch();\n });\n }\n\n onVisibleColumnChange(): void {\n this._checkVisibleColumns();\n const every: boolean = this._columns.every((col) => col.isVisible || col.isVisible == undefined);\n this.indeterminate = !every && this._columns.some((col) => col.isVisible || col.isVisible == undefined);\n if (!this.indeterminate) {\n this.selectedAllColumns = every;\n }\n this._tableSearch();\n }\n\n onVisibleAllColumnChange(e: MatCheckboxChange | MatCheckbox): void {\n this._columns.forEach((col: TableColumnModel) => {\n if (!col.isLocked) {\n col.isVisible = e.checked;\n }\n });\n this._checkVisibleColumns();\n this._tableSearch();\n }\n\n onChBoxLabelClick(chBoxRef: MatCheckbox, col: TableColumnModel): void {\n if (!col.isLocked) {\n chBoxRef.checked = !chBoxRef.checked;\n col.isVisible = chBoxRef.checked;\n this.onVisibleColumnChange();\n }\n }\n\n assembleMobileDataSource(): void {\n const ds: any[] = this._dataSource.filteredData;\n this.mobileDataSource = [];\n const fieldsProps: any[] = this._columns\n .filter((col: TableColumnModel) => !col.excludedInMobile && this.visibleColumns.includes(col.property))\n .map((col) => {\n return { property: col.property, contentType: col.contentType || 'text', caption: col.caption, type: col.type };\n });\n ds?.forEach((data) => {\n this.mobileDataSource.push({\n row: data,\n fields: fieldsProps.map((prop) => {\n return {\n property: prop.property,\n caption: prop.caption,\n contentType: prop.contentType,\n data: data[prop.property],\n type: prop.type\n };\n })\n });\n });\n }\n\n dropAllColumnsFilters(): void {\n this.tableColumns.forEach((col: TableColumnComponent) => col.dropColumnFilter(true));\n this._columnsFilterDict = {};\n this._tableSearch();\n }\n\n private _tableSearch(): void {\n if (this._dataSource) {\n this._dataSource.filterPredicate = (data, filter: string): boolean => {\n const columnKeys: string[] = Object.keys(this._columnsFilterDict).filter((col) =>\n this.visibleColumns.includes(col)\n );\n if (columnKeys.length) {\n for (let i: number = 0; i < columnKeys.length; i++) {\n const colProps: TableColumnModel = this._columns.find(\n (col: TableColumnModel) => col.property == columnKeys[i]\n );\n const checkingData: any =\n colProps.contentType == 'custom' && colProps.customColumnFilterProperty\n ? data[columnKeys[i]][colProps.customColumnFilterProperty]\n : data[columnKeys[i]];\n if (!this._columnsFilterDict[columnKeys[i]].includes(checkingData)) {\n return false;\n }\n }\n }\n if (this.searchStr.length < 2) {\n return true;\n }\n const regExp: RegExp = new RegExp(this.escapeRegExp(this.searchStr), 'i');\n const obj = Object.assign(\n {},\n ...this.visibleColumns.map((x: string) => {\n return { [x]: data[x] ? data[x] : undefined };\n })\n );\n return regExp.test(fwsGetObjectAllValues(obj).join(' '));\n };\n\n this._dataSource.filter = 'check';\n if (['md', 'sm', 'xs', 'xxs'].includes(this.breakpoint)) {\n this.assembleMobileDataSource();\n }\n }\n }\n\n private escapeRegExp(text: string): string {\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n }\n\n onRowsSelectedChanged(isSelected: boolean): void {\n this.dataSource.data.forEach((row) => {\n if (\n row?.state !== TableTreeState.deleted &&\n row?.state !== TableTreeState.dislocated &&\n !row?.disabledSelectCheckBox\n ) {\n row[SELECTED_ROW] = !!isSelected;\n }\n });\n this.selectedRows = this.dataSource.data.filter((item) => item.fwsSelectedRow);\n\n this.onAllSelectedChanged.emit(this.selectedRows);\n }\n\n selectRow(row: any): void {\n row[SELECTED_ROW] = true;\n this.selectedRows.push(row);\n }\n\n unselectRow(row: any): void {\n row[SELECTED_ROW] = false;\n const index: number = this.selectedRows.indexOf(row);\n if (index != -1) {\n this.selectedRows.splice(index, 1);\n }\n }\n\n clearSelected(): void {\n this.selectedRows.forEach((row) => (row[SELECTED_ROW] = false));\n this.selectedRows = [];\n }\n\n showSelected(key: string, value: any): void {\n this.selectedRow = this._dataSource.data.find((row) => row[key] == value);\n }\n\n private _checkVisibleColumns(): void {\n this.visibleColumns = this._columns\n .filter((col) => col.isVisible || col.isVisible == undefined)\n .map((col) => col.property);\n }\n\n private _checkPageSize(): void {\n if (!this._elementRow) {\n this._elementRow = document.getElementById('headerRow' + this.name);\n }\n if (\n this._registredWidth != this._elementRow?.clientWidth &&\n this._elementRow.scrollWidth > this._elementRow.clientWidth\n ) {\n this.minRowWidth = this._elementRow.scrollWidth + 'px';\n this._registredWidth = this._elementRow.scrollWidth;\n }\n\n if (this.mainContainer) {\n this.tableMaxHeight =\n this.mainContainer.nativeElement.offsetHeight -\n this.bottomToolBar.nativeElement.offsetHeight -\n this.topToolBar.nativeElement.offsetHeight -\n 8 +\n 'px';\n\n if (this.tableMaxHeight == '0px') {\n this.tableMaxHeight = this.maxHeight != '100%' ? this.maxHeight || '100px' : '100px';\n }\n }\n }\n\n private _getExcelColumnWidth(column: TableColumnModel): number {\n return Math.max(\n this._getColumnWidthNumber(column.width),\n this._getColumnWidthNumber(column.minWidth),\n this._getColumnWidthNumber(column.maxWidth)\n );\n }\n\n private _getColumnWidthNumber(widthStr: string): number {\n if (/^[\\d]+(px)$/i.test(widthStr)) {\n widthStr = widthStr.replace(/(px)$/i, '');\n return +widthStr / 7.5;\n }\n return 13;\n }\n}\n","\n \n \n
\n {{ captionIconBefore }}\n {{ caption }}\n {{ captionIconAfter }}\n
\n \n \n \n \n \n
\n
\n \n \n
\n \n fg-refresh\n \n \n fg-settings\n \n \n fg-list-filter\n \n \n fg-upload-file\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 noDataMessage.message\n }}\n
\n \n
\n
\n
\n \n fg-add\n \n
\n
\n \n\n
\n
\n
\n \n
\n \n
{{ rowDetailCaption }}
\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
\n\n
\n \n
\n\n\n\n
\n
\n Відображені поля \n \n
\n
\n
\n \n \n Обрати всі\n \n
\n \n
\n \n \n {{ col.caption }}\n \n
\n
\n
\n
\n\n\n\n
\n
\n
Пошук не дав результату. Будь ласка, введіть інше значення
\n
\n
\n\n\n\n \n\n\n\n \n {{ headerAddBtn?.icon }}\n
{{ headerAddBtn?.text }}
\n {{ headerAddBtn?.icon }}\n \n
\n\n\n \n \n \n
\n fg-search\n
\n \n \n \n
\n","import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { AbstractControl, FormControl, FormGroup, ValidationErrors } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { CustomErrrorModel } from './_models/custom-errror.model';\nimport { NgIf, NgFor } from '@angular/common';\n\n@Component({\n selector: 'fws-validation-hint',\n templateUrl: './validation-hint.component.html',\n styleUrls: ['./validation-hint.component.scss'],\n standalone: true,\n imports: [NgIf, NgFor]\n})\nexport class ValidationHintComponent implements OnInit, OnDestroy {\n @Input() set validationFormControl(value: AbstractControl) {\n this._formControl = value;\n }\n\n @Input() customValidation: CustomErrrorModel[];\n\n get validationFormControl(): FormControl {\n return this._formControl as FormControl;\n }\n\n @Input() set validationFormGroup(value: AbstractControl) {\n this._formGroup = value;\n }\n\n get validationFormGroup(): FormGroup {\n return this._formGroup as FormGroup;\n }\n\n @Input() minCharacters: number;\n @Input() maxCharacters: number;\n\n private _formGroup: AbstractControl;\n private _formControl: AbstractControl;\n private destroy$: Subject = new Subject();\n\n required: boolean;\n invalidDateTimeFormat: boolean;\n uniqueValue: boolean;\n onlyNumbers: boolean;\n phoneNumberInvalid: boolean;\n emailInvalid: boolean;\n custom: boolean;\n numberCharactersInvalid: { invalid: boolean; requiredNumber: number };\n invalidFieldLength: boolean;\n minValidate: { actual: boolean; min: number };\n maxValidate: { actual: boolean; max: number };\n invalidPassword: boolean;\n\n constructor(private cd: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n if (this.validationFormControl) {\n this._setErrorsValueForControl();\n\n this.validationFormControl.statusChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n value === 'INVALID' && this.validationFormControl.markAllAsTouched();\n this._setErrorsValueForControl();\n });\n }\n\n if (this.validationFormGroup && this.validationFormGroup.controls) {\n this._setErrorsValueForGroup();\n this.validationFormGroup.statusChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n value === 'INVALID' && this.validationFormGroup.markAllAsTouched();\n this._setErrorsValueForGroup();\n });\n }\n }\n\n private _setErrorsValueForControl(): void {\n const errors = this.validationFormControl.errors;\n this.required = !!(errors?.['required'] && !this.validationFormControl.value);\n this.invalidDateTimeFormat = errors && errors['invalidDateTime'];\n this.uniqueValue = errors && errors['isNotUnique'];\n this.phoneNumberInvalid = errors && errors['phoneNumberInvalid'];\n this.emailInvalid = errors && errors['email'];\n this.numberCharactersInvalid = errors && errors['numberCharactersInvalid'];\n this.invalidFieldLength = !!((errors && errors['maxlength']) || (errors && errors['minlength']));\n this.onlyNumbers = errors && errors['onlyNumbers'];\n if (this.customValidation?.length) {\n this.customValidation.forEach((customItem) => {\n customItem.isErrors = errors && errors[customItem.key];\n });\n }\n this.minValidate = errors && errors['min'];\n this.maxValidate = errors && errors['max'];\n this.invalidPassword = errors && errors['invalidPassword'];\n this.cd.detectChanges();\n }\n\n private _setErrorsValueForGroup(): void {\n const controls = this.validationFormGroup.controls;\n const errors: ValidationErrors[] = Object.values(controls).map((control) => {\n return control.errors;\n });\n let tmpArray: ValidationErrors[] = [];\n\n const uniqueErrors = errors.filter((item: ValidationErrors) => {\n if (!item || tmpArray.some((error) => Object.keys(error)[0] === Object.keys(item)[0])) {\n return false;\n }\n tmpArray.push(item);\n return true;\n });\n\n this.required = uniqueErrors.some((error: ValidationErrors) => Object.keys(error)[0] === 'required');\n\n this.invalidDateTimeFormat = uniqueErrors.some(\n (error: ValidationErrors) => Object.keys(error)[0] === 'invalidDateTime'\n );\n this.uniqueValue = uniqueErrors.some((error: ValidationErrors) => Object.keys(error)[0] === 'isNotUnique');\n this.onlyNumbers = uniqueErrors.some((error: ValidationErrors) => Object.keys(error)[0] === 'onlyNumbers');\n\n this.phoneNumberInvalid = uniqueErrors.some(\n (error: ValidationErrors) => Object.keys(error)[0] === 'phoneNumberInvalid'\n );\n this.emailInvalid = uniqueErrors.some((error: ValidationErrors) => Object.keys(error)[0] === 'email');\n if (uniqueErrors.some((error: ValidationErrors) => Object.keys(error)[0] === 'numberCharactersInvalid')) {\n this.numberCharactersInvalid = uniqueErrors['numberCharactersInvalid'];\n }\n this.invalidFieldLength = uniqueErrors.some(\n (error: ValidationErrors) => Object.keys(error)[0] === 'maxlength' || Object.keys(error)[0] === 'minlength'\n );\n if (this.customValidation?.length) {\n this.customValidation.forEach((customItem) => {\n customItem.isErrors = uniqueErrors.some((error: ValidationErrors) => Object.keys(error)[0] === customItem.key);\n });\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n}\n","\n \n \n \n \n \n \n \n \n \n
\n info {{ custom.text }}
\n
\n
\n \n \n \n\n\n
info {{ 'Відсутні дані' }}
\n
\n\n
\n info {{ 'Час та дата вказані некоректно' }}
\n
\n
\n\n
\n info {{ 'Назва не унікальна. Будь ласка, змініть назву' }}
\n
\n
\n\n
\n info {{ 'Номер телефону заповнений некоректно' }}
\n
\n
\n\n
\n info {{ 'Email заповнений некоректно' }}
\n
\n
\n\n
\n info {{ 'Це поле має містити ' + numberCharactersInvalid.requiredNumber + ' символів' }}
\n
\n
\n\n
\n info {{ 'Це поле має містити ' }}\n {{ 'від ' + minCharacters }}\n {{ 'до ' }} {{ maxCharacters }} {{ ' символів' }}
\n
\n
\n\n
\n info {{ 'Дані в полі заповнені некоректно' }}
\n
\n
\n\n
\n info \n Пароль має складатися щонайменше з 8 символів, містити велику та малу літеру, цифру. Дозволені символи: . ! @ -\n _ = + / . Спробуйте ще раз.\n
\n
\n
\n\n
\n info {{ 'Мінімальне значення ' }} {{ minValidate.min }}
\n
\n
\n\n
\n info {{ 'Максимальне значення ' }} {{ maxValidate.max }}
\n
\n
\n","export const fwsPhoneMask: Array = [\n '+',\n '3',\n '8',\n '0',\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/\n];\n\nexport const fwsPhoneHideMask: Array = [\n '(+',\n /\\d/,\n /\\d/,\n /\\d/,\n ')',\n /\\d/,\n /\\d/,\n '*',\n '*',\n '*',\n '*',\n '*',\n /\\d/,\n /\\d/\n];\n\nexport const fwsMaxInputLimit: number = 512;\n","import { ComponentRef, Directive, ElementRef, HostListener, Input, OnDestroy, TemplateRef } from '@angular/core';\nimport {\n ConnectionPositionPair,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayPositionBuilder,\n OverlayRef\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { CustomTooltipComponent } from './custom-tooltip/custom-tooltip.component';\nimport { TooltipPosition } from '@angular/material/tooltip';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Subject, takeUntil } from 'rxjs';\n\n@Directive({\n selector: '[fwsCustomTooltipRenderer]',\n standalone: true\n})\nexport class CustomTooltipRendererDirective implements OnDestroy {\n @Input('fwsCustomTooltipRenderer') showTooltip: boolean;\n @Input() contentTooltipTemplate!: TemplateRef;\n @Input() tooltipContext = {};\n\n private _destroy$ = new Subject();\n private _overlayRef: OverlayRef | null = null;\n private readonly _positionStrategy: FlexibleConnectedPositionStrategy;\n private readonly _cssClassPrefix: string = 'fws-mdc';\n private _currentPosition: TooltipPosition;\n PANEL_CLASS = 'tooltip-panel';\n\n constructor(\n private _overlay: Overlay,\n private _overlayPositionBuilder: OverlayPositionBuilder,\n private _elementRef: ElementRef,\n protected _dir: Directionality\n ) {\n this._positionStrategy = this._overlayPositionBuilder\n .flexibleConnectedTo(this._elementRef)\n .withFlexibleDimensions(false)\n .withPush(true)\n .withPositions([\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n offsetY: 20\n },\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n offsetY: -20\n }\n ]);\n }\n\n @HostListener('mouseenter')\n show() {\n if (!this.showTooltip) return;\n\n if (!this._overlayRef) {\n this._overlayRef = this._overlay.create({ positionStrategy: this._positionStrategy });\n }\n\n if (this._overlayRef && !this._overlayRef.hasAttached()) {\n const tooltipRef: ComponentRef = this._overlayRef.attach(\n new ComponentPortal(CustomTooltipComponent)\n );\n tooltipRef.instance.contentTemplate = this.contentTooltipTemplate;\n tooltipRef.instance.tooltipContext = this.tooltipContext;\n\n this._positionStrategy.positionChanges.pipe(takeUntil(this._destroy$)).subscribe((change) => {\n this._updateCurrentPositionClass(change.connectionPair);\n });\n }\n }\n\n private _updateCurrentPositionClass(connectionPair: ConnectionPositionPair): void {\n const { overlayY, originX, originY } = connectionPair;\n let newPosition: TooltipPosition;\n\n if (overlayY === 'center') {\n if (this._dir && this._dir.value === 'rtl') {\n newPosition = originX === 'end' ? 'left' : 'right';\n } else {\n newPosition = originX === 'start' ? 'left' : 'right';\n }\n } else {\n newPosition = overlayY === 'bottom' && originY === 'top' ? 'above' : 'below';\n }\n\n if (newPosition !== this._currentPosition) {\n const overlayRef = this._overlayRef;\n\n if (overlayRef) {\n const classPrefix = `${this._cssClassPrefix}-${this.PANEL_CLASS}-`;\n overlayRef.removePanelClass(classPrefix + this._currentPosition);\n overlayRef.addPanelClass(classPrefix + newPosition);\n }\n\n this._currentPosition = newPosition;\n }\n }\n\n @HostListener('mouseleave')\n hide() {\n if (this._overlayRef) {\n this._overlayRef.detach();\n }\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n if (this._overlayRef) {\n this._overlayRef.detach();\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n }\n}\n","import { Component, Input, TemplateRef } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'fws-custom-tooltip',\n templateUrl: './custom-tooltip.component.html',\n styleUrls: ['./custom-tooltip.component.scss'],\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class CustomTooltipComponent {\n @Input() contentTemplate: TemplateRef;\n @Input() tooltipContext: {};\n}\n","
\n
\n \n
\n
\n","import { Directive, ElementRef, Input, OnChanges, Renderer2, SimpleChanges } from '@angular/core';\n\n@Directive({\n selector: '[fwsHighlightText]',\n standalone: true\n})\nexport class HighlightTextDirective implements OnChanges {\n @Input() searchTerm: string = '';\n @Input() textToHighlight: string | number = '';\n @Input() startFromToHighlight: number = 1;\n\n constructor(\n private readonly _element: ElementRef,\n private readonly _renderer: Renderer2\n ) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['searchTerm'] || changes['paragraphToHighlight']) {\n this.highlightSearchTerm();\n }\n }\n\n private highlightSearchTerm() {\n if (!this.searchTerm || !this.textToHighlight) {\n this._element.nativeElement.innerHTML = this.textToHighlight ? this.textToHighlight : null;\n return;\n }\n if (this.searchTerm.length < this.startFromToHighlight) {\n this._element.nativeElement.innerHTML = this.textToHighlight;\n return;\n }\n\n setTimeout((): void => {\n const escapedSearchTerm = this.escapeRegExp(this.searchTerm);\n const regex = new RegExp(`${escapedSearchTerm}`, 'gi');\n const highlightedText = String(this.textToHighlight).replace(\n regex,\n (match) => `${match}`\n );\n this._element.nativeElement.innerHTML = highlightedText;\n const highlightTextElement = this._element.nativeElement.querySelector('.highlight-text');\n if (highlightTextElement) {\n this._renderer.setStyle(highlightTextElement, 'color', 'var(--btnColor_text)');\n this._renderer.setStyle(highlightTextElement, 'background', 'var(--btnColor--default)');\n }\n }, 300);\n }\n\n private escapeRegExp(text: string): string {\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n }\n}\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Injector,\n Input,\n OnDestroy,\n Output,\n Renderer2\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormControl,\n FormControlDirective,\n FormControlName,\n FormGroupDirective,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n NgControl,\n NgModel,\n Validator\n} from '@angular/forms';\nimport { Subject } from 'rxjs';\n\n@Directive({\n selector: '[fwsInputTextMask]',\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: InputTextMaskDirective, multi: true },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => InputTextMaskDirective),\n multi: true\n }\n ],\n standalone: true\n})\nexport class InputTextMaskDirective implements ControlValueAccessor, Validator, OnDestroy {\n private _lastValue: string = '';\n private _isPaste: boolean;\n private _destroy$: Subject = new Subject();\n formControl: FormControl;\n\n @Input('fwsInputTextMask') mask: Array;\n @Output() valueChange: EventEmitter = new EventEmitter();\n\n constructor(\n private readonly _elementRef: ElementRef,\n private _injector: Injector,\n private readonly _renderer: Renderer2\n ) {}\n _onChange: (_: string) => void;\n _touched: () => void;\n registerOnChange(fn: (_: string) => void): void {\n this._onChange = fn;\n }\n registerOnTouched(fn: () => void): void {\n this._touched = fn;\n }\n writeValue(value: string): void {\n this._lastValue = this._output(value);\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', this._lastValue);\n }\n\n validate(c: FormControl): { [key: string]: any } {\n return null;\n }\n ngOnInit(): void {\n const _ngControl = this._injector.get(NgControl);\n if (_ngControl instanceof FormControlName) {\n this.formControl = this._injector.get(FormGroupDirective).getControl(_ngControl);\n } else {\n this.formControl = (_ngControl as FormControlDirective).form as FormControl;\n }\n if (_ngControl instanceof NgModel) {\n this.formControl = this._injector.get(NgModel).control;\n }\n }\n\n private _onPaste(event): void {\n this._isPaste = true;\n }\n\n @HostListener('input', ['$event'])\n private _onInput(): void {\n const input = this._elementRef.nativeElement.value;\n let output: string = '';\n\n if (!this.mask) {\n output = input;\n this._finalizeInput(output);\n return;\n }\n\n if (this._isPaste) {\n output = this._output(input);\n this._isPaste = false;\n this._finalizeInput(output);\n return;\n }\n\n if (input.length > this.mask.length) {\n output = this._lastValue;\n this._finalizeInput(output);\n return;\n }\n\n if (input.substring(0, input.length - 1) == this._lastValue) {\n const index: number = input.length - 1;\n const symbol: string = input[index];\n output = this._lastValue + this._output(symbol, index);\n } else {\n output = this._output(input);\n }\n this._finalizeInput(output);\n }\n\n @HostListener('blur', ['$event'])\n onBlur() {\n this._touched();\n }\n\n private _finalizeInput(output: string): void {\n this._lastValue = output;\n this.formControl.setValue(output);\n this.valueChange.emit(output);\n }\n\n private _output(substr: string, index: number = 0): string {\n substr = substr?.toString() || '';\n const count: number = substr.length;\n let flag: boolean = true;\n let output: string = '';\n for (let i: number = 0; i < count; i++) {\n do {\n if (Object.prototype.toString.call(this.mask[index]) == '[object String]') {\n if (this.mask[index] == substr[i]) {\n index++;\n output += substr[i];\n flag = false;\n } else {\n output += this.mask[index++];\n flag = true;\n }\n } else if (Object.prototype.toString.call(this.mask[index]) == '[object RegExp]') {\n if ((this.mask[index]).test(substr[i])) {\n output += substr[i];\n index++;\n }\n flag = false;\n }\n } while (flag && index < this.mask.length);\n }\n return output;\n }\n\n ngOnDestroy(): void {\n this._destroy$.next(true);\n this._destroy$.unsubscribe();\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { StubType } from '../../types/stub.type';\nimport { NgControl } from '@angular/forms';\n\n@Directive({\n selector: '[fwsLatinLetters]',\n standalone: true\n})\nexport class TableSearchNotCyrillicLetterDirective {\n @Input() allowSearchOnlyLatinLetters: StubType | boolean = true;\n\n constructor(private control: NgControl) {}\n\n @HostListener('input', ['$event.target.value'])\n onInput(value: string) {\n if (this.allowSearchOnlyLatinLetters) {\n const newValue = value.replace(/[а-яА-ЯіІїЇєЄ]/g, '');\n this.control.control.setValue(newValue);\n }\n }\n}\n","import { Directive, ElementRef, forwardRef, HostListener } from '@angular/core';\nimport { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';\n\n@Directive({\n selector: '[fwsOnlyNumber]',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnlyNumberDirective),\n multi: true\n }\n ],\n standalone: true\n})\nexport class OnlyNumberDirective {\n private _onChange: (value: any) => {};\n _touched: () => void;\n constructor(private _el: ElementRef) {}\n @HostListener('keydown', ['$event']) onKeyDown(event) {\n let e = event;\n if (\n [46, 8, 9, 27, 13, 110, 190].indexOf(e.keyCode) !== -1 ||\n // Allow: Ctrl+A\n (e.keyCode === 65 && (e.ctrlKey || e.metaKey)) ||\n // Allow: Ctrl+C\n (e.keyCode === 67 && (e.ctrlKey || e.metaKey)) ||\n // Allow: Ctrl+V\n (e.keyCode === 86 && (e.ctrlKey || e.metaKey)) ||\n // Allow: Ctrl+X\n (e.keyCode === 88 && (e.ctrlKey || e.metaKey)) ||\n // Allow: home, end, left, right\n (e.keyCode >= 35 && e.keyCode <= 39)\n ) {\n return;\n }\n // Ensure that it is a number and stop the keypress\n if ((e.shiftKey || e.keyCode < 48 || e.keyCode > 57) && (e.keyCode < 96 || e.keyCode > 105)) {\n e.preventDefault();\n }\n }\n\n @HostListener('input', ['$event'])\n onInputChange() {\n let value = this._el.nativeElement.value;\n let newValue = this.setInputValue(value);\n this._onChange(newValue);\n this.writeValue(newValue);\n this._el.nativeElement.value = newValue;\n }\n @HostListener('blur', ['$event'])\n onBlur() {\n this._touched();\n }\n private setInputValue(value: string | number): string | number {\n if (value === null || value === undefined) {\n this._el.nativeElement.value = value;\n return value;\n }\n const initialValue = String(value);\n let filteredValue = initialValue.replace(/[^0-9]*/g, '');\n if (\n filteredValue.length > 1 &&\n (filteredValue.startsWith('00') || (filteredValue.startsWith('0') && !filteredValue.startsWith('0.')))\n ) {\n filteredValue = filteredValue.substring(1);\n }\n this._el.nativeElement.value = filteredValue;\n return typeof value === 'number' ? Number(filteredValue) : filteredValue;\n }\n\n writeValue(value: string | number): void {\n this.setInputValue(value);\n }\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n registerOnTouched(fn: any): void {\n this._touched = fn;\n }\n}\n","export class ResizedEvent {\n newRect: DOMRectReadOnly;\n oldRect?: DOMRectReadOnly;\n isFirst: boolean;\n constructor(newRect: DOMRectReadOnly, oldRect: DOMRectReadOnly | undefined) {\n this.newRect = newRect;\n this.oldRect = oldRect;\n this.isFirst = oldRect == null;\n }\n}\n","import { Directive, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, Output } from '@angular/core';\nimport { ResizedEvent } from './resized-event';\n@Directive({\n selector: '[fwsResized]',\n standalone: true\n})\nexport class ResizedDirective implements OnInit, OnDestroy {\n private observer: ResizeObserver;\n private oldRect?: DOMRectReadOnly;\n @Output() readonly fwsResized: EventEmitter = new EventEmitter();\n constructor(\n private readonly _element: ElementRef,\n private readonly _zone: NgZone\n ) {\n this.observer = new ResizeObserver((entries) => this._zone.run(() => this.observe(entries)));\n }\n ngOnInit(): void {\n this.observer.observe(this._element.nativeElement);\n }\n ngOnDestroy(): void {\n this.observer.disconnect();\n }\n private observe(entries: ResizeObserverEntry[]): void {\n const domSize: ResizeObserverEntry = entries[0];\n const resizedEvent: ResizedEvent = new ResizedEvent(domSize.contentRect, this.oldRect);\n this.oldRect = domSize.contentRect;\n this.fwsResized.emit(resizedEvent);\n }\n}\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { MatTooltip } from '@angular/material/tooltip';\n\n@Directive({\n selector: '[matTooltip][fwsShowTooltipIfTruncated]',\n standalone: true\n})\nexport class ShowTooltipIfTruncatedDirective {\n constructor(\n private readonly _el: ElementRef,\n private readonly _matTooltip: MatTooltip\n ) {}\n\n @HostListener('mouseenter') onMouseHover(): void {\n this._matTooltip.disabled = this._el.nativeElement.scrollWidth <= this._el.nativeElement.clientWidth;\n }\n}\n","export interface CheckValueConfigModel {\n style?: string;\n objectKeys?: string[];\n clone?: boolean;\n header?: CheckValueConfigHeaderModel;\n offsetTop?: number;\n offsetBottom?: number;\n mode?: ConsoleMode;\n}\n\nexport interface CheckValueConfigHeaderModel {\n label?: string;\n offsetLength?: number;\n offsetSymbol?: string;\n separator?: boolean;\n title?: string;\n}\n\nexport type ConsoleMode = 'log' | 'warn' | 'error';\n\n/**\n * Function for logging data passing through it\n * @param value - checking data.\n * @param config - log display configuration in the terminal\n */\nexport function fwsCheckValue(value: any, config?: CheckValueConfigModel): any {\n const mode: ConsoleMode = config?.mode || 'log';\n if (config?.offsetTop) {\n console.log('\\n'.repeat(Math.abs(config.offsetTop)));\n }\n if (config?.header) {\n console[mode](\n '%c' +\n (config?.header?.offsetSymbol || ' ').repeat(config?.header?.offsetLength || 4) +\n (config?.header?.separator ? ' | ' : ' ') +\n (config?.header?.title || 'checkValue') +\n (config?.header?.label ? ' > ' + config?.header?.label : ''),\n config?.style\n );\n }\n const stringTypes: string[] = ['String', 'Number', 'Boolean', 'Null', 'Undefined', 'Date'];\n if (stringTypes.includes(Object.prototype.toString.call(value).replace('[object ', '').replace(']', ''))) {\n console[mode]('%c' + value, config?.style || '');\n } else if (Object.prototype.toString.call(value) == '[object Array]') {\n console.table(config?.clone ? JSON.parse(JSON.stringify(value)) : value);\n } else {\n if (config?.objectKeys?.length > 0) {\n console[mode]('%c{', config?.style || '');\n config.objectKeys.forEach((key: string): void => {\n const val: any = valByKey(value, key);\n if (stringTypes.includes(Object.prototype.toString.call(val).replace('[object ', '').replace(']', ''))) {\n console[mode]('%c ' + key + ': ' + val, config?.style || '');\n } else if (Object.prototype.toString.call(val) == '[object Array]') {\n console[mode]('%c ' + key + ': ', config?.style || '');\n console.table(config?.clone ? JSON.parse(JSON.stringify(val)) : val);\n } else {\n console[mode]('%c ' + key + ': ', config?.style || '');\n console.log(config?.clone ? JSON.parse(JSON.stringify(val)) : val);\n }\n });\n console.log('%c}', config?.style || '');\n } else {\n console.log(config?.clone ? JSON.parse(JSON.stringify(value)) : value);\n }\n }\n if (config?.offsetBottom) {\n console.log('\\n'.repeat(Math.abs(config.offsetBottom)));\n }\n return value;\n}\n\n/**\n * Return a field or property of an object by string key\n * @param obj - source object.\n * @param keyPath - 'path.to.value' string key\n */\nfunction valByKey(obj: any, keyPath: string): any {\n const keys: string[] = keyPath.split('.');\n return keys.reduce((val: any, key: string) => {\n return (val || obj)[key];\n }, null);\n}\n","/**\n * Converting array to object by params\n * @param {any[]} source - source array.\n * @param {string?} key - string key for object field name.\n * @param {...string[]} values - value key list.\n * @returns {any}\n */\nexport function fwsObjFromList(source: any[], key?: string, ...values: string[]): any {\n return Object.assign(\n {},\n ...source.map((x, index) => ({\n [key ? x[key] : index]: values.length\n ? values.length > 1\n ? values.reduce((obj, currKey) => {\n obj[currKey] = x[currKey];\n return obj;\n }, {})\n : x[values[0]]\n : x\n }))\n );\n}\n\n/**\n *Getting set of values of specified arrays\n * @param {string} key - object field string key.\n * @param {...string[]} arrays - surce array.\n * @returns {any[]} - generated object.\n */\nexport function fwsObjectSet(key: string, ...arrays: T[]): T[] {\n const combSortedArrs: T[] = [].concat(...arrays).sort((a, b) => a[key] - b[key]);\n return combSortedArrs.reduce((result: T[], item: T) => {\n if (result.length == 0 || result[result.length - 1][key] != item[key]) {\n result.push(item);\n }\n return result;\n }, []);\n}\n\n/**\n *\n * @param obj\n */\nexport function fwsObjectToQueryString(obj: any): string {\n const queryString = Object.keys(obj)\n .map((key: string) => {\n if (obj[key]) {\n if (Object.prototype.toString.call(obj[key]) == '[object Array]') {\n const arr: any[] = obj[key];\n return arr\n .map((val) => {\n return `${key}=${encodeURIComponent(val)}`;\n })\n .join('&');\n }\n return `${key}=${encodeURIComponent(obj[key])}`;\n }\n return '';\n })\n .join('&');\n return queryString ? '?' + queryString : '';\n}\n\n/**\n * GUID generator\n */\nexport function fwsGuid(): string {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c: string) => {\n const r = (Math.random() * 16) | 0,\n v = c == 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\n\n/**\n * Convert UTC date to user local Date\n * @param utcDate - string or Date, example '2023-10-20T13:40:00.154808'\n * @return string in Unix Timestamp Format\n */\n\nexport const convertUTCDateToLocalTime = (utcDate: string | Date): string => {\n if (!(typeof utcDate === 'string' || utcDate instanceof Date)) {\n throw new Error('Value can be only string or Date');\n }\n let date;\n\n if (typeof utcDate === 'string') {\n date = new Date(utcDate);\n }\n\n if (utcDate instanceof Date) {\n date = utcDate as Date;\n }\n\n //Get ms for date\n let time = date.getTime();\n let offset = date.getTimezoneOffset();\n //Check if timezoneOffset is positive or negative\n let multiplier = offset <= 0 ? 1 : -1;\n //Convert timezoneOffset to hours and add/subtract to Date value in milliseconds\n let final = time + multiplier * Math.abs(offset * 60000);\n //Convert from milliseconds to date and convert date back to ISO string\n return new Date(final).toISOString();\n};\n\n/**\n * Return deep clone of object\n * @param obj - any object\n * @returns {any}\n */\nexport function fwsDeepClone(obj: any): any {\n return JSON.parse(JSON.stringify(obj));\n}\n\n/**\n * Return all object values include nested object values\n * @param obj - any object\n */\nexport const fwsGetObjectAllValues = (obj: any): any[] => {\n const results: any[] = [];\n _getValue(obj, results);\n return results;\n};\n\nfunction _getValue(obj: any, results: any[]): void {\n Object.values(obj).forEach((val: any) => {\n if (typeof val != 'object') {\n results.push(val);\n } else {\n _getValue(val, results);\n }\n });\n}\n\n/**\n * For default boolean 'true' @Input value\n * @param value - any object\n */\nexport const fwsCoerceBooleanProperty = (value: any): any => {\n return value === '' ? true : value;\n};\n\n/**\n * Convert Date value in format \"HH:MM\"\n * @param inputDate - Date value\n */\n\nexport const fwsFormatTimeFromDate = (inputDate: Date): string => {\n if (!(inputDate instanceof Date) || isNaN(inputDate.getTime())) {\n throw new Error('Invalid Date');\n }\n\n const hours = inputDate.getHours().toString().padStart(2, '0');\n const minutes = inputDate.getMinutes().toString().padStart(2, '0');\n\n return `${hours}:${minutes}`;\n};\n\n/**\n * Compare two object\n * @param x - first object\n * @param y - second object\n */\nexport const fwsObjectEquals = (x, y): boolean => {\n if (x === y) return true;\n // if both x and y are null or undefined and exactly the same\n\n if (!(x instanceof Object) || !(y instanceof Object)) return false;\n // if they are not strictly equal, they both need to be Objects\n\n if (x.constructor !== y.constructor) return false;\n // they must have the exact same prototype chain, the closest we can do is\n // test there constructor.\n\n for (let p in x) {\n if (!x.hasOwnProperty(p)) continue;\n // other properties were tested using x.constructor === y.constructor\n\n if (!y.hasOwnProperty(p)) return false;\n // allows to compare x[ p ] and y[ p ] when set to undefined\n\n if (x[p] === y[p]) continue;\n // if they have the same strict value or identity then they are equal\n\n if (typeof x[p] !== 'object') return false;\n // Numbers, Strings, Functions, Booleans must be strictly equal\n\n if (!fwsObjectEquals(x[p], y[p])) return false;\n // Objects and Arrays must be tested recursively\n }\n\n for (let p in y) if (y.hasOwnProperty(p) && !x.hasOwnProperty(p)) return false;\n // allows x[ p ] to be set to undefined\n\n return true;\n};\n\nexport function fwsConvertIsoDateToFormat(dateString, format) {\n const date = new Date(dateString);\n\n // Getting the day, month and year\n const day = date.getDate().toString().padStart(2, '0');\n const month = (date.getMonth() + 1).toString().padStart(2, '0');\n const year = date.getFullYear();\n\n // Replace format markers with appropriate values\n return format.replace('DD', day).replace('MM', month).replace('YYYY', year);\n}\n\n/**\n * Generate a GUID\n * @returns string - generated GUID.\n */\n\nexport function generateGUID(): string {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n const r = (Math.random() * 16) | 0,\n v = c === 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\nimport { AutoLoginPartialRoutesGuard } from 'angular-auth-oidc-client';\nimport { Observable, of, tap } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthorizationGuard {\n constructor(\n private _autoLoginPartialRoutesGuard: AutoLoginPartialRoutesGuard,\n private _authService: AuthService,\n private _router: Router\n ) {}\n\n canActivateChild(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\n if (this._authService.getAuthDataEmployee()?.authnResult) {\n return this._autoLoginPartialRoutesGuard.canActivateChild(next, state).pipe(\n tap((value) => {\n !value && this._router.navigateByUrl('/login');\n })\n );\n }\n\n if (this._authService.getAuthDataSH()) {\n return this._authService.isAuthenticated$().pipe(\n tap((isAuthenticated) => {\n !isAuthenticated && this._router.navigateByUrl('/login');\n })\n );\n }\n\n this._router.navigateByUrl('/login');\n return of(false);\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport {\n HTTP_INTERCEPTORS,\n HttpErrorResponse,\n HttpEvent,\n HttpHandler,\n HttpHandlerFn,\n HttpInterceptor,\n HttpRequest\n} from '@angular/common/http';\nimport { BehaviorSubject, filter, Observable, take, throwError } from 'rxjs';\nimport { AuthService } from '../services/auth.service';\nimport { catchError, switchMap } from 'rxjs/operators';\n\n@Injectable()\nexport class BaseUrlInterceptor implements HttpInterceptor {\n private isRefreshing = false;\n private refreshTokenSubject: BehaviorSubject = new BehaviorSubject(null);\n\n constructor(\n @Inject('BASE_API_URL') private baseUrl: string,\n private readonly _authService: AuthService\n ) {}\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n if (request.url.startsWith('http')) {\n return next.handle(request);\n }\n\n const apiReq = request.clone({\n setHeaders: {\n 'Accept-Language': 'UA'\n },\n url: request.url.startsWith('http') ? request.url : `${this.baseUrl}/${request.url}`\n });\n\n return this.interceptRequest(apiReq, next.handle);\n }\n\n interceptRequest(req: HttpRequest, next: HttpHandlerFn): Observable> {\n req = req.clone({\n headers: req.headers.set('Authorization', 'Bearer ' + this._authService.getAccessToken()),\n setHeaders: {\n 'Accept-Language': 'UA'\n }\n });\n return next(req).pipe(\n catchError((error) => {\n if (error instanceof HttpErrorResponse && error.status === 401) {\n return this.handle401Error(req, next);\n }\n\n return throwError(() => error);\n })\n );\n }\n\n private handle401Error(request: HttpRequest, next: HttpHandlerFn) {\n if (!this.isRefreshing) {\n this.isRefreshing = true;\n this.refreshTokenSubject.next(null);\n\n const refreshToken = this._authService.getRefreshToken();\n\n if (refreshToken)\n return this._authService.refreshSHToken().pipe(\n switchMap((response) => {\n this.isRefreshing = false;\n this.refreshTokenSubject.next(response.access_token);\n\n return next(request);\n }),\n catchError((error) => {\n this.isRefreshing = false;\n this._authService.logout();\n\n return throwError(() => error);\n })\n );\n }\n\n return this.refreshTokenSubject.pipe(\n filter((token) => token !== null),\n take(1),\n switchMap((token) => next(request))\n );\n }\n}\n\nexport const httpInterceptorBaseUrl = [{ provide: HTTP_INTERCEPTORS, useClass: BaseUrlInterceptor, multi: true }];\n","import {\n HttpInterceptor,\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpErrorResponse,\n HTTP_INTERCEPTORS\n} from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { retryWhen, concatMap, delay } from 'rxjs/operators';\nimport { iif, throwError, of, Observable } from 'rxjs';\n\nexport interface RetryRequestOptions {\n maximumRetries: number;\n retryDelay: number;\n}\n\n@Injectable()\nexport class RetryHttpErrorsInterceptor implements HttpInterceptor {\n // default retry options\n private retryRequestOptions: RetryRequestOptions = {\n maximumRetries: 2,\n retryDelay: 200 //milliseconds\n };\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n return next.handle(request).pipe(this.retryPipe());\n }\n\n retryPipe() {\n return retryWhen((errors: Observable) =>\n errors.pipe(\n // Use concat map to keep the errors in order and make sure they\n // aren't executed in parallel\n concatMap((error: HttpErrorResponse, retryId: number) =>\n // Executes a conditional Observable depending on the result\n // of the first argument\n iif(\n () => error.status < 500 || retryId >= this.retryRequestOptions.maximumRetries,\n // If the condition is true we throw the error (the last error)\n this.returnError(error),\n // Otherwise we pipe this back into our stream and delay the retry\n this.retryError(error, retryId, this.retryRequestOptions.retryDelay)\n )\n )\n )\n );\n }\n\n returnError(error: HttpErrorResponse) {\n return throwError(error);\n }\n\n retryError(error: HttpErrorResponse, retryId: number, retryDelay: number) {\n // retry request with increasing delay between each attemp\n return of(error).pipe(delay(retryDelay * retryId));\n }\n}\n\nexport const retryHttpErrorsInterceptor = [\n { provide: HTTP_INTERCEPTORS, useClass: RetryHttpErrorsInterceptor, multi: true }\n];\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'mask',\n standalone: true\n})\nexport class MaskPipe implements PipeTransform {\n transform(value: string, mask: Array): string {\n let index = 0;\n value = value || '';\n const count: number = value.length;\n let flag: boolean = true;\n let output: string = '';\n for (let i: number = 0; i < count; i++) {\n do {\n if (Object.prototype.toString.call(mask[index]) == '[object String]') {\n if (mask[index] == value[i]) {\n index++;\n output += value[i];\n flag = false;\n } else {\n output += mask[index++];\n flag = true;\n }\n } else if (Object.prototype.toString.call(mask[index]) == '[object RegExp]') {\n if ((mask[index]).test(value[i])) {\n output += value[i];\n index++;\n }\n flag = false;\n }\n } while (flag && index < mask.length);\n }\n return output;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'fwsPhoneNumberMaskHint'\n})\nexport class PhoneNumberMaskHidePipe implements PipeTransform {\n transform(value: string): string {\n const phoneNumber = value.replaceAll(' ', '');\n if (!phoneNumber || phoneNumber.length < 12) {\n return phoneNumber;\n }\n\n const countryCode = phoneNumber.slice(0, 6);\n const maskedSection = '*****';\n const lastTwoDigits = phoneNumber.slice(-2);\n\n return `${countryCode}${maskedSection}${lastTwoDigits}`;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { PermissionType } from '../../core/_enum/permission.enum';\nimport { BehaviorSubject, map, Observable, Subscription } from 'rxjs';\nimport { MainLayerMenuResponseDataModel } from '../../core/_models/main-layer-menu-response-data.model';\nimport { RequestService } from './request.service';\nimport { PermissionsModel } from '../models/permissions.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AccessService {\n private _accessObjects: BehaviorSubject = new BehaviorSubject<\n MainLayerMenuResponseDataModel[]\n >(null);\n\n constructor(private readonly _requestService: RequestService) {\n this._appObjectsRequest();\n }\n\n getAccessObjects$(): Observable {\n return this._accessObjects;\n }\n\n hasPermissionAccess$(permissionType: PermissionType, accessObjectsKey: string): Observable {\n return this._accessObjects.pipe(\n map((accessObjects: MainLayerMenuResponseDataModel[]) => {\n let hasPermission: boolean = false;\n if (accessObjects?.length) {\n hasPermission = accessObjects.find((apiAccessKey) => apiAccessKey.key === accessObjectsKey)?.permissions[\n permissionType\n ];\n }\n return hasPermission;\n })\n );\n }\n\n getPermissions$(accessObjectsKey: string): Observable {\n return this._accessObjects.pipe(\n map((accessObjects) => {\n if (accessObjects) {\n return accessObjects.find((accObj) => accObj.key == accessObjectsKey)?.permissions || null;\n }\n return null;\n })\n );\n }\n\n private _appObjectsRequest(): void {\n const subscription: Subscription = this._requestService\n .get$('api/user/appObjects')\n .subscribe((accessObjects) => {\n this._accessObjects.next(accessObjects);\n subscription.unsubscribe();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { RequestService } from './request.service';\nimport { Observable, of, tap } from 'rxjs';\nimport { DictionaryModel } from '../models/dictionary.model';\nimport { UserDataModel } from '../models/user-data.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppService {\n private _storage: Object = {};\n\n userData: UserDataModel = {};\n\n constructor(private readonly _requestService: RequestService) {}\n\n getFilials$(force?: boolean): Observable {\n const url: string = 'api/filials';\n if (!this._storage[url] || force) {\n return this._requestService.get$(url).pipe(tap((data) => (this._storage[url] = data)));\n }\n return of(this._storage[url]);\n }\n\n getUserData$(): Observable {\n return this._requestService.get$('api/user').pipe(\n tap((userData) => {\n this.userData = userData;\n })\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { OidcSecurityService } from 'angular-auth-oidc-client';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map, switchMap, tap } from 'rxjs/operators';\nimport { environment } from '../../../environments/environment';\nimport { AuthSupplierHubResponseModel } from '../models/auth-supplier-hub-response.model';\nimport { LoginFormModel } from '../models/login-form-model';\nimport { AuthDataEmployeeModel, EmployeeUserDataModel } from '../models/auth-data-employee.model';\nimport { UserDataModel } from '../models/user-data.model';\nimport { Router } from '@angular/router';\nimport { RequestService } from './request.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthService {\n private readonly IDENTITY_URL = `${environment.identityServerConfig.authority}/connect/`;\n private readonly AUTH_SH_USER_KEY = 'sh-user-auth';\n\n constructor(\n private readonly oidcSecurityService: OidcSecurityService,\n private readonly http: HttpClient,\n private readonly router: Router,\n private readonly requestService: RequestService\n ) {}\n\n getConfigIdEmployee(): string {\n return `0-${environment.identityServerConfig.clientId}`;\n }\n\n getAuthDataSH(): AuthSupplierHubResponseModel {\n return JSON.parse(sessionStorage.getItem(this.AUTH_SH_USER_KEY));\n }\n\n getAuthDataEmployee(): AuthDataEmployeeModel {\n return JSON.parse(sessionStorage.getItem(this.getConfigIdEmployee()));\n }\n\n getAccessToken(): string {\n return this.getAuthDataEmployee()?.authnResult?.access_token || this.getAuthDataSH()?.access_token || '';\n }\n\n getRefreshToken(): string {\n return this.getAuthDataEmployee()?.authnResult?.refresh_token || this.getAuthDataSH()?.refresh_token || '';\n }\n\n isLoggedIn(): boolean {\n return !!(this.getAuthDataEmployee()?.authnResult || this.getAuthDataSH());\n }\n\n isAuthenticated$(): Observable {\n if (this.getAuthDataEmployee()?.authnResult) {\n return this.oidcSecurityService.isAuthenticated();\n }\n\n if (this.getAuthDataSH()) {\n return this.userAuthData$().pipe(\n map((_) => true),\n catchError((err) =>\n this.refreshSHToken().pipe(\n map((_) => true),\n catchError((_) => of(false))\n )\n )\n );\n }\n\n return of(false);\n }\n\n refreshSHToken(): Observable {\n const body = new URLSearchParams();\n body.append('refresh_token', this.getAuthDataSH()?.refresh_token);\n body.append('grant_type', 'refresh_token');\n body.append('client_id', environment.identityServerConfig.clientId);\n body.append('token', this.getAuthDataSH().access_token);\n const headers = new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded');\n return this.http.post(`${this.IDENTITY_URL}token`, body.toString(), { headers }).pipe(\n tap((response) => {\n sessionStorage.removeItem(this.AUTH_SH_USER_KEY);\n sessionStorage.setItem(this.AUTH_SH_USER_KEY, JSON.stringify(response));\n })\n );\n }\n\n userAuthData$(): Observable {\n if (this.getAuthDataEmployee()?.authnResult) {\n return this.oidcSecurityService.getUserData();\n }\n\n if (this.getAuthDataSH()) {\n return this.getUserSh$();\n }\n\n return of({} as EmployeeUserDataModel | UserDataModel);\n }\n\n getUserSh$(): Observable {\n const headers = new HttpHeaders().set('Authorization', `Bearer ${this.getAccessToken()}`);\n return this.requestService.get$(`${this.IDENTITY_URL}userinfo`, { headers });\n }\n\n loginEmployee(): void {\n sessionStorage.removeItem('loginRedirectUrl');\n sessionStorage.removeItem(this.AUTH_SH_USER_KEY);\n this.oidcSecurityService.authorize();\n }\n\n loginSupplierHub(data: LoginFormModel): Observable {\n sessionStorage.removeItem('loginRedirectUrl');\n const body = new URLSearchParams();\n body.append('email', data.login);\n body.append('password', data.password);\n body.append('grant_type', 'shub_password');\n body.append('client_id', environment.identityServerConfig.clientId);\n const headers = new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded');\n\n return this.logoutEmployeeManual$().pipe(\n switchMap((_) =>\n this.http.post(`${this.IDENTITY_URL}token`, body.toString(), { headers }).pipe(\n tap((response) => {\n sessionStorage.removeItem(this.AUTH_SH_USER_KEY);\n sessionStorage.setItem(this.AUTH_SH_USER_KEY, JSON.stringify(response));\n this.router.navigate(['/home']);\n })\n )\n )\n );\n }\n\n logout(): void {\n if (this.getAuthDataEmployee()?.authnResult) {\n this.oidcSecurityService.logoffAndRevokeTokens().subscribe();\n }\n if (this.getAuthDataSH()) {\n const body = new URLSearchParams();\n body.append('token_type_hint', 'refresh_token');\n body.append('token', this.getAuthDataSH().access_token);\n body.append('client_id', environment.identityServerConfig.clientId);\n const headers = new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded');\n\n this.http.post(`${this.IDENTITY_URL}revocation`, body.toString(), { headers }).subscribe({\n next: () => {\n sessionStorage.removeItem(this.AUTH_SH_USER_KEY);\n this.router.navigate(['/login']);\n }\n });\n }\n }\n\n logoutEmployeeManual$(): Observable {\n if (!this.getAuthDataEmployee()?.authnResult) {\n return of(true);\n }\n const body = new URLSearchParams();\n body.append('token_type_hint', 'refresh_token');\n body.append('token', this.getAuthDataEmployee()?.authnResult?.refresh_token);\n body.append('client_id', environment.identityServerConfig.clientId);\n const headers = new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded');\n return this.http.post(`${this.IDENTITY_URL}revocation`, body.toString(), { headers }).pipe(\n switchMap((_) => {\n body.set('token_type_hint', 'access_token');\n body.set('token', this.getAuthDataEmployee()?.authnResult?.access_token);\n return this.http.post(`${this.IDENTITY_URL}revocation`, body.toString(), { headers }).pipe(\n tap((_) => {\n this.oidcSecurityService.logoffLocal();\n })\n );\n })\n );\n }\n\n forgotPassCheckEmail(email: string): Observable {\n const formData: FormData = new FormData();\n formData.append('email', email);\n return this.http.post(`${environment.identityServerConfig.authority}/pass/forgot`, formData);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, fromEvent } from 'rxjs';\nimport { BreakpointType } from '../types/breakpoint.type';\nimport { BreakpointModel } from '../models/breakpoint.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClientInfoService {\n clientWidth$: BehaviorSubject = new BehaviorSubject(window.innerWidth);\n clientHeight$: BehaviorSubject = new BehaviorSubject(window.innerHeight);\n\n breakpoint$: BehaviorSubject = new BehaviorSubject('xl');\n\n private readonly _breakpoints: BreakpointModel[] = [\n { width: 364, breakpoint: 'xxs' },\n { width: 520, breakpoint: 'xs' },\n { width: 718, breakpoint: 'sm' },\n { width: 1052, breakpoint: 'md' },\n { width: 1440, breakpoint: 'lg' },\n { width: 1920, breakpoint: 'xl' }\n ];\n\n private _lastBp: BreakpointType;\n\n constructor() {\n this._breakpoints.sort((a, b) => a.width - b.width);\n this.breakpoint$.next(this._defineBreakpoint(window.innerWidth));\n fromEvent(window, 'resize').subscribe((event: any) => {\n const clientWidth: number = event.target.innerWidth;\n this.clientWidth$.next(clientWidth);\n this.clientHeight$.next(event.target.innerHeight);\n const currentBp: BreakpointType = this._defineBreakpoint(clientWidth);\n if (currentBp != this._lastBp) {\n this.breakpoint$.next(currentBp);\n this._lastBp = currentBp;\n }\n });\n }\n\n private _defineBreakpoint(value: number) {\n for (let i: number = 0; i < this._breakpoints.length - 1; i++) {\n const currentBp: BreakpointModel = this._breakpoints[i];\n if (value <= currentBp.width) {\n return currentBp.breakpoint;\n }\n }\n return this._breakpoints[this._breakpoints.length - 1].breakpoint;\n }\n}\n","import { Inject, Injectable, LOCALE_ID } from '@angular/core';\nimport { registerLocaleData } from '@angular/common';\nimport localeUA from '@angular/common/locales/uk';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LocaleInfoService {\n constructor(@Inject(LOCALE_ID) private _locale: string) {\n registerLocaleData(localeUA);\n }\n\n get currentLocale(): string {\n return this._locale;\n }\n\n formatDate(date: Date, format: 'short' | 'medium' | 'long' | 'full'): string {\n return new Intl.DateTimeFormat(this._locale, { dateStyle: format }).format(date);\n }\n}\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { Route, Router } from '@angular/router';\nimport { BreadcrumbModel } from '../models/breadcrumb.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NavigationService {\n breadcrumbsChange: EventEmitter = new EventEmitter();\n changeUrl: EventEmitter = new EventEmitter();\n\n private _routingData: any = {};\n\n private _breadcrumbs: BreadcrumbModel[] = [];\n\n constructor(private readonly _router: Router) {\n _router.events.subscribe((data) => {\n if (/^ActivationEnd/.test(data.toString())) {\n this._routingData = data;\n }\n if (/^NavigationEnd/.test(data.toString())) {\n this._generateBreadcrumbs(\n data['urlAfterRedirects'].substring(1),\n this._routingData.snapshot.routeConfig.children\n );\n }\n });\n }\n\n changeCrumbCaption(url: string, newCaption: string): void {\n url = url.replace(new RegExp('^/'), '');\n const crumb: BreadcrumbModel = this._breadcrumbs.find((item) => item.link == url);\n if (crumb) {\n setTimeout(() => {\n crumb.caption = newCaption;\n });\n }\n }\n\n goToUrl(url: string): void {\n if (url !== null) {\n this._router.navigate([url]);\n this.changeUrl.emit(url);\n }\n }\n\n private _generateBreadcrumbs(url: string, routes: Route[]): void {\n const nodes: string[] = url.split('/');\n this._breadcrumbs = [];\n this._checkUrlNodes(this._breadcrumbs, routes, nodes);\n this.breadcrumbsChange.emit(this._breadcrumbs);\n }\n\n private _checkUrlNodes(\n breadcrumbs: BreadcrumbModel[],\n routes: Route[],\n nodes: string[],\n deep: number = 0,\n linkPath: string = ''\n ): void {\n let filteredRoutes: Route[];\n let nodeStr: string = '';\n let isComplete: boolean = false;\n do {\n nodeStr += (nodeStr ? '/' : '') + nodes[deep];\n filteredRoutes = routes?.filter(\n (route: Route) =>\n !route.redirectTo &&\n new RegExp(`^${nodeStr}`).test(this._zipNodes(nodeStr, route.path)) &&\n route.data &&\n !route.data['hide']\n );\n if (filteredRoutes?.length > 1) {\n const searchingRoute = filteredRoutes?.find(\n (route: Route) =>\n !route.redirectTo &&\n !route.data['hide'] &&\n new RegExp(`^${nodeStr}$`).test(this._zipNodes(nodeStr, route.path))\n );\n if (searchingRoute) {\n filteredRoutes = [searchingRoute];\n }\n } else if (filteredRoutes?.length == 1) {\n isComplete = new RegExp(`^${nodeStr}$`).test(this._zipNodes(nodeStr, filteredRoutes[0].path));\n }\n deep++;\n } while (filteredRoutes?.length > 1 && !isComplete);\n linkPath += (linkPath ? '/' : '') + nodeStr;\n const route: Route = filteredRoutes?.length && filteredRoutes[0];\n if (route?.data) {\n breadcrumbs.push({ caption: route.data['caption'], link: linkPath });\n if (deep < nodes.length && (route)._loadedRoutes.length) {\n this._checkUrlNodes(breadcrumbs, (route)._loadedRoutes, nodes, deep, linkPath);\n }\n }\n }\n\n private _zipNodes(urlStr: string, pathStr: string): string {\n const urlStrNodes: string[] = urlStr.split('/');\n const pathStrNodes: string[] = pathStr.split('/');\n return urlStrNodes\n .map((node: string, index: number): string =>\n !pathStrNodes[index] ? '' : pathStrNodes[index][0] == ':' ? node : pathStrNodes[index]\n )\n .join('/');\n }\n}\n","import { AbstractSecurityStorage } from 'angular-auth-oidc-client';\nimport { Injectable } from '@angular/core';\n\n@Injectable()\nexport class OAuthStorageService implements AbstractSecurityStorage {\n read(key: string): string {\n return sessionStorage.getItem(key);\n }\n\n write(key: string, value: any): void {\n sessionStorage.setItem(key, value);\n }\n\n remove(key: string): void {\n sessionStorage.removeItem(key);\n }\n\n clear(): void {\n sessionStorage.clear();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpErrorResponse, HttpParams } from '@angular/common/http';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { ResponseErrorModel } from '../models/response-error.model';\nimport { SnackBarService } from '../components/snack-bar/snack-bar.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RequestService {\n constructor(\n private readonly _http: HttpClient,\n private readonly _snackbar: SnackBarService\n ) {}\n\n get$(url: string, options?: any): Observable {\n return this._request$('get', url, options);\n }\n\n put$(url: string, body?: any, options?: any): Observable {\n return this._request$('put', url, body, options);\n }\n\n post$(url: string, body?: any, options?: any): Observable {\n return this._request$('post', url, body, options);\n }\n\n delete$(url: string, options?: any): Observable {\n return this._request$('delete', url, options);\n }\n\n getHttpParams(data: any): { params: HttpParams } {\n return { params: new HttpParams({ fromObject: data }) };\n }\n\n private _request$(\n requestType: 'get' | 'put' | 'post' | 'delete',\n url: string,\n options: any,\n postPutOptions?: any\n ): Observable {\n return (\n requestType === 'post' || requestType === 'put'\n ? this._http[requestType](url, options, postPutOptions)\n : this._http[requestType as 'get'](url, options)\n ).pipe(\n map((data) => (data).content),\n catchError((error: HttpErrorResponse) => {\n return this._catchErrors(error);\n })\n );\n }\n\n private _catchErrors(error: HttpErrorResponse): Observable {\n const err: ResponseErrorModel = error?.error?.error || {};\n this._snackbar.open(err.description, 'error');\n return throwError(err);\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { ThemeMode } from '../../core/pages/settings/_enum/theme-mode.enum';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThemeModeService {\n private currentMode: ThemeMode = ThemeMode.LIGHT;\n LOCAL_STORAGE_THEME_KEY = 'theme-mode';\n\n constructor(@Inject(DOCUMENT) private document: Document) {\n this.detectTheme();\n }\n\n detectTheme() {\n let initThemeMode = this.getThemeModeFromStore();\n if (!initThemeMode) {\n initThemeMode = ThemeMode.LIGHT;\n }\n this.updateCurrentMode(initThemeMode);\n this.document.body.classList.add(this.currentMode);\n }\n\n private updateCurrentMode(mode: ThemeMode) {\n this.currentMode = mode;\n this.saveThemeModeToStore(this.currentMode);\n }\n\n private saveThemeModeToStore(mode: ThemeMode): void {\n localStorage.setItem(this.LOCAL_STORAGE_THEME_KEY, mode.toString());\n }\n\n getThemeModeFromStore(): ThemeMode {\n return localStorage.getItem(this.LOCAL_STORAGE_THEME_KEY) || undefined;\n }\n\n toggleThemeMode() {\n this.document.body.classList.toggle(ThemeMode.LIGHT);\n this.document.body.classList.toggle(ThemeMode.DARK);\n if (this.currentMode === ThemeMode.LIGHT) {\n this.updateCurrentMode(ThemeMode.DARK);\n } else {\n this.updateCurrentMode(ThemeMode.LIGHT);\n }\n }\n}\n","import { AbstractControl, ValidatorFn } from '@angular/forms';\n\nexport function passwordValidator(): ValidatorFn {\n return (control: AbstractControl): { [key: string]: any } | null => {\n if (!control.value && !control.touched) {\n return null;\n }\n const password: string = control.value;\n\n const uppercaseRegex = /[A-Z]/;\n const lowercaseRegex = /[a-z]/;\n const digitRegex = /\\d/;\n const allowedSpecialChars = /[.!@\\-_=+/]/;\n\n const isValidPassword =\n password &&\n password.length >= 8 &&\n uppercaseRegex.test(password) &&\n lowercaseRegex.test(password) &&\n digitRegex.test(password) &&\n allowedSpecialChars.test(password);\n\n return isValidPassword ? null : { invalidPassword: true };\n };\n}\n","import { FormGroup } from '@angular/forms';\n\nexport function ValidationPhoneLength(control: FormGroup) {\n if (control.value && control.value.length != 16) {\n return { 'phoneNumberInvalid': true };\n }\n return null;\n}\n","import { LogLevel } from 'angular-auth-oidc-client';\n\nexport const environment: any = {\n production: false,\n defaultTitle: 'Fora Workspace',\n titlePref: '(dev)',\n apiBaseUrl: 'https://coreapi.dev.app.fora.ua',\n identityServerConfig: {\n authority: 'https://foraidentityserver.dev.app.fora.ua',\n redirectUrl: `${window.location.origin}/callback`,\n postLogoutRedirectUri: `${window.location.origin}/callback`,\n clientId: 'test2',\n scope: 'profile offline_access openid',\n responseType: 'code',\n silentRenew: true,\n useRefreshToken: true,\n logLevel: LogLevel.Debug,\n secureRoutes: ['https://coreapi.dev.app.fora.ua']\n },\n firebase: {\n apiKey: 'AIzaSyB8P8g-DqDRGhJBLOMsMyzzzetqlxHEi6o',\n authDomain: 'superfora-a5f17.firebaseapp.com',\n projectId: 'superfora-a5f17',\n storageBucket: 'superfora-a5f17.appspot.com',\n messagingSenderId: '599369097384',\n appId: '1:599369097384:web:1780b47b0f36aed5bbe29d',\n measurementId: 'G-WX8HBM7JY7',\n vapidKey: 'BB1yeVVLL7jTT9L4mor4xTjyhGFmj0beZK-H_5sUc6BfRcHwUByRmut-B5fZVcDgVgeET11RYs2dsKjz6gTWTFE'\n },\n ngPrimeLicenseKey:\n 'NnbFE+B693u58LCR+zMpOv0MZTwPEP5AhFtkHwefHI1LcpR7uBVJ951opythe8Zgk14VJdWChjWgj3v2GsquPrc6vidqR63VKp/EUO1iWA==',\n ngPrimePassKey: '3213301557'\n};\n","import { AppComponent } from './app/app.component';\nimport { ToastModule } from 'primeng/toast';\nimport { ServiceWorkerModule } from '@angular/service-worker';\nimport { CoreModule } from './app/core/core.module';\nimport { withInterceptorsFromDi, provideHttpClient } from '@angular/common/http';\nimport { provideAnimations } from '@angular/platform-browser/animations';\nimport { AppRoutingModule } from './app/app-routing.module';\nimport { BrowserModule, bootstrapApplication } from '@angular/platform-browser';\nimport { MessageService } from 'primeng/api';\nimport { LocaleInfoService } from './app/shared/services/locale-info.service';\nimport { OAuthStorageService } from './app/shared/services/oauth-storage-service';\nimport { AbstractSecurityStorage, AuthModule } from 'angular-auth-oidc-client';\nimport { MAT_SNACK_BAR_DEFAULT_OPTIONS, MatSnackBarConfig } from '@angular/material/snack-bar';\nimport { MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field';\nimport { environment } from './environments/environment';\nimport { retryHttpErrorsInterceptor } from './app/shared/interceptors/retry-http-errorrs.interceptor';\nimport { httpInterceptorBaseUrl } from './app/shared/interceptors/base-url-interceptor';\nimport { isDevMode, importProvidersFrom } from '@angular/core';\nimport { MAT_DATE_LOCALE } from '@angular/material/core';\n\nbootstrapApplication(AppComponent, {\n providers: [\n importProvidersFrom(\n BrowserModule,\n AppRoutingModule,\n AuthModule.forRoot({\n config: { ...environment.identityServerConfig }\n }),\n CoreModule,\n LocaleInfoService,\n ServiceWorkerModule.register('ngsw-worker.js', {\n enabled: !isDevMode(),\n // Register the ServiceWorker as soon as the application is stable\n // or after 30 seconds (whichever comes first).\n registrationStrategy: 'registerWhenStable:30000'\n }),\n ToastModule\n ),\n httpInterceptorBaseUrl,\n retryHttpErrorsInterceptor,\n { provide: MAT_DATE_LOCALE, useValue: 'uk' },\n {\n provide: 'BASE_API_URL',\n useValue: environment.apiBaseUrl\n },\n {\n provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,\n useValue: { appearance: 'outline' }\n },\n {\n provide: MAT_SNACK_BAR_DEFAULT_OPTIONS,\n useValue: {\n duration: 5000,\n horizontalPosition: 'end',\n verticalPosition: 'top'\n } as MatSnackBarConfig\n },\n { provide: AbstractSecurityStorage, useClass: OAuthStorageService },\n MessageService,\n provideAnimations(),\n provideHttpClient(withInterceptorsFromDi())\n ]\n}).catch((err) => console.error(err));\n"],"names":["RouterModule","MainLayerComponent","CallbackComponent","LoginComponent","HomeComponent","ProfileComponent","HelpPageComponent","SettingsComponent","NotFoundComponent","LoginSupplierHubComponent","AuthorizationGuard","routes","path","component","pathMatch","redirectTo","canActivateChild","children","data","caption","loadChildren","then","m","SupplierHubProfileModule","PermissionsManagementModule","FilialsManagementModule","DictionariesManagementModule","SuppliersManagementModule","AssortmentManagementModule","SupplierHabManagementModule","SupplierHubModule","ApplicationsModule","AppRoutingModule","_","_2","_3","forRoot","imports","i1","exports","environment","RouterOutlet","ToastModule","AppComponent","constructor","title","themeModeService","config","setTitle","titlePref","defaultTitle","detectTheme","ngOnInit","_setRedirectUrlToSessionStorage","setTranslation","startsWith","clear","apply","matchAll","matchAny","contains","notContains","notEquals","endsWith","addRule","removeRule","redirectUrl","sessionStorage","getItem","window","location","pathname","search","setItem","i0","ɵɵdirectiveInject","Title","i2","ThemeModeService","i3","PrimeNGConfig","selectors","standalone","features","ɵɵStandaloneFeature","decls","vars","template","AppComponent_Template","rf","ctx","ɵɵelement","i4","Toast","styles","CommonModule","NgOptimizedImage","MatButtonModule","MatSidenavModule","MatIconModule","MatFormFieldModule","MenuService","ScrollingModule","MatTooltipModule","MatMenuModule","MenuItemComponent","FooterMenuItemComponent","MatProgressBarModule","MatDialogModule","MatInputModule","FormsModule","ReactiveFormsModule","MatSelectModule","MatSlideToggleModule","MatAutocompleteModule","PermissionsManagementService","PhoneNumberVerificationComponent","MatTableModule","OtpDialogComponent","EmailVerificationComponent","CreatePinComponent","MatRadioModule","ChangePinCodeComponent","EnterNewPinCodeComponent","ChangePhoneNumberComponent","EnterPhoneNumberComponent","MaskPipe","MatStepperModule","MatCheckboxModule","MatDatepickerModule","MatNativeDateModule","UserShFirstLoginComponent","UserShAccessTerminatedComponent","InformationDialogComponent","CoreModule","sidePanelFooterDataJson","sidePanelMainDataJson","map","_accessService","userData","_userData","value","getSidePanelFooterData","sidePanelData","getSidePanelMainMenuData$","getAccessObjects$","pipe","accessObjects","result","rootItem","childs","Object","assign","childItem","some","x","apiAccessKey","key","index","indexOf","splice","length","push","ɵɵinject","AccessService","factory","ɵfac","providedIn","BaseComponent","takeUntil","_oidcSecurityService","_router","checkAuth","_destroy$","subscribe","isAuthenticated","split","navigateByUrl","navigate","removeItem","OidcSecurityService","Router","ɵɵInheritDefinitionFeature","consts","CallbackComponent_Template","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","HelpPageComponent_Template","HomeComponent_Template","authorizationSHState","LoginOptionEnum","convertUTCDateToLocalTime","ProfileService","PhoneNumberMaskHidePipe","MatIcon","MatInput","MatFormField","MatSuffix","IconSvgComponent","NgIf","NgSwitch","NgSwitchCase","NgClass","ɵɵlistener","LoginSupplierHubComponent_button_10_Template_button_click_0_listener","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","redirectToSupportLinkClick","ɵɵadvance","ɵɵtextInterpolate","invalidAuthUserNotFoundMessage","invalidAuthEmailFormatMessage","incorrectEnterPassMessage","blockedMessage","ɵɵelementContainerStart","LoginSupplierHubComponent_ng_container_12_Template_mat_icon_click_18_listener","_r3","visibleIconClick","ɵɵtemplate","LoginSupplierHubComponent_ng_container_12_div_22_Template","LoginSupplierHubComponent_ng_container_12_div_23_Template","LoginSupplierHubComponent_ng_container_12_div_24_Template","LoginSupplierHubComponent_ng_container_12_div_25_Template","LoginSupplierHubComponent_ng_container_12_Template_button_click_26_listener","onForgotPassBtnClick","LoginSupplierHubComponent_ng_container_12_Template_button_click_28_listener","onLoginClick","loginOptionEnum","Authorization","ɵɵproperty","authorizationForm","hideAuthPasswordInput","ɵɵpureFunction1","_c1","get","hasError","isIncorrectEnterPass","isBlocked","ɵɵpureFunction0","_c2","includes","breakpoint","invalidLoginFormatForgotPassMessage","notFoundLoginForgotPassMessage","LoginSupplierHubComponent_ng_container_13_div_14_Template","LoginSupplierHubComponent_ng_container_13_div_15_Template","LoginSupplierHubComponent_ng_container_13_Template_button_click_16_listener","_r4","onCheckLoginClick","loginForm","disableLoginForgotPassBtn","LoginSupplierHubComponent_ng_container_14_Template_button_click_6_listener","_r5","LoginSupplierHubComponent_ng_container_15_Template_mat_icon_click_12_listener","_r6","LoginSupplierHubComponent_ng_container_15_div_16_Template","LoginSupplierHubComponent_ng_container_15_div_17_Template","LoginSupplierHubComponent_ng_container_15_Template_button_click_18_listener","RecoveryPass","passRecoveryForm","hideRecoveryPasswordInput","LoginSupplierHubComponent_ng_container_16_Template_button_click_8_listener","_r7","_formBuilder","_authService","_clientInfoService","_profileService","_snackbar","otpCode","isLoadSendOTPRequest","authorizationSHStateEnum","_initializeForms","authorizationSH","breakpoint$","bp","group","login","password","valueChanges","setErrors","currentLoginForgotPassValue","initialLoginForgotPassValue","trim","href","input","toggleVisibilityForInputs","hideInputProp","timeoutProp","clearTimeout","setTimeout","returnToAuthPageClick","enterLoginSH","forgotPassCheckEmail","next","passRecovery","error","err","loginFirstEntry","operation","recoveryPassData","loginSupplierHub","open","error_description","loginEmployee","_setIncorrectEnterPassMessage","_startBlockingTimer","support","_setBlockedText","time","negativeAttemptsCount","targetTime","Date","calculateEndBlockingTime","formattedTime","getHours","getMinutes","_timer","calculateTimeRemaining","toString","startTime","startBlockingDateTime","endTime","getTime","blockingDuration","FormBuilder","AuthService","ClientInfoService","i5","SnackBarService","i6","viewQuery","LoginSupplierHubComponent_Query","LoginSupplierHubComponent_Template","LoginSupplierHubComponent_Template_button_click_5_listener","LoginSupplierHubComponent_button_10_Template","LoginSupplierHubComponent_ng_container_12_Template","LoginSupplierHubComponent_ng_container_13_Template","LoginSupplierHubComponent_ng_container_14_Template","LoginSupplierHubComponent_ng_container_15_Template","LoginSupplierHubComponent_ng_container_16_Template","ɵNgNoValidate","DefaultValueAccessor","NgControlStatus","NgControlStatusGroup","FormGroupDirective","FormControlName","ThemeMode","_themeModeService","themeMode","currentMode","LIGHT","getThemeModeFromStore","onForaEmployeeClick","onShUserClick","LoginComponent_Template","LoginComponent_Template_button_click_14_listener","LoginComponent_Template_button_click_19_listener","ɵɵsanitizeUrl","EventEmitter","imgAlt","information","btnText","onBtnClick","inputs","imgSrc","outputs","InformationDialogComponent_Template","InformationDialogComponent_Template_button_click_8_listener","emit","ɵɵtextInterpolate1","_c0","DialogUserShAccessTermStateEnum","columnsEdrpouErokppTable","UserShAccessTerminatedService","TableComponent","UserShAccessTerminatedComponent_ng_container_0_Template_fws_information_dialog_onBtnClick_1_listener","onStartingReactivateAccessClick","firstDialogInformationConfig","UserShAccessTerminatedComponent_ng_container_1_Template_button_click_9_listener","onApproveChoosingCompany","_columnsEdrpouErokppTable","edrpouRnokppTableDataSource","tableTemplate_r4","selectedRows","UserShAccessTerminatedComponent_ng_container_2_Template_fws_information_dialog_onBtnClick_1_listener","onClosePopup","accessFinishDialogInformationConfig","_userShAccessTerminatedService","dialogStateEnum","structuredClone","dialogState","accessToShEnded","_getUserShCompanyData","getUserShCompanyInfo$","response","updateEdrpouRnocpp","continueAccessRights","addContractorIds","filter","item","fwsSelectedRow","id","delContractorIds","putContinueAccess$","accessToShContinue","UserShAccessTerminatedComponent_Query","UserShAccessTerminatedComponent_Template","UserShAccessTerminatedComponent_ng_container_0_Template","UserShAccessTerminatedComponent_ng_container_1_Template","UserShAccessTerminatedComponent_ng_container_2_Template","_requestService","_SUPPLIER_HAB","get$","usersSHCompany","put$","RequestService","DialogStateEnum","Validators","UserShFirstLoginService","mergeMap","MatStepper","MatStep","MatStepLabel","MatStepperNext","MatStepperPrevious","fwsPhoneMask","ValidationPhoneLength","passwordValidator","InputTextMaskDirective","MatCheckbox","MatDatepickerInput","MatDatepickerToggleIcon","MatDatepicker","MatOption","MatSelect","ValidationHintComponent","MatHint","MatPrefix","NgFor","UserShFirstLoginComponent_ng_container_0_Template_fws_information_dialog_onBtnClick_1_listener","onStartRegistrationClick","tmp_4_0","mainInfoFormGroup","inputMaxLength","position_r4","name","UserShFirstLoginComponent_ng_container_1_fws_icon_svg_46_Template_fws_icon_svg_click_0_listener","reset","passwordsFormGroup","UserShFirstLoginComponent_ng_container_1_ng_template_7_Template","UserShFirstLoginComponent_ng_container_1_Template_input_focus_14_listener","isFocusLastNameInput","UserShFirstLoginComponent_ng_container_1_mat_hint_15_Template","UserShFirstLoginComponent_ng_container_1_fws_validation_hint_16_Template","UserShFirstLoginComponent_ng_container_1_Template_input_focus_23_listener","isFocusFirstNameInput","UserShFirstLoginComponent_ng_container_1_mat_hint_24_Template","UserShFirstLoginComponent_ng_container_1_fws_validation_hint_25_Template","UserShFirstLoginComponent_ng_container_1_Template_input_focus_30_listener","isFocusSurnameInput","UserShFirstLoginComponent_ng_container_1_mat_hint_31_Template","UserShFirstLoginComponent_ng_container_1_mat_option_39_Template","UserShFirstLoginComponent_ng_container_1_fws_validation_hint_40_Template","UserShFirstLoginComponent_ng_container_1_Template_input_click_45_listener","pickerOpenDate_r5","ɵɵreference","UserShFirstLoginComponent_ng_container_1_fws_icon_svg_46_Template","UserShFirstLoginComponent_ng_container_1_Template_fws_icon_svg_click_47_listener","UserShFirstLoginComponent_ng_container_1_Template_button_click_57_listener","goToContactInfoStep","UserShFirstLoginComponent_ng_container_1_ng_template_61_Template","UserShFirstLoginComponent_ng_container_1_div_71_Template","UserShFirstLoginComponent_ng_container_1_Template_button_click_79_listener","onContactDataNextClick","UserShFirstLoginComponent_ng_container_1_ng_template_82_Template","ɵɵtwoWayListener","UserShFirstLoginComponent_ng_container_1_Template_fws_otp_dialog_otpCodeChange_84_listener","$event","ɵɵtwoWayBindingSet","UserShFirstLoginComponent_ng_container_1_Template_fws_otp_dialog_isLoadSendOTPRequestChange_84_listener","UserShFirstLoginComponent_ng_container_1_Template_fws_otp_dialog_sendOtpAgain_84_listener","sendOtpAgain","UserShFirstLoginComponent_ng_container_1_Template_button_click_88_listener","stepper_r7","onOtpVerificationNextClick","UserShFirstLoginComponent_ng_container_1_ng_template_91_Template","UserShFirstLoginComponent_ng_container_1_Template_mat_icon_click_98_listener","UserShFirstLoginComponent_ng_container_1_div_100_Template","UserShFirstLoginComponent_ng_container_1_fws_validation_hint_101_Template","UserShFirstLoginComponent_ng_container_1_Template_mat_icon_click_107_listener","UserShFirstLoginComponent_ng_container_1_div_110_Template","UserShFirstLoginComponent_ng_container_1_Template_button_click_112_listener","onMoveToContactInfoStepper","UserShFirstLoginComponent_ng_container_1_Template_button_click_114_listener","onSendRequestForRegistration","touched","invalid","positionDictionary","valid","contactInfoFormGroup","maskPhoneInput","otpCaption","ɵɵtwoWayProperty","otpTimeLimitInfo","disableOTPCode","hidePasswordInput","errors","hideRepeatPasswordInput","showPasswordsMatchError","UserShFirstLoginComponent_ng_container_2_Template_fws_information_dialog_onBtnClick_1_listener","_r8","successRegistrationDialogInformationConfig","UserShFirstLoginComponent_ng_container_3_Template_button_click_10_listener","_r9","redirectToSupportLink","_userShFirstLoginService","_phoneNumberMaskHidePipe","onChangeDialogHeight","userEmail","greetingSH","_getData","lastName","required","minLength","maxLength","firstName","surname","positionUserShId","birthDate","agreePersonalData","requiredTrue","email","disabled","phoneNumber","repeatPassword","height","width","registrationStepper","getUserEmail$","setValue","emitEvent","getPositionUserSh$","_setOtpCaption","phone","isSendOtpAgain","replaceAll","postVerifyPhoneStart","_loadOtpTimeLimit","code","description","details","maskPhone","transform","possibilityAttemptCount","stepper","postVerifyPhone","getOTPTimeLimit","otpTimeLimitStatus","nextAttempt","_timeoutPass","_timeoutRepeatPass","sentData","putRegistrationSH$","successRegistration","selectedIndex","ɵɵProvidersFeature","UserShFirstLoginComponent_Template","UserShFirstLoginComponent_ng_container_0_Template","UserShFirstLoginComponent_ng_container_1_Template","UserShFirstLoginComponent_ng_container_2_Template","UserShFirstLoginComponent_ng_container_3_Template","SELECTED_ROW","property","contentType","maxWidth","minWidth","isSelecting","_DICTIONARY","dictionary","sendData","MatTooltip","label","FooterMenuItemComponent_div_0_Template_div_click_0_listener","footerItemClickHandler","link","action","FooterMenuItemComponent_div_0_span_3_Template","ɵɵpureFunction2","isSelected","icon","mainLayer","isExpanded","FooterMenuItemComponent_div_1_Template_div_click_1_listener","currentUrl","substring","selectedItem","setSelectedMenuItem","logout","FooterMenuItemComponent_Template","FooterMenuItemComponent_div_0_Template","FooterMenuItemComponent_div_1_Template","tap","packageJson","MatMenuTrigger","MatMenu","DialogComponent","MatProgressBar","NgTemplateOutlet","NgStyle","AsyncPipe","ɵɵelementContainer","MainLayerComponent_div_0_ng_container_2_Template","MainLayerComponent_div_0_Template_button_click_3_listener","_r2","ctx_r2","isSidePanelShow","breadcrumbsBarRef_r4","MainLayerComponent_div_2_div_1_Template_div_click_1_listener","MainLayerComponent_div_2_div_2_Template_div_click_1_listener","_c8","position","item_r8","item_r9","MainLayerComponent_div_2_div_1_Template","MainLayerComponent_div_2_div_2_Template","MainLayerComponent_div_2_Template_div_click_4_listener","onProfileClick","MainLayerComponent_div_2_span_11_Template","MainLayerComponent_div_2_fws_icon_svg_12_Template","MainLayerComponent_div_2_span_13_Template","MainLayerComponent_div_2_mat_progress_bar_19_Template","MainLayerComponent_div_2_ng_container_20_Template","MainLayerComponent_div_2_ng_container_24_Template","_c5","isNarrowMode","_c6","iconUrl","isMenuLoaded","ɵɵpipeBind1","sidepanelMenuData","_c7","sidepanelFooterData","MainLayerComponent_div_3_Template_div_click_0_listener","_r10","MainLayerComponent_div_5_ng_container_1_Template","MainLayerComponent_ng_template_8_button_2_Template_button_click_0_listener","_r12","goToPreviousPage","MainLayerComponent_ng_template_8_ng_container_4_ng_container_1_Template_span_click_1_listener","bc_r14","_r13","$implicit","MainLayerComponent_ng_template_8_ng_container_4_ng_container_1_fws_icon_svg_4_Template","_c11","isFirst_r15","_c12","breadcrumbsDataSource","i_r16","MainLayerComponent_ng_template_8_ng_container_4_ng_container_1_Template","MainLayerComponent_ng_template_8_ng_container_5_div_1_Template_div_click_0_listener","_r17","expandBreadcrumbsMenu","breadcrumbsMenu_r18","currentBreadcrumb","_c13","MainLayerComponent_ng_template_8_ng_container_5_div_1_Template","MainLayerComponent_ng_template_8_ng_container_8_Template_div_click_1_listener","bc_r20","_r19","MainLayerComponent_ng_template_8_ng_container_8_div_3_Template","_c14","isFirst_r21","version","MainLayerComponent_ng_template_8_button_2_Template","MainLayerComponent_ng_template_8_ng_container_4_Template","MainLayerComponent_ng_template_8_ng_container_5_Template","MainLayerComponent_ng_template_8_Template_mat_menu_closed_6_listener","_r11","MainLayerComponent_ng_template_8_ng_container_8_Template","MainLayerComponent_ng_template_8_div_9_Template","_c3","_c9","_c10","isBreadcrumbsNarrowMode","MainLayerComponent_fws_user_sh_first_login_11_Template_fws_user_sh_first_login_onClosePopup_0_listener","_r22","showFirstLoginForUserSHDialog","MainLayerComponent_fws_user_sh_first_login_11_Template_fws_user_sh_first_login_onChangeDialogHeight_0_listener","MainLayerComponent_fws_user_sh_access_terminated_13_Template_fws_user_sh_access_terminated_onClosePopup_0_listener","_r23","showUserSHAccessTerminatedDialog","_menuService","_navigationService","_appService","dialogFirstLoginHeight","dialogFirstLoginWidth","_selectedMenuItem","breadcrumbsChange","breadcrumbs","previousPageBreadcrumb","pkg","getUserData$","_checkShUsersLogin","breakepoint","ngAfterViewChecked","_setStylesForBreadcrumbsMenu","breadcrumbsMenuTrigger","menuOpened","_adjustOverlay","overlayPane","document","querySelector","classList","add","overlayBox","url","forEach","menuItem","isUserSh","isFirstLogin","countActiveDays","dialogSize","NavigationService","AppService","MainLayerComponent_Query","MainLayerComponent_div_0_Template","MainLayerComponent_div_2_Template","MainLayerComponent_div_3_Template","MainLayerComponent_div_5_Template","MainLayerComponent_ng_template_8_Template","ɵɵtemplateRefExtractor","MainLayerComponent_Template_fws_dialog_showChange_10_listener","MainLayerComponent_fws_user_sh_first_login_11_Template","MainLayerComponent_Template_fws_dialog_showChange_12_listener","MainLayerComponent_fws_user_sh_access_terminated_13_Template","_c4","MatMenuItem","MenuItemComponent_div_0_div_8_ng_container_1_Template_div_click_5_listener","child_r4","menuItemSelected","i_r5","MenuItemComponent_div_0_div_8_ng_container_1_Template","MenuItemComponent_div_0_Template_div_click_1_listener","MenuItemComponent_div_0_div_5_Template","MenuItemComponent_div_0_fws_icon_svg_7_Template","MenuItemComponent_div_0_div_8_Template","MenuItemComponent_div_1_div_8_Template_div_click_0_listener","child_r7","MenuItemComponent_div_1_div_8_Template","itemMenu_r8","_selectedChild","_setSelectedMenuItem","_modifyUrl","changeUrl","find","_setMenuItemProperty","child","parts","slice","join","MenuItemComponent_Template","MenuItemComponent_div_0_Template","MenuItemComponent_div_1_Template","NotFoundComponent_Template","DialogStateChangePin","DialogStateCreatePinEnum","DialogStateEmailVerifyEnum","DialogStatePhoneChangeEnum","DialogStatePhoneVerifyEnum","ErrorText","PinBtnText","UserOTPSendOptionEnum","switchMap","OnlyNumberDirective","errorMessage","ChangePhoneNumberComponent_ng_container_6_Template_input_ngModelChange_5_listener","currentPassword","ChangePhoneNumberComponent_ng_container_6_Template_input_input_5_listener","passwordChange","ChangePhoneNumberComponent_ng_container_6_Template_mat_icon_click_7_listener","ChangePhoneNumberComponent_ng_container_6_Template_div_click_9_listener","disableWaitTime","openResetDialog","ChangePhoneNumberComponent_ng_container_6_div_11_Template","hideCurrentPasswordInput","disabledInputs","tooltipBtnDisableText","showError","ChangePhoneNumberComponent_ng_container_7_Template_fws_enter_phone_number_phoneNumberChange_1_listener","ChangePhoneNumberComponent_ng_container_7_Template_fws_enter_phone_number_changeInputStatus_1_listener","checkDisableNextBtn","ChangePhoneNumberComponent_ng_container_8_Template_fws_otp_dialog_otpCodeChange_1_listener","ChangePhoneNumberComponent_ng_container_8_Template_fws_otp_dialog_isLoadSendOTPRequestChange_1_listener","ChangePhoneNumberComponent_ng_container_8_Template_fws_otp_dialog_changeInputStatus_1_listener","ChangePhoneNumberComponent_ng_container_8_Template_fws_otp_dialog_sendOtpAgain_1_listener","ChangePhoneNumberComponent_div_10_button_3_Template_button_click_0_listener","nextStep","disableNextBtn","ChangePhoneNumberComponent_div_10_button_4_Template_button_click_0_listener","openCreateDialog","ChangePhoneNumberComponent_div_10_Template_button_click_1_listener","closePopup","ChangePhoneNumberComponent_div_10_button_3_Template","ChangePhoneNumberComponent_div_10_button_4_Template","enterOTP","missingPinCode","ChangePhoneNumberComponent_div_11_Template_button_click_1_listener","_maskPipe","_maskPhoneHide","isPIN","enterCurrentPin","_otpTimeLimitInfo","isOverLimit","unsubscribe","_startTimer","_timeoutPassword","postCheckPinCode","isCorrect","_resetInputsValue","availableAttemptCount","enterNewPhoneNumber","phoneForSave","replace","postRefreshPhone","pinCode","finishStep","isOneMinuteTimeLimit","invalidStatus","_setTooltipBtnDisableText","ChangePhoneNumberComponent_Template","ChangePhoneNumberComponent_ng_container_2_Template","ChangePhoneNumberComponent_ng_container_3_Template","ChangePhoneNumberComponent_ng_container_5_Template","ChangePhoneNumberComponent_ng_container_6_Template","ChangePhoneNumberComponent_ng_container_7_Template","ChangePhoneNumberComponent_ng_container_8_Template","ChangePhoneNumberComponent_ng_container_9_Template","ChangePhoneNumberComponent_div_10_Template","ChangePhoneNumberComponent_div_11_Template","success","NgModel","ChangePinCodeComponent_ng_container_5_Template_fws_enter_new_pin_code_passwordChange_1_listener","newPassword","ChangePinCodeComponent_ng_container_5_Template_fws_enter_new_pin_code_repeatPasswordChange_1_listener","repeatNewPassword","ChangePinCodeComponent_ng_container_5_Template_fws_enter_new_pin_code_currentPasswordChange_1_listener","ChangePinCodeComponent_ng_container_5_Template_fws_enter_new_pin_code_forgotPinCodeClick_1_listener","ChangePinCodeComponent_div_7_Template_button_click_1_listener","ChangePinCodeComponent_div_7_Template_button_click_3_listener","ChangePinCodeComponent_div_8_Template_button_click_1_listener","showDialogChange","enterPin","checkPinCodeResponse","_updatePinCode","postUpdatePinCode","oldPinCode","newPinCode","showDialog","ChangePinCodeComponent_Template","ChangePinCodeComponent_ng_container_2_Template","ChangePinCodeComponent_ng_container_3_Template","ChangePinCodeComponent_ng_container_5_Template","ChangePinCodeComponent_ng_container_6_Template","ChangePinCodeComponent_div_7_Template","ChangePinCodeComponent_div_8_Template","finalize","MatRadioGroup","MatRadioButton","ctx_r0","isResetPin","methodType_r3","CreatePinComponent_ng_container_5_div_2_Template_mat_radio_group_ngModelChange_3_listener","methodTypeChoose","CreatePinComponent_ng_container_5_div_2_mat_radio_button_4_Template","methodTypes","CreatePinComponent_ng_container_5_mat_progress_bar_1_Template","CreatePinComponent_ng_container_5_div_2_Template","isLoadRequest","CreatePinComponent_ng_container_6_Template_fws_otp_dialog_otpCodeChange_1_listener","CreatePinComponent_ng_container_6_Template_fws_otp_dialog_isLoadSendOTPRequestChange_1_listener","CreatePinComponent_ng_container_6_Template_fws_otp_dialog_changeInputStatus_1_listener","CreatePinComponent_ng_container_6_Template_fws_otp_dialog_sendOtpAgain_1_listener","CreatePinComponent_ng_container_7_Template_fws_enter_new_pin_code_passwordChange_1_listener","CreatePinComponent_ng_container_7_Template_fws_enter_new_pin_code_repeatPasswordChange_1_listener","CreatePinComponent_div_9_Template_button_click_1_listener","CreatePinComponent_div_9_Template_button_click_3_listener","CreatePinComponent_div_10_Template_button_click_1_listener","chooseMethod","getUserFullData$","_userOTPOptionCheck","_sendOtp","postApproveOtp","_handleError","enterNewPin","postResetPinCode","otpToken","usingEmail","getEmailOTP","maskEmail","_maskEmail","usingPhone","getSmsOTP","phoneMask","getUserOTPOption","userOtpOption","isPhoneVerification","isEmailVerification","mask","otpOption","CreatePinComponent_Template","CreatePinComponent_ng_container_2_Template","CreatePinComponent_ng_container_3_Template","CreatePinComponent_ng_container_5_Template","CreatePinComponent_ng_container_6_Template","CreatePinComponent_ng_container_7_Template","CreatePinComponent_ng_container_8_Template","CreatePinComponent_div_9_Template","CreatePinComponent_div_10_Template","EmailVerificationComponent_ng_container_5_Template_fws_otp_dialog_otpCodeChange_1_listener","EmailVerificationComponent_ng_container_5_Template_fws_otp_dialog_isLoadSendOTPRequestChange_1_listener","EmailVerificationComponent_ng_container_5_Template_fws_otp_dialog_changeInputStatus_1_listener","EmailVerificationComponent_ng_container_5_Template_fws_otp_dialog_sendOtpAgain_1_listener","EmailVerificationComponent_div_7_Template_button_click_1_listener","EmailVerificationComponent_div_7_Template_button_click_3_listener","EmailVerificationComponent_div_8_Template_button_click_1_listener","postVerifyEmail","postVerifyEmailStart","EmailVerificationComponent_Template","EmailVerificationComponent_ng_container_2_Template","EmailVerificationComponent_ng_container_3_Template","EmailVerificationComponent_ng_container_5_Template","EmailVerificationComponent_ng_container_6_Template","EmailVerificationComponent_div_7_Template","EmailVerificationComponent_div_8_Template","EnterNewPinCodeComponent_div_1_Template_input_ngModelChange_4_listener","EnterNewPinCodeComponent_div_1_Template_input_input_4_listener","currentPasswordInput_r4","currentPasswordChange","EnterNewPinCodeComponent_div_1_Template_mat_icon_click_6_listener","EnterNewPinCodeComponent_div_18_Template_div_click_0_listener","forgotPinCodeClick","showForgotPinOption","repeatPasswordChange","hideRepeatPassword","inputName","_timeoutCurrentPass","ɵɵInputFlags","HasDecoratorInputTransform","_checkPassword","isCreateMode","ɵɵInputTransformsFeature","EnterNewPinCodeComponent_Template","EnterNewPinCodeComponent_div_1_Template","EnterNewPinCodeComponent_Template_input_ngModelChange_6_listener","EnterNewPinCodeComponent_Template_input_input_6_listener","passwordInput_r5","EnterNewPinCodeComponent_Template_mat_icon_click_8_listener","EnterNewPinCodeComponent_Template_input_ngModelChange_14_listener","EnterNewPinCodeComponent_Template_input_input_14_listener","repeatPasswordInput_r6","EnterNewPinCodeComponent_Template_mat_icon_click_16_listener","EnterNewPinCodeComponent_div_18_Template","EnterNewPinCodeComponent_div_19_Template","phoneNumberChange","changeInputStatus","changeNumber","phoneInput","EnterPhoneNumberComponent_Template","EnterPhoneNumberComponent_Template_input_ngModelChange_8_listener","EnterPhoneNumberComponent_Template_input_input_8_listener","phoneInput_r2","RequiredValidator","MaxLengthValidator","PatternValidator","DatePipe","OtpInputComponent","ɵɵsanitizeHtml","countdown","OtpDialogComponent_ng_container_1_button_7_Template_button_click_0_listener","sendOtpAgainClick","OtpDialogComponent_ng_container_1_button_7_div_3_Template","errorCountText","OtpDialogComponent_ng_container_1_div_2_Template","OtpDialogComponent_ng_container_1_Template_fws_otp_input_input_4_listener","otpInput_r3","changeInputValue","OtpDialogComponent_ng_container_1_Template_fws_otp_input_paste_4_listener","OtpDialogComponent_ng_container_1_Template_fws_otp_input_ngModelChange_4_listener","OtpDialogComponent_ng_container_1_button_7_Template","OtpDialogComponent_ng_container_1_div_8_Template","disableOtpInput","_datePipe","otpCodeChange","isLoadSendOTPRequestChange","ngOnChanges","changes","firstChange","_setErrorText","timer","count","OtpDialogComponent_Query","ɵɵNgOnChangesFeature","OtpDialogComponent_Template","OtpDialogComponent_mat_progress_bar_0_Template","OtpDialogComponent_ng_container_1_Template","NgSwitchDefault","PhoneNumberVerificationComponent_ng_container_6_Template_fws_enter_phone_number_phoneNumberChange_1_listener","PhoneNumberVerificationComponent_ng_container_6_Template_fws_enter_phone_number_changeInputStatus_1_listener","PhoneNumberVerificationComponent_ng_container_7_Template_fws_otp_dialog_otpCodeChange_1_listener","PhoneNumberVerificationComponent_ng_container_7_Template_fws_otp_dialog_isLoadSendOTPRequestChange_1_listener","PhoneNumberVerificationComponent_ng_container_7_Template_fws_otp_dialog_changeInputStatus_1_listener","PhoneNumberVerificationComponent_ng_container_7_Template_fws_otp_dialog_sendOtpAgain_1_listener","PhoneNumberVerificationComponent_div_9_Template_button_click_1_listener","PhoneNumberVerificationComponent_div_9_Template_button_click_3_listener","PhoneNumberVerificationComponent_div_10_Template_button_click_1_listener","enterPhone","PhoneNumberVerificationComponent_Template","PhoneNumberVerificationComponent_div_3_Template","PhoneNumberVerificationComponent_ng_container_4_Template","PhoneNumberVerificationComponent_ng_container_6_Template","PhoneNumberVerificationComponent_ng_container_7_Template","PhoneNumberVerificationComponent_ng_container_8_Template","PhoneNumberVerificationComponent_div_9_Template","PhoneNumberVerificationComponent_div_10_Template","IconMatComponent","CardComponent","SlicePipe","errorText","emailNeedVerify","ProfileComponent_div_3_div_28_div_8_Template_button_click_1_listener","verifyEmail","disableBtn","ProfileComponent_div_3_div_28_div_6_Template","ProfileComponent_div_3_div_28_div_7_Template","ProfileComponent_div_3_div_28_div_8_Template","emailVerified","ɵɵpipeBind2","showNumberMask","phoneNeedVerify","ProfileComponent_div_3_div_36_Template_button_click_1_listener","phoneEdit","disableLockedBtn","tooltipLockedText","tooltipBtnEditPhone","ProfileComponent_div_3_div_37_Template_button_click_1_listener","verifyPhone","ProfileComponent_div_3_div_41_Template_span_click_2_listener","forgotPicClick","pinCantCreate","pinMissing","ProfileComponent_div_3_div_42_span_3_Template","ProfileComponent_div_3_div_42_ng_template_4_Template","phoneNumberVerified","pinMissing_r7","ProfileComponent_div_3_div_28_Template","ProfileComponent_div_3_div_33_Template","ProfileComponent_div_3_div_34_Template","ProfileComponent_div_3_div_35_Template","ProfileComponent_div_3_div_36_Template","ProfileComponent_div_3_div_37_Template","ProfileComponent_div_3_div_41_Template","ProfileComponent_div_3_div_42_Template","ProfileComponent_div_3_Template_button_click_44_listener","changePinClick","birthday","account","pinBtnText","pinBtnTextEnum","createPin","editPin","ProfileComponent_fws_phone_number_verification_5_Template_fws_phone_number_verification_onClosePopup_0_listener","ProfileComponent_fws_email_verification_7_Template_fws_email_verification_onClosePopup_0_listener","ProfileComponent_fws_create_pin_9_Template_fws_create_pin_onClosePopup_0_listener","ProfileComponent_fws_change_pin_code_11_Template_fws_change_pin_code_openResetDialog_0_listener","showChangePinCodeDialog","showResetPinDialog","ProfileComponent_fws_change_pin_code_11_Template_fws_change_pin_code_onClosePopup_0_listener","ProfileComponent_fws_change_phone_number_13_Template_fws_change_phone_number_openCreateDialog_0_listener","createDialogOpen","ProfileComponent_fws_change_phone_number_13_Template_fws_change_phone_number_openResetDialog_0_listener","resetDialogPinOpen","ProfileComponent_fws_change_phone_number_13_Template_fws_change_phone_number_onClosePopup_0_listener","ProfileComponent_div_15_Template_button_click_6_listener","logOut","ProfileComponent_fws_create_pin_17_Template_fws_create_pin_onClosePopup_0_listener","_r14","_changeDetection","isLoading","showPhoneVerificationDialog","showEmailVerificationDialog","showCreatePinDialog","showBlockUserDialog","showChangePhoneDialog","mobileMode","_setPinBtnText","complete","getCheckBlocking","checkBlockingChangePin","isLockedUser","isLocked","setMinutes","_timerChangePinBtn","_startTimerForChangePinBtn","String","targetDateTime","_setTooltipLockedText","detectChanges","ChangeDetectorRef","ProfileComponent_Template","ProfileComponent_div_3_Template","ProfileComponent_Template_fws_dialog_showChange_4_listener","ProfileComponent_fws_phone_number_verification_5_Template","ProfileComponent_Template_fws_dialog_showChange_6_listener","ProfileComponent_fws_email_verification_7_Template","ProfileComponent_Template_fws_dialog_showChange_8_listener","ProfileComponent_fws_create_pin_9_Template","ProfileComponent_Template_fws_dialog_showChange_10_listener","ProfileComponent_fws_change_pin_code_11_Template","ProfileComponent_Template_fws_dialog_showChange_12_listener","ProfileComponent_fws_change_phone_number_13_Template","ProfileComponent_Template_fws_dialog_showChange_14_listener","ProfileComponent_div_15_Template","ProfileComponent_Template_fws_dialog_showChange_16_listener","ProfileComponent_fws_create_pin_17_Template","takeWhile","post$","resetData","fullPhoneNumber","refreshData","currentTime","timeRemaining","minutes","Math","floor","seconds","padStart","firstPart","repeat","MatSlideToggle","isToggleTheme","toggleTheme","toggleThemeMode","SettingsComponent_Template","SettingsComponent_Template_mat_slide_toggle_ngModelChange_5_listener","token","_RESOURCE_GROUP","clearFilterPanels","filterChange","tagDeleting","getResourceGroupOperations$","getHttpParams","getResourceGroups$","getFilterDataCounts$","getFilterDataByParams$","Subject","ngOnDestroy","BaseComponent_Template","encapsulation","captionFontSize","ngContentSelectors","CardComponent_Template","ɵɵprojection","MAT_DIALOG_DATA","DialogRefComponent_div_4_ng_container_1_Template","contentHeaderTemplate","header","DialogRefComponent_ng_template_5_div_0_div_7_Template_div_click_0_listener","onCloseClick","DialogRefComponent_ng_template_5_div_0_span_2_Template","DialogRefComponent_ng_template_5_div_0_ng_container_5_Template","DialogRefComponent_ng_template_5_div_0_div_7_Template","captionAlight","headerMiddleTemplate","closeButton","DialogRefComponent_ng_template_5_div_0_Template","allowHeader","headerTextTemplate_r3","headerText","DialogRefComponent_div_10_ng_container_1_Template","contentTemplate","contentText","DialogRefComponent_div_15_ng_container_1_Template","contentFooterTemplate","btn_r5","text","DialogRefComponent_ng_template_16_div_0_ng_container_1_Template_button_click_1_listener","onButtonClick","DialogRefComponent_ng_template_16_div_0_ng_container_1_span_3_Template","DialogRefComponent_ng_template_16_div_0_ng_container_1_span_4_Template","ɵɵclassProp","additionalClass","isDisabled","class","tooltip","tooltipClass","iconPosition","DialogRefComponent_ng_template_16_div_0_ng_container_1_Template","buttonsAlign","buttons","DialogRefComponent_ng_template_16_div_0_Template","DialogRefComponent","_dialogData","_dialogRef","_changeDetector","contentMargin","disableClose","contentTemplateRef","headerTemplateRef","close","btn","MatDialogRef","DialogRefComponent_Template","DialogRefComponent_div_4_Template","DialogRefComponent_ng_template_5_Template","DialogRefComponent_ng_template_7_Template","DialogRefComponent_div_10_Template","DialogRefComponent_ng_template_11_Template","DialogRefComponent_div_15_Template","DialogRefComponent_ng_template_16_Template","ɵɵstyleMapInterpolate1","headerTemplate_r7","headerContainer_r6","clientHeight","footerContainer_r9","textContentTemplate_r8","footerTemplate_r10","fwsCoerceBooleanProperty","_height","_matDialogRef","updateSize","_width","_header","show","_show","_dialog","maxHeight","dialogRefConfigData","afterClosed","showChange","closeAll","keys","configData","MatDialog","DialogComponent_Query","DialogComponent_ng_template_0_Template","IconBaseComponent","color","size","IconBaseComponent_Template","appearance","type","fontWeight","t","IconMatComponent_Template","ɵɵclassMap","ɵɵstyleProp","getColor","readonly","sizePx","viewBox","ngAfterViewInit","contentContainer","nativeElement","innerText","getIconUrl","IconSvgComponent_Query","IconSvgComponent__svg_svg_4_Template","isDevMode","FormArray","FormControl","NG_VALIDATORS","NG_VALUE_ACCESSOR","OtpInputComponent_input_0_Template_input_focus_0_listener","handleFocus","OtpInputComponent_input_0_Template_input_blur_0_listener","onTouched","OtpInputComponent_input_0_Template_input_keypress_0_listener","i_r3","handleKeyPress","OtpInputComponent_input_0_Template_input_input_0_listener","handleInput","OtpInputComponent_input_0_Template_input_keydown_0_listener","handleKeyDown","OtpInputComponent_input_0_Template_input_paste_0_listener","handlePaste","input_r4","getFormArray","arr","i","_size","_scheduledFocus","writeValue","Error","Array","fill","registerOnChange","fn","onChange","registerOnTouched","setDisabledState","disable","enable","validate","control","otpInput","e","idx","toLowerCase","_updateWiredValue","_focusInput","isDigit","test","metaKey","controls","preventDefault","pasteData","clipboardData","getData","regex","RegExp","inputEls","target","select","focus","OtpInputComponent_Query","provide","useExisting","multi","OtpInputComponent_Template","OtpInputComponent_input_0_Template","FormControlDirective","changeDetection","MatProgressSpinner","ProgressSpinnerComponent_ng_container_2_ng_container_1_Template","textTemplate","ProgressSpinnerComponent","mode","diameter","spinnerPositionHorizontal","spinnerPositionVertical","ProgressSpinnerComponent_Template","ProgressSpinnerComponent_ng_container_2_Template","MAT_SNACK_BAR_DATA","SnackBarComponent","_snackBarRef","bgIconColor","dismissWithAction","MatSnackBarRef","SnackBarComponent_Template","SnackBarComponent_Template_fws_icon_svg_click_4_listener","message","actionIcon","_snackBar","panelClass","duration","openFromComponent","MatSnackBar","forwardRef","VIRTUAL_SCROLL_STRATEGY","_tableVirtualScrollDirectiveStrategyFactory","TableItemSizeDirective","TableItemSizeCustomDirective","appItemSize","itemSize","rowHeight","tableComponent","table","ngAfterContentInit","useFactory","deps","TableTreeState","TableColumnResizeHandlerDirective","tableColumn","element","renderer","allowResize","divider","createElement","setStyle","listen","event","stopPropagation","onColumnDividerMouseDown","addClass","appendChild","TableColumnComponent","ElementRef","Renderer2","None","MatColumnDef","MatHeaderCellDef","MatHeaderCell","MatCellDef","MatCell","fwsGetObjectAllValues","fwsCheckValue","MatButton","CustomTooltipRendererDirective","HighlightTextDirective","ShowTooltipIfTruncatedDirective","MatSortHeader","ResizedDirective","PercentPipe","CurrencyPipe","column","iconTooltip","fwsIconColor","fwsIcon","TableColumnComponent_mat_header_cell_1_ng_container_10_div_1_Template_mat_checkbox_change_1_listener","onSelectAllRows","TableColumnComponent_mat_header_cell_1_ng_container_10_div_1_Template_mat_checkbox_ngModelChange_1_listener","allRowsSelected","onSomeRowsSelected","TableColumnComponent_mat_header_cell_1_ng_container_10_div_1_Template","dataSource","TableColumnComponent_mat_header_cell_1_ng_container_11_ng_template_18_ng_container_1_Template_mat_checkbox_change_2_listener","item_r7","checked","_onColumFilterChange","TableColumnComponent_mat_header_cell_1_ng_container_11_ng_template_18_ng_container_1_Template_span_click_4_listener","chBoxRef_r8","TableColumnComponent_mat_header_cell_1_ng_container_11_ng_template_18_ng_container_1_Template","filteredColumnFilterData","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_span_click_2_listener","onFilterClick","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_span_menuClosed_2_listener","filterMenuClosed","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_div_click_6_listener","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_span_click_8_listener","dropColumnFilter","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_button_click_10_listener","columnFilterMenu_r5","closed","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_input_ngModelChange_14_listener","columnSearchInput","TableColumnComponent_mat_header_cell_1_ng_container_11_Template_input_input_14_listener","onSearchColumnFilter","TableColumnComponent_mat_header_cell_1_ng_container_11_div_17_Template","TableColumnComponent_mat_header_cell_1_ng_container_11_ng_template_18_Template","isActiveFilter","colFilterIsActive","itemsTemplate_r9","TableColumnComponent_mat_header_cell_1_Template_mat_header_cell_fwsResized_0_listener","onResized","TableColumnComponent_mat_header_cell_1_span_5_Template","TableColumnComponent_mat_header_cell_1_fws_icon_svg_6_Template","TableColumnComponent_mat_header_cell_1_ng_container_10_Template","TableColumnComponent_mat_header_cell_1_ng_container_11_Template","detailTemplateIsOpen","ɵɵpureFunction3","widthExpanded","columnWidth","isResizing","isSorting","isHeaderCentering","columnCaptionWidth","isFiltering","row_r11","searchStr","showCustomTooltip","state","tableTreeState","deleted","dislocated","fwsDisabledRow","customTooltipTemplate","ɵɵpipeBindV","locale","TableColumnComponent_mat_cell_2_ng_container_4_ng_container_2_Template","TableColumnComponent_mat_cell_2_ng_container_4_ng_container_3_Template","TableColumnComponent_mat_cell_2_ng_container_4_ng_container_4_Template","TableColumnComponent_mat_cell_2_ng_container_5_Template_mat_checkbox_change_1_listener","checkbox_r13","onCheckBoxChange","disabledSelectCheckBox","ɵɵpipeBind4","TableColumnComponent_mat_cell_2_ng_container_6_ng_container_2_Template","TableColumnComponent_mat_cell_2_ng_container_6_ng_container_3_Template","TableColumnComponent_mat_cell_2_ng_container_6_ng_container_4_Template","TableColumnComponent_mat_cell_2_ng_container_6_ng_container_5_Template","TableColumnComponent_mat_cell_2_ng_container_6_ng_container_6_Template","TableColumnComponent_mat_cell_2_ng_container_9_ng_container_2_Template","customTemplate","TableColumnComponent_mat_cell_2_ng_container_10_ng_container_1_Template_button_click_1_listener","btn_r15","TableColumnComponent_mat_cell_2_ng_container_10_ng_container_1_Template","menuMessage","TableColumnComponent_mat_cell_2_ng_container_11_ng_container_1_button_9_Template_button_click_0_listener","item_r18","onMenuItemSelected","TableColumnComponent_mat_cell_2_ng_container_11_ng_container_1_button_9_ng_container_8_Template","hasMenu","subMenu_r19","hideMenuItemBtnText","fwsDisableMenuItems","fwsDisableMenuItemsTooltipText","customSubMenuTemplate","TableColumnComponent_mat_cell_2_ng_container_11_ng_container_1_Template_button_click_1_listener","_r16","onMenuClick","TableColumnComponent_mat_cell_2_ng_container_11_ng_container_1_div_8_Template","TableColumnComponent_mat_cell_2_ng_container_11_ng_container_1_button_9_Template","columnMenu_r20","hideMenuBtn","menuDataSource","TableColumnComponent_mat_cell_2_ng_container_11_ng_template_2_Template_button_click_0_listener","_r21","onGoBackState","TableColumnComponent_mat_cell_2_ng_container_11_ng_container_1_Template","TableColumnComponent_mat_cell_2_ng_container_11_ng_template_2_Template","deletedMenu_r22","TableColumnComponent_mat_cell_2_ng_container_12_ng_container_21_div_1_Template_div_click_0_listener","_r24","item_r25","setColor","TableColumnComponent_mat_cell_2_ng_container_12_ng_container_21_div_1_fws_icon_svg_2_Template","_c16","colorText","TableColumnComponent_mat_cell_2_ng_container_12_ng_container_21_div_1_Template","selectedColor","TableColumnComponent_mat_cell_2_ng_container_12_Template_button_click_1_listener","TableColumnComponent_mat_cell_2_ng_container_12_fws_icon_svg_13_Template","TableColumnComponent_mat_cell_2_ng_container_12_ng_container_21_Template","fwsEditablePicker","menuPicker_r26","_c15","colorsToPicker","_c17","TableColumnComponent_mat_cell_2_Template_mat_cell_click_0_listener","cellClick","TableColumnComponent_mat_cell_2_ng_container_3_Template","TableColumnComponent_mat_cell_2_ng_container_4_Template","TableColumnComponent_mat_cell_2_ng_container_5_Template","TableColumnComponent_mat_cell_2_ng_container_6_Template","TableColumnComponent_mat_cell_2_ng_container_7_Template","TableColumnComponent_mat_cell_2_ng_container_8_Template","TableColumnComponent_mat_cell_2_ng_container_9_Template","TableColumnComponent_mat_cell_2_ng_container_10_Template","TableColumnComponent_mat_cell_2_ng_container_11_Template","TableColumnComponent_mat_cell_2_ng_container_12_Template","TableColumnComponent_mat_cell_2_ng_container_13_Template","_ableColumnFilterChange","_column","propArr","customColumnFilterProperty","dataSet","Set","columnFilterData","from","sort","a","b","columnDef","_btnSize","_tebleCellPadding","_changeDetectorRef","_renderer","onFilterChanged","onAllSelectedChanged","onColumnResizing","onSetColor","_colFilterIsActive","addColumnDef","defaultColumnCaptionWidth","columnCaption","offsetWidth","headerCellContent","checkbox","row","eventData","onRowSelectedChange","visibleColumns","unselectRow","selectRow","every","button","menuBtn","onMenuSelected","removeColumnDef","totalDrop","_searchInputChangeHandler","isDropFilters","values","_searchColFilterDelayTimer","_columnWidth","newRect","_isCellDividerPressed","_startX","pageX","_pressedMouseMove","resizableMousemove","_isColumnResizing","_startColumnWidth","newWidth","Number","resizableMouseup","str","regExp","MatTable","TableColumnComponent_Query","TableColumnComponent_mat_header_cell_1_Template","TableColumnComponent_mat_cell_2_Template","isSticky","isStickyEnd","TableMobileItemFieldComponent_ng_container_7_ng_container_2_Template","TableMobileItemFieldComponent_ng_container_7_ng_container_3_Template","TableMobileItemFieldComponent_ng_container_7_ng_container_4_Template","TableMobileItemFieldComponent_ng_container_8_Template_mat_checkbox_change_1_listener","checkbox_r3","TableMobileItemFieldComponent_ng_container_9_ng_container_2_Template","TableMobileItemFieldComponent_ng_container_9_ng_container_3_Template","TableMobileItemFieldComponent_ng_container_9_ng_container_4_Template","TableMobileItemFieldComponent_ng_container_9_ng_container_5_Template","TableMobileItemFieldComponent_ng_container_9_ng_container_6_Template","TableMobileItemFieldComponent_ng_container_12_ng_container_2_Template","TableMobileItemFieldComponent","_localeInfoService","_tableComponent","currentLocale","LocaleInfoService","lastItem","TableMobileItemFieldComponent_Template","TableMobileItemFieldComponent_ng_container_6_Template","TableMobileItemFieldComponent_ng_container_7_Template","TableMobileItemFieldComponent_ng_container_8_Template","TableMobileItemFieldComponent_ng_container_9_Template","TableMobileItemFieldComponent_ng_container_10_Template","TableMobileItemFieldComponent_ng_container_11_Template","TableMobileItemFieldComponent_ng_container_12_Template","TableMobileItemFieldComponent_ng_container_13_Template","MatCard","MatAccordion","MatExpansionPanel","MatExpansionPanelHeader","MatExpansionPanelTitle","MatExpansionPanelDescription","TableMobileItemComponent_div_0_mat_panel_description_6_ng_container_1_Template","headerTemplate","field_r2","last_r3","TableMobileItemComponent_div_0_mat_panel_title_5_Template","TableMobileItemComponent_div_0_mat_panel_description_6_Template","TableMobileItemComponent_div_0_fws_table_mobile_item_field_8_Template","border","fields","TableMobileItemComponent_div_1_ng_container_2_Template","TableMobileItemComponent","_border","headerProp","captionProperty","expandableMobileMode","TableMobileItemComponent_Template","TableMobileItemComponent_div_0_Template","TableMobileItemComponent_div_1_Template","MatTableDataSource","MatHeaderRowDef","MatHeaderRow","MatRowDef","MatRow","MatNoDataRow","MatSort","fwsGuid","fwsObjectEquals","fwsObjFromList","Excel","saveAs","TableVirtualScrollDataSource","TableSearchNotCyrillicLetterDirective","CdkVirtualScrollViewport","captionIconBefore","captionIconAfter","TableComponent_div_4_span_2_Template","TableComponent_div_4_span_5_Template","TableComponent_div_4_ng_container_6_Template","TableComponent_div_4_ng_container_7_Template","fwsOnlyHeaderBtnToolbar","fwsOnlySearchFieldToolbar","_c19","_c18","_c20","headerAddBtn","headerBtnTemplate_r3","searchFieldToolbarTemplate_r4","TableComponent_div_5_button_6_Template_button_click_0_listener","refresh","_c24","columnsFilterMenu_r6","TableComponent_div_5_button_9_Template_button_click_0_listener","excelClick","TableComponent_div_5_ng_container_3_Template","TableComponent_div_5_button_6_Template","TableComponent_div_5_button_7_Template","TableComponent_div_5_button_8_Template","TableComponent_div_5_button_9_Template","TableComponent_div_5_div_10_Template","_c21","fullWidthOnlySearch","_c22","_c23","refreshBtn","columnsFilter","filterMenu","exportExcel","tableTemplate_r8","TableComponent_div_6_ng_container_4_cdk_virtual_scroll_viewport_1_Template","virtualScroll","TableComponent_div_6_ng_template_5_ng_container_3_Template_fws_table_column_onFilterChanged_1_listener","onColumnFilterChanged","TableComponent_div_6_ng_template_5_ng_container_3_Template_fws_table_column_onAllSelectedChanged_1_listener","onRowsSelectedChanged","TableComponent_div_6_ng_template_5_ng_container_3_Template_fws_table_column_onSetColor_1_listener","column_r11","filteredData","_c28","minRowWidth","TableComponent_div_6_ng_template_5_mat_row_5_Template_mat_row_click_0_listener","row_r13","rowClick","TableComponent_div_6_ng_template_5_mat_row_5_Template_mat_row_dblclick_0_listener","rowDblClick","_c29","isRowSelected","onEvenRowStyles","i_r14","noDataMessage","fontSize","TableComponent_div_6_ng_template_5_Template_mat_table_matSortChange_0_listener","onSorting","TableComponent_div_6_ng_template_5_Template_mat_table_contentChanged_0_listener","onContentChanged","TableComponent_div_6_ng_template_5_ng_container_3_Template","TableComponent_div_6_ng_template_5_mat_header_row_4_Template","TableComponent_div_6_ng_template_5_mat_row_5_Template","TableComponent_div_6_ng_template_5_div_6_Template","_c27","allowBottomBar","columns","TableComponent_div_6_div_9_button_1_Template_button_click_0_listener","_r15","addClick","addDisabled","_c30","TableComponent_div_6_div_9_button_1_Template","allowAdd","TableComponent_div_6_div_10_div_3_ng_container_1_Template","contentRowDetailCaptionTemplate","_c32","selectedRow","rowDetailCaption","TableComponent_div_6_div_10_div_3_Template","TableComponent_div_6_div_10_ng_template_4_Template","TableComponent_div_6_div_10_Template_button_click_7_listener","closeRowDetailTemplate","TableComponent_div_6_div_10_ng_container_11_Template","_c31","rowDetailCaptionTemplate_r18","rowDetailHeader_r17","offsetHeight","rowDetailTemplate","TableComponent_div_6_ng_container_4_Template","TableComponent_div_6_ng_template_5_Template","TableComponent_div_6_div_9_Template","TableComponent_div_6_div_10_Template","_c25","withoutPadding","_c26","showLoader","loading","progressSpinner_r19","item_r20","TableComponent_div_7_ng_container_3_fws_table_mobile_item_1_Template","index_r21","item_r22","TableComponent_div_7_ng_container_5_fws_table_mobile_item_1_Template","index_r23","TableComponent_div_7_ng_container_3_Template","TableComponent_div_7_ng_container_5_Template","mobileDataSource","item_r24","TableComponent_div_8_fws_table_mobile_item_1_Template","TableComponent_div_9_ng_container_1_Template","mobileModeToEdit","_c33","TableComponent_ng_container_25_Template_mat_checkbox_change_2_listener","col_r27","_r26","isVisible","onVisibleColumnChange","TableComponent_ng_container_25_Template_span_click_4_listener","chBoxRef_r28","onChBoxLabelClick","undefined","_c34","iconSize","TableComponent_ng_template_34_button_0_Template_button_click_0_listener","_r29","TableComponent_ng_template_34_button_0_fws_icon_svg_1_Template","TableComponent_ng_template_34_button_0_div_2_Template","TableComponent_ng_template_34_button_0_fws_icon_svg_3_Template","TableComponent_ng_template_34_button_0_Template","TableComponent_ng_template_36_mat_form_field_2_button_7_Template_button_click_0_listener","_r31","searchInput_r32","onSerchClearClick","searchSize","TableComponent_ng_template_36_mat_form_field_2_Template_input_ngModelChange_1_listener","_r30","TableComponent_ng_template_36_mat_form_field_2_Template_input_input_1_listener","onSearchInput","TableComponent_ng_template_36_mat_form_field_2_Template_input_keydown_enter_1_listener","TableComponent_ng_template_36_mat_form_field_2_button_7_Template","_c36","allowSearchOnlyLatinLetters","emptyResultMessageMenu_r33","searchPlaceholder","TableComponent_ng_template_36_mat_form_field_2_Template","_c35","DISABLED_ROW","_exportExcel","_headerAddBtn","_refreshBtn","_columnsFilter","_search","_expandableMobileMode","_fullWidthOnlySearch","_fwsOnlyHeaderBtnToolbar","_fwsOnlySearchFieldToolbar","multiselect","_multiselect","doubleClickSelected","_doubleClickSelected","_withoutPadding","_allowSearchOnlyLatinLetters","customColumnsDict","customColumns","_columns","unshift","col","_btns","_columnDataSource","_dataSource","assembleMobileDataSource","_highlightSelected","sortingDataAccessor","columnName","defaultSortingDataCast","tabSort","_allowAdd","highlightSelected","_mobileMode","ms","selectedAllColumns","indeterminate","_columnsFilterDict","canChangeRowWindow","hideToolbar","onRowClick","onRowClickBeforeLogic","onRowDblClick","onAddClick","onContentReady","onRefresh","onCloseRowDetailTemplate","onOpenRowDetailTemplate","onChangeRowDetailTemplate","columnDataSource","_elementRow","getElementById","_checkPageSize","allowTopBar","allow","generalContainerHeight","topToolBar","tableMaxHeight","sheetName","exportExcelName","workbook","Workbook","worksheet","addWorksheet","booleanKeyName","_getExcelColumnWidth","filteredExcelData","addRows","getRow","pattern","fgColor","argb","opt","getColumn","rows","eachRow","includeEmpty","rowNumber","xlsx","writeBuffer","buffer","Blob","currentOpenStatus","hideResizeOnDetailTemplate","activateRowDetailTemplate","isOpen","showIfActiveRowDetail","_tableSearch","prototype","call","_isContentReady","dropAllColumnsFilters","menuEmptyResultTrigger","closeMenu","_searchInputTimer","tabForm","form","markAllAsTouched","openMenu","inputRef","_checkVisibleColumns","onVisibleAllColumnChange","chBoxRef","ds","fieldsProps","excludedInMobile","prop","tableColumns","filterPredicate","columnKeys","colProps","checkingData","escapeRegExp","obj","clearSelected","showSelected","_registredWidth","clientWidth","scrollWidth","mainContainer","bottomToolBar","max","_getColumnWidthNumber","widthStr","TableComponent_Query","TableComponent_div_4_Template","TableComponent_div_5_Template","TableComponent_div_6_Template","TableComponent_div_7_Template","TableComponent_div_8_Template","TableComponent_div_9_Template","TableComponent_Template_div_click_12_listener","TableComponent_Template_button_click_16_listener","menuColumnsFilterTrigger","TableComponent_Template_mat_checkbox_ngModelChange_21_listener","TableComponent_Template_mat_checkbox_change_21_listener","TableComponent_Template_span_click_23_listener","chBoxAllRef_r25","TableComponent_ng_container_25_Template","TableComponent_ng_template_32_Template","TableComponent_ng_template_34_Template","TableComponent_ng_template_36_Template","NgForm","custom_r1","ValidationHintComponent_small_0_ng_container_9_div_1_Template","isErrors","ValidationHintComponent_small_0_ng_container_1_Template","ValidationHintComponent_small_0_ng_container_2_Template","ValidationHintComponent_small_0_ng_container_3_Template","ValidationHintComponent_small_0_ng_container_4_Template","ValidationHintComponent_small_0_ng_container_5_Template","ValidationHintComponent_small_0_ng_container_6_Template","ValidationHintComponent_small_0_ng_container_7_Template","ValidationHintComponent_small_0_ng_container_8_Template","ValidationHintComponent_small_0_ng_container_9_Template","ValidationHintComponent_small_0_ng_container_10_Template","ValidationHintComponent_small_0_ng_container_11_Template","ValidationHintComponent_small_0_ng_container_12_Template","requiredInputTmpl_r3","invalidDateTimeFormat","invalidDateTimeFormatTmpl_r4","uniqueValue","uniqueValueFormatTmpl_r5","phoneNumberInvalid","phoneNumberInvalidFormatTmpl_r6","emailInvalid","emailInvalidFormatTmpl_r7","numberCharactersInvalid","numberCharactersInvalidFormatTmpl_r8","invalidFieldLength","invalidLengthTmpl_r9","onlyNumbers","onlyNumbersFormatTmpl_r10","customValidation","minValidate","minValueFormatTmpl_r12","maxValidate","maxValueFormatTmpl_r13","invalidPassword","invalidPasswordTmpl_r11","requiredNumber","minCharacters","ɵɵtextInterpolate2","maxCharacters","ValidationHintComponent_ng_template_13_span_4_Template","ValidationHintComponent_ng_template_13_span_5_Template","min","validationFormControl","_formControl","validationFormGroup","_formGroup","cd","destroy$","_setErrorsValueForControl","statusChanges","_setErrorsValueForGroup","customItem","tmpArray","uniqueErrors","ValidationHintComponent_Template","ValidationHintComponent_small_0_Template","ValidationHintComponent_ng_template_1_Template","ValidationHintComponent_ng_template_3_Template","ValidationHintComponent_ng_template_5_Template","ValidationHintComponent_ng_template_7_Template","ValidationHintComponent_ng_template_9_Template","ValidationHintComponent_ng_template_11_Template","ValidationHintComponent_ng_template_13_Template","ValidationHintComponent_ng_template_15_Template","ValidationHintComponent_ng_template_17_Template","ValidationHintComponent_ng_template_19_Template","ValidationHintComponent_ng_template_21_Template","fwsPhoneHideMask","fwsMaxInputLimit","ComponentPortal","CustomTooltipComponent","_overlay","_overlayPositionBuilder","_elementRef","_dir","tooltipContext","_overlayRef","_cssClassPrefix","PANEL_CLASS","_positionStrategy","flexibleConnectedTo","withFlexibleDimensions","withPush","withPositions","originX","originY","overlayX","overlayY","offsetY","showTooltip","create","positionStrategy","hasAttached","tooltipRef","attach","instance","contentTooltipTemplate","positionChanges","change","_updateCurrentPositionClass","connectionPair","newPosition","_currentPosition","overlayRef","classPrefix","removePanelClass","addPanelClass","hide","detach","dispose","Overlay","OverlayPositionBuilder","Directionality","hostBindings","CustomTooltipRendererDirective_HostBindings","CustomTooltipRendererDirective_mouseenter_HostBindingHandler","CustomTooltipRendererDirective_mouseleave_HostBindingHandler","CustomTooltipComponent_Template","CustomTooltipComponent_ng_container_2_Template","_element","searchTerm","textToHighlight","startFromToHighlight","highlightSearchTerm","innerHTML","escapedSearchTerm","highlightedText","match","highlightTextElement","NgControl","_injector","_lastValue","valueChange","_onChange","_touched","_output","setProperty","c","_ngControl","formControl","getControl","_onPaste","_isPaste","_onInput","output","_finalizeInput","symbol","onBlur","substr","flag","Injector","InputTextMaskDirective_HostBindings","InputTextMaskDirective_input_HostBindingHandler","InputTextMaskDirective_blur_HostBindingHandler","onInput","newValue","TableSearchNotCyrillicLetterDirective_HostBindings","TableSearchNotCyrillicLetterDirective_input_HostBindingHandler","_el","onKeyDown","keyCode","ctrlKey","shiftKey","onInputChange","setInputValue","initialValue","filteredValue","OnlyNumberDirective_HostBindings","OnlyNumberDirective_keydown_HostBindingHandler","OnlyNumberDirective_input_HostBindingHandler","OnlyNumberDirective_blur_HostBindingHandler","ResizedEvent","oldRect","isFirst","_zone","fwsResized","observer","ResizeObserver","entries","run","observe","disconnect","domSize","resizedEvent","contentRect","NgZone","_matTooltip","onMouseHover","ShowTooltipIfTruncatedDirective_HostBindings","ShowTooltipIfTruncatedDirective_mouseenter_HostBindingHandler","offsetTop","console","log","abs","offsetSymbol","offsetLength","separator","style","stringTypes","clone","JSON","parse","stringify","objectKeys","val","valByKey","offsetBottom","keyPath","reduce","source","currKey","fwsObjectSet","arrays","combSortedArrs","concat","fwsObjectToQueryString","queryString","encodeURIComponent","r","random","v","utcDate","date","offset","getTimezoneOffset","multiplier","final","toISOString","fwsDeepClone","results","_getValue","fwsFormatTimeFromDate","inputDate","isNaN","hours","y","p","hasOwnProperty","fwsConvertIsoDateToFormat","dateString","format","day","getDate","month","getMonth","year","getFullYear","generateGUID","of","_autoLoginPartialRoutesGuard","getAuthDataEmployee","authnResult","getAuthDataSH","isAuthenticated$","AutoLoginPartialRoutesGuard","HTTP_INTERCEPTORS","HttpErrorResponse","BehaviorSubject","take","throwError","catchError","BaseUrlInterceptor","baseUrl","isRefreshing","refreshTokenSubject","intercept","request","handle","apiReq","setHeaders","interceptRequest","req","headers","set","getAccessToken","status","handle401Error","refreshToken","getRefreshToken","refreshSHToken","access_token","httpInterceptorBaseUrl","useClass","retryWhen","concatMap","delay","iif","RetryHttpErrorsInterceptor","retryRequestOptions","maximumRetries","retryDelay","retryPipe","retryId","returnError","retryError","retryHttpErrorsInterceptor","pure","countryCode","maskedSection","lastTwoDigits","_accessObjects","_appObjectsRequest","hasPermissionAccess$","permissionType","accessObjectsKey","hasPermission","permissions","getPermissions$","accObj","subscription","_storage","getFilials$","force","HttpHeaders","oidcSecurityService","http","router","requestService","IDENTITY_URL","identityServerConfig","authority","AUTH_SH_USER_KEY","getConfigIdEmployee","clientId","refresh_token","isLoggedIn","userAuthData$","body","URLSearchParams","append","post","getUserData","getUserSh$","authorize","logoutEmployeeManual$","logoffAndRevokeTokens","logoffLocal","formData","FormData","HttpClient","fromEvent","clientWidth$","innerWidth","clientHeight$","innerHeight","_breakpoints","_defineBreakpoint","currentBp","_lastBp","LOCALE_ID","registerLocaleData","localeUA","_locale","formatDate","Intl","DateTimeFormat","dateStyle","_routingData","_breadcrumbs","events","_generateBreadcrumbs","snapshot","routeConfig","changeCrumbCaption","newCaption","crumb","goToUrl","nodes","_checkUrlNodes","deep","linkPath","filteredRoutes","nodeStr","isComplete","route","_zipNodes","searchingRoute","_loadedRoutes","urlStr","pathStr","urlStrNodes","pathStrNodes","node","OAuthStorageService","read","write","remove","HttpParams","_http","options","_request$","delete$","params","fromObject","requestType","postPutOptions","content","_catchErrors","DOCUMENT","LOCAL_STORAGE_THEME_KEY","initThemeMode","updateCurrentMode","saveThemeModeToStore","localStorage","toggle","DARK","uppercaseRegex","lowercaseRegex","digitRegex","allowedSpecialChars","isValidPassword","LogLevel","production","apiBaseUrl","origin","postLogoutRedirectUri","scope","responseType","silentRenew","useRefreshToken","logLevel","Debug","secureRoutes","firebase","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","measurementId","vapidKey","ngPrimeLicenseKey","ngPrimePassKey","ServiceWorkerModule","withInterceptorsFromDi","provideHttpClient","provideAnimations","BrowserModule","bootstrapApplication","MessageService","AbstractSecurityStorage","AuthModule","MAT_SNACK_BAR_DEFAULT_OPTIONS","MAT_FORM_FIELD_DEFAULT_OPTIONS","importProvidersFrom","MAT_DATE_LOCALE","providers","register","enabled","registrationStrategy","useValue","horizontalPosition","verticalPosition","catch"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}