vc-layout 1.0.84 → 1.0.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/esm2022/lib/components/global-alert/global-alert/global-alert.component.mjs +83 -83
- package/esm2022/lib/components/global-alert/global-alert.module.mjs +1 -1
- package/esm2022/lib/components/header/business-cycle/business-cycle.component.mjs +3 -3
- package/esm2022/lib/components/header/create-workflow/create-workflow.component.mjs +3 -3
- package/esm2022/lib/components/header/header-container/header-container.component.mjs +3 -3
- package/esm2022/lib/components/header/header.module.mjs +1 -1
- package/esm2022/lib/components/header/queue/queue.component.mjs +35 -35
- package/esm2022/lib/components/header/search/search.component.mjs +73 -73
- package/esm2022/lib/components/header/support/support.component.mjs +13 -13
- package/esm2022/lib/components/header/user-details/user-details.component.mjs +3 -3
- package/esm2022/lib/components/product-list/module-list/module-list.component.mjs +77 -77
- package/esm2022/lib/components/product-list/preference-list/preference-list.component.mjs +57 -57
- package/esm2022/lib/components/product-list/product-list-container/product-list-container.component.mjs +17 -17
- package/esm2022/lib/components/product-list/product-list.module.mjs +1 -1
- package/esm2022/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.mjs +71 -80
- package/esm2022/lib/components/sub-menu/sub-menu.module.mjs +1 -1
- package/esm2022/lib/configurations.mjs +1 -1
- package/esm2022/lib/constants/alerts.constant.mjs +1 -1
- package/esm2022/lib/constants/api.constant.mjs +1 -1
- package/esm2022/lib/constants/app-url.constant.mjs +3 -3
- package/esm2022/lib/constants/assets.constants.mjs +1 -1
- package/esm2022/lib/constants/business-cycle.constant.mjs +3 -3
- package/esm2022/lib/constants/product-list.constant.mjs +1 -1
- package/esm2022/lib/shared/pipe/check-create-permission.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/date-format.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/get-file-url.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/get-module-icon.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/pipes.module.mjs +1 -1
- package/esm2022/lib/shared/services/RBAC.service.mjs +1 -1
- package/esm2022/lib/shared/services/api.service.mjs +1 -1
- package/esm2022/lib/shared/services/business-cycle.service.mjs +1 -1
- package/esm2022/lib/shared/services/layout.service.mjs +1 -1
- package/esm2022/lib/shared/services/product-list.service.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/avatar/avatar/avatar.component.mjs +19 -19
- package/esm2022/lib/shared/ui-kit/avatar/avatar.module.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/click-outside.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/formgroup.module.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/pipes/pascal.pipe.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/page-loader/page-loader.component.mjs +17 -17
- package/esm2022/lib/shared/ui-kit/popover/popover-event.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover-longpress.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/popover/popover.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover.module.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover.service.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/tooltip/tooltip.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/tooltip/tooltip.module.mjs +1 -1
- package/esm2022/lib/vc-layout.component.mjs +1 -1
- package/esm2022/lib/vc-layout.module.mjs +1 -1
- package/esm2022/lib/vc-layout.service.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/vc-layout.mjs +480 -489
- package/fesm2022/vc-layout.mjs.map +1 -1
- package/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.d.ts +1 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-layout.mjs","sources":["../../../projects/vc-layout/src/lib/constants/api.constant.ts","../../../projects/vc-layout/src/lib/shared/services/layout.service.ts","../../../projects/vc-layout/src/lib/configurations.ts","../../../projects/vc-layout/src/lib/shared/services/api.service.ts","../../../projects/vc-layout/src/lib/shared/services/RBAC.service.ts","../../../projects/vc-layout/src/lib/vc-layout.service.ts","../../../projects/vc-layout/src/lib/vc-layout.component.ts","../../../projects/vc-layout/src/lib/vc-layout.module.ts","../../../projects/vc-layout/src/lib/constants/assets.constants.ts","../../../projects/vc-layout/src/lib/constants/app-url.constant.ts","../../../projects/vc-layout/src/lib/constants/product-list.constant.ts","../../../projects/vc-layout/src/lib/shared/services/product-list.service.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/tooltip/tooltip.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/page-loader/page-loader.component.ts","../../../projects/vc-layout/src/lib/shared/pipe/get-module-icon.pipe.ts","../../../projects/vc-layout/src/lib/components/product-list/module-list/module-list.component.ts","../../../projects/vc-layout/src/lib/components/product-list/preference-list/preference-list.component.ts","../../../projects/vc-layout/src/lib/components/product-list/product-list-container/product-list-container.component.ts","../../../projects/vc-layout/src/lib/constants/business-cycle.constant.ts","../../../projects/vc-layout/src/lib/constants/alerts.constant.ts","../../../projects/vc-layout/src/lib/components/global-alert/global-alert/global-alert.component.ts","../../../projects/vc-layout/src/lib/shared/services/business-cycle.service.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.service.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.html","../../../projects/vc-layout/src/lib/shared/pipe/date-format.pipe.ts","../../../projects/vc-layout/src/lib/components/header/business-cycle/business-cycle.component.ts","../../../projects/vc-layout/src/lib/components/header/business-cycle/business-cycle.component.html","../../../projects/vc-layout/src/lib/components/header/search/search.component.ts","../../../projects/vc-layout/src/lib/components/header/create-workflow/create-workflow.component.ts","../../../projects/vc-layout/src/lib/components/header/create-workflow/create-workflow.component.html","../../../projects/vc-layout/src/lib/components/header/queue/queue.component.ts","../../../projects/vc-layout/src/lib/shared/pipe/get-file-url.pipe.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/avatar/avatar/avatar.component.ts","../../../projects/vc-layout/src/lib/components/header/user-details/user-details.component.ts","../../../projects/vc-layout/src/lib/components/header/user-details/user-details.component.html","../../../projects/vc-layout/src/lib/components/header/support/support.component.ts","../../../projects/vc-layout/src/lib/shared/pipe/check-create-permission.pipe.ts","../../../projects/vc-layout/src/lib/components/header/header-container/header-container.component.ts","../../../projects/vc-layout/src/lib/components/header/header-container/header-container.component.html","../../../projects/vc-layout/src/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/tooltip/tooltip.module.ts","../../../projects/vc-layout/src/lib/shared/pipe/pipes.module.ts","../../../projects/vc-layout/src/lib/components/product-list/product-list.module.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/avatar/avatar.module.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover-event.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover-longpress.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.module.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/click-outside.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/pipes/pascal.pipe.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/pipes/searchMultiSelect.pipe.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/formgroup.module.ts","../../../projects/vc-layout/src/lib/components/global-alert/global-alert.module.ts","../../../projects/vc-layout/src/lib/components/header/header.module.ts","../../../projects/vc-layout/src/lib/components/sub-menu/sub-menu.module.ts","../../../projects/vc-layout/src/public-api.ts","../../../projects/vc-layout/src/vc-layout.ts"],"sourcesContent":["import { queue } from 'rxjs';\n\nexport const API = {\n subscriptionList: `subscriptionList`,\n organizationDetails: `orgDetails&id=`,\n userDetails: `users&id=`,\n queueCount: `complianceReport/TotalResponsibilityQueue`,\n};\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LayoutService {\n public baseUrl: string = '';\n public pathName: string = window.location.pathname;\n constructor() {\n this.setBaseUrl();\n }\n private setBaseUrl() {\n this.baseUrl = window.location.origin;\n }\n\n public ConvertUtcToLocalDateTime(timestamp: number, TimeZone: string) {\n if (typeof timestamp !== 'number' || timestamp <= 0) {\n return 0;\n }\n\n if (!TimeZone) {\n return 0;\n }\n\n const date = new Date(timestamp * 1000);\n const options: Intl.DateTimeFormatOptions = {\n timeZone: TimeZone,\n weekday: 'long',\n year: 'numeric',\n month: 'short',\n day: '2-digit',\n hour: 'numeric',\n minute: 'numeric',\n };\n\n const formattedDate = new Intl.DateTimeFormat('en', options).format(date);\n return formattedDate;\n }\n}\n","export class Configurations {\n public envConfig: any;\n\n constructor() {\n this.envConfig = {};\n }\n\n}\n","import { Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { API } from '../../constants/api.constant';\nimport { Configurations } from '../../configurations';\nimport { AuthorizerService } from '@vcomply/authorizer';\nimport { LayoutService } from './layout.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApiService {\n public env: any;\n\n public userDetails: any;\n public isLoading: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(true);\n public userId: string = '';\n private httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n token: this.authService.getToken(),\n }),\n };\n\n public subscriptionDetail$: BehaviorSubject<any | null> = new BehaviorSubject<\n any | null\n >(null);\n public organizationDetail$: BehaviorSubject<any | null> = new BehaviorSubject<\n any | null\n >(null);\n public loggedUserDetail$: BehaviorSubject<any | null> = new BehaviorSubject<\n any | null\n >(null);\n public queueCount$: BehaviorSubject<any | null> = new BehaviorSubject<\n any | null\n >(null);\n\n constructor(\n private http: HttpClient,\n private authService: AuthorizerService,\n private layoutService: LayoutService,\n @Optional() config?: Configurations\n ) {\n this.env = config?.envConfig;\n this.userDetails = authService.getUser();\n this.getOrgDetails(this.userDetails?.organisation_id ?? 0);\n this.getUserDetails(this.authService?.getMemberId() ?? '');\n this.getQueueCount();\n }\n\n /**\n *\n * API definitions\n */\n\n // Subscription List\n private subscriptionList() {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n token: this.authService.getToken(),\n }),\n };\n return this.http.get<any[]>(\n this.env.organizationGet + API.subscriptionList,\n httpOptions\n );\n }\n\n // Organization List\n private organizationDetails(id: number) {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n token: this.authService.getToken(),\n }),\n };\n return this.http.get<any[]>(\n this.env.organizationGet + API.organizationDetails + id,\n httpOptions\n );\n }\n\n // Logged in User Details\n private loggedInUserDetails(id: string) {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n token: this.authService.getToken(),\n }),\n };\n return this.http.get<any[]>(\n this.env.organizationGet + API.userDetails + id,\n httpOptions\n );\n }\n\n // Logged in Queue Count\n private queueCount() {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n token: this.authService.getToken(),\n }),\n };\n return this.http.get<any[]>(\n this.env.complianceGet + API.queueCount,\n httpOptions\n );\n }\n /**\n * ALL API CALLS\n *\n */\n\n //fetch subscription list\n public getSubscriptionList() {\n this.subscriptionList().subscribe((data: any) => {\n if (data.length) {\n let response = data[0];\n response['expiredDetails'] =\n this.layoutService.ConvertUtcToLocalDateTime(\n response.expiry_date,\n this.userDetails.timezone\n );\n this.subscriptionDetail$.next(data[0]);\n }\n });\n }\n\n //fetch organization details\n public getOrgDetails(id: number) {\n this.organizationDetails(id).subscribe((data: any) => {\n if (data) {\n this.organizationDetail$.next(data);\n }\n });\n }\n\n //fetch logged in user details\n public getUserDetails(_id: string) {\n this.loggedInUserDetails(_id).subscribe((data: any) => {\n if (data) {\n this.loggedUserDetail$.next(data);\n }\n });\n }\n\n //fetch Queue Count\n public getQueueCount() {\n this.queueCount().subscribe((data: any) => {\n if (data) {\n this.queueCount$.next(data);\n }\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RbacService {\n permissions: any = {};\n constructor(private apiService: ApiService) {}\n\n /**\n * Retrieves the RBAC (Role-Based Access Control) permissions for a given module.\n *\n * @param MODULE - The module for which to retrieve the permissions. Must be one of the following values:\n * - 'assessment'\n * - 'audit'\n * - 'issue'\n * - 'policy'\n * - 'risk'\n * - 'assurance'\n * - 'compliance'\n * - 'organization'\n *\n * @returns An array of strings representing the permissions for the specified module.\n */\n public getRBACPermissions(\n MODULE:\n | 'assessment'\n | 'audit'\n | 'issue'\n | 'policy'\n | 'risk'\n | 'assurance'\n | 'compliance'\n | 'organization'\n | 'case'\n | 'settings'\n ) {\n const data = this.apiService.loggedUserDetail$.value?.roleActions ?? [];\n if (this.permissions[MODULE]) {\n return this.permissions[MODULE];\n }\n\n const modulePermissions = data.find(\n (item: any) => item.moduleName === MODULE\n );\n const PERMISSION_ARRAY: string[] = [];\n\n // checked if module is active\n if (modulePermissions?.isActive) {\n // find all active submodules\n modulePermissions.subModule\n ?.filter((subModule: any) => subModule.isActive)\n .forEach((subModule: any) => {\n // find all active permissions\n subModule.permissions\n ?.filter((permission: any) => permission.enable)\n .forEach((permission: any) => {\n PERMISSION_ARRAY.push(permission.code);\n });\n });\n }\n\n this.permissions[MODULE] = PERMISSION_ARRAY;\n return PERMISSION_ARRAY;\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VcLayoutService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'vc-layout',\n template: ` <p>vc-layout works!</p> `,\n styles: [],\n})\nexport class VcLayoutComponent implements OnInit {\n public baseUrl: string = '';\n constructor() {\n this.setBaseUrl();\n }\n\n ngOnInit(): void {}\n\n private setBaseUrl() {\n this.baseUrl = window.location.origin;\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { VcLayoutComponent } from './vc-layout.component';\nimport { Configurations } from './configurations';\n\n@NgModule({\n declarations: [VcLayoutComponent],\n imports: [],\n exports: [VcLayoutComponent],\n})\nexport class VcLayoutModule {\n public static forRoot(\n environmentConfig: Configurations\n ): ModuleWithProviders<VcLayoutModule> {\n return {\n ngModule: VcLayoutModule,\n providers: [{ provide: Configurations, useValue: environmentConfig }],\n };\n }\n}\n","const BASE_URL: string = 'https://cdn.v-comply.com';\n\nexport const ASSETS: any = {\n unauthorized: `${BASE_URL}/application/images/unauthorized-image.svg`,\n v_icon: `${BASE_URL}/logo/prod/v-logo.svg`,\n xmas_cap: `${BASE_URL}/logo/prod/santa-cap.svg`,\n toggle_icon: `${BASE_URL}/logo/prod/hamburger-icon.svg`,\n dashboard_icon: `${BASE_URL}/logo/prod/dashboard-icon.svg`,\n to_do_responsibilities_icon: `${BASE_URL}/logo/prod/toDo-responsibility-icon.svg`,\n organization_icon: `${BASE_URL}/logo/prod/organization-icon.svg`,\n compliance_icon: `${BASE_URL}/logo/prod/compliance-icon.svg`,\n assessment_icon: `${BASE_URL}/logo/prod/assessment-icon.svg`,\n risk_icon: `${BASE_URL}/logo/prod/risk-icon.svg`,\n assurance_icon: `${BASE_URL}/logo/prod/assurance-icon.svg`,\n audit_icon: `${BASE_URL}/logo/prod/audit-icon.svg`,\n issue_icon: `${BASE_URL}/logo/prod/issue-icon.svg`,\n all_icon: `${BASE_URL}/logo/prod/policy-icon.svg`,\n download_center_icon: `${BASE_URL}/logo/prod/download-center-icon.svg`,\n settings_icon: `${BASE_URL}/logo/prod/settings-icon.svg`,\n active_dashboard_icon: `${BASE_URL}/logo/prod/active-dashboard-icon.svg`,\n active_to_do_responsibilities_icon: `${BASE_URL}/logo/prod/active-toDo-responsibility-icon.svg`,\n active_organization_icon: `${BASE_URL}/logo/prod/active-organization-icon.svg`,\n active_compliance_icon: `${BASE_URL}/logo/prod/active-compliance-icon.svg`,\n active_assessment_icon: `${BASE_URL}/logo/prod/active-assessment-icon.svg`,\n active_risk_icon: `${BASE_URL}/logo/prod/active-risk-icon.svg`,\n active_assurance_icon: `${BASE_URL}/logo/prod/active-assurance-icon.svg`,\n active_audit_icon: `${BASE_URL}/logo/prod/active-audit-icon.svg`,\n active_issue_icon: `${BASE_URL}/logo/prod/active-issue-icon.svg`,\n active_all_icon: `${BASE_URL}/logo/prod/active-policy-icon.svg`,\n active_download_center_icon: `${BASE_URL}/logo/prod/active-download-center-icon.svg`,\n active_settings_icon: `${BASE_URL}/logo/prod/active-settings-icon.svg`,\n active_case_icon: `${BASE_URL}/logo/prod/active-caseops-icon.svg`,\n support_icon: `${BASE_URL}/libraries/support/support-icon.svg`,\n case_icon: `${BASE_URL}/logo/prod/caseops-icon.svg`,\n};\n\n","export const IN_APP_URL: any = {\n MANAGE_RESPONSIBILITY:\n '/compliance/#/compliance/manage-responsibility?q={\"byResponsibilities\":{\"type\":[\"manage_responsibilities\"],\"subType\":[\"CC\"]},\"byStatus\":{\"type\":[\"active\"],\"subType\":[]},\"filterObject\":{\"responsibilityCenter\":[],\"entrustedBy\":[],\"entrustedTo\":[],\"riskIds\":[],\"responsibilityCategory\":[]},\"timePeriodDetails\":{\"type\":\"\",\"selectedPeriod\":\"\",\"selectedYear\":\"\"},\"status\":\"\"}',\n MY_RESPONSIBILITY:\n '/compliance/#/compliance/manage-responsibility?q={\"byResponsibilities\":{\"type\":[\"my_responsibilities\"],\"subType\":[\"CC\"]},\"byStatus\":{\"type\":[\"active\"],\"subType\":[]},\"filterObject\":{\"responsibilityCenter\":[],\"entrustedBy\":[],\"entrustedTo\":[],\"riskIds\":[],\"responsibilityCategory\":[]},\"timePeriodDetails\":{\"type\":\"\",\"selectedPeriod\":\"\",\"selectedYear\":\"\"},\"status\":\"\"}',\n QUEUE:\n '/compliance/#/compliance/manage-responsibility?q={\"byResponsibilities\":{\"type\":[\"responsibilities_in_queue\"],\"subType\":[\"CC\"]},\"byStatus\":{\"type\":[\"responsibilities_in_queue\"],\"subType\":[]},\"filterObject\":{\"responsibilityCenter\":[],\"entrustedBy\":[],\"entrustedTo\":[],\"riskIds\":[],\"responsibilityCategory\":[]},\"timePeriodDetails\":{\"type\":\"\",\"selectedPeriod\":\"\",\"selectedYear\":\"\"},\"status\":\"\"}',\n PROGRAM: '/program/manage-program-categories/programs-overview',\n DASHBOARD: '/global-dashboard/',\n TO_DO_RESPONSIBILITIES: '/to-do-responsibilities',\n ORGANIZATION: '/organization/',\n SETTINGS: '/settings',\n ASSESSMENT: '/assessment/',\n RISK: '/global-dashboard/risk_dashboard?module=risk',\n ASSURANCE: '/assurance/test_dashboard',\n AUDIT: '/global-dashboard/audit_dashboard?module=audit',\n ISSUE: '/global-dashboard/issue_dashboard?module=issue',\n ALL: '/policy/',\n EDIT_PROFILE: '/settings/settings/profile?edit_profile=true',\n DOWNLOAD_CENTER: '/downloads-center/',\n PASSWORD_RESET: `/settings/settings/account-access-and-settings/general-settings`,\n DEFAULT: '/policy/',\n CASE: '/global-dashboard/case_dashboard?module=caseOps',\n};\n","import { IN_APP_URL } from './app-url.constant';\nimport { ASSETS } from './assets.constants';\n\nexport const PRODUCT_LIST: any = [\n {\n name: 'View Submenu',\n icon: ASSETS.hamburger_icon,\n code: 'TOGGLE',\n class: '',\n isActive: false,\n linkClass: 'vc-hamburger',\n },\n {\n name: 'Dashboard',\n icon: ASSETS.dashboard_icon,\n code: 'DASHBOARD',\n class: 'dashboard-list',\n isActive: true,\n linkClass: '',\n },\n {\n name: 'To-Do Responsibilities',\n icon: ASSETS.toDoResponsibility_icon,\n code: 'TO_DO_RESPONSIBILITIES',\n class: 'toDoResponsibility-list',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'Organization',\n icon: ASSETS.organization_icon,\n code: 'ORGANIZATION',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'ComplianceOps',\n icon: ASSETS.compliance_icon,\n code: 'COMPLIANCE',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'Assessments',\n icon: ASSETS.assessment_icon,\n code: 'ASSESSMENT',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'RiskOps',\n icon: ASSETS.risk_icon,\n code: 'RISK',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'Assurance',\n icon: ASSETS.assurance_icon,\n code: 'ASSURANCE',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'AuditOps',\n icon: ASSETS.audit_icon,\n code: 'AUDIT',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'IssueOps',\n icon: ASSETS.issue_icon,\n code: 'ISSUE',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'CaseOps',\n icon: ASSETS.case_icon,\n code: 'CASE',\n class: '',\n isActive: false,\n linkClass: '',\n },\n {\n name: 'PolicyOps',\n icon: ASSETS.policy_icon,\n code: 'ALL',\n class: '',\n isActive: false,\n linkClass: '',\n },\n];\n\nexport const PREFERENCE_LIST: any = [\n {\n name: 'Download Center',\n icon: ASSETS.download_center_icon,\n code: 'DOWNLOAD_CENTER',\n class: '',\n isActive: false,\n linkClass: '',\n url: IN_APP_URL.DOWNLOAD_CENTER,\n },\n {\n name: 'Settings',\n icon: ASSETS.settings_icon,\n code: 'SETTINGS',\n class: '',\n isActive: false,\n linkClass: '',\n url: IN_APP_URL.SETTINGS,\n },\n];\n\nexport const CODES = ['ASSESSMENT', 'ISSUE', 'CASE'];\n\nexport const ASSESSMENT_PERMISSIONS = ['AAMA', 'AALVAL', 'AALMAL'];\n\nexport const CASE_PERMISSIONS = ['CCAMCC', 'CCAMCT', 'CCAMCP'];","import { Injectable } from '@angular/core';\nimport { IN_APP_URL } from '../../constants/app-url.constant';\nimport { RbacService } from './RBAC.service';\nimport { CASE_PERMISSIONS } from '../../constants/product-list.constant';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProductListService {\n constructor(private rbacService: RbacService) { }\n\n /**\n * Filters the subscribed products based on the subscription flags.\n *\n * @param productList - The list of products.\n * @param subscriptionList - The subscription flags.\n * @returns The filtered list of subscribed products.\n */\n public subscribedProduct(productList?: any, subscriptionList?: any) {\n const flags: { [key: string]: any } = {\n RISK: subscriptionList.risk_flag,\n ASSURANCE: subscriptionList.assurance_flag,\n ISSUE: subscriptionList.issue_flag,\n AUDIT: subscriptionList.audit_flag,\n ALL: subscriptionList.policy_flag,\n ASSESSMENT: subscriptionList.assessment_flag,\n CASE:subscriptionList.case_flag,\n COMPLIANCE:subscriptionList.compliance_flag,\n TO_DO_RESPONSIBILITIES: subscriptionList.compliance_flag,\n DASHBOARD: subscriptionList.compliance_flag\n };\n const code = Object.keys(flags).filter((key) => flags[key] === 0);\n\n return productList.filter((product: any) => !code.includes(product.code));\n }\n\n /**\n * Sets the product click callback based on the product details and feature flag.\n *\n * @param productDetails - The details of the product.\n * @param featureFlag - The feature flag.\n * @returns The URL for the product click callback.\n */\n public setProductClickCallback(productDetails: any) {\n let url = '';\n switch (productDetails.code) {\n case 'COMPLIANCE':\n return this.setComplianceURL();\n case 'CASE':\n case 'ORGANIZATION':\n case 'DASHBOARD':\n case 'ASSESSMENT':\n case 'RISK':\n case 'ASSURANCE':\n case 'AUDIT':\n case 'ISSUE':\n case 'ALL':\n case 'TO_DO_RESPONSIBILITIES':\n case 'SETTINGS':\n case 'DOWNLOAD_CENTER':\n return IN_APP_URL[productDetails.code];\n default:\n return 'javascript:void(0);';\n }\n }\n\n /**\n * Sets the compliance URL based on the feature flag and RBAC permissions.\n *\n * @param featureFlag - The feature flag.\n * @returns The URL for the compliance page.\n */\n private setComplianceURL() {\n const permissions = this.rbacService.getRBACPermissions('compliance');\n return permissions.includes('CRMR')\n ? IN_APP_URL.MANAGE_RESPONSIBILITY\n : IN_APP_URL.MY_RESPONSIBILITY;\n }\n}\n","import {\n Directive,\n Input,\n ElementRef,\n HostListener,\n Renderer2,\n OnInit,\n AfterViewInit,\n ViewChild,\n} from '@angular/core';\n\n@Directive({\n selector: '[arTooltip]',\n})\nexport class ToolTipDirective implements OnInit {\n @Input('arTooltip') tooltipTitle!: string;\n @Input() placement!: string;\n @Input() type: any;\n @Input() tooltipMandatory!: boolean;\n @Input() showTooltip = true;\n @Input() animate!: boolean;\n tooltip!: HTMLElement;\n offset = 8;\n\n constructor(private el: ElementRef, private renderer: Renderer2) {}\n ngOnInit() {}\n @HostListener('mouseenter') onMouseEnter() {\n this.hide();\n this.show();\n }\n @HostListener('mouseover') onMouseOver() {\n this.hide();\n this.show();\n }\n\n @HostListener('mouseleave') onMouseLeave() {\n this.hide();\n }\n @HostListener('mouseout') onMouseOut() {\n this.hide();\n }\n @HostListener('click') onClick() {\n this.hide();\n }\n show() {\n if (!this.showTooltip) {\n return;\n }\n this.create();\n const element = this.el.nativeElement;\n if (this.tooltipMandatory === true) {\n this.setPosition();\n this.renderer.addClass(this.tooltip, 'fl-tooltip-show');\n } else {\n if (\n element.scrollWidth * element.scrollHeight >\n element.offsetWidth * element.offsetHeight\n ) {\n this.setPosition();\n this.renderer.addClass(this.tooltip, 'fl-tooltip-show');\n }\n }\n }\n\n hide() {\n if (document.body.contains(this.tooltip)) {\n if (this.renderer) {\n this.renderer.removeChild(\n document.body,\n document.getElementById('tooltip')\n );\n }\n }\n }\n\n create() {\n this.tooltip = this.renderer.createElement('span');\n this.tooltip.setAttribute('id', 'tooltip');\n this.tooltip.innerHTML = this.tooltipTitle;\n this.renderer.appendChild(document.body, this.tooltip);\n this.renderer.addClass(this.tooltip, 'fl-tooltip');\n this.renderer.addClass(this.tooltip, `fl-tooltip-${this.placement}`);\n this.renderer.addClass(this.tooltip, `${this.type}`);\n if (this.animate) {\n this.renderer.addClass(this.tooltip, `animate-${this.placement}`);\n }\n }\n\n setPosition() {\n const hostPos = this.el.nativeElement.getBoundingClientRect();\n const tooltipPos = this.tooltip.getBoundingClientRect();\n const scrollPos =\n window.pageYOffset ||\n document.documentElement.scrollTop ||\n document.body.scrollTop ||\n 0;\n const w = window.innerWidth;\n const h = window.innerHeight;\n let top;\n let left;\n if (this.placement === 'top') {\n top = hostPos.top - tooltipPos.height - this.offset;\n left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;\n }\n\n if (this.placement === 'bottom') {\n if (hostPos.top + tooltipPos.height > h) {\n top = hostPos.top - tooltipPos.height;\n left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;\n this.renderer.removeClass(this.tooltip, `fl-tooltip-bottom`);\n this.renderer.addClass(this.tooltip, `fl-tooltip-top`);\n } else {\n top = hostPos.bottom + this.offset;\n left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;\n }\n }\n\n if (this.placement === 'left') {\n top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;\n left = hostPos.left - tooltipPos.width - this.offset;\n }\n\n if (this.placement === 'right') {\n top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;\n left = hostPos.right + this.offset;\n }\n if (this.placement === 'bottom-right') {\n top = hostPos.bottom + this.offset;\n left = hostPos.left - (tooltipPos.width - 28);\n }\n if (this.placement === 'bottom-left') {\n if (hostPos.top + tooltipPos.height > h - 30) {\n top = hostPos.top - tooltipPos.height;\n left = hostPos.left;\n this.renderer.removeClass(this.tooltip, `fl-tooltip-bottom-left`);\n this.renderer.addClass(this.tooltip, `fl-tooltip-top-left`);\n } else {\n top = hostPos.bottom + this.offset;\n left = hostPos.left;\n }\n }\n this.renderer.setStyle(this.tooltip, 'top', `${top + scrollPos}px`);\n this.renderer.setStyle(this.tooltip, 'left', `${left}px`);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'app-page-loader',\n template: `<div class=\"index-loader-area\">\n <div class=\"index-left-menu\">\n <div class=\"index-left-logo\"></div>\n <div class=\"index-left-logo\"></div>\n <div class=\"index-left-logo\"></div>\n <div class=\"index-left-icon\"></div>\n <div class=\"index-left-icon\"></div>\n </div>\n </div>`,\n styleUrls: ['./page-loader.component.less']\n})\nexport class PageLoaderComponent {\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ASSETS } from '../../constants/assets.constants';\n\n@Pipe({\n name: 'getModuleIcon',\n})\nexport class GetModuleIconPipe implements PipeTransform {\n transform(module: string, activeModule: string): string {\n const iconURLs = ASSETS;\n if (module === activeModule) {\n const activeIconName = 'active_' + module.toLowerCase() + '_icon';\n return iconURLs[activeIconName];\n }\n return iconURLs[module.toLowerCase() + '_icon'];\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n} from '@angular/core';\nimport { ASSETS } from '../../../constants/assets.constants';\nimport {\n PRODUCT_LIST,\n ASSESSMENT_PERMISSIONS,\n CODES\n} from '../../../constants/product-list.constant';\nimport { ProductListService } from '../../../shared/services/product-list.service';\nimport { ApiService } from '../../../shared/services/api.service';\nimport { RbacService } from '../../../shared/services/RBAC.service';\n\n@Component({\n selector: 'vc-module-list',\n template: `\n <app-page-loader *ngIf=\"isLoading\"></app-page-loader>\n <ng-container *ngIf=\"!isLoading\">\n <div class=\"module-list\">\n <ul class=\"vx-p-0 vx-m-0\">\n <li\n *ngFor=\"let eachProduct of PRODUCT_LIST\"\n class=\"vx-d-flex vx-align-center vx-justify-center\"\n [ngClass]=\"eachProduct.class\"\n [class.active]=\"activeModule === eachProduct.code\"\n >\n <a\n class=\"vx-d-flex vx-align-center vx-justify-center vx-w-100\"\n [ngClass]=\"eachProduct?.linkClass\"\n [arTooltip]=\"eachProduct.name\"\n placement=\"right\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n [animate]=\"true\"\n (click)=\"eachProduct?.callback(eachProduct)\"\n ><img\n [src]=\"eachProduct.code | getModuleIcon : activeModule\"\n alt=\"\"\n width=\"16\"\n height=\"16\"\n />\n <ng-template *ngIf=\"eachProduct?.code !== 'TOGGLE'\">\n [href]=\"eachProduct.url\"\n </ng-template>\n <ng-template *ngElse>\n (click)=\"onSubMenuToggle(eachProduct)\"\n </ng-template>\n </a>\n </li>\n </ul>\n </div>\n </ng-container>\n `,\n styleUrls: ['./module-list.component.less'],\n})\nexport class ModuleListComponent implements OnChanges, OnInit {\n isLoading: boolean = false;\n CODES: any = CODES;\n @Input() featureFlag: any;\n @Input() activeModule: string = 'COMPLIANCE';\n @Input() isSubMenuVisible: boolean = true;\n @Output() onToggleSubmenu: EventEmitter<any> = new EventEmitter<any>();\n\n ASSETS: any = ASSETS;\n PRODUCT_LIST: any = []; \n assessmentPermission: Array<any> = [];\n\n constructor(\n private productListService: ProductListService,\n private apiService: ApiService,\n private rbacService: RbacService\n ) {\n this.apiService.getSubscriptionList();\n }\n ngOnInit(): void {\n this.setLoader();\n this.initializeProductList();\n }\n ngOnChanges(): void {\n this.getUserDetails();\n this.checkModuleSubscription();\n }\n\n /**\n * Initialize the product list only after all required data is available\n * This prevents icon flashing by building the filtered list incrementally\n */\n private initializeProductList() {\n this.apiService.loggedUserDetail$.subscribe((userData) => {\n this.apiService.subscriptionDetail$.subscribe((subscriptionData) => {\n if (userData && subscriptionData) {\n this.buildFilteredProductList(subscriptionData);\n }\n });\n });\n }\n\n /**\n * Build the filtered product list incrementally and show all at once\n * This prevents icon flashing by only showing the final filtered result\n */\n private buildFilteredProductList(subscriptionData: any) {\n let filteredList = [...new Set(PRODUCT_LIST)];\n\n filteredList = this.productListService.subscribedProduct(\n filteredList,\n subscriptionData\n );\n\n if (\n !this.assessmentPermissionCheck(\n this.rbacService.getRBACPermissions('assessment')\n )\n ) {\n filteredList = filteredList.filter(\n (item: any) => item.code !== CODES[0]\n );\n }\n\n if (this.featureFlag.isFeatureEnabled('ff_cases_enabled')) {\n filteredList = filteredList.filter(\n (item: any) => item.code !== CODES[1]\n );\n } else {\n filteredList = filteredList.filter(\n (item: any) => item.code !== CODES[2]\n );\n }\n\n if (!this.isSubMenuVisible) {\n filteredList = filteredList.filter(\n (product: any) => product.code !== 'TOGGLE'\n );\n }\n\n this.PRODUCT_LIST = filteredList;\n this.setProductList();\n }\n\n /**\n * Handles the toggle event of the submenu for each product.\n *\n * @param eachProduct - The product object for which the submenu is being toggled.\n * @returns Returns false to prevent the default behavior.\n */\n public onSubMenuToggle(eachProduct: any) {\n if (eachProduct?.code === 'TOGGLE') {\n this.onToggleSubmenu.emit();\n } else {\n window.location.href = eachProduct.url;\n }\n }\n /**\n * Checks the module subscription and updates the product list accordingly.\n * Subscribes to the `subscriptionDetail$` observable from the `apiService` and updates the `PRODUCT_LIST` property of the component based on the received data.\n *\n * @remarks\n * This method is typically called when the component is initialized or when the subscription details change.\n */\n private checkModuleSubscription() {\n this.apiService.subscriptionDetail$.subscribe((data) => {\n if (data) {\n this.PRODUCT_LIST = this.productListService.subscribedProduct(\n this.PRODUCT_LIST,\n data\n );\n\n if (!this.isSubMenuVisible) {\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\n (product: any) => product.code !== 'TOGGLE'\n );\n }\n console.log(this.PRODUCT_LIST, this.isSubMenuVisible);\n }\n });\n }\n\n private setLoader() {\n this.apiService.isLoading.subscribe((res) => {\n this.isLoading = res;\n });\n }\n\n /**\n * Sets the product list by mapping each product in the PRODUCT_LIST array.\n * Each product's callback is set to the onSubMenuToggle method bound to the current instance.\n * The product's URL is set using the setProductClickCallback method of the productListService,\n * passing the product and the featureFlag as arguments. If the returned URL is null or undefined,\n * an empty string is assigned to the product's URL property.\n */\n\n private assessmentPermissionCheck(data: any[]): boolean {\n const assessmentPermissions = [...new Set(data)];\n return (\n assessmentPermissions.length > 0 &&\n assessmentPermissions.some((permission: any) =>\n ASSESSMENT_PERMISSIONS.includes(permission)\n )\n );\n }\n\n private setProductList() {\n this.PRODUCT_LIST = this.PRODUCT_LIST.map((product: any) => {\n product.callback = this.onSubMenuToggle.bind(this);\n product.url =\n this.productListService.setProductClickCallback(product) ?? '';\n return product;\n });\n this.apiService.isLoading.next(false);\n }\n\n private getUserDetails() {\n this.apiService.loggedUserDetail$.subscribe((data) => {\n if (data) {\n if (\n !this.assessmentPermissionCheck(\n this.rbacService.getRBACPermissions('assessment')\n )\n ) {\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\n (item: any) => item.code !== CODES[0]\n );\n }\n\n this.setCasePermission();\n this.setProductList();\n }\n });\n }\n private setCasePermission() {\n if (this.featureFlag.isFeatureEnabled('ff_cases_enabled')) {\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\n (item: any) => item.code !== CODES[1]\n );\n } else {\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\n (item: any) => item.code !== CODES[2]\n );\n }\n }\n}\n\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ASSETS } from '../../../constants/assets.constants';\nimport { PREFERENCE_LIST } from '../../../constants/product-list.constant';\nimport { LayoutService } from '../../../shared/services/layout.service';\nimport { ApiService } from '../../../shared/services/api.service';\n\n@Component({\n selector: 'vc-preference-list',\n template: `\n <ng-container *ngIf=\"!isLoading\">\n <div class=\"preference-list\">\n <ul class=\"vx-p-0 vx-m-0\">\n <li\n *ngFor=\"let eachItems of PREFERENCE_LIST\"\n class=\"vx-d-flex vx-align-center vx-justify-center\"\n [class.active]=\"activeModule === eachItems.code\"\n >\n <a\n class=\"vx-d-flex vx-align-center vx-justify-center vx-w-100\"\n [arTooltip]=\"eachItems?.name\"\n placement=\"right\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n [animate]=\"true\"\n [href]=\"eachItems?.url\"\n ><img\n [src]=\"eachItems.code | getModuleIcon : activeModule\"\n alt=\"\"\n width=\"16\"\n height=\"16\"\n /></a>\n </li>\n </ul>\n </div>\n </ng-container>\n `,\n styleUrls: ['./preference-list.component.less'],\n})\nexport class PreferenceListComponent implements OnInit {\n isLoading: boolean = false;\n PREFERENCE_LIST: any = PREFERENCE_LIST;\n @Input() activeModule: string = 'SETTINGS';\n\n constructor(private layoutService: LayoutService, private apiService: ApiService) {\n this.setUrl();\n }\n\n ngOnInit(): void {\n this.setLoader();\n }\n\n setLoader() {\n this.apiService.isLoading.subscribe((isLoading: boolean) => {\n this.isLoading = isLoading;\n });\n }\n\n setUrl() {\n this.PREFERENCE_LIST = this.PREFERENCE_LIST.map((item: any) => {\n item.url = this.layoutService.baseUrl + item.url;\n return item;\n });\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'vc-product-list-container',\n template: `<div class=\"product-list-container\">\n <vc-module-list\n [featureFlag]=\"featureFlag\"\n [activeModule]=\"activeModule\"\n [isSubMenuVisible]=\"isSubMenuVisible\"\n (onToggleSubmenu)=\"onToggleSubmenu.emit()\"\n ></vc-module-list>\n <vc-preference-list [activeModule]=\"activeModule\"></vc-preference-list>\n </div> `,\n styleUrls: ['./product-list-container.component.less'],\n})\nexport class ProductListContainerComponent {\n @Input() featureFlag: any;\n @Input() activeModule: string = 'COMPLIANCE';\n @Input() isSubMenuVisible: boolean = true;\n @Output() onToggleSubmenu: EventEmitter<any> = new EventEmitter<any>();\n}\n","export const BUSINESS_CYCLE_URL: string[] = [\n '/global-dashboard/compliance_dashboard',\n '/global-dashboard/audit_dashboard',\n '/global-dashboard/issue_dashboard',\n '/global-dashboard/risk_dashboard',\n '/global-dashboard/case_dashboard',\n '/global-dashboard/case_dashboard/workflow_dashboard',\n '/global-dashboard/dashboard',\n '/program/manage-program-categories/programs-overview',\n '/program/program-workroom',\n '/compliance/manage-responsibility',\n '/compliance/reports/not-completed-report',\n '/assessment/assessment-workroom/response-dashboard',\n '/risk/reported-risk',\n '/risk/manage-risk-category',\n '/risk/risk-status',\n '/risk/risk-register',\n '/risk/risk-workroom/',\n '/risk/my-assessment',\n '/risk/risk-workshop',\n '/case/case_dashboard/case_ageing',\n '/case/workflow_dashboard/case_ageing',\n '/case/case_dashboard/case_metric/missed_case_deadlines',\n '/case/workflow_dashboard/case_metric/missed_case_deadlines',\n '/case/case_dashboard/case_metric/open_cases',\n '/case/workflow_dashboard/case_metric/open_cases',\n '/case/case_dashboard/case_overview',\n '/case/workflow_dashboard/case_overview',\n '/compliance/',\n '/audit/issue/manage-issues/overview',\n '/audit/issue/issue-workroom',\n '/audit/issue/manage-issues/my-issues',\n '/audit/issue/manage-issues/issues-i-am-overseeing',\n '/organization/#/user-details',\n '/organization/#/responsibility-center-details',\n '/manage-case-attributes',\n '/case-register',\n '/reported-cases/reported-by-me',\n '/reported-cases',\n];\n\nexport const FUTURE_DATES: string = 'Show Future Due Dates';\n","export const GLOBAL_ALERTS: any = {\n contactUs: `<a href=\"mailto:help@v-comply.com\">CONTACT US</a>`,\n trialUserExpired: `SUBSCRIPTION EXPIRED: Contact Sales to extend your trial.`,\n EMAIL_PAUSE: `Your organization's email notifications have been paused. Hence, you will not receive any workflow related emails from VComply.`,\n NOTIF_PAUSE_MESSAGE: `Notifications have been paused by the Key Admin. You will not receive any notifications until the Key Admin turns it back on.`,\n};\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { GLOBAL_ALERTS } from '../../../constants/alerts.constant';\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\nimport { ApiService } from '../../../shared/services/api.service';\n\n@Component({\n selector: 'vc-global-alert',\n template: `\n <div\n *ngIf=\"messages.length > 0\"\n class=\"global-alert vx-d-flex vx-align-center vx-justify-center\"\n [class.expired]=\"messages[activeIndex]?.class === 'HIGH'\"\n >\n <i class=\"icons vx-fs-12 vx-mr-2\"></i>\n <!-- <span class=\"vx-fs-13\"\n >Email notifications have been paused by the Key Admin. You will not be able\n to edit your email notifications until the Key Admin turns it back on.</span\n > -->\n <span\n class=\"vx-fs-13\"\n [innerHTML]=\"messages[activeIndex]?.message\"\n ></span>\n <div\n *ngIf=\"messages.length > 1\"\n class=\"global-alert-action vx-d-flex vx-align-center vx-lh-6\"\n >\n <button\n [class.disabled]=\"activeIndex === 0\"\n (click)=\"activeIndex = activeIndex - 1\"\n class=\"vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled\"\n >\n <i class=\"icons\"></i>\n </button>\n <span class=\"vx-fs-13 vx-txt-white\">{{ activeIndex + 1 }}</span>\n <span class=\"divider vx-fs-11 vx-txt-white\">/</span>\n <span class=\"vx-fs-13 vx-fw-600 vx-txt-white\">{{\n messages.length\n }}</span>\n\n <button\n (click)=\"activeIndex = activeIndex + 1\"\n [class.disabled]=\"activeIndex === messages.length - 1\"\n class=\"vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center\"\n >\n <i class=\"icons\"></i>\n </button>\n </div>\n </div>\n `,\n styleUrls: ['./global-alert.component.less'],\n})\nexport class GlobalAlertComponent {\n activeIndex = 0;\n messages: Array<any> = [];\n mailAlert: any;\n isNotificationVisible: boolean = false;\n subscriptionData: any;\n @Input() feature: any;\n @Output() subscriptionStatus = new EventEmitter();\n\n constructor(private apiService: ApiService) {\n this.setSubscriptionInfo();\n }\n\n setSubscriptionInfo() {\n this.apiService.subscriptionDetail$.subscribe((res) => {\n if (res) {\n this.subscriptionData = res;\n this.setMessages(this.subscriptionData);\n this.getOrgDetails();\n }\n });\n }\n\n getOrgDetails() {\n this.apiService.organizationDetail$.subscribe((res) => {\n if (res) {\n this.setMailAlert(res);\n }\n });\n }\n\n setMessages(subscriptionData: any) {\n const messages = [];\n this.activeIndex = 0;\n\n if (subscriptionData) {\n const {\n trial_flag,\n no_of_days_left,\n after_expired_days_allow,\n no_of_days_for_password_expire,\n } = subscriptionData;\n\n if (trial_flag && no_of_days_left <= 0) {\n messages.push({\n message: GLOBAL_ALERTS.trialUserExpired + GLOBAL_ALERTS.contactUs,\n class: 'HIGH',\n });\n } else if (no_of_days_left > 0 && no_of_days_left <= 30) {\n messages.push({\n message: `YOUR SUBSCRIPTION EXPIRES IN ${no_of_days_left} DAYS. ${GLOBAL_ALERTS.contactUs}`,\n class: no_of_days_left <= 10 ? 'HIGH' : 'MEDIUM',\n });\n } else if (no_of_days_left <= 0) {\n messages.push({\n message: `SUBSCRIPTION EXPIRED: YOU WILL NOT BE ABLE TO LOGIN TO YOUR ACCOUNT AFTER ${after_expired_days_allow} DAYS. ${GLOBAL_ALERTS.contactUs}`,\n class: 'HIGH',\n });\n }\n\n if (no_of_days_for_password_expire < 1) {\n messages.push({\n message: `YOUR PASSWORD HAS EXPIRED. PLEASE <a href=\"${this.getPasswordResetUrl()}\" target=\"_blank\">CLICK HERE</a> TO RESET YOUR PASSWORD.`,\n class: 'HIGH',\n });\n } else if (no_of_days_for_password_expire < 30) {\n messages.push({\n message: `YOUR PASSWORD IS GOING TO EXPIRE IN ${no_of_days_for_password_expire} DAYS. <a href=\"${this.getPasswordResetUrl()}\" target=\"_blank\">CLICK HERE</a> TO RESET YOUR PASSWORD.`,\n class: 'MEDIUM',\n });\n }\n }\n\n this.messages = messages;\n this.isNotificationVisible = this.messages.length > 0;\n this.subscriptionStatus.emit(this.isNotificationVisible);\n }\n\n /**\n * If the response is true, then push the message to the array. If the response is false, then remove\n * the message from the array.\n * </code>\n * @param {any} res - any = {\n */\n setMailAlert(res: any) {\n const emailPausedMessage = this.feature?.isFeatureEnabled(\n 'ff_email_alert_update'\n )\n ? GLOBAL_ALERTS.NOTIF_PAUSE_MESSAGE\n : GLOBAL_ALERTS.EMAIL_PAUSE;\n\n const index = this.messages.findIndex((message: any) =>\n message?.message?.includes(emailPausedMessage)\n );\n\n if (res?.is_mail_block === 1 && index === -1) {\n this.messages.push({\n message: emailPausedMessage,\n class: 'MEDIUM',\n });\n } else if (res?.is_mail_block === 0 && index >= 0) {\n this.setMessages(this.subscriptionData);\n }\n\n this.isNotificationVisible = this.messages.length > 0;\n this.subscriptionStatus.emit(this.isNotificationVisible);\n }\n\n getPasswordResetUrl() {\n return `https://${window.location.host}${IN_APP_URL.PASSWORD_RESET}`;\n }\n}\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\nimport { AuthorizerService } from '@vcomply/authorizer';\nimport { BehaviorSubject } from 'rxjs';\nimport moment from 'moment/moment';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BusinessCycleService {\n public businessCycleList$ = new BehaviorSubject<any>({});\n public orgDetails$ = new BehaviorSubject<any>({});\n public selectedBusinessCycle$ = new BehaviorSubject<any>({});\n public changeBusinessCycle$: BehaviorSubject<boolean> =\n new BehaviorSubject<boolean>(false);\n constructor(private authorizer: AuthorizerService) {\n this.isBusinessCycleAvailable();\n }\n\n /**\n * #### Description\n * it will check the business cycle stored in local is same business cycle as the user login\n * Determines whether correct business cycle is\n * @returns true if correct business cycle\n */\n isCorrectBusinessCycle(cycle: any): boolean {\n const localStorageData = localStorage.getItem('businessCycle') ?? '';\n if (!localStorageData) {\n return false;\n }\n if (JSON.parse(localStorageData).userId === this.authorizer.getUserId()) {\n for (let i = 0; i < cycle.length; i++) {\n if (\n cycle[i].start_date ==\n JSON.parse(localStorageData)?.selectedCycle?.start_date\n ) {\n return true;\n }\n }\n return false;\n } else {\n return false;\n }\n }\n\n /**\n * #### Description\n * set business cycle in local storage if local storage don't have business cycle.\n * Sets business cycle\n * @param businessCycleList list of all the cycle of the organization\n */\n setBusinessCycle(businessCycleList: any) {\n let cycle: any = {};\n businessCycleList?.forEach((el: any) => {\n if (el.selected) {\n cycle = el;\n }\n });\n cycle['selected_cycle_arr'] = this.setSelectedCycleArray(cycle);\n let businessCycleObject = {\n userId: this.authorizer.getUserId(),\n selectedCycle: {\n start_date: cycle?.start_date,\n end_date: cycle.end_date,\n selected: true,\n business_cycle: cycle?.business_cycle,\n selected_cycle: cycle?.start_date + '-' + cycle?.end_date,\n selected_cycle_arr: cycle?.selected_cycle_arr,\n },\n };\n localStorage.setItem('businessCycle', JSON.stringify(businessCycleObject));\n this.isBusinessCycleAvailable();\n }\n\n setSelectedCycleArray(cycle: any) {\n let cycleArray = cycle.start_date + '-' + cycle.end_date;\n return [cycleArray];\n }\n\n /**\n * #### Description\n * if business cycle is found in local the it will set in this selectedBusinessCycle$ variable.\n * it is subject variable so we can use it in different component\n */\n isBusinessCycleAvailable() {\n const localStorageData = localStorage.getItem('businessCycle') ?? '';\n const businessCycleYear = JSON.parse(localStorageData)?.selectedCycle;\n if (businessCycleYear?.selected_cycle_arr?.length === 1) {\n this.selectedBusinessCycle$.next(businessCycleYear);\n } else if (\n businessCycleYear &&\n businessCycleYear?.selected_cycle_arr?.length > 1\n ) {\n businessCycleYear['business_cycle'] = [];\n businessCycleYear?.selected_cycle_arr.forEach((date: any) => {\n businessCycleYear['business_cycle'].push(\n this.convertNumericAlpha(date)\n );\n });\n this.selectedBusinessCycle$.next(businessCycleYear);\n }\n }\n\n /**\n * #### Description\n *\n * it will convert date from dd-mm-yyyy to dd mmm yyyy formate\n * Converts date\n * @param date\n * @returns date in this formate DD MMM YYYY\n */\n convertDate(date: string) {\n return moment(date, 'DD-MM-YYYY').format('DD MMM YYYY');\n }\n\n /**\n * #### Description\n *\n * Converts numeric alpha\n * @param str = \"01-05-2021-30-04-2022\"\n * @returns = \"01 May 2021 - 30 Apr 2022\"\n */\n convertNumericAlpha(str: any) {\n return (\n this.convertDate(str.substring(0, 10)) +\n ' - ' +\n this.convertDate(str.substring(str.length - 10, str.lenth))\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PopoverService {\n positionX!: number;\n positionY!: number;\n popoverHeight: any;\n popoverWidth: any;\n elementPosition: any;\n elementDirection: any;\n constructor() {\n \n }\n}\n","import {\n Component,\n ElementRef,\n Input,\n OnInit,\n ViewChild,\n EventEmitter,\n Output,\n} from '@angular/core';\nimport { PopoverService } from './popover.service';\n\n@Component({\n selector: 'vui-popover',\n templateUrl: './popover.component.html',\n styleUrls: ['./popover.component.less'],\n})\nexport class PopoverComponent implements OnInit {\n @Input() dontCloseonClick!: boolean;\n popoverContainer = false;\n @ViewChild('popoverRatio') popoverRatio!: ElementRef;\n @ViewChild('popoverContent') popoverContent!: ElementRef;\n @Output() closedOnOverlay = new EventEmitter();\n constructor(public popoverService: PopoverService) {}\n showPopover = false;\n leftValue: any;\n topValue: any;\n popoverHeight: any;\n popoverWidth: any;\n positionX!: number;\n positionY!: number;\n ngOnInit(): void {}\n popover() {\n this.popoverContainer = false;\n this.popoverContainer = true;\n setTimeout(() => {\n this.getPosition();\n this.showPopover = true;\n }, 10);\n return false;\n }\n popoverEvent() {\n this.popoverContainer = false;\n this.popoverContainer = true;\n setTimeout(() => {\n // this.getPosition();\n this.positionX = this.popoverService.positionX;\n this.positionY = this.popoverService.positionY;\n this.showPopover = true;\n }, 10);\n return false;\n }\n closePopover(top?: string) {\n if (!this.dontCloseonClick || top === 'top') {\n this.popoverContainer = false;\n this.showPopover = false;\n }\n }\n\n close() {\n this.popoverContainer = false;\n this.showPopover = false;\n }\n clickedPopover() {\n this.getPosition();\n }\n getPosition() {\n // setTimeout(() => {\n const elementPositionn = this.popoverService.elementPosition;\n this.popoverHeight = this.popoverRatio.nativeElement.offsetHeight;\n this.popoverWidth = this.popoverRatio.nativeElement.offsetWidth;\n if (this.popoverService.elementDirection === 'left') {\n this.leftValue = elementPositionn.left;\n if (\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\n window.outerHeight - 200\n ) {\n this.topValue = elementPositionn.top - this.popoverHeight;\n } else {\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n }\n if (this.popoverService.elementDirection === 'right') {\n this.leftValue =\n elementPositionn.left + elementPositionn.width - this.popoverWidth;\n if (\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\n window.outerHeight - 200\n ) {\n this.topValue = elementPositionn.top - this.popoverHeight;\n } else {\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n }\n if (this.popoverService.elementDirection === 'top') {\n this.leftValue = elementPositionn.left + elementPositionn.width;\n if (\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\n window.outerHeight - 200\n ) {\n this.topValue = elementPositionn.top - this.popoverHeight;\n } else {\n this.topValue = elementPositionn.top - this.popoverHeight;\n }\n }\n if (this.popoverService.elementDirection === 'bottom') {\n this.leftValue = elementPositionn.left + elementPositionn.width;\n if (\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\n window.outerHeight - 200\n ) {\n this.topValue = elementPositionn.top - this.popoverHeight;\n } else {\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n }\n if (this.popoverService.elementDirection === 'self-position') {\n this.leftValue =\n elementPositionn.left +\n elementPositionn.width / 2 -\n this.popoverWidth / 2;\n this.topValue = elementPositionn.top - 15;\n }\n if (this.popoverService.elementDirection === 'top-center') {\n this.leftValue =\n elementPositionn.left +\n elementPositionn.width / 2 -\n this.popoverWidth / 2;\n // this.topValue = elementPositionn.top - this.popoverHeight;\n if (\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\n window.outerHeight\n ) {\n this.topValue = elementPositionn.top + elementPositionn.height;\n } else {\n this.topValue = elementPositionn.top - this.popoverHeight;\n }\n }\n if (this.popoverService.elementDirection === 'center') {\n this.leftValue =\n elementPositionn.left +\n elementPositionn.width / 2 -\n this.popoverWidth / 2;\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n this.positionX = this.leftValue;\n this.positionY = this.topValue;\n // }, 10);\n }\n}\n","<div\n class=\"vc-overlay\"\n *ngIf=\"popoverContainer\"\n (click)=\"closePopover('top'); this.closedOnOverlay.emit()\"\n></div>\n<div\n class=\"action\"\n [class.active]=\"showPopover\"\n *ngIf=\"popoverContainer\"\n [style.top.px]=\"positionY\"\n [style.left.px]=\"positionX\"\n #popoverRatio\n id=\"popoverRatio\"\n>\n <div (click)=\"closePopover(); clickedPopover()\" #popoverContent>\n <ng-content></ng-content>\n </div>\n</div>\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\nimport { PopoverService } from './popover.service';\n\n@Directive({\n selector: '[appPopover]',\n})\nexport class PopoverDirective {\n dynamicComponent: any;\n @Input() refrence: any;\n @Input() position!: string;\n leftValue: any;\n topValue: any;\n constructor(private elRef: ElementRef, private popoverService: PopoverService) {}\n @HostListener('click') click() {\n this.popoverService.elementPosition = this.elRef.nativeElement.getBoundingClientRect();\n this.popoverService.elementDirection = this.position;\n // this.getPosition();\n }\n\n getPosition() {\n setTimeout(() => {\n // this.popoverService.elementPosition = this.elRef.nativeElement.getBoundingClientRect();\n const elementPositionn = this.elRef.nativeElement.getBoundingClientRect();\n if (this.position === 'left') {\n this.leftValue = elementPositionn.left;\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\n } else {\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n }\n if (this.position === 'right') {\n this.leftValue = elementPositionn.left + elementPositionn.width - this.popoverService.popoverWidth;\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\n } else {\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n }\n if (this.position === 'top') {\n this.leftValue = elementPositionn.left + elementPositionn.width;\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\n } else {\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\n }\n }\n if (this.position === 'bottom') {\n this.leftValue = elementPositionn.left + elementPositionn.width;\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\n } else {\n this.topValue = elementPositionn.top + elementPositionn.height;\n }\n }\n if (this.position === 'self-position') {\n this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;\n this.topValue = elementPositionn.top - 15;\n }\n if (this.position === 'top-center') {\n this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\n }\n this.popoverService.positionX = this.leftValue;\n this.popoverService.positionY = this.topValue;\n }, 10);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'app-cs-checkbox',\n templateUrl: './cs-checkbox.component.html',\n styleUrls: ['./cs-checkbox.component.less'],\n})\nexport class CsCheckboxComponent implements OnInit {\n @Input() disabled = false;\n @Input() ngValue!: any;\n @Input() value: any;\n @Output() ngValueChange = new EventEmitter<any>();\n constructor() {}\n\n ngOnInit(): void {}\n valueChanged() {\n this.ngValueChange.emit(this.ngValue);\n }\n}\n","<label class=\"checkbox-item\" [class.disabled]=\"disabled\">\n <input type=\"checkbox\" [name]=\"value\" [disabled]=\"disabled\" [(ngModel)]=\"ngValue\" (ngModelChange)=\"valueChanged()\" />\n <span class=\"checkbox\">\n <span class=\"inner\"></span>\n </span>\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path class=\"checkmark__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\n </svg>\n <span class=\"value\"><ng-content></ng-content></span>\n</label>\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'dateFormat',\n})\nexport class DateFormatPipe implements PipeTransform {\n transform(value: string): string {\n // Split the input date string\n const [day, month, year] = value.split('-');\n\n // Convert month number to month name\n const monthNames = [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n ];\n const monthName = monthNames[parseInt(month, 10) - 1];\n\n // Return the formatted date\n return `${day} ${monthName} ${year}`;\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { AuthorizerService } from '@vcomply/authorizer';\nimport { BusinessCycleService } from '../../../shared/services/business-cycle.service';\nimport { ApiService } from '../../../shared/services/api.service';\nimport { FUTURE_DATES } from '../../../constants/business-cycle.constant';\n\n@Component({\n selector: 'vc-business-cycle',\n templateUrl: './business-cycle.component.html',\n styleUrls: ['./business-cycle.component.less'],\n})\nexport class BusinessCycleComponent implements OnInit {\n cycleToShow: string = 'Business Cycle';\n businessCycleArr: Array<string> = [];\n hiddenCycle: Array<number> = [];\n tempBusinessCycleArr: Array<string> = [];\n tempHiddenCycle: Array<number> = [0];\n businessCyclesList: Array<any> = [];\n businessCycleList!: Array<any>;\n tempSelectedCycle: any[] = [];\n userId: number = 0;\n selectedBusinessCycle!: any;\n @Output() businessCycleChange = new EventEmitter();\n\n @Input() orgDetails: any;\n constructor(\n private authService: AuthorizerService,\n private businessCycleService: BusinessCycleService,\n private apiService: ApiService\n ) {\n this.userId = this.authService.getUserId() ?? 0;\n this.businessCycleService.isBusinessCycleAvailable();\n this.setSelectedBusinessCycle();\n this.getOrgDetails();\n }\n\n ngOnInit(): void {}\n\n getOrgDetails() {\n this.apiService.organizationDetail$.subscribe((res: any) => {\n if (res) {\n this.setBusinessCycleKey(res.business_cycles_arr);\n this.setBusinessCycle();\n this.setCycleEnableDisable();\n }\n });\n }\n\n setSelectedBusinessCycle() {\n this.businessCycleService.selectedBusinessCycle$.subscribe((res: any) => {\n if (res) {\n this.selectedBusinessCycle = res;\n this.setTempSelectedCycle(res);\n }\n });\n }\n\n /**\n * #### Description\n * it will set a new key in every cycle\n * key will use for disabled or enable the cycle from business cycle list.\n * @param businessCycle this the business cycle list\n */\n setBusinessCycleKey(businessCycle: any) {\n this.businessCycleList = businessCycle;\n if (this.businessCycleList.length)\n this.businessCycleList.map((cycle: any) => {\n cycle['isDisabled'] = false;\n });\n }\n\n /**\n * #### Description\n * it will check the cycle if it is not checked.\n * if it has checked then it will uncheck that cycle.\n * @param cycle checked or unchecked cycle from business cycle list.\n * @param index it give the index value of business cycle list which is selected.\n */\n selectCycle(cycle: any, index: number) {\n const isExist = this.tempSelectedCycle.findIndex(\n (el: any) => el.start_date == cycle.start_date\n );\n if (isExist >= 0) {\n this.tempSelectedCycle.splice(isExist, 1);\n } else if (this.tempSelectedCycle?.length === 0) {\n this.tempSelectedCycle.push(cycle);\n } else {\n const selectedIndex = this.businessCycleList.findIndex(\n (el: any) => el.start_date == this.tempSelectedCycle[0]?.start_date\n );\n if (selectedIndex < index) {\n this.tempSelectedCycle.unshift(cycle);\n } else {\n this.tempSelectedCycle.push(cycle);\n }\n }\n this.setCycleEnableDisable();\n }\n\n /**\n * #### Description\n *\n * need to check cycle includes in selected cycle array\n * Determines whether selected cycle is\n * @param selectedCycle selected Cycle which user checked or auto selected cycle.\n * @param cycle all indivisible cycle of business cycle of the organization.\n * @returns boolean value is cycle exist in selected cycle or not.\n */\n\n isSelectedCycle(selectedCycle: any, cycle: any) {\n let isSelected = false;\n selectedCycle.forEach((el: any): any => {\n if (el.start_date == cycle.start_date) {\n isSelected = true;\n }\n });\n return isSelected;\n }\n\n /**\n * #### Description\n *\n * set selected businessCycle to temp business cycle indivisible if there is two selected cycle\n * Sets temp selected cycle\n * @param cycle selected business cycle from local storage\n */\n setTempSelectedCycle(cycle: any) {\n this.tempSelectedCycle = [];\n if (cycle?.selected_cycle_arr?.length === 1) {\n this.tempSelectedCycle.push(cycle);\n this.setCycleToShow(cycle);\n // this.cycleToShow = cycle.business_cycle;\n } else {\n cycle?.selected_cycle_arr?.forEach((el: any, i: number) => {\n let payload = {\n start_date: el.substring(0, 10),\n end_date: el.substring(el?.length - 10, el?.lenth),\n selected: true,\n business_cycle: cycle?.business_cycle[i],\n selected_cycle: cycle?.selected_cycle[i],\n selected_cycle_arr: [el],\n };\n this.tempSelectedCycle.push(payload);\n });\n // this.cycleToShow = cycle?.business_cycle[0]?.substring(0,11) + \" - \" + cycle?.business_cycle[1].substring(cycle?.business_cycle[1]?.length-11, cycle?.business_cycle[1]?.lenth);\n }\n // this.setCycleToShow(cycle);\n this.setCycleEnableDisable();\n }\n\n /**\n * #### Description\n * when user select one cycle then their besides cycles are enable and other are disabled.\n * if user select two cycles then all the cycles get disabled except selected cycles.\n *\n * In businessCycleList array we set a isDisabled key, we are set it true when need to disabled the cycle.\n */\n setCycleEnableDisable() {\n if (!this.tempSelectedCycle?.length) {\n if (this.businessCycleList?.length)\n this.businessCycleList.map((cycle: any) => {\n cycle['isDisabled'] = false;\n });\n } else if (this.tempSelectedCycle?.length === 1) {\n const index = this.businessCycleList?.findIndex(\n (el: any) => el.start_date == this.tempSelectedCycle[0].start_date\n );\n this.businessCycleList?.forEach((cycle: any, i: number) => {\n if (index - 1 === i || index === i || index + 1 === i) {\n cycle.isDisabled = false;\n } else {\n cycle.isDisabled = true;\n }\n });\n } else {\n this.businessCycleList?.forEach((cycle: any) => {\n let isDisabled = true;\n this.tempSelectedCycle.forEach((el: any) => {\n if (cycle.start_date == el.start_date) {\n isDisabled = false;\n }\n });\n cycle.isDisabled = isDisabled;\n });\n }\n }\n\n /**\n * #### Description\n * When user click apply then selected cycle is set in local storage.\n *\n */\n setBusinessCycle() {\n const combinedDates = this.businessCycleService.convertNumericAlpha(\n this.businessCycleList[0]?.start_date +\n this.businessCycleList[0]?.end_date\n );\n const isFutureDates = (cycle: any) =>\n cycle?.business_cycle === combinedDates &&\n this.businessCycleList[0]?.business_cycle === FUTURE_DATES;\n\n let businessCycleObject: any = {\n userId: this.userId,\n selectedCycle: {\n selected: true,\n business_cycle: [],\n selected_cycle_arr: [],\n },\n };\n\n if (this.tempSelectedCycle?.length === 1) {\n this.setSingleSelectedCycle(businessCycleObject, isFutureDates);\n } else {\n this.setMultipleSelectedCycles(businessCycleObject, isFutureDates);\n }\n\n this.setCycleToShow(businessCycleObject?.selectedCycle);\n localStorage.setItem('businessCycle', JSON.stringify(businessCycleObject));\n this.selectedBusinessCycle = businessCycleObject?.selectedCycle;\n this.businessCycleChange.emit(this.selectedBusinessCycle);\n this.businessCycleService.changeBusinessCycle$.next(true);\n }\n\n setSingleSelectedCycle(\n businessCycleObject: any,\n isFutureDates: (cycle: any) => boolean\n ) {\n const cycle = this.tempSelectedCycle[0];\n if (isFutureDates(cycle)) {\n cycle.business_cycle = FUTURE_DATES;\n }\n Object.assign(businessCycleObject?.selectedCycle, {\n start_date: cycle?.start_date,\n end_date: cycle?.end_date,\n business_cycle: cycle?.business_cycle,\n selected_cycle: `${cycle?.start_date}-${cycle?.end_date}`,\n selected_cycle_arr: [`${cycle?.start_date}-${cycle?.end_date}`],\n });\n }\n\n setMultipleSelectedCycles(\n businessCycleObject: any,\n isFutureDates: (cycle: any) => boolean\n ) {\n this.tempSelectedCycle?.forEach((cycle: any) => {\n businessCycleObject?.selectedCycle.business_cycle?.push(\n isFutureDates(cycle) ? FUTURE_DATES : cycle?.business_cycle\n );\n businessCycleObject?.selectedCycle.selected_cycle_arr?.push(\n `${cycle?.start_date}-${cycle?.end_date}`\n );\n });\n\n businessCycleObject.selectedCycle.start_date =\n this.tempSelectedCycle[0]?.start_date;\n businessCycleObject.selectedCycle.end_date =\n this.tempSelectedCycle[1]?.end_date;\n businessCycleObject.selectedCycle.selected_cycle = `${businessCycleObject?.selectedCycle?.start_date}-${businessCycleObject?.selectedCycle?.end_date}`;\n }\n\n /**\n * #### Description\n * when user click cancel then it will close the popover.\n * remove temp value from term selected array and set the previous selected cycle in it.\n */\n cancelBusinessCycle() {\n this.setTempSelectedCycle(this.selectedBusinessCycle);\n }\n\n /**\n * #### Description\n * this will set the string of business cycle which will display in the header.\n * @param cycle object which is selected and apply. the same object will store in local storage.\n */\n setCycleToShow(cycle: any) {\n if (cycle?.selected_cycle_arr?.length === 1) {\n if (cycle?.business_cycle?.toLowerCase() == 'show future due dates') {\n this.cycleToShow = 'Future Due Dates';\n } else {\n this.cycleToShow = cycle.business_cycle;\n }\n } else {\n if (\n cycle?.business_cycle?.length > 0 &&\n cycle?.business_cycle[1]?.toLowerCase() == 'show future due dates'\n ) {\n this.cycleToShow = cycle?.business_cycle[0]?.substring(0, 11);\n } else if (cycle?.business_cycle?.length) {\n this.cycleToShow =\n cycle?.business_cycle[0]?.substring(0, 11) +\n ' - ' +\n cycle?.business_cycle[1].substring(\n cycle?.business_cycle[1]?.length - 11,\n cycle?.business_cycle[1]?.lenth\n );\n }\n }\n }\n}\n","<div\n class=\"vc-business-cycle vx-pt-2 vx-pb-2\"\n appPopover\n (click)=\"businessCyclePop.popover()\"\n position=\"left\"\n>\n <div class=\"heading vx-fs-9 vx-tt-uppercase vx-mb-1 vx-lh-3\">\n SHOWING DATA {{ cycleToShow === \"Show Future Due Dates\" ? \"For\" : \"From\" }}\n </div>\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-lh-4\">\n <div class=\"vx-d-flex vx-align-center\">\n <i class=\"icons calendar vx-fs-12 vx-mr-2\"></i>\n <span class=\"vx-fs-11 vx-txt-white vx-d-inline-block\">{{\n cycleToShow === \"Show Future Due Dates\"\n ? \"Future Due Dates\"\n : cycleToShow\n }}</span>\n </div>\n <i class=\"icons arrow vx-fs-10 vx-mr-2\"></i>\n </div>\n</div>\n\n<vui-popover #businessCyclePop [dontCloseonClick]=\"true\">\n <div class=\"vc-business-cycle-popover-container\">\n <div\n class=\"vc-business-cycle-popover-container-top vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n >\n <p class=\"vx-fs-11 vx-fw-400 vx-label-txt vx-p-0 vx-m-0\">\n You can select upto a max of two consecutive years\n </p>\n </div>\n <div class=\"vc-business-cycle-popover-container-body\">\n <ul class=\"vx-p-0 vx-m-0\">\n <ng-container\n *ngFor=\"let eachCycle of businessCycleList; let i = index\"\n >\n <li\n *ngIf=\"\n eachCycle?.business_cycle?.toLowerCase() ===\n 'show future due dates'\n \"\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n [class.future-cycle]=\"true\"\n >\n <app-cs-checkbox\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\n [disabled]=\"eachCycle?.isDisabled\"\n >Show Future Due Dates</app-cs-checkbox\n >\n <i\n class=\"icons info-icon vx-fs-12\"\n [arTooltip]=\"\n 'This option lets you view data that lies outside the current business cycle and are due in the future.'\n \"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n ></i\n >\n </li>\n <li\n *ngIf=\"\n eachCycle?.business_cycle?.toLowerCase() !==\n 'show future due dates'\n \"\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n >\n <app-cs-checkbox\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\n [disabled]=\"eachCycle?.isDisabled\"\n >{{ eachCycle?.start_date | dateFormat }} -\n <ng-container>\n {{ eachCycle?.end_date | dateFormat }}</ng-container\n >\n </app-cs-checkbox>\n </li>\n </ng-container>\n </ul>\n </div>\n <div\n class=\"vc-business-cycle-popover-container-footer vx-d-flex vx-justify-between vx-p-3\"\n >\n <button\n (click)=\"businessCyclePop.closePopover('top')\"\n class=\"white vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-blue\"\n >\n CANCEL\n </button>\n <button\n (click)=\"setBusinessCycle(); businessCyclePop.closePopover('top')\"\n [class.disabled]=\"false\"\n class=\"blue vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-white\"\n >\n APPLY\n </button>\n </div>\n </div>\n</vui-popover>\n","import {\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnInit,\n Output,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'vc-search',\n template: `\n <div\n class=\"vc-search\"\n (click)=\"isDivClicked = true\"\n [class.searchFocus]=\"isDivClicked\"\n #searchArea\n >\n <input\n [(ngModel)]=\"searchValue\"\n (keyup)=\"onKeyUp($event)\"\n (focusOut)=\"isDivClicked = false\"\n type=\"text\"\n placeholder=\"Search\"\n #searchBox\n />\n <i class=\"icons serachIcon vx-fs-10 vx-txt-white\"></i>\n\n <div\n *ngIf=\"isAdvanceSearch\"\n (click)=\"onSearch('advanceSearch', '')\"\n class=\"vc-advance-search-btn vx-d-flex vx-align-center vx-justify-center\"\n [arTooltip]=\"'Advance Search'\"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n >\n <i class=\"icons vx-fs-12\"></i>\n </div>\n <i\n *ngIf=\"searchValue\"\n (click)=\"onCrossClick()\"\n class=\"icons crossIcon vx-fs-10 vx-txt-white\"\n ></i\n >\n </div>\n `,\n styleUrls: ['./search.component.less'],\n})\nexport class SearchComponent implements OnInit {\n searchValue: string = '';\n isDivClicked: boolean = false;\n @Input() isAdvanceSearch: boolean = false;\n\n @ViewChild('searchArea') searchArea!: ElementRef;\n @ViewChild('searchBox') searchBox!: ElementRef;\n\n @Output() onSearchAction: EventEmitter<any> = new EventEmitter<any>();\n\n constructor(private renderer: Renderer2, private router: ActivatedRoute) {\n this.onRouterChange();\n this.renderer.listen('window', 'click', (e: Event) => {\n /**\n * Only run when toggleButton is not clicked\n * If we don't check this, all clicks (even on the toggle button) gets into this\n * section which in the result we might never see the menu open!\n * And the menu itself is checked here, and it's where we check just outside of\n * the menu and button the condition abbove must close the menu\n */\n\n if (\n e.target !== this.searchBox.nativeElement &&\n e.target !== this.searchArea.nativeElement\n ) {\n this.isDivClicked = false;\n }\n });\n }\n\n ngOnInit(): void {}\n\n onKeyUp(event: any) {\n if (event.key === 'Enter') {\n this.onSearch('search', this.searchValue.trim());\n }\n }\n\n onSearch(type: string, searchValue: string) {\n searchValue = searchValue.trim();\n this.onSearchAction.emit({ type, searchValue });\n }\n\n onCrossClick() {\n this.searchValue = '';\n this.onSearch('search', '');\n }\n\n onRouterChange() {\n this.router.url.subscribe((url) => this.onSearch('search', ''));\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'vc-create-workflow',\n templateUrl: './create-workflow.component.html',\n styleUrls: ['./create-workflow.component.less'],\n})\nexport class CreateWorkflowComponent implements OnInit {\n @Input() iframeLoading: boolean = false;\n\n @Output() openWorkflow: EventEmitter<any> = new EventEmitter<any>();\n\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div\n class=\"header-create-workflow vx-fs-16 vx-txt-white vx-d-flex vx-align-center vx-justify-center\"\n (click)=\"openWorkflow.emit()\"\n [class.disabled-workflow]=\"iframeLoading\"\n [arTooltip]=\"'Create'\"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n>\n +\n</div>\n","import { Component } from '@angular/core';\nimport { ApiService } from '../../../shared/services/api.service';\nimport { LayoutService } from '../../../shared/services/layout.service';\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\n\n@Component({\n selector: 'vc-queue',\n template: `\n <a\n *ngIf=\"apiService?.queueCount$ | async\"\n class=\"header-queue vx-d-flex vx-align-center vx-justify-center\"\n [arTooltip]=\"'View Responsibilities in Queue'\"\n placement=\"bottom-right\"\n type=\"black\"\n delay=\"0\"\n [href]=\"queueURL\"\n [tooltipMandatory]=\"true\"\n >\n <i class=\"icons vx-fs-12 vx-txt-white\"></i>\n <span\n class=\"queue-value vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-pl-1 vx-pr-1\"\n >{{ apiService?.queueCount$ | async }}</span\n >\n </a>\n `,\n styleUrls: ['./queue.component.less'],\n})\nexport class QueueComponent {\n queueURL: string = '';\n constructor(\n public apiService: ApiService,\n private layoutService: LayoutService\n ) {\n this.setQueueURl();\n }\n\n private setQueueURl() {\n this.queueURL = this.layoutService.baseUrl + IN_APP_URL.QUEUE;\n }\n}\n","import { Optional, Pipe, PipeTransform } from '@angular/core';\nimport { Configurations } from '../../configurations';\n\n@Pipe({\n name: 'getFileUrl',\n})\nexport class GetFileUrlPipe implements PipeTransform {\n environmentValue: any;\n constructor(@Optional() config?: Configurations) {\n this.environmentValue = config?.envConfig;\n }\n transform(value: any, ...args: any[]): string {\n return `${this.environmentValue.s3Url}${this.environmentValue.s3Bucket}/profile_pic/thumb/${value}`;\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { AuthorizerService } from '@vcomply/authorizer';\n\n@Component({\n selector: 'vc-avatar',\n template: `\n <div class=\"vx-avatar \" [ngClass]=\"type\">\n <span *ngIf=\"!userInfo?.profile_pic\" class=\"blue\">{{ shortName }}</span>\n <img\n *ngIf=\"userInfo?.profile_pic\"\n [src]=\"userInfo?.profile_pic | getFileUrl\"\n alt=\"\"\n />\n </div>\n `,\n styleUrls: ['./avatar.component.less'],\n})\nexport class AvatarComponent {\n public baseUrl: string = '';\n public shortName: string = '';\n\n @Input() public userInfo: any;\n @Input() public type: 'md' | 'sm' | 'xs' | 'x-lg' = 'md';\n\n constructor(private authService: AuthorizerService) {\n this.shortName = this.authService.getUser()?.short_name ?? '';\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { LayoutService } from '../../../shared/services/layout.service';\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\nimport { AuthorizerService } from '@vcomply/authorizer';\n\n@Component({\n selector: 'vc-user-details',\n templateUrl: './user-details.component.html',\n styleUrls: ['./user-details.component.less'],\n})\nexport class UserDetailsComponent {\n @Input() userDetails: any;\n @Input() subscriptionDetails: any;\n constructor(\n private layoutService: LayoutService,\n private authService: AuthorizerService\n ) {}\n\n editProfile() {\n const URL = this.layoutService.baseUrl + IN_APP_URL.EDIT_PROFILE;\n window.location.href = URL;\n }\n\n logout() {\n this.authService.logout();\n }\n}\n","<div\n class=\"header-user-details\"\n [arTooltip]=\"'View Your Profile'\"\n placement=\"bottom-right\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n appPopover\n (click)=\"userInfo.popover()\"\n position=\"right\"\n>\n <vc-avatar [userInfo]=\"userDetails\"></vc-avatar>\n</div>\n\n<vui-popover #userInfo [dontCloseonClick]=\"true\">\n <div class=\"header-user-details-box vx-mt-3 vx-pl-2 vx-pr-2\">\n <div\n class=\"header-user-details-box-top vx-d-flex vx-align-center vx-pt-2 vx-pb-2\"\n >\n <vc-avatar [userInfo]=\"userDetails\" [type]=\"'x-lg'\"></vc-avatar>\n <div class=\"header-user-details-box-top-right vx-ml-2\">\n <div\n class=\"userName vx-fs-13 vx-fw-500 vx-label-txt vx-tt-capitalize\"\n [arTooltip]=\"userDetails?.member_name\"\n placement=\"bottom-left\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"false\"\n >\n {{ userDetails?.member_name }}\n </div>\n <div\n class=\"userEmail vx-fs-11 vx-paragraph-txt\"\n [arTooltip]=\"userDetails?.member_email\"\n placement=\"bottom-left\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"false\"\n >\n {{ userDetails?.member_email }}\n </div>\n </div>\n </div>\n <div class=\"header-user-details-box-mid\">\n <ul class=\"vx-p-0 vx-m-0\">\n <li\n class=\"vx-fs-12 vx-d-flex vx-align-center vx-justify-between vx-pt-2 vx-pb-2 vx-lh-4\"\n >\n <span class=\"vx-label-txt vx-fw-500 vx-tt-uppercase vx-pl-3\"\n >SUBSCRIPTION :</span\n >\n <span\n [class.expired]=\"subscriptionDetails?.after_expired_days_allow\"\n >{{\n subscriptionDetails?.after_expired_days_allow\n ? \"Expired\"\n : \"Active\"\n }}</span\n >\n </li>\n <li\n class=\"vx-fs-12 vx-d-flex vx-align-center vx-justify-between vx-pt-2 vx-pb-2 vx-lh-4\"\n >\n <span class=\"vx-label-txt vx-fw-500 vx-tt-uppercase vx-pl-3\"\n >EXPIRING ON :</span\n >\n <span class=\"vx-paragraph-txt\">{{\n subscriptionDetails?.expiredDetails | date : \"dd MMM yyyy\"\n }}</span>\n </li>\n <li\n class=\"vx-fs-12 vx-d-flex vx-align-center vx-justify-between vx-pt-2 vx-pb-2 vx-lh-4\"\n >\n <span class=\"vx-label-txt vx-fw-500 vx-tt-uppercase vx-pl-3\"\n >Support Pin :</span\n >\n <span class=\"vx-paragraph-txt\">{{ userDetails?.calling_pin }}</span>\n </li>\n </ul>\n </div>\n <div\n class=\"header-user-details-box-bottom vx-d-flex vx-align-center vx-justify-center vx-pt-3 vx-pb-3\"\n >\n <button\n (click)=\"editProfile()\"\n class=\"editProfile-btn vx-fs-11 vx-fw-500 vx-txt-blue vx-tt-uppercase vx-pl-2 vx-pr-2 vx-m-0\"\n >\n Edit Profile\n </button>\n <button\n (click)=\"logout()\"\n class=\"logout-btn vx-fs-11 vx-fw-500 vx-txt-white vx-tt-uppercase vx-pl-2 vx-pr-2 vx-m-0\"\n >\n Log out\n </button>\n </div>\n </div>\n</vui-popover>\n","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\nimport { ASSETS } from '../../../constants/assets.constants';\n\n@Component({\n selector: 'vc-support',\n template: `<div\n (click)=\"openSupport.emit()\"\n class=\"header-support vx-fs-11 vx-txt-white vx-tt-uppercase vx-p-1 vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\n >\n <img [src]=\"ASSETS.support_icon\" alt=\"Support\" width=\"18\" height=\"14\" />\n SUPPORT\n </div>`,\n styleUrls: ['./support.component.less'],\n})\nexport class SupportComponent implements OnInit {\n ASSETS: any = ASSETS;\n\n @Output() openSupport: EventEmitter<any> = new EventEmitter<any>();\n\n constructor() {}\n\n ngOnInit(): void {}\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'checkPermission',\n})\nexport class CreatePermissionPipe implements PipeTransform {\n //TODO in case of light user when policy is stand alone module\n transform(value: any, args?: any): any {\n return value;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n} from '@angular/core';\nimport { ASSETS } from '../../../constants/assets.constants';\nimport { ApiService } from '../../../shared/services/api.service';\nimport { BUSINESS_CYCLE_URL } from '../../../constants/business-cycle.constant';\nimport { LayoutService } from '../../../shared/services/layout.service';\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'vc-header-container',\n templateUrl: './header-container.component.html',\n styleUrls: ['./header-container.component.less'],\n})\nexport class HeaderContainerComponent implements OnInit, OnDestroy {\n ASSETS: any = ASSETS;\n isXmasCapVisible: boolean = false;\n showAnimation: boolean = false;\n private animationInterval: any;\n showBusinessCycle: string[] = BUSINESS_CYCLE_URL;\n currentUrl: string = '';\n defaultURL: string = '';\n showCreateWorkflow: boolean = true; \n\n @Input() showSearch: boolean = false;\n @Input() featureFlag: any;\n @Input() isAdvanceSearch: boolean = false;\n @Input() iframeLoading: boolean = false;\n\n @Output() businessCycleChange: EventEmitter<any> = new EventEmitter();\n @Output() openDialog: EventEmitter<any> = new EventEmitter<any>();\n @Output() onSearchAction: EventEmitter<any> = new EventEmitter<any>();\n\n constructor(\n public apiService: ApiService,\n private layoutService: LayoutService,\n private router: ActivatedRoute\n ) {\n this.currentUrl = window.location.pathname;\n this.defaultURL = this.layoutService.baseUrl + IN_APP_URL.DEFAULT;\n this.onRouterChange();\n }\n\n ngOnInit(): void {\n this.checkXmasCapVisibility();\n this.checkSnowFallVisibility();\n this.checkComplianceFlag();\n }\n\n ngOnDestroy(): void {\n // Clear interval to prevent memory leaks\n if (this.animationInterval) {\n clearInterval(this.animationInterval);\n }\n }\n\n businessCycleChangeHandler(event: any) {\n this.businessCycleChange.emit(event);\n }\n\n onRouterChange() {\n this.router.url.subscribe((url) => {\n console.log('url', url);\n this.currentUrl = window.location.pathname;\n });\n }\n\n get isBusinessCycleVisible(): boolean {\n const currentUrl = window.location.href;\n return this.showBusinessCycle.some((url) => {\n return currentUrl.includes(url);\n });\n }\n\n checkSnowFallVisibility(): void {\n // First-time display after 20 seconds\n setTimeout(() => {\n this.showAnimation = true;\n\n // Hide after 20 seconds\n setTimeout(() => {\n this.showAnimation = false;\n }, 20000);\n }, 0);\n\n // Repeated display every 5 minutes\n this.animationInterval = setInterval(() => {\n this.showAnimation = true;\n\n // Hide the animation after 20 seconds\n setTimeout(() => {\n this.showAnimation = false;\n }, 20000); // Show duration: 20 seconds\n }, 300000); // Repeat every 5 minutes (300,000 ms)\n }\n\n checkXmasCapVisibility(): void {\n const today = new Date();\n const currentYear = today.getFullYear();\n let startDate, endDate;\n\n // If today is after December 20, use January 7 of next year as the end date\n if (today.getMonth() === 11 && today.getDate() >= 20) {\n startDate = new Date(currentYear, 11, 20); // December 20 of current year\n endDate = new Date(currentYear + 1, 0, 7, 23, 59, 59); // January 7 of next year\n } else {\n // Otherwise, use December 20 of the previous year and January 7 of the current year\n startDate = new Date(currentYear - 1, 11, 20); // December 20 of previous year\n endDate = new Date(currentYear, 0, 7, 23, 59, 59); // January 7 of current year\n }\n\n // Check if today is within the range\n this.isXmasCapVisible = today >= startDate && today <= endDate;\n }\n\n checkComplianceFlag(): void {\n this.apiService.subscriptionDetail$.subscribe((subscriptionData) => {\n if (subscriptionData) {\n this.showCreateWorkflow = subscriptionData.compliance_flag === 1;\n }\n });\n }\n}\n","<vc-global-alert [feature]=\"featureFlag\"></vc-global-alert>\n<div\n class=\"header-container vx-d-flex vx-align-center vx-justify-between vx-pr-3\"\n>\n <div id=\"snowfall\" *ngIf=\"isXmasCapVisible\" [class.animate]=\"showAnimation\">\n <div class=\"snow\"></div>\n <div class=\"snow1\"></div>\n <div class=\"snow2\"></div>\n </div>\n <div class=\"header-container-left vx-d-flex vx-align-center\">\n <a\n class=\"product-logo vx-d-flex vx-align-center vx-justify-center vx-mr-3\"\n [href]=\"defaultURL\"\n >\n <img\n *ngIf=\"isXmasCapVisible\"\n class=\"xmas-cap\"\n [src]=\"ASSETS.xmas_cap\"\n alt=\"Santa Cap\"\n width=\"20\"\n height=\"20\" />\n <img [src]=\"ASSETS.v_icon\" alt=\"VComply\" width=\"24\" height=\"24\"\n /></a>\n <vc-business-cycle\n *ngIf=\"isBusinessCycleVisible\"\n (businessCycleChange)=\"businessCycleChangeHandler($event)\"\n ></vc-business-cycle>\n </div>\n <div class=\"search-area\">\n <vc-search\n *ngIf=\"showSearch\"\n [isAdvanceSearch]=\"isAdvanceSearch\"\n (onSearchAction)=\"onSearchAction.emit($event)\"\n ></vc-search>\n </div>\n <div class=\"vx-d-flex vx-align-center\">\n <vc-support (openSupport)=\"openDialog.emit('SUPPORT')\"></vc-support>\n <vc-create-workflow\n *ngIf=\"(apiService.loggedUserDetail$ | async | checkPermission) && showCreateWorkflow\"\n (openWorkflow)=\"openDialog.emit('WORKFLOW')\"\n [iframeLoading]=\"iframeLoading\"\n ></vc-create-workflow>\n <vc-queue></vc-queue>\n <vc-user-details\n [userDetails]=\"apiService.loggedUserDetail$ | async\"\n [subscriptionDetails]=\"apiService.subscriptionDetail$ | async\"\n ></vc-user-details>\n </div>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'vc-sub-menu-container',\n template: `\n <div\n class=\"sub-menu-container vx-pl-2 vx-pr-2 vx-pb-5\"\n [class.hide]=\"false\"\n >\n <div\n class=\"top-close-area vx-d-flex vx-align-center vx-justify-between vx-mb-2\"\n >\n <div class=\"vx-fs-11 vx-fw-500 vx-gray-50 vx-lh-4 vx-ml-2\">\n {{ moduleTitle }}\n </div>\n <button\n (click)=\"onSubMenuClose()\"\n class=\"vx-fs-8 vx-d-flex vx-align-center vx-justify-center vx-p-0 vx-m-0\"\n [arTooltip]=\"'Close'\"\n placement=\"left\"\n type=\"white\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n >\n <i class=\"icons\"></i>\n </button>\n </div>\n <ul *ngIf=\"subMenuData?.length\" class=\"vx-m-0 vx-p-0\">\n <li\n class=\"vx-mb-2\"\n *ngFor=\"let eachMenu of subMenuData\"\n [ngClass]=\"eachMenu?.class\"\n >\n <a\n class=\"vx-fs-13 vx-fw-400 vx-txt-white vx-p-2 vx-d-block\"\n [href]=\"eachMenu?.href\"\n >{{ eachMenu?.name }}</a\n >\n </li>\n </ul>\n <ng-content></ng-content>\n </div>\n `,\n styleUrls: ['./sub-menu-container.component.less'],\n})\nexport class SubMenuContainerComponent implements OnInit {\n @Input() subMenuData: any[] = [];\n @Input() moduleTitle: string = '';\n @Output() onCloseSubMenu: EventEmitter<any> = new EventEmitter<any>();\n constructor() {}\n\n ngOnInit(): void {}\n\n public onSubMenuClose() {\n this.onCloseSubMenu.emit();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ToolTipDirective } from './tooltip.directive';\n\n@NgModule({\n declarations: [ToolTipDirective],\n imports: [CommonModule],\n exports: [ToolTipDirective],\n})\nexport class TooltipModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GetFileUrlPipe } from './get-file-url.pipe';\nimport { CreatePermissionPipe } from './check-create-permission.pipe';\nimport { DateFormatPipe } from './date-format.pipe';\nimport { GetModuleIconPipe } from './get-module-icon.pipe';\n\n@NgModule({\n declarations: [\n GetFileUrlPipe,\n CreatePermissionPipe,\n DateFormatPipe,\n GetModuleIconPipe,\n ],\n imports: [CommonModule],\n exports: [\n GetFileUrlPipe,\n CreatePermissionPipe,\n DateFormatPipe,\n GetModuleIconPipe,\n ],\n})\nexport class PipesModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ProductListContainerComponent } from './product-list-container/product-list-container.component';\nimport { ModuleListComponent } from './module-list/module-list.component';\nimport { PreferenceListComponent } from './preference-list/preference-list.component';\nimport { TooltipModule } from '../../shared/ui-kit/tooltip/tooltip.module';\nimport { PipesModule } from '../../shared/pipe/pipes.module';\nimport { PageLoaderComponent } from '../../shared/ui-kit/page-loader/page-loader.component';\n\n@NgModule({\n declarations: [\n ProductListContainerComponent,\n ModuleListComponent,\n PreferenceListComponent,\n PageLoaderComponent\n ],\n imports: [CommonModule, TooltipModule, PipesModule],\n exports: [ProductListContainerComponent],\n})\nexport class ProductListModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AvatarComponent } from './avatar/avatar.component';\nimport { PipesModule } from '../../pipe/pipes.module';\n\n@NgModule({\n declarations: [AvatarComponent],\n imports: [CommonModule, PipesModule],\n exports: [AvatarComponent],\n})\nexport class AvatarModule {}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\nimport { PopoverService } from './popover.service';\n\n@Directive({\n selector: '[appPopoverEvent]',\n})\nexport class PopoverEventDirective {\n constructor(private popoverService: PopoverService) {}\n @HostListener('contextmenu', ['$event']) contextmenu(event: any) {\n this.getEventPosition(event);\n }\n getEventPosition(event: any) {\n // const container = event.currentTarget;\n this.popoverService.positionX = event.clientX;\n this.popoverService.positionY = event.clientY;\n }\n}\n\n// appPopoverEvent\n","import { Directive, EventEmitter, HostListener, Output } from '@angular/core';\nimport { PopoverService } from './popover.service';\n\n@Directive({\n selector: '[appPopoverLongpress]',\n})\nexport class PopoverLongpressDirective {\n getTime: any;\n currentTime: any;\n\n timer: any;\n @Output() longPressPopover = new EventEmitter<any>();\n constructor(private popoverService: PopoverService) {}\n @HostListener('mousedown', ['$event']) mousedown(event: any) {\n alert('Tong');\n this.currentTime = Date.now();\n // \n this.timer = setInterval(() => {\n if (Date.now() - this.currentTime > 1000) {\n this.longPressPopover.emit();\n clearInterval(this.timer);\n this.getEventPosition(event);\n alert('Ting tong');\n }\n }, 10);\n }\n @HostListener('mouseup') mouseup() {\n clearInterval(this.timer);\n this.currentTime = undefined;\n // \n }\n getEventPosition(event: any) {\n this.popoverService.positionX = event.clientX;\n this.popoverService.positionY = event.clientY;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PopoverComponent } from './popover.component';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverEventDirective } from './popover-event.directive';\nimport { PopoverLongpressDirective } from './popover-longpress.directive';\nimport { PopoverService } from './popover.service';\n\n@NgModule({\n declarations: [PopoverComponent, PopoverDirective, PopoverEventDirective, PopoverLongpressDirective],\n imports: [CommonModule],\n exports: [PopoverComponent, PopoverDirective, PopoverEventDirective, PopoverLongpressDirective],\n providers: [PopoverService],\n})\nexport class PopoverModule {}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'app-cs-radio',\n templateUrl: './cs-radio.component.html',\n styleUrls: ['./cs-radio.component.less'],\n})\nexport class CsRadioComponent implements OnInit {\n @Input() disabled!: boolean;\n @Input() readonly!: boolean;\n @Input() name!: string;\n @Input() checked!: boolean;\n @Input() value: any;\n @Output() checkedEvent = new EventEmitter();\n constructor() {}\n\n ngOnInit(): void {}\n changeState(evt: any) {\n this.checkedEvent.emit(evt);\n }\n}\n","<label class=\"radio-item\" [class.readonly]=\"readonly\">\n <input type=\"radio\" [disabled]=\"disabled\" [name]=\"name\" [value]=\"value\" [checked]=\"checked\" (change)=\"changeState($event)\" />\n <span class=\"radio\">\n <span class=\"inner\"></span>\n </span>\n <svg class=\"radiomark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\n <circle class=\"radiomark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <circle class=\"radiomark__check\" cx=\"26\" cy=\"26\" r=\"5\" fill=\"none\" />\n </svg>\n <span class=\"value\"><ng-content></ng-content></span>\n</label>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'app-cs-switch',\n templateUrl: './cs-switch.component.html',\n styleUrls: ['./cs-switch.component.less'],\n})\nexport class CsSwitchComponent implements OnInit {\n @Input() disabled!: boolean;\n @Input() ngValue: any;\n @Input() value: any;\n @Output() ngValueChange = new EventEmitter<any>();\n @Input() tooltipMessage: any;\n @Input() position: any;\n constructor() {}\n\n ngOnInit(): void {\n // \n }\n valueChanged() {\n this.ngValueChange.emit(this.ngValue);\n }\n}\n","<label class=\"cs-switch\" [class.top]=\"position == 'top'\">\n <!-- [class.large]=\"large\" -->\n <span class=\"value\">\n <span [innerHTML]=\"value\" *ngIf=\"value != undefined\"></span>\n <!-- <span class=\"notification\" *ngIf=\"!tooltipMessage\" [appTooltip]=\"tooltipMessage\" placement=\"bottom-right\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\n <i class=\"vc-icons\"></i>\n </span> -->\n </span>\n <!-- [class.last]=\"last\" -->\n <span\n class=\"switch\"\n *ngIf=\"tooltipMessage === '' || tooltipMessage === undefined\"\n >\n <input\n type=\"checkbox\"\n [(ngModel)]=\"ngValue\"\n (ngModelChange)=\"valueChanged()\"\n [disabled]=\"disabled\"\n />\n <span class=\"switch-box\">\n <span class=\"switch-ball\"></span>\n </span>\n </span>\n <span\n class=\"switch\"\n *ngIf=\"tooltipMessage !== '' && tooltipMessage !== undefined\"\n [arTooltip]=\"tooltipMessage\"\n placement=\"bottom-right\"\n delay=\"0\"\n type=\"black\"\n [tooltipMandatory]=\"true\"\n >\n <input\n type=\"checkbox\"\n [(ngModel)]=\"ngValue\"\n (ngModelChange)=\"valueChanged()\"\n [disabled]=\"disabled\"\n />\n <span class=\"switch-box\">\n <span class=\"switch-ball\"></span>\n </span>\n </span>\n</label>\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-cs-radio-group',\n templateUrl: './cs-radio-group.component.html',\n styleUrls: ['./cs-radio-group.component.less'],\n})\nexport class CsRadioGroupComponent implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<app-cs-radio>fefre</app-cs-radio>\n<app-cs-radio>fefre</app-cs-radio>\n<app-cs-radio>fefre</app-cs-radio>\n<app-cs-radio>fefre</app-cs-radio>\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]',\n})\nexport class ClickOutsideDirective {\n constructor(private elementRef: ElementRef) {}\n @Output('clickOutside') clickOutside: EventEmitter<any> = new EventEmitter();\n\n @HostListener('document:click', ['$event.target']) onMouseEnter(targetElement: any) {\n const clickedInside = this.elementRef.nativeElement.contains(targetElement);\n if (!clickedInside) {\n this.clickOutside.emit(null);\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'pascal',\n})\nexport class PascalPipe implements PipeTransform {\n transform(value: string, ...args: unknown[]): unknown {\n if (typeof value !== 'string') {\n return value;\n }\n return value.charAt(0).toUpperCase() + value.slice(1);\n }\n}\n","import { Component, ElementRef, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'app-cs-select',\n templateUrl: './cs-select.component.html',\n styleUrls: ['./cs-select.component.less'],\n})\nexport class CsSelectComponent implements OnChanges {\n @Input() dataList!: any[];\n @Input() dropdownLabel!: string;\n @Input() displayProperty!: string;\n @Input() selectedValue!: string;\n @Input() isRequired!: boolean;\n @Input() dropdownSubLabel!: string;\n @Input() disabled!: boolean;\n @ViewChild('option') option!: ElementRef;\n\n @Output() selectedData = new EventEmitter();\n @Output() selectedValueChange = new EventEmitter();\n @Input() placeholder: any;\n @Input() stylex: any;\n @Input() valueKey: any;\n @Input() multipleSelect: any;\n @Input() colorProperty!: string;\n\n @Input() colorSelected!: string;\n colorCode!: string;\n\n dropdownOption = false;\n positionReset!: boolean;\n getLeft!: number;\n getTop!: number;\n getWidth!: number;\n maxWidth!: number;\n activeDoropdown = false;\n\n private optionList!: ElementRef;\n\n @ViewChild('optionList') set content(content: ElementRef) {\n if (content) {\n // initially setter gets called with undefined\n this.optionList = content;\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['selectedValue']) {\n this.selectedValue = this.selectedValue || '--';\n }\n }\n\n openDropdown(event: any): void {\n this.dropdownOption = true;\n setTimeout(() => {\n const dropdown = event.target.getBoundingClientRect();\n const selectOption = this.optionList.nativeElement.offsetHeight;\n if (dropdown.top + selectOption * 2 > window.innerHeight) {\n this.getTop = dropdown.top - selectOption;\n } else {\n this.getTop = dropdown.top + dropdown.height;\n }\n this.getLeft = dropdown.left;\n this.getWidth = dropdown.width;\n this.maxWidth = dropdown.width * 1.25;\n }, 10);\n setTimeout(() => {\n this.activeDoropdown = true;\n }, 100);\n }\n selectOption(selectedData: any) {\n if (typeof selectedData === 'object') {\n this.selectedValue = selectedData[this.displayProperty];\n this.colorSelected = selectedData[this.colorProperty];\n } else {\n this.selectedValue = selectedData;\n }\n this.selectedData.emit(selectedData);\n this.selectedValueChange.emit(selectedData);\n this.dropdownOption = false;\n }\n closeDropdown() {\n this.dropdownOption = false;\n }\n}\n","<div class=\"input-group\" (clickOutside)=\"dropdownOption = false\">\n <label *ngIf=\"dropdownLabel != undefined\">\n {{ dropdownLabel }} <span class=\"sub-label\">{{ dropdownSubLabel }}</span>\n <span class=\"required\" *ngIf=\"isRequired\">*</span></label\n >\n <div class=\"custom-select-box\" [class.disabled]=\"disabled\">\n <input\n type=\"text\"\n [class.line]=\"stylex\"\n [placeholder]=\"placeholder\"\n [value]=\"selectedValue | pascal\"\n readonly\n (click)=\"openDropdown($event)\"\n (keyup.enter)=\"openDropdown($event)\"\n (keyup.arrowup)=\"openDropdown($event)\"\n (keyup.arrowdown)=\"openDropdown($event)\"\n *ngIf=\"!colorProperty\"\n />\n <span\n class=\"show-label\"\n *ngIf=\"colorProperty\"\n (click)=\"openDropdown($event)\"\n >\n <span\n class=\"label\"\n [innerHTML]=\"selectedValue\"\n [style.backgroundColor]=\"colorSelected + '1A'\"\n [style.color]=\"colorSelected\"\n ></span>\n </span>\n <!-- <span class=\"arrow\" [class.line]=\"stylex\">\n <i class=\"icons\"></i>\n </span> -->\n <div\n class=\"overlay active\"\n *ngIf=\"dropdownOption === true\"\n (click)=\"closeDropdown()\"\n ></div>\n <ul\n class=\"list-of-option\"\n *ngIf=\"dropdownOption === true && !colorProperty\"\n #optionList\n (keyup.Escape)=\"closeDropdown()\"\n [style.top.px]=\"getTop\"\n [style.left.px]=\"getLeft\"\n [style.min-width.px]=\"getWidth\"\n [style.max-width.px]=\"maxWidth\"\n [class.active]=\"activeDoropdown\"\n >\n <li *ngFor=\"let data of dataList\">\n <label>\n <input\n type=\"radio\"\n [value]=\"data[valueKey]\"\n name=\"sliceLabel\"\n (change)=\"selectOption(data)\"\n #option\n (keyup.enter)=\"closeDropdown()\"\n class=\"pointer-none\"\n />\n <span\n (click)=\"closeDropdown(); selectOption(data)\"\n *ngIf=\"displayProperty && displayProperty !== ''\"\n class=\"value\"\n [arTooltip]=\"data[displayProperty]\"\n placement=\"bottom-left\"\n delay=\"0\"\n type=\"black\"\n [tooltipMandatory]=\"true\"\n >{{ data[displayProperty] }}</span\n >\n <span\n (click)=\"closeDropdown(); selectOption(data)\"\n *ngIf=\"!displayProperty || displayProperty === ''\"\n class=\"value\"\n [arTooltip]=\"data\"\n placement=\"bottom-left\"\n delay=\"0\"\n type=\"black\"\n [tooltipMandatory]=\"true\"\n >{{ data }}</span\n >\n </label>\n </li>\n </ul>\n <ul\n class=\"list-of-option\"\n *ngIf=\"dropdownOption === true && colorProperty\"\n #optionList\n (keyup.Escape)=\"closeDropdown()\"\n [style.top.px]=\"getTop\"\n [style.left.px]=\"getLeft\"\n [style.min-width.px]=\"getWidth\"\n [style.max-width.px]=\"maxWidth\"\n [class.active]=\"activeDoropdown\"\n >\n <li *ngFor=\"let data of dataList\">\n <label class=\"colors\">\n <input\n type=\"radio\"\n [value]=\"data[valueKey]\"\n name=\"sliceLabel\"\n (click)=\"selectOption(data)\"\n #option\n (keyup.enter)=\"closeDropdown()\"\n class=\"pointer-none\"\n />\n <span\n (click)=\"selectOption(data)\"\n *ngIf=\"displayProperty && displayProperty !== ''\"\n class=\"value\"\n [arTooltip]=\"data[displayProperty]\"\n placement=\"bottom-left\"\n delay=\"0\"\n type=\"black\"\n [tooltipMandatory]=\"true\"\n [ngStyle]=\"{ color: data.segment_color }\"\n [style.backgroundColor]=\"data.segment_color + '1A'\"\n >{{ data[displayProperty] }}</span\n >\n <span\n (click)=\"selectOption(data)\"\n *ngIf=\"!displayProperty || displayProperty === ''\"\n class=\"value\"\n [arTooltip]=\"data\"\n placement=\"bottom-left\"\n delay=\"0\"\n type=\"black\"\n [tooltipMandatory]=\"true\"\n [ngStyle]=\"{ color: data.segment_color }\"\n [style.backgroundColor]=\"data.segment_color + '1A'\"\n >{{ data }}</span\n >\n </label>\n </li>\n </ul>\n </div>\n</div>\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'searchMultiSelect',\n})\nexport class SearchMultiSelectPipe implements PipeTransform {\n transform(value: any[], key: string, searchKey: string): any[] {\n if (searchKey && searchKey.length > 0) {\n searchKey = searchKey.toLowerCase();\n return value.filter((item) => {\n if (item[key].toLowerCase().includes(searchKey)) {\n return item;\n }\n });\n }\n return value;\n }\n}\n","import { Component, OnInit, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'app-cs-checkbox-indeterminate',\n templateUrl: './cs-checkbox-indeterminate.component.html',\n styleUrls: ['./cs-checkbox-indeterminate.component.less']\n})\nexport class CsCheckboxIndeterminateComponent implements OnInit {\n @Input() disabled!: boolean;\n @Input() ngValue: any;\n @Input() value: any;\n @Output() ngValueChange = new EventEmitter<any>();\n\n constructor() { }\n\n ngOnInit(): void {\n }\n valueChanged() {\n const emitValue = {\n value: this.value,\n checked: this.ngValue\n }\n this.ngValueChange.emit(emitValue);\n }\n\n}\n","<label class=\"checkbox-item\" [class.disabled]=\"disabled\">\n <input type=\"checkbox\" [name]=\"value\" [disabled]=\"disabled\" [(ngModel)]=\"ngValue\" (ngModelChange)=\"valueChanged()\" />\n <span class=\"checkbox\">\n <span class=\"inner\"></span>\n </span>\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path fill=\"none\" d=\"M37.9,27H14v-2h23.9V27z\"/>\n </svg>\n <span class=\"value\"><ng-content></ng-content></span>\n </label>\n ","\n\nimport { Component, forwardRef, Provider } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nconst CHECKBOX_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CheckboxComponent),\n multi: true,\n};\n\n@Component({\n selector: 'vui-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.less'],\n providers: [CHECKBOX_VALUE_ACCESSOR],\n inputs:['disabled','checked','indeterminateEnabled'],\n\n})\nexport class CheckboxComponent implements ControlValueAccessor{\n disabled !:boolean | any;\n checked !:boolean | any;\n indeterminateEnabled !:boolean | any;\n onChanged = (value:any) => {};\n onTouched = () => {};\n\n writeValue(value: boolean): void {\n this.checked = value ?? false\n }\n registerOnChange(fn: any): void {\n this.onChanged = fn;\n }\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n valueChanged(){\n \n this.checked = !this.checked;\n this.onChanged(this.checked);\n this.onTouched();\n }\n}\n","<label class=\"checkbox-item\" [class.disabled]=\"disabled\">\n <input type=\"checkbox\" [checked]=\"checked\" [disabled]=\"disabled\" (change)=\"valueChanged()\"/>\n <span class=\"checkbox\">\n <span class=\"inner\"></span>\n </span>\n <!-- svg for checkmark -->\n <ng-container *ngIf=\"!indeterminateEnabled\">\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path class=\"checkmark__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\n </svg>\n </ng-container>\n \n <ng-container *ngIf=\"indeterminateEnabled\">\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path fill=\"none\" d=\"M37.9,27H14v-2h23.9V27z\"/>\n </svg>\n </ng-container>\n \n <span class=\"value\"><ng-content></ng-content></span>\n </label>\n ","import { FormsModule } from '@angular/forms';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CsCheckboxComponent } from './cs-checkbox/cs-checkbox.component';\nimport { CsRadioComponent } from './cs-radio/cs-radio.component';\nimport { CsSwitchComponent } from './cs-switch/cs-switch.component';\nimport { CsRadioGroupComponent } from './cs-radio-group/cs-radio-group.component';\nimport { CsSelectComponent } from './cs-select/cs-select.component';\nimport { TooltipModule } from '../tooltip/tooltip.module';\nimport { PascalPipe } from './pipes/pascal.pipe';\nimport { SearchMultiSelectPipe } from './pipes/searchMultiSelect.pipe';\nimport { ClickOutsideDirective } from './click-outside.directive';\nimport { CsCheckboxIndeterminateComponent } from './cs-checkbox-indeterminate/cs-checkbox-indeterminate.component'\nimport { CheckboxComponent } from './checkbox/checkbox.component';\n\n@NgModule({\n declarations: [\n CsCheckboxComponent,\n CsRadioComponent,\n CsSwitchComponent,\n CsRadioGroupComponent,\n CsSelectComponent,\n PascalPipe,\n SearchMultiSelectPipe,\n ClickOutsideDirective,\n CsCheckboxIndeterminateComponent,\n CheckboxComponent\n ],\n imports: [CommonModule, FormsModule, TooltipModule],\n exports: [\n CsCheckboxComponent,\n CsRadioComponent,\n CsSwitchComponent,\n CsRadioGroupComponent,\n CsSelectComponent,\n SearchMultiSelectPipe,\n CsCheckboxIndeterminateComponent,\n CheckboxComponent\n ],\n})\nexport class FormgroupModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GlobalAlertComponent } from './global-alert/global-alert.component';\n\n@NgModule({\n declarations: [GlobalAlertComponent],\n imports: [CommonModule],\n exports: [GlobalAlertComponent],\n})\nexport class GlobalAlertModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HeaderContainerComponent } from './header-container/header-container.component';\nimport { TooltipModule } from '../../shared/ui-kit/tooltip/tooltip.module';\nimport { BusinessCycleComponent } from './business-cycle/business-cycle.component';\nimport { SearchComponent } from './search/search.component';\nimport { CreateWorkflowComponent } from './create-workflow/create-workflow.component';\nimport { QueueComponent } from './queue/queue.component';\nimport { UserDetailsComponent } from './user-details/user-details.component';\nimport { SupportComponent } from './support/support.component';\nimport { AvatarModule } from '../../shared/ui-kit/avatar/avatar.module';\nimport { PopoverModule } from '../../shared/ui-kit/popover/popover.module';\nimport { FormgroupModule } from '../../shared/ui-kit/formgroup/formgroup.module';\nimport { GlobalAlertModule } from '../global-alert/global-alert.module';\nimport { PipesModule } from '../../shared/pipe/pipes.module';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n declarations: [\n HeaderContainerComponent,\n BusinessCycleComponent,\n SearchComponent,\n CreateWorkflowComponent,\n QueueComponent,\n UserDetailsComponent,\n SupportComponent,\n ],\n imports: [\n CommonModule,\n TooltipModule,\n AvatarModule,\n PopoverModule,\n FormgroupModule,\n GlobalAlertModule,\n PipesModule,\n FormsModule,\n FormgroupModule,\n ],\n exports: [HeaderContainerComponent],\n})\nexport class HeaderModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SubMenuContainerComponent } from './sub-menu-container/sub-menu-container.component';\nimport { TooltipModule } from '../../shared/ui-kit/tooltip/tooltip.module';\n\n@NgModule({\n declarations: [SubMenuContainerComponent],\n imports: [CommonModule, TooltipModule],\n exports: [SubMenuContainerComponent],\n})\nexport class SubMenuModule {}\n","/*\n * Public API Surface of vc-layout\n */\n\nexport * from './lib/shared/services/RBAC.service';\nexport * from './lib/vc-layout.service';\nexport * from './lib/vc-layout.component';\nexport * from './lib/vc-layout.module';\nexport * from './lib/components/product-list/product-list-container/product-list-container.component';\nexport * from './lib/components/header/header-container/header-container.component';\nexport * from './lib/components/sub-menu/sub-menu-container/sub-menu-container.component';\n\nexport * from './lib/components/product-list/product-list.module';\nexport * from './lib/components/header/header.module';\nexport * from './lib/components/sub-menu/sub-menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3.LayoutService","i4.Configurations","i1.ApiService","i1.RbacService","i1.ProductListService","i2.ApiService","i3.RbacService","i4","i5.ToolTipDirective","i6.PageLoaderComponent","i7.GetModuleIconPipe","i1.LayoutService","i3","i4.ToolTipDirective","i5.GetModuleIconPipe","i1.ModuleListComponent","i2.PreferenceListComponent","i1","i1.PopoverService","i2.BusinessCycleService","i3.ApiService","i6.PopoverComponent","i7.PopoverDirective","i8.CsCheckboxComponent","i9.DateFormatPipe","i3.ToolTipDirective","i1.ToolTipDirective","i2.LayoutService","i1.Configurations","i3.GetFileUrlPipe","i4.AvatarComponent","i5.PopoverComponent","i6.PopoverDirective","i7","i5.GlobalAlertComponent","i6.BusinessCycleComponent","i7.SearchComponent","i8.CreateWorkflowComponent","i9.QueueComponent","i10.UserDetailsComponent","i11.SupportComponent","i12.CreatePermissionPipe","i2.ToolTipDirective","i1.CsRadioComponent","i3.ClickOutsideDirective","i4.PascalPipe"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vc-layout.mjs","sources":["../../../projects/vc-layout/src/lib/constants/api.constant.ts","../../../projects/vc-layout/src/lib/shared/services/layout.service.ts","../../../projects/vc-layout/src/lib/configurations.ts","../../../projects/vc-layout/src/lib/shared/services/api.service.ts","../../../projects/vc-layout/src/lib/shared/services/RBAC.service.ts","../../../projects/vc-layout/src/lib/vc-layout.service.ts","../../../projects/vc-layout/src/lib/vc-layout.component.ts","../../../projects/vc-layout/src/lib/vc-layout.module.ts","../../../projects/vc-layout/src/lib/constants/assets.constants.ts","../../../projects/vc-layout/src/lib/constants/app-url.constant.ts","../../../projects/vc-layout/src/lib/constants/product-list.constant.ts","../../../projects/vc-layout/src/lib/shared/services/product-list.service.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/tooltip/tooltip.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/page-loader/page-loader.component.ts","../../../projects/vc-layout/src/lib/shared/pipe/get-module-icon.pipe.ts","../../../projects/vc-layout/src/lib/components/product-list/module-list/module-list.component.ts","../../../projects/vc-layout/src/lib/components/product-list/preference-list/preference-list.component.ts","../../../projects/vc-layout/src/lib/components/product-list/product-list-container/product-list-container.component.ts","../../../projects/vc-layout/src/lib/constants/business-cycle.constant.ts","../../../projects/vc-layout/src/lib/constants/alerts.constant.ts","../../../projects/vc-layout/src/lib/components/global-alert/global-alert/global-alert.component.ts","../../../projects/vc-layout/src/lib/shared/services/business-cycle.service.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.service.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.html","../../../projects/vc-layout/src/lib/shared/pipe/date-format.pipe.ts","../../../projects/vc-layout/src/lib/components/header/business-cycle/business-cycle.component.ts","../../../projects/vc-layout/src/lib/components/header/business-cycle/business-cycle.component.html","../../../projects/vc-layout/src/lib/components/header/search/search.component.ts","../../../projects/vc-layout/src/lib/components/header/create-workflow/create-workflow.component.ts","../../../projects/vc-layout/src/lib/components/header/create-workflow/create-workflow.component.html","../../../projects/vc-layout/src/lib/components/header/queue/queue.component.ts","../../../projects/vc-layout/src/lib/shared/pipe/get-file-url.pipe.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/avatar/avatar/avatar.component.ts","../../../projects/vc-layout/src/lib/components/header/user-details/user-details.component.ts","../../../projects/vc-layout/src/lib/components/header/user-details/user-details.component.html","../../../projects/vc-layout/src/lib/components/header/support/support.component.ts","../../../projects/vc-layout/src/lib/shared/pipe/check-create-permission.pipe.ts","../../../projects/vc-layout/src/lib/components/header/header-container/header-container.component.ts","../../../projects/vc-layout/src/lib/components/header/header-container/header-container.component.html","../../../projects/vc-layout/src/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/tooltip/tooltip.module.ts","../../../projects/vc-layout/src/lib/shared/pipe/pipes.module.ts","../../../projects/vc-layout/src/lib/components/product-list/product-list.module.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/avatar/avatar.module.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover-event.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover-longpress.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/popover/popover.module.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/click-outside.directive.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/pipes/pascal.pipe.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/pipes/searchMultiSelect.pipe.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.ts","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.html","../../../projects/vc-layout/src/lib/shared/ui-kit/formgroup/formgroup.module.ts","../../../projects/vc-layout/src/lib/components/global-alert/global-alert.module.ts","../../../projects/vc-layout/src/lib/components/header/header.module.ts","../../../projects/vc-layout/src/lib/components/sub-menu/sub-menu.module.ts","../../../projects/vc-layout/src/public-api.ts","../../../projects/vc-layout/src/vc-layout.ts"],"sourcesContent":["import { queue } from 'rxjs';\r\n\r\nexport const API = {\r\n subscriptionList: `subscriptionList`,\r\n organizationDetails: `orgDetails&id=`,\r\n userDetails: `users&id=`,\r\n queueCount: `complianceReport/TotalResponsibilityQueue`,\r\n};\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class LayoutService {\r\n public baseUrl: string = '';\r\n public pathName: string = window.location.pathname;\r\n constructor() {\r\n this.setBaseUrl();\r\n }\r\n private setBaseUrl() {\r\n this.baseUrl = window.location.origin;\r\n }\r\n\r\n public ConvertUtcToLocalDateTime(timestamp: number, TimeZone: string) {\r\n if (typeof timestamp !== 'number' || timestamp <= 0) {\r\n return 0;\r\n }\r\n\r\n if (!TimeZone) {\r\n return 0;\r\n }\r\n\r\n const date = new Date(timestamp * 1000);\r\n const options: Intl.DateTimeFormatOptions = {\r\n timeZone: TimeZone,\r\n weekday: 'long',\r\n year: 'numeric',\r\n month: 'short',\r\n day: '2-digit',\r\n hour: 'numeric',\r\n minute: 'numeric',\r\n };\r\n\r\n const formattedDate = new Intl.DateTimeFormat('en', options).format(date);\r\n return formattedDate;\r\n }\r\n}\r\n","export class Configurations {\r\n public envConfig: any;\r\n\r\n constructor() {\r\n this.envConfig = {};\r\n }\r\n\r\n}\r\n","import { Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { API } from '../../constants/api.constant';\r\nimport { Configurations } from '../../configurations';\r\nimport { AuthorizerService } from '@vcomply/authorizer';\r\nimport { LayoutService } from './layout.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ApiService {\r\n public env: any;\r\n\r\n public userDetails: any;\r\n public isLoading: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(true);\r\n public userId: string = '';\r\n private httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n token: this.authService.getToken(),\r\n }),\r\n };\r\n\r\n public subscriptionDetail$: BehaviorSubject<any | null> = new BehaviorSubject<\r\n any | null\r\n >(null);\r\n public organizationDetail$: BehaviorSubject<any | null> = new BehaviorSubject<\r\n any | null\r\n >(null);\r\n public loggedUserDetail$: BehaviorSubject<any | null> = new BehaviorSubject<\r\n any | null\r\n >(null);\r\n public queueCount$: BehaviorSubject<any | null> = new BehaviorSubject<\r\n any | null\r\n >(null);\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private authService: AuthorizerService,\r\n private layoutService: LayoutService,\r\n @Optional() config?: Configurations\r\n ) {\r\n this.env = config?.envConfig;\r\n this.userDetails = authService.getUser();\r\n this.getOrgDetails(this.userDetails?.organisation_id ?? 0);\r\n this.getUserDetails(this.authService?.getMemberId() ?? '');\r\n this.getQueueCount();\r\n }\r\n\r\n /**\r\n *\r\n * API definitions\r\n */\r\n\r\n // Subscription List\r\n private subscriptionList() {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n token: this.authService.getToken(),\r\n }),\r\n };\r\n return this.http.get<any[]>(\r\n this.env.organizationGet + API.subscriptionList,\r\n httpOptions\r\n );\r\n }\r\n\r\n // Organization List\r\n private organizationDetails(id: number) {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n token: this.authService.getToken(),\r\n }),\r\n };\r\n return this.http.get<any[]>(\r\n this.env.organizationGet + API.organizationDetails + id,\r\n httpOptions\r\n );\r\n }\r\n\r\n // Logged in User Details\r\n private loggedInUserDetails(id: string) {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n token: this.authService.getToken(),\r\n }),\r\n };\r\n return this.http.get<any[]>(\r\n this.env.organizationGet + API.userDetails + id,\r\n httpOptions\r\n );\r\n }\r\n\r\n // Logged in Queue Count\r\n private queueCount() {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n token: this.authService.getToken(),\r\n }),\r\n };\r\n return this.http.get<any[]>(\r\n this.env.complianceGet + API.queueCount,\r\n httpOptions\r\n );\r\n }\r\n /**\r\n * ALL API CALLS\r\n *\r\n */\r\n\r\n //fetch subscription list\r\n public getSubscriptionList() {\r\n this.subscriptionList().subscribe((data: any) => {\r\n if (data.length) {\r\n let response = data[0];\r\n response['expiredDetails'] =\r\n this.layoutService.ConvertUtcToLocalDateTime(\r\n response.expiry_date,\r\n this.userDetails.timezone\r\n );\r\n this.subscriptionDetail$.next(data[0]);\r\n }\r\n });\r\n }\r\n\r\n //fetch organization details\r\n public getOrgDetails(id: number) {\r\n this.organizationDetails(id).subscribe((data: any) => {\r\n if (data) {\r\n this.organizationDetail$.next(data);\r\n }\r\n });\r\n }\r\n\r\n //fetch logged in user details\r\n public getUserDetails(_id: string) {\r\n this.loggedInUserDetails(_id).subscribe((data: any) => {\r\n if (data) {\r\n this.loggedUserDetail$.next(data);\r\n }\r\n });\r\n }\r\n\r\n //fetch Queue Count\r\n public getQueueCount() {\r\n this.queueCount().subscribe((data: any) => {\r\n if (data) {\r\n this.queueCount$.next(data);\r\n }\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ApiService } from './api.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RbacService {\r\n permissions: any = {};\r\n constructor(private apiService: ApiService) {}\r\n\r\n /**\r\n * Retrieves the RBAC (Role-Based Access Control) permissions for a given module.\r\n *\r\n * @param MODULE - The module for which to retrieve the permissions. Must be one of the following values:\r\n * - 'assessment'\r\n * - 'audit'\r\n * - 'issue'\r\n * - 'policy'\r\n * - 'risk'\r\n * - 'assurance'\r\n * - 'compliance'\r\n * - 'organization'\r\n *\r\n * @returns An array of strings representing the permissions for the specified module.\r\n */\r\n public getRBACPermissions(\r\n MODULE:\r\n | 'assessment'\r\n | 'audit'\r\n | 'issue'\r\n | 'policy'\r\n | 'risk'\r\n | 'assurance'\r\n | 'compliance'\r\n | 'organization'\r\n | 'case'\r\n | 'settings'\r\n ) {\r\n const data = this.apiService.loggedUserDetail$.value?.roleActions ?? [];\r\n if (this.permissions[MODULE]) {\r\n return this.permissions[MODULE];\r\n }\r\n\r\n const modulePermissions = data.find(\r\n (item: any) => item.moduleName === MODULE\r\n );\r\n const PERMISSION_ARRAY: string[] = [];\r\n\r\n // checked if module is active\r\n if (modulePermissions?.isActive) {\r\n // find all active submodules\r\n modulePermissions.subModule\r\n ?.filter((subModule: any) => subModule.isActive)\r\n .forEach((subModule: any) => {\r\n // find all active permissions\r\n subModule.permissions\r\n ?.filter((permission: any) => permission.enable)\r\n .forEach((permission: any) => {\r\n PERMISSION_ARRAY.push(permission.code);\r\n });\r\n });\r\n }\r\n\r\n this.permissions[MODULE] = PERMISSION_ARRAY;\r\n return PERMISSION_ARRAY;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VcLayoutService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'vc-layout',\r\n template: ` <p>vc-layout works!</p> `,\r\n styles: [],\r\n})\r\nexport class VcLayoutComponent implements OnInit {\r\n public baseUrl: string = '';\r\n constructor() {\r\n this.setBaseUrl();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n private setBaseUrl() {\r\n this.baseUrl = window.location.origin;\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { VcLayoutComponent } from './vc-layout.component';\r\nimport { Configurations } from './configurations';\r\n\r\n@NgModule({\r\n declarations: [VcLayoutComponent],\r\n imports: [],\r\n exports: [VcLayoutComponent],\r\n})\r\nexport class VcLayoutModule {\r\n public static forRoot(\r\n environmentConfig: Configurations\r\n ): ModuleWithProviders<VcLayoutModule> {\r\n return {\r\n ngModule: VcLayoutModule,\r\n providers: [{ provide: Configurations, useValue: environmentConfig }],\r\n };\r\n }\r\n}\r\n","const BASE_URL: string = 'https://cdn.v-comply.com';\r\n\r\nexport const ASSETS: any = {\r\n unauthorized: `${BASE_URL}/application/images/unauthorized-image.svg`,\r\n v_icon: `${BASE_URL}/logo/prod/v-logo.svg`,\r\n xmas_cap: `${BASE_URL}/logo/prod/santa-cap.svg`,\r\n toggle_icon: `${BASE_URL}/logo/prod/hamburger-icon.svg`,\r\n dashboard_icon: `${BASE_URL}/logo/prod/dashboard-icon.svg`,\r\n to_do_responsibilities_icon: `${BASE_URL}/logo/prod/toDo-responsibility-icon.svg`,\r\n organization_icon: `${BASE_URL}/logo/prod/organization-icon.svg`,\r\n compliance_icon: `${BASE_URL}/logo/prod/compliance-icon.svg`,\r\n assessment_icon: `${BASE_URL}/logo/prod/assessment-icon.svg`,\r\n risk_icon: `${BASE_URL}/logo/prod/risk-icon.svg`,\r\n assurance_icon: `${BASE_URL}/logo/prod/assurance-icon.svg`,\r\n audit_icon: `${BASE_URL}/logo/prod/audit-icon.svg`,\r\n issue_icon: `${BASE_URL}/logo/prod/issue-icon.svg`,\r\n all_icon: `${BASE_URL}/logo/prod/policy-icon.svg`,\r\n download_center_icon: `${BASE_URL}/logo/prod/download-center-icon.svg`,\r\n settings_icon: `${BASE_URL}/logo/prod/settings-icon.svg`,\r\n active_dashboard_icon: `${BASE_URL}/logo/prod/active-dashboard-icon.svg`,\r\n active_to_do_responsibilities_icon: `${BASE_URL}/logo/prod/active-toDo-responsibility-icon.svg`,\r\n active_organization_icon: `${BASE_URL}/logo/prod/active-organization-icon.svg`,\r\n active_compliance_icon: `${BASE_URL}/logo/prod/active-compliance-icon.svg`,\r\n active_assessment_icon: `${BASE_URL}/logo/prod/active-assessment-icon.svg`,\r\n active_risk_icon: `${BASE_URL}/logo/prod/active-risk-icon.svg`,\r\n active_assurance_icon: `${BASE_URL}/logo/prod/active-assurance-icon.svg`,\r\n active_audit_icon: `${BASE_URL}/logo/prod/active-audit-icon.svg`,\r\n active_issue_icon: `${BASE_URL}/logo/prod/active-issue-icon.svg`,\r\n active_all_icon: `${BASE_URL}/logo/prod/active-policy-icon.svg`,\r\n active_download_center_icon: `${BASE_URL}/logo/prod/active-download-center-icon.svg`,\r\n active_settings_icon: `${BASE_URL}/logo/prod/active-settings-icon.svg`,\r\n active_case_icon: `${BASE_URL}/logo/prod/active-caseops-icon.svg`,\r\n support_icon: `${BASE_URL}/libraries/support/support-icon.svg`,\r\n case_icon: `${BASE_URL}/logo/prod/caseops-icon.svg`,\r\n};\r\n\r\n","export const IN_APP_URL: any = {\r\n MANAGE_RESPONSIBILITY:\r\n '/compliance/#/compliance/manage-responsibility?q={\"byResponsibilities\":{\"type\":[\"manage_responsibilities\"],\"subType\":[\"CC\"]},\"byStatus\":{\"type\":[\"active\"],\"subType\":[]},\"filterObject\":{\"responsibilityCenter\":[],\"entrustedBy\":[],\"entrustedTo\":[],\"riskIds\":[],\"responsibilityCategory\":[]},\"timePeriodDetails\":{\"type\":\"\",\"selectedPeriod\":\"\",\"selectedYear\":\"\"},\"status\":\"\"}',\r\n MY_RESPONSIBILITY:\r\n '/compliance/#/compliance/manage-responsibility?q={\"byResponsibilities\":{\"type\":[\"my_responsibilities\"],\"subType\":[\"CC\"]},\"byStatus\":{\"type\":[\"active\"],\"subType\":[]},\"filterObject\":{\"responsibilityCenter\":[],\"entrustedBy\":[],\"entrustedTo\":[],\"riskIds\":[],\"responsibilityCategory\":[]},\"timePeriodDetails\":{\"type\":\"\",\"selectedPeriod\":\"\",\"selectedYear\":\"\"},\"status\":\"\"}',\r\n QUEUE:\r\n '/compliance/#/compliance/manage-responsibility?q={\"byResponsibilities\":{\"type\":[\"responsibilities_in_queue\"],\"subType\":[\"CC\"]},\"byStatus\":{\"type\":[\"responsibilities_in_queue\"],\"subType\":[]},\"filterObject\":{\"responsibilityCenter\":[],\"entrustedBy\":[],\"entrustedTo\":[],\"riskIds\":[],\"responsibilityCategory\":[]},\"timePeriodDetails\":{\"type\":\"\",\"selectedPeriod\":\"\",\"selectedYear\":\"\"},\"status\":\"\"}',\r\n PROGRAM: '/program/manage-program-categories/programs-overview',\r\n DASHBOARD: '/global-dashboard/',\r\n TO_DO_RESPONSIBILITIES: '/to-do-responsibilities',\r\n ORGANIZATION: '/organization/',\r\n SETTINGS: '/settings',\r\n ASSESSMENT: '/assessment/',\r\n RISK: '/global-dashboard/risk_dashboard?module=risk',\r\n ASSURANCE: '/assurance/test_dashboard',\r\n AUDIT: '/global-dashboard/audit_dashboard?module=audit',\r\n ISSUE: '/global-dashboard/issue_dashboard?module=issue',\r\n ALL: '/policyops/',\r\n EDIT_PROFILE: '/settings/settings/profile?edit_profile=true',\r\n DOWNLOAD_CENTER: '/downloads-center/',\r\n PASSWORD_RESET: `/settings/settings/account-access-and-settings/general-settings`,\r\n DEFAULT: '/policyops/',\r\n CASE: '/global-dashboard/case_dashboard?module=caseOps',\r\n};\r\n","import { IN_APP_URL } from './app-url.constant';\r\nimport { ASSETS } from './assets.constants';\r\n\r\nexport const PRODUCT_LIST: any = [\r\n {\r\n name: 'View Submenu',\r\n icon: ASSETS.hamburger_icon,\r\n code: 'TOGGLE',\r\n class: '',\r\n isActive: false,\r\n linkClass: 'vc-hamburger',\r\n },\r\n {\r\n name: 'Dashboard',\r\n icon: ASSETS.dashboard_icon,\r\n code: 'DASHBOARD',\r\n class: 'dashboard-list',\r\n isActive: true,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'To-Do Responsibilities',\r\n icon: ASSETS.toDoResponsibility_icon,\r\n code: 'TO_DO_RESPONSIBILITIES',\r\n class: 'toDoResponsibility-list',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'Organization',\r\n icon: ASSETS.organization_icon,\r\n code: 'ORGANIZATION',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'ComplianceOps',\r\n icon: ASSETS.compliance_icon,\r\n code: 'COMPLIANCE',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'Assessments',\r\n icon: ASSETS.assessment_icon,\r\n code: 'ASSESSMENT',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'RiskOps',\r\n icon: ASSETS.risk_icon,\r\n code: 'RISK',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'Assurance',\r\n icon: ASSETS.assurance_icon,\r\n code: 'ASSURANCE',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'AuditOps',\r\n icon: ASSETS.audit_icon,\r\n code: 'AUDIT',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'IssueOps',\r\n icon: ASSETS.issue_icon,\r\n code: 'ISSUE',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'CaseOps',\r\n icon: ASSETS.case_icon,\r\n code: 'CASE',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n {\r\n name: 'PolicyOps',\r\n icon: ASSETS.policy_icon,\r\n code: 'ALL',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n },\r\n];\r\n\r\nexport const PREFERENCE_LIST: any = [\r\n {\r\n name: 'Download Center',\r\n icon: ASSETS.download_center_icon,\r\n code: 'DOWNLOAD_CENTER',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n url: IN_APP_URL.DOWNLOAD_CENTER,\r\n },\r\n {\r\n name: 'Settings',\r\n icon: ASSETS.settings_icon,\r\n code: 'SETTINGS',\r\n class: '',\r\n isActive: false,\r\n linkClass: '',\r\n url: IN_APP_URL.SETTINGS,\r\n },\r\n];\r\n\r\nexport const CODES = ['ASSESSMENT', 'ISSUE', 'CASE'];\r\n\r\nexport const ASSESSMENT_PERMISSIONS = ['AAMA', 'AALVAL', 'AALMAL'];\r\n\r\nexport const CASE_PERMISSIONS = ['CCAMCC', 'CCAMCT', 'CCAMCP'];","import { Injectable } from '@angular/core';\r\nimport { IN_APP_URL } from '../../constants/app-url.constant';\r\nimport { RbacService } from './RBAC.service';\r\nimport { CASE_PERMISSIONS } from '../../constants/product-list.constant';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ProductListService {\r\n constructor(private rbacService: RbacService) { }\r\n\r\n /**\r\n * Filters the subscribed products based on the subscription flags.\r\n *\r\n * @param productList - The list of products.\r\n * @param subscriptionList - The subscription flags.\r\n * @returns The filtered list of subscribed products.\r\n */\r\n public subscribedProduct(productList?: any, subscriptionList?: any) {\r\n const flags: { [key: string]: any } = {\r\n RISK: subscriptionList.risk_flag,\r\n ASSURANCE: subscriptionList.assurance_flag,\r\n ISSUE: subscriptionList.issue_flag,\r\n AUDIT: subscriptionList.audit_flag,\r\n ALL: subscriptionList.policy_flag,\r\n ASSESSMENT: subscriptionList.assessment_flag,\r\n CASE:subscriptionList.case_flag,\r\n COMPLIANCE:subscriptionList.compliance_flag,\r\n TO_DO_RESPONSIBILITIES: subscriptionList.compliance_flag,\r\n DASHBOARD: subscriptionList.compliance_flag\r\n };\r\n const code = Object.keys(flags).filter((key) => flags[key] === 0);\r\n\r\n return productList.filter((product: any) => !code.includes(product.code));\r\n }\r\n\r\n /**\r\n * Sets the product click callback based on the product details and feature flag.\r\n *\r\n * @param productDetails - The details of the product.\r\n * @param featureFlag - The feature flag.\r\n * @returns The URL for the product click callback.\r\n */\r\n public setProductClickCallback(productDetails: any) {\r\n let url = '';\r\n switch (productDetails.code) {\r\n case 'COMPLIANCE':\r\n return this.setComplianceURL();\r\n case 'CASE':\r\n case 'ORGANIZATION':\r\n case 'DASHBOARD':\r\n case 'ASSESSMENT':\r\n case 'RISK':\r\n case 'ASSURANCE':\r\n case 'AUDIT':\r\n case 'ISSUE':\r\n case 'ALL':\r\n case 'TO_DO_RESPONSIBILITIES':\r\n case 'SETTINGS':\r\n case 'DOWNLOAD_CENTER':\r\n return IN_APP_URL[productDetails.code];\r\n default:\r\n return 'javascript:void(0);';\r\n }\r\n }\r\n\r\n /**\r\n * Sets the compliance URL based on the feature flag and RBAC permissions.\r\n *\r\n * @param featureFlag - The feature flag.\r\n * @returns The URL for the compliance page.\r\n */\r\n private setComplianceURL() {\r\n const permissions = this.rbacService.getRBACPermissions('compliance');\r\n return permissions.includes('CRMR')\r\n ? IN_APP_URL.MANAGE_RESPONSIBILITY\r\n : IN_APP_URL.MY_RESPONSIBILITY;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n Input,\r\n ElementRef,\r\n HostListener,\r\n Renderer2,\r\n OnInit,\r\n AfterViewInit,\r\n ViewChild,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[arTooltip]',\r\n})\r\nexport class ToolTipDirective implements OnInit {\r\n @Input('arTooltip') tooltipTitle!: string;\r\n @Input() placement!: string;\r\n @Input() type: any;\r\n @Input() tooltipMandatory!: boolean;\r\n @Input() showTooltip = true;\r\n @Input() animate!: boolean;\r\n tooltip!: HTMLElement;\r\n offset = 8;\r\n\r\n constructor(private el: ElementRef, private renderer: Renderer2) {}\r\n ngOnInit() {}\r\n @HostListener('mouseenter') onMouseEnter() {\r\n this.hide();\r\n this.show();\r\n }\r\n @HostListener('mouseover') onMouseOver() {\r\n this.hide();\r\n this.show();\r\n }\r\n\r\n @HostListener('mouseleave') onMouseLeave() {\r\n this.hide();\r\n }\r\n @HostListener('mouseout') onMouseOut() {\r\n this.hide();\r\n }\r\n @HostListener('click') onClick() {\r\n this.hide();\r\n }\r\n show() {\r\n if (!this.showTooltip) {\r\n return;\r\n }\r\n this.create();\r\n const element = this.el.nativeElement;\r\n if (this.tooltipMandatory === true) {\r\n this.setPosition();\r\n this.renderer.addClass(this.tooltip, 'fl-tooltip-show');\r\n } else {\r\n if (\r\n element.scrollWidth * element.scrollHeight >\r\n element.offsetWidth * element.offsetHeight\r\n ) {\r\n this.setPosition();\r\n this.renderer.addClass(this.tooltip, 'fl-tooltip-show');\r\n }\r\n }\r\n }\r\n\r\n hide() {\r\n if (document.body.contains(this.tooltip)) {\r\n if (this.renderer) {\r\n this.renderer.removeChild(\r\n document.body,\r\n document.getElementById('tooltip')\r\n );\r\n }\r\n }\r\n }\r\n\r\n create() {\r\n this.tooltip = this.renderer.createElement('span');\r\n this.tooltip.setAttribute('id', 'tooltip');\r\n this.tooltip.innerHTML = this.tooltipTitle;\r\n this.renderer.appendChild(document.body, this.tooltip);\r\n this.renderer.addClass(this.tooltip, 'fl-tooltip');\r\n this.renderer.addClass(this.tooltip, `fl-tooltip-${this.placement}`);\r\n this.renderer.addClass(this.tooltip, `${this.type}`);\r\n if (this.animate) {\r\n this.renderer.addClass(this.tooltip, `animate-${this.placement}`);\r\n }\r\n }\r\n\r\n setPosition() {\r\n const hostPos = this.el.nativeElement.getBoundingClientRect();\r\n const tooltipPos = this.tooltip.getBoundingClientRect();\r\n const scrollPos =\r\n window.pageYOffset ||\r\n document.documentElement.scrollTop ||\r\n document.body.scrollTop ||\r\n 0;\r\n const w = window.innerWidth;\r\n const h = window.innerHeight;\r\n let top;\r\n let left;\r\n if (this.placement === 'top') {\r\n top = hostPos.top - tooltipPos.height - this.offset;\r\n left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;\r\n }\r\n\r\n if (this.placement === 'bottom') {\r\n if (hostPos.top + tooltipPos.height > h) {\r\n top = hostPos.top - tooltipPos.height;\r\n left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;\r\n this.renderer.removeClass(this.tooltip, `fl-tooltip-bottom`);\r\n this.renderer.addClass(this.tooltip, `fl-tooltip-top`);\r\n } else {\r\n top = hostPos.bottom + this.offset;\r\n left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;\r\n }\r\n }\r\n\r\n if (this.placement === 'left') {\r\n top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;\r\n left = hostPos.left - tooltipPos.width - this.offset;\r\n }\r\n\r\n if (this.placement === 'right') {\r\n top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;\r\n left = hostPos.right + this.offset;\r\n }\r\n if (this.placement === 'bottom-right') {\r\n top = hostPos.bottom + this.offset;\r\n left = hostPos.left - (tooltipPos.width - 28);\r\n }\r\n if (this.placement === 'bottom-left') {\r\n if (hostPos.top + tooltipPos.height > h - 30) {\r\n top = hostPos.top - tooltipPos.height;\r\n left = hostPos.left;\r\n this.renderer.removeClass(this.tooltip, `fl-tooltip-bottom-left`);\r\n this.renderer.addClass(this.tooltip, `fl-tooltip-top-left`);\r\n } else {\r\n top = hostPos.bottom + this.offset;\r\n left = hostPos.left;\r\n }\r\n }\r\n this.renderer.setStyle(this.tooltip, 'top', `${top + scrollPos}px`);\r\n this.renderer.setStyle(this.tooltip, 'left', `${left}px`);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-page-loader',\r\n template: `<div class=\"index-loader-area\">\r\n <div class=\"index-left-menu\">\r\n <div class=\"index-left-logo\"></div>\r\n <div class=\"index-left-logo\"></div>\r\n <div class=\"index-left-logo\"></div>\r\n <div class=\"index-left-icon\"></div>\r\n <div class=\"index-left-icon\"></div>\r\n </div>\r\n </div>`,\r\n styleUrls: ['./page-loader.component.less']\r\n})\r\nexport class PageLoaderComponent {\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ASSETS } from '../../constants/assets.constants';\r\n\r\n@Pipe({\r\n name: 'getModuleIcon',\r\n})\r\nexport class GetModuleIconPipe implements PipeTransform {\r\n transform(module: string, activeModule: string): string {\r\n const iconURLs = ASSETS;\r\n if (module === activeModule) {\r\n const activeIconName = 'active_' + module.toLowerCase() + '_icon';\r\n return iconURLs[activeIconName];\r\n }\r\n return iconURLs[module.toLowerCase() + '_icon'];\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\nimport { ASSETS } from '../../../constants/assets.constants';\r\nimport {\r\n PRODUCT_LIST,\r\n ASSESSMENT_PERMISSIONS,\r\n CODES\r\n} from '../../../constants/product-list.constant';\r\nimport { ProductListService } from '../../../shared/services/product-list.service';\r\nimport { ApiService } from '../../../shared/services/api.service';\r\nimport { RbacService } from '../../../shared/services/RBAC.service';\r\n\r\n@Component({\r\n selector: 'vc-module-list',\r\n template: `\r\n <app-page-loader *ngIf=\"isLoading\"></app-page-loader>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <div class=\"module-list\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <li\r\n *ngFor=\"let eachProduct of PRODUCT_LIST\"\r\n class=\"vx-d-flex vx-align-center vx-justify-center\"\r\n [ngClass]=\"eachProduct.class\"\r\n [class.active]=\"activeModule === eachProduct.code\"\r\n >\r\n <a\r\n class=\"vx-d-flex vx-align-center vx-justify-center vx-w-100\"\r\n [ngClass]=\"eachProduct?.linkClass\"\r\n [arTooltip]=\"eachProduct.name\"\r\n placement=\"right\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n [animate]=\"true\"\r\n (click)=\"eachProduct?.callback(eachProduct)\"\r\n ><img\r\n [src]=\"eachProduct.code | getModuleIcon : activeModule\"\r\n alt=\"\"\r\n width=\"16\"\r\n height=\"16\"\r\n />\r\n <ng-template *ngIf=\"eachProduct?.code !== 'TOGGLE'\">\r\n [href]=\"eachProduct.url\"\r\n </ng-template>\r\n <ng-template *ngElse>\r\n (click)=\"onSubMenuToggle(eachProduct)\"\r\n </ng-template>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-container>\r\n `,\r\n styleUrls: ['./module-list.component.less'],\r\n})\r\nexport class ModuleListComponent implements OnChanges, OnInit {\r\n isLoading: boolean = false;\r\n CODES: any = CODES;\r\n @Input() featureFlag: any;\r\n @Input() activeModule: string = 'COMPLIANCE';\r\n @Input() isSubMenuVisible: boolean = true;\r\n @Output() onToggleSubmenu: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n ASSETS: any = ASSETS;\r\n PRODUCT_LIST: any = []; \r\n assessmentPermission: Array<any> = [];\r\n\r\n constructor(\r\n private productListService: ProductListService,\r\n private apiService: ApiService,\r\n private rbacService: RbacService\r\n ) {\r\n this.apiService.getSubscriptionList();\r\n }\r\n ngOnInit(): void {\r\n this.setLoader();\r\n this.initializeProductList();\r\n }\r\n ngOnChanges(): void {\r\n this.getUserDetails();\r\n this.checkModuleSubscription();\r\n }\r\n\r\n /**\r\n * Initialize the product list only after all required data is available\r\n * This prevents icon flashing by building the filtered list incrementally\r\n */\r\n private initializeProductList() {\r\n this.apiService.loggedUserDetail$.subscribe((userData) => {\r\n this.apiService.subscriptionDetail$.subscribe((subscriptionData) => {\r\n if (userData && subscriptionData) {\r\n this.buildFilteredProductList(subscriptionData);\r\n }\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Build the filtered product list incrementally and show all at once\r\n * This prevents icon flashing by only showing the final filtered result\r\n */\r\n private buildFilteredProductList(subscriptionData: any) {\r\n let filteredList = [...new Set(PRODUCT_LIST)];\r\n\r\n filteredList = this.productListService.subscribedProduct(\r\n filteredList,\r\n subscriptionData\r\n );\r\n\r\n if (\r\n !this.assessmentPermissionCheck(\r\n this.rbacService.getRBACPermissions('assessment')\r\n )\r\n ) {\r\n filteredList = filteredList.filter(\r\n (item: any) => item.code !== CODES[0]\r\n );\r\n }\r\n\r\n if (this.featureFlag.isFeatureEnabled('ff_cases_enabled')) {\r\n filteredList = filteredList.filter(\r\n (item: any) => item.code !== CODES[1]\r\n );\r\n } else {\r\n filteredList = filteredList.filter(\r\n (item: any) => item.code !== CODES[2]\r\n );\r\n }\r\n\r\n if (!this.isSubMenuVisible) {\r\n filteredList = filteredList.filter(\r\n (product: any) => product.code !== 'TOGGLE'\r\n );\r\n }\r\n\r\n this.PRODUCT_LIST = filteredList;\r\n this.setProductList();\r\n }\r\n\r\n /**\r\n * Handles the toggle event of the submenu for each product.\r\n *\r\n * @param eachProduct - The product object for which the submenu is being toggled.\r\n * @returns Returns false to prevent the default behavior.\r\n */\r\n public onSubMenuToggle(eachProduct: any) {\r\n if (eachProduct?.code === 'TOGGLE') {\r\n this.onToggleSubmenu.emit();\r\n } else {\r\n window.location.href = eachProduct.url;\r\n }\r\n }\r\n /**\r\n * Checks the module subscription and updates the product list accordingly.\r\n * Subscribes to the `subscriptionDetail$` observable from the `apiService` and updates the `PRODUCT_LIST` property of the component based on the received data.\r\n *\r\n * @remarks\r\n * This method is typically called when the component is initialized or when the subscription details change.\r\n */\r\n private checkModuleSubscription() {\r\n this.apiService.subscriptionDetail$.subscribe((data) => {\r\n if (data) {\r\n this.PRODUCT_LIST = this.productListService.subscribedProduct(\r\n this.PRODUCT_LIST,\r\n data\r\n );\r\n\r\n if (!this.isSubMenuVisible) {\r\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\r\n (product: any) => product.code !== 'TOGGLE'\r\n );\r\n }\r\n console.log(this.PRODUCT_LIST, this.isSubMenuVisible);\r\n }\r\n });\r\n }\r\n\r\n private setLoader() {\r\n this.apiService.isLoading.subscribe((res) => {\r\n this.isLoading = res;\r\n });\r\n }\r\n\r\n /**\r\n * Sets the product list by mapping each product in the PRODUCT_LIST array.\r\n * Each product's callback is set to the onSubMenuToggle method bound to the current instance.\r\n * The product's URL is set using the setProductClickCallback method of the productListService,\r\n * passing the product and the featureFlag as arguments. If the returned URL is null or undefined,\r\n * an empty string is assigned to the product's URL property.\r\n */\r\n\r\n private assessmentPermissionCheck(data: any[]): boolean {\r\n const assessmentPermissions = [...new Set(data)];\r\n return (\r\n assessmentPermissions.length > 0 &&\r\n assessmentPermissions.some((permission: any) =>\r\n ASSESSMENT_PERMISSIONS.includes(permission)\r\n )\r\n );\r\n }\r\n\r\n private setProductList() {\r\n this.PRODUCT_LIST = this.PRODUCT_LIST.map((product: any) => {\r\n product.callback = this.onSubMenuToggle.bind(this);\r\n product.url =\r\n this.productListService.setProductClickCallback(product) ?? '';\r\n return product;\r\n });\r\n this.apiService.isLoading.next(false);\r\n }\r\n\r\n private getUserDetails() {\r\n this.apiService.loggedUserDetail$.subscribe((data) => {\r\n if (data) {\r\n if (\r\n !this.assessmentPermissionCheck(\r\n this.rbacService.getRBACPermissions('assessment')\r\n )\r\n ) {\r\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\r\n (item: any) => item.code !== CODES[0]\r\n );\r\n }\r\n\r\n this.setCasePermission();\r\n this.setProductList();\r\n }\r\n });\r\n }\r\n private setCasePermission() {\r\n if (this.featureFlag.isFeatureEnabled('ff_cases_enabled')) {\r\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\r\n (item: any) => item.code !== CODES[1]\r\n );\r\n } else {\r\n this.PRODUCT_LIST = this.PRODUCT_LIST.filter(\r\n (item: any) => item.code !== CODES[2]\r\n );\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ASSETS } from '../../../constants/assets.constants';\r\nimport { PREFERENCE_LIST } from '../../../constants/product-list.constant';\r\nimport { LayoutService } from '../../../shared/services/layout.service';\r\nimport { ApiService } from '../../../shared/services/api.service';\r\n\r\n@Component({\r\n selector: 'vc-preference-list',\r\n template: `\r\n <ng-container *ngIf=\"!isLoading\">\r\n <div class=\"preference-list\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <li\r\n *ngFor=\"let eachItems of PREFERENCE_LIST\"\r\n class=\"vx-d-flex vx-align-center vx-justify-center\"\r\n [class.active]=\"activeModule === eachItems.code\"\r\n >\r\n <a\r\n class=\"vx-d-flex vx-align-center vx-justify-center vx-w-100\"\r\n [arTooltip]=\"eachItems?.name\"\r\n placement=\"right\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n [animate]=\"true\"\r\n [href]=\"eachItems?.url\"\r\n ><img\r\n [src]=\"eachItems.code | getModuleIcon : activeModule\"\r\n alt=\"\"\r\n width=\"16\"\r\n height=\"16\"\r\n /></a>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-container>\r\n `,\r\n styleUrls: ['./preference-list.component.less'],\r\n})\r\nexport class PreferenceListComponent implements OnInit {\r\n isLoading: boolean = false;\r\n PREFERENCE_LIST: any = PREFERENCE_LIST;\r\n @Input() activeModule: string = 'SETTINGS';\r\n\r\n constructor(private layoutService: LayoutService, private apiService: ApiService) {\r\n this.setUrl();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setLoader();\r\n }\r\n\r\n setLoader() {\r\n this.apiService.isLoading.subscribe((isLoading: boolean) => {\r\n this.isLoading = isLoading;\r\n });\r\n }\r\n\r\n setUrl() {\r\n this.PREFERENCE_LIST = this.PREFERENCE_LIST.map((item: any) => {\r\n item.url = this.layoutService.baseUrl + item.url;\r\n return item;\r\n });\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'vc-product-list-container',\r\n template: `<div class=\"product-list-container\">\r\n <vc-module-list\r\n [featureFlag]=\"featureFlag\"\r\n [activeModule]=\"activeModule\"\r\n [isSubMenuVisible]=\"isSubMenuVisible\"\r\n (onToggleSubmenu)=\"onToggleSubmenu.emit()\"\r\n ></vc-module-list>\r\n <vc-preference-list [activeModule]=\"activeModule\"></vc-preference-list>\r\n </div> `,\r\n styleUrls: ['./product-list-container.component.less'],\r\n})\r\nexport class ProductListContainerComponent {\r\n @Input() featureFlag: any;\r\n @Input() activeModule: string = 'COMPLIANCE';\r\n @Input() isSubMenuVisible: boolean = true;\r\n @Output() onToggleSubmenu: EventEmitter<any> = new EventEmitter<any>();\r\n}\r\n","export const BUSINESS_CYCLE_URL: string[] = [\r\n '/global-dashboard/compliance_dashboard',\r\n '/global-dashboard/audit_dashboard',\r\n '/global-dashboard/issue_dashboard',\r\n '/global-dashboard/risk_dashboard',\r\n '/global-dashboard/case_dashboard',\r\n '/global-dashboard/case_dashboard/workflow_dashboard',\r\n '/global-dashboard/dashboard',\r\n '/program/manage-program-categories/programs-overview',\r\n '/program/program-workroom',\r\n '/compliance/manage-responsibility',\r\n '/compliance/reports/not-completed-report',\r\n '/assessment/assessment-workroom/response-dashboard',\r\n '/risk/reported-risk',\r\n '/risk/manage-risk-category',\r\n '/risk/risk-status',\r\n '/risk/risk-register',\r\n '/risk/risk-workroom/',\r\n '/risk/my-assessment',\r\n '/risk/risk-workshop',\r\n '/case/case_dashboard/case_ageing',\r\n '/case/workflow_dashboard/case_ageing',\r\n '/case/case_dashboard/case_metric/missed_case_deadlines',\r\n '/case/workflow_dashboard/case_metric/missed_case_deadlines',\r\n '/case/case_dashboard/case_metric/open_cases',\r\n '/case/workflow_dashboard/case_metric/open_cases',\r\n '/case/case_dashboard/case_overview',\r\n '/case/workflow_dashboard/case_overview',\r\n '/compliance/',\r\n '/audit/issue/manage-issues/overview',\r\n '/audit/issue/issue-workroom',\r\n '/audit/issue/manage-issues/my-issues',\r\n '/audit/issue/manage-issues/issues-i-am-overseeing',\r\n // '/organization/#/user-details',\r\n // '/organization/#/responsibility-center-details',\r\n '/manage-case-attributes',\r\n '/case-register',\r\n '/reported-cases/reported-by-me',\r\n '/reported-cases',\r\n];\r\n\r\nexport const FUTURE_DATES: string = 'Show Future Due Dates';\r\n","export const GLOBAL_ALERTS: any = {\r\n contactUs: `<a href=\"mailto:help@v-comply.com\">CONTACT US</a>`,\r\n trialUserExpired: `SUBSCRIPTION EXPIRED: Contact Sales to extend your trial.`,\r\n EMAIL_PAUSE: `Your organization's email notifications have been paused. Hence, you will not receive any workflow related emails from VComply.`,\r\n NOTIF_PAUSE_MESSAGE: `Notifications have been paused by the Key Admin. You will not receive any notifications until the Key Admin turns it back on.`,\r\n};\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { GLOBAL_ALERTS } from '../../../constants/alerts.constant';\r\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\r\nimport { ApiService } from '../../../shared/services/api.service';\r\n\r\n@Component({\r\n selector: 'vc-global-alert',\r\n template: `\r\n <div\r\n *ngIf=\"messages.length > 0\"\r\n class=\"global-alert vx-d-flex vx-align-center vx-justify-center\"\r\n [class.expired]=\"messages[activeIndex]?.class === 'HIGH'\"\r\n >\r\n <i class=\"icons vx-fs-12 vx-mr-2\"></i>\r\n <!-- <span class=\"vx-fs-13\"\r\n >Email notifications have been paused by the Key Admin. You will not be able\r\n to edit your email notifications until the Key Admin turns it back on.</span\r\n > -->\r\n <span\r\n class=\"vx-fs-13\"\r\n [innerHTML]=\"messages[activeIndex]?.message\"\r\n ></span>\r\n <div\r\n *ngIf=\"messages.length > 1\"\r\n class=\"global-alert-action vx-d-flex vx-align-center vx-lh-6\"\r\n >\r\n <button\r\n [class.disabled]=\"activeIndex === 0\"\r\n (click)=\"activeIndex = activeIndex - 1\"\r\n class=\"vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled\"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n <span class=\"vx-fs-13 vx-txt-white\">{{ activeIndex + 1 }}</span>\r\n <span class=\"divider vx-fs-11 vx-txt-white\">/</span>\r\n <span class=\"vx-fs-13 vx-fw-600 vx-txt-white\">{{\r\n messages.length\r\n }}</span>\r\n\r\n <button\r\n (click)=\"activeIndex = activeIndex + 1\"\r\n [class.disabled]=\"activeIndex === messages.length - 1\"\r\n class=\"vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n `,\r\n styleUrls: ['./global-alert.component.less'],\r\n})\r\nexport class GlobalAlertComponent {\r\n activeIndex = 0;\r\n messages: Array<any> = [];\r\n mailAlert: any;\r\n isNotificationVisible: boolean = false;\r\n subscriptionData: any;\r\n @Input() feature: any;\r\n @Output() subscriptionStatus = new EventEmitter();\r\n\r\n constructor(private apiService: ApiService) {\r\n this.setSubscriptionInfo();\r\n }\r\n\r\n setSubscriptionInfo() {\r\n this.apiService.subscriptionDetail$.subscribe((res) => {\r\n if (res) {\r\n this.subscriptionData = res;\r\n this.setMessages(this.subscriptionData);\r\n this.getOrgDetails();\r\n }\r\n });\r\n }\r\n\r\n getOrgDetails() {\r\n this.apiService.organizationDetail$.subscribe((res) => {\r\n if (res) {\r\n this.setMailAlert(res);\r\n }\r\n });\r\n }\r\n\r\n setMessages(subscriptionData: any) {\r\n const messages = [];\r\n this.activeIndex = 0;\r\n\r\n if (subscriptionData) {\r\n const {\r\n trial_flag,\r\n no_of_days_left,\r\n after_expired_days_allow,\r\n no_of_days_for_password_expire,\r\n } = subscriptionData;\r\n\r\n if (trial_flag && no_of_days_left <= 0) {\r\n messages.push({\r\n message: GLOBAL_ALERTS.trialUserExpired + GLOBAL_ALERTS.contactUs,\r\n class: 'HIGH',\r\n });\r\n } else if (no_of_days_left > 0 && no_of_days_left <= 30) {\r\n messages.push({\r\n message: `YOUR SUBSCRIPTION EXPIRES IN ${no_of_days_left} DAYS. ${GLOBAL_ALERTS.contactUs}`,\r\n class: no_of_days_left <= 10 ? 'HIGH' : 'MEDIUM',\r\n });\r\n } else if (no_of_days_left <= 0) {\r\n messages.push({\r\n message: `SUBSCRIPTION EXPIRED: YOU WILL NOT BE ABLE TO LOGIN TO YOUR ACCOUNT AFTER ${after_expired_days_allow} DAYS. ${GLOBAL_ALERTS.contactUs}`,\r\n class: 'HIGH',\r\n });\r\n }\r\n\r\n if (no_of_days_for_password_expire < 1) {\r\n messages.push({\r\n message: `YOUR PASSWORD HAS EXPIRED. PLEASE <a href=\"${this.getPasswordResetUrl()}\" target=\"_blank\">CLICK HERE</a> TO RESET YOUR PASSWORD.`,\r\n class: 'HIGH',\r\n });\r\n } else if (no_of_days_for_password_expire < 30) {\r\n messages.push({\r\n message: `YOUR PASSWORD IS GOING TO EXPIRE IN ${no_of_days_for_password_expire} DAYS. <a href=\"${this.getPasswordResetUrl()}\" target=\"_blank\">CLICK HERE</a> TO RESET YOUR PASSWORD.`,\r\n class: 'MEDIUM',\r\n });\r\n }\r\n }\r\n\r\n this.messages = messages;\r\n this.isNotificationVisible = this.messages.length > 0;\r\n this.subscriptionStatus.emit(this.isNotificationVisible);\r\n }\r\n\r\n /**\r\n * If the response is true, then push the message to the array. If the response is false, then remove\r\n * the message from the array.\r\n * </code>\r\n * @param {any} res - any = {\r\n */\r\n setMailAlert(res: any) {\r\n const emailPausedMessage = this.feature?.isFeatureEnabled(\r\n 'ff_email_alert_update'\r\n )\r\n ? GLOBAL_ALERTS.NOTIF_PAUSE_MESSAGE\r\n : GLOBAL_ALERTS.EMAIL_PAUSE;\r\n\r\n const index = this.messages.findIndex((message: any) =>\r\n message?.message?.includes(emailPausedMessage)\r\n );\r\n\r\n if (res?.is_mail_block === 1 && index === -1) {\r\n this.messages.push({\r\n message: emailPausedMessage,\r\n class: 'MEDIUM',\r\n });\r\n } else if (res?.is_mail_block === 0 && index >= 0) {\r\n this.setMessages(this.subscriptionData);\r\n }\r\n\r\n this.isNotificationVisible = this.messages.length > 0;\r\n this.subscriptionStatus.emit(this.isNotificationVisible);\r\n }\r\n\r\n getPasswordResetUrl() {\r\n return `https://${window.location.host}${IN_APP_URL.PASSWORD_RESET}`;\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { AuthorizerService } from '@vcomply/authorizer';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport moment from 'moment/moment';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class BusinessCycleService {\r\n public businessCycleList$ = new BehaviorSubject<any>({});\r\n public orgDetails$ = new BehaviorSubject<any>({});\r\n public selectedBusinessCycle$ = new BehaviorSubject<any>({});\r\n public changeBusinessCycle$: BehaviorSubject<boolean> =\r\n new BehaviorSubject<boolean>(false);\r\n constructor(private authorizer: AuthorizerService) {\r\n this.isBusinessCycleAvailable();\r\n }\r\n\r\n /**\r\n * #### Description\r\n * it will check the business cycle stored in local is same business cycle as the user login\r\n * Determines whether correct business cycle is\r\n * @returns true if correct business cycle\r\n */\r\n isCorrectBusinessCycle(cycle: any): boolean {\r\n const localStorageData = localStorage.getItem('businessCycle') ?? '';\r\n if (!localStorageData) {\r\n return false;\r\n }\r\n if (JSON.parse(localStorageData).userId === this.authorizer.getUserId()) {\r\n for (let i = 0; i < cycle.length; i++) {\r\n if (\r\n cycle[i].start_date ==\r\n JSON.parse(localStorageData)?.selectedCycle?.start_date\r\n ) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n /**\r\n * #### Description\r\n * set business cycle in local storage if local storage don't have business cycle.\r\n * Sets business cycle\r\n * @param businessCycleList list of all the cycle of the organization\r\n */\r\n setBusinessCycle(businessCycleList: any) {\r\n let cycle: any = {};\r\n businessCycleList?.forEach((el: any) => {\r\n if (el.selected) {\r\n cycle = el;\r\n }\r\n });\r\n cycle['selected_cycle_arr'] = this.setSelectedCycleArray(cycle);\r\n let businessCycleObject = {\r\n userId: this.authorizer.getUserId(),\r\n selectedCycle: {\r\n start_date: cycle?.start_date,\r\n end_date: cycle.end_date,\r\n selected: true,\r\n business_cycle: cycle?.business_cycle,\r\n selected_cycle: cycle?.start_date + '-' + cycle?.end_date,\r\n selected_cycle_arr: cycle?.selected_cycle_arr,\r\n },\r\n };\r\n localStorage.setItem('businessCycle', JSON.stringify(businessCycleObject));\r\n this.isBusinessCycleAvailable();\r\n }\r\n\r\n setSelectedCycleArray(cycle: any) {\r\n let cycleArray = cycle.start_date + '-' + cycle.end_date;\r\n return [cycleArray];\r\n }\r\n\r\n /**\r\n * #### Description\r\n * if business cycle is found in local the it will set in this selectedBusinessCycle$ variable.\r\n * it is subject variable so we can use it in different component\r\n */\r\n isBusinessCycleAvailable() {\r\n const localStorageData = localStorage.getItem('businessCycle') ?? '';\r\n const businessCycleYear = JSON.parse(localStorageData)?.selectedCycle;\r\n if (businessCycleYear?.selected_cycle_arr?.length === 1) {\r\n this.selectedBusinessCycle$.next(businessCycleYear);\r\n } else if (\r\n businessCycleYear &&\r\n businessCycleYear?.selected_cycle_arr?.length > 1\r\n ) {\r\n businessCycleYear['business_cycle'] = [];\r\n businessCycleYear?.selected_cycle_arr.forEach((date: any) => {\r\n businessCycleYear['business_cycle'].push(\r\n this.convertNumericAlpha(date)\r\n );\r\n });\r\n this.selectedBusinessCycle$.next(businessCycleYear);\r\n }\r\n }\r\n\r\n /**\r\n * #### Description\r\n *\r\n * it will convert date from dd-mm-yyyy to dd mmm yyyy formate\r\n * Converts date\r\n * @param date\r\n * @returns date in this formate DD MMM YYYY\r\n */\r\n convertDate(date: string) {\r\n return moment(date, 'DD-MM-YYYY').format('DD MMM YYYY');\r\n }\r\n\r\n /**\r\n * #### Description\r\n *\r\n * Converts numeric alpha\r\n * @param str = \"01-05-2021-30-04-2022\"\r\n * @returns = \"01 May 2021 - 30 Apr 2022\"\r\n */\r\n convertNumericAlpha(str: any) {\r\n return (\r\n this.convertDate(str.substring(0, 10)) +\r\n ' - ' +\r\n this.convertDate(str.substring(str.length - 10, str.lenth))\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PopoverService {\r\n positionX!: number;\r\n positionY!: number;\r\n popoverHeight: any;\r\n popoverWidth: any;\r\n elementPosition: any;\r\n elementDirection: any;\r\n constructor() {\r\n \r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n ViewChild,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport { PopoverService } from './popover.service';\r\n\r\n@Component({\r\n selector: 'vui-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.less'],\r\n})\r\nexport class PopoverComponent implements OnInit {\r\n @Input() dontCloseonClick!: boolean;\r\n popoverContainer = false;\r\n @ViewChild('popoverRatio') popoverRatio!: ElementRef;\r\n @ViewChild('popoverContent') popoverContent!: ElementRef;\r\n @Output() closedOnOverlay = new EventEmitter();\r\n constructor(public popoverService: PopoverService) {}\r\n showPopover = false;\r\n leftValue: any;\r\n topValue: any;\r\n popoverHeight: any;\r\n popoverWidth: any;\r\n positionX!: number;\r\n positionY!: number;\r\n ngOnInit(): void {}\r\n popover() {\r\n this.popoverContainer = false;\r\n this.popoverContainer = true;\r\n setTimeout(() => {\r\n this.getPosition();\r\n this.showPopover = true;\r\n }, 10);\r\n return false;\r\n }\r\n popoverEvent() {\r\n this.popoverContainer = false;\r\n this.popoverContainer = true;\r\n setTimeout(() => {\r\n // this.getPosition();\r\n this.positionX = this.popoverService.positionX;\r\n this.positionY = this.popoverService.positionY;\r\n this.showPopover = true;\r\n }, 10);\r\n return false;\r\n }\r\n closePopover(top?: string) {\r\n if (!this.dontCloseonClick || top === 'top') {\r\n this.popoverContainer = false;\r\n this.showPopover = false;\r\n }\r\n }\r\n\r\n close() {\r\n this.popoverContainer = false;\r\n this.showPopover = false;\r\n }\r\n clickedPopover() {\r\n this.getPosition();\r\n }\r\n getPosition() {\r\n // setTimeout(() => {\r\n const elementPositionn = this.popoverService.elementPosition;\r\n this.popoverHeight = this.popoverRatio.nativeElement.offsetHeight;\r\n this.popoverWidth = this.popoverRatio.nativeElement.offsetWidth;\r\n if (this.popoverService.elementDirection === 'left') {\r\n this.leftValue = elementPositionn.left;\r\n if (\r\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\r\n window.outerHeight - 200\r\n ) {\r\n this.topValue = elementPositionn.top - this.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n }\r\n if (this.popoverService.elementDirection === 'right') {\r\n this.leftValue =\r\n elementPositionn.left + elementPositionn.width - this.popoverWidth;\r\n if (\r\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\r\n window.outerHeight - 200\r\n ) {\r\n this.topValue = elementPositionn.top - this.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n }\r\n if (this.popoverService.elementDirection === 'top') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width;\r\n if (\r\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\r\n window.outerHeight - 200\r\n ) {\r\n this.topValue = elementPositionn.top - this.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top - this.popoverHeight;\r\n }\r\n }\r\n if (this.popoverService.elementDirection === 'bottom') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width;\r\n if (\r\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\r\n window.outerHeight - 200\r\n ) {\r\n this.topValue = elementPositionn.top - this.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n }\r\n if (this.popoverService.elementDirection === 'self-position') {\r\n this.leftValue =\r\n elementPositionn.left +\r\n elementPositionn.width / 2 -\r\n this.popoverWidth / 2;\r\n this.topValue = elementPositionn.top - 15;\r\n }\r\n if (this.popoverService.elementDirection === 'top-center') {\r\n this.leftValue =\r\n elementPositionn.left +\r\n elementPositionn.width / 2 -\r\n this.popoverWidth / 2;\r\n // this.topValue = elementPositionn.top - this.popoverHeight;\r\n if (\r\n elementPositionn.top + elementPositionn.height + this.popoverHeight >\r\n window.outerHeight\r\n ) {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n } else {\r\n this.topValue = elementPositionn.top - this.popoverHeight;\r\n }\r\n }\r\n if (this.popoverService.elementDirection === 'center') {\r\n this.leftValue =\r\n elementPositionn.left +\r\n elementPositionn.width / 2 -\r\n this.popoverWidth / 2;\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n this.positionX = this.leftValue;\r\n this.positionY = this.topValue;\r\n // }, 10);\r\n }\r\n}\r\n","<div\r\n class=\"vc-overlay\"\r\n *ngIf=\"popoverContainer\"\r\n (click)=\"closePopover('top'); this.closedOnOverlay.emit()\"\r\n></div>\r\n<div\r\n class=\"action\"\r\n [class.active]=\"showPopover\"\r\n *ngIf=\"popoverContainer\"\r\n [style.top.px]=\"positionY\"\r\n [style.left.px]=\"positionX\"\r\n #popoverRatio\r\n id=\"popoverRatio\"\r\n>\r\n <div (click)=\"closePopover(); clickedPopover()\" #popoverContent>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\nimport { PopoverService } from './popover.service';\r\n\r\n@Directive({\r\n selector: '[appPopover]',\r\n})\r\nexport class PopoverDirective {\r\n dynamicComponent: any;\r\n @Input() refrence: any;\r\n @Input() position!: string;\r\n leftValue: any;\r\n topValue: any;\r\n constructor(private elRef: ElementRef, private popoverService: PopoverService) {}\r\n @HostListener('click') click() {\r\n this.popoverService.elementPosition = this.elRef.nativeElement.getBoundingClientRect();\r\n this.popoverService.elementDirection = this.position;\r\n // this.getPosition();\r\n }\r\n\r\n getPosition() {\r\n setTimeout(() => {\r\n // this.popoverService.elementPosition = this.elRef.nativeElement.getBoundingClientRect();\r\n const elementPositionn = this.elRef.nativeElement.getBoundingClientRect();\r\n if (this.position === 'left') {\r\n this.leftValue = elementPositionn.left;\r\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\r\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n }\r\n if (this.position === 'right') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width - this.popoverService.popoverWidth;\r\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\r\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n }\r\n if (this.position === 'top') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width;\r\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\r\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\r\n }\r\n }\r\n if (this.position === 'bottom') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width;\r\n if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {\r\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\r\n } else {\r\n this.topValue = elementPositionn.top + elementPositionn.height;\r\n }\r\n }\r\n if (this.position === 'self-position') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;\r\n this.topValue = elementPositionn.top - 15;\r\n }\r\n if (this.position === 'top-center') {\r\n this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;\r\n this.topValue = elementPositionn.top - this.popoverService.popoverHeight;\r\n }\r\n this.popoverService.positionX = this.leftValue;\r\n this.popoverService.positionY = this.topValue;\r\n }, 10);\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cs-checkbox',\r\n templateUrl: './cs-checkbox.component.html',\r\n styleUrls: ['./cs-checkbox.component.less'],\r\n})\r\nexport class CsCheckboxComponent implements OnInit {\r\n @Input() disabled = false;\r\n @Input() ngValue!: any;\r\n @Input() value: any;\r\n @Output() ngValueChange = new EventEmitter<any>();\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n valueChanged() {\r\n this.ngValueChange.emit(this.ngValue);\r\n }\r\n}\r\n","<label class=\"checkbox-item\" [class.disabled]=\"disabled\">\r\n <input type=\"checkbox\" [name]=\"value\" [disabled]=\"disabled\" [(ngModel)]=\"ngValue\" (ngModelChange)=\"valueChanged()\" />\r\n <span class=\"checkbox\">\r\n <span class=\"inner\"></span>\r\n </span>\r\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkmark__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\r\n </svg>\r\n <span class=\"value\"><ng-content></ng-content></span>\r\n</label>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dateFormat',\r\n})\r\nexport class DateFormatPipe implements PipeTransform {\r\n transform(value: string): string {\r\n // Split the input date string\r\n const [day, month, year] = value.split('-');\r\n\r\n // Convert month number to month name\r\n const monthNames = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec',\r\n ];\r\n const monthName = monthNames[parseInt(month, 10) - 1];\r\n\r\n // Return the formatted date\r\n return `${day} ${monthName} ${year}`;\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { AuthorizerService } from '@vcomply/authorizer';\r\nimport { BusinessCycleService } from '../../../shared/services/business-cycle.service';\r\nimport { ApiService } from '../../../shared/services/api.service';\r\nimport { FUTURE_DATES } from '../../../constants/business-cycle.constant';\r\n\r\n@Component({\r\n selector: 'vc-business-cycle',\r\n templateUrl: './business-cycle.component.html',\r\n styleUrls: ['./business-cycle.component.less'],\r\n})\r\nexport class BusinessCycleComponent implements OnInit {\r\n cycleToShow: string = 'Business Cycle';\r\n businessCycleArr: Array<string> = [];\r\n hiddenCycle: Array<number> = [];\r\n tempBusinessCycleArr: Array<string> = [];\r\n tempHiddenCycle: Array<number> = [0];\r\n businessCyclesList: Array<any> = [];\r\n businessCycleList!: Array<any>;\r\n tempSelectedCycle: any[] = [];\r\n userId: number = 0;\r\n selectedBusinessCycle!: any;\r\n @Output() businessCycleChange = new EventEmitter();\r\n\r\n @Input() orgDetails: any;\r\n constructor(\r\n private authService: AuthorizerService,\r\n private businessCycleService: BusinessCycleService,\r\n private apiService: ApiService\r\n ) {\r\n this.userId = this.authService.getUserId() ?? 0;\r\n this.businessCycleService.isBusinessCycleAvailable();\r\n this.setSelectedBusinessCycle();\r\n this.getOrgDetails();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n getOrgDetails() {\r\n this.apiService.organizationDetail$.subscribe((res: any) => {\r\n if (res) {\r\n this.setBusinessCycleKey(res.business_cycles_arr);\r\n this.setBusinessCycle();\r\n this.setCycleEnableDisable();\r\n }\r\n });\r\n }\r\n\r\n setSelectedBusinessCycle() {\r\n this.businessCycleService.selectedBusinessCycle$.subscribe((res: any) => {\r\n if (res) {\r\n this.selectedBusinessCycle = res;\r\n this.setTempSelectedCycle(res);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * #### Description\r\n * it will set a new key in every cycle\r\n * key will use for disabled or enable the cycle from business cycle list.\r\n * @param businessCycle this the business cycle list\r\n */\r\n setBusinessCycleKey(businessCycle: any) {\r\n this.businessCycleList = businessCycle;\r\n if (this.businessCycleList.length)\r\n this.businessCycleList.map((cycle: any) => {\r\n cycle['isDisabled'] = false;\r\n });\r\n }\r\n\r\n /**\r\n * #### Description\r\n * it will check the cycle if it is not checked.\r\n * if it has checked then it will uncheck that cycle.\r\n * @param cycle checked or unchecked cycle from business cycle list.\r\n * @param index it give the index value of business cycle list which is selected.\r\n */\r\n selectCycle(cycle: any, index: number) {\r\n const isExist = this.tempSelectedCycle.findIndex(\r\n (el: any) => el.start_date == cycle.start_date\r\n );\r\n if (isExist >= 0) {\r\n this.tempSelectedCycle.splice(isExist, 1);\r\n } else if (this.tempSelectedCycle?.length === 0) {\r\n this.tempSelectedCycle.push(cycle);\r\n } else {\r\n const selectedIndex = this.businessCycleList.findIndex(\r\n (el: any) => el.start_date == this.tempSelectedCycle[0]?.start_date\r\n );\r\n if (selectedIndex < index) {\r\n this.tempSelectedCycle.unshift(cycle);\r\n } else {\r\n this.tempSelectedCycle.push(cycle);\r\n }\r\n }\r\n this.setCycleEnableDisable();\r\n }\r\n\r\n /**\r\n * #### Description\r\n *\r\n * need to check cycle includes in selected cycle array\r\n * Determines whether selected cycle is\r\n * @param selectedCycle selected Cycle which user checked or auto selected cycle.\r\n * @param cycle all indivisible cycle of business cycle of the organization.\r\n * @returns boolean value is cycle exist in selected cycle or not.\r\n */\r\n\r\n isSelectedCycle(selectedCycle: any, cycle: any) {\r\n let isSelected = false;\r\n selectedCycle.forEach((el: any): any => {\r\n if (el.start_date == cycle.start_date) {\r\n isSelected = true;\r\n }\r\n });\r\n return isSelected;\r\n }\r\n\r\n /**\r\n * #### Description\r\n *\r\n * set selected businessCycle to temp business cycle indivisible if there is two selected cycle\r\n * Sets temp selected cycle\r\n * @param cycle selected business cycle from local storage\r\n */\r\n setTempSelectedCycle(cycle: any) {\r\n this.tempSelectedCycle = [];\r\n if (cycle?.selected_cycle_arr?.length === 1) {\r\n this.tempSelectedCycle.push(cycle);\r\n this.setCycleToShow(cycle);\r\n // this.cycleToShow = cycle.business_cycle;\r\n } else {\r\n cycle?.selected_cycle_arr?.forEach((el: any, i: number) => {\r\n let payload = {\r\n start_date: el.substring(0, 10),\r\n end_date: el.substring(el?.length - 10, el?.lenth),\r\n selected: true,\r\n business_cycle: cycle?.business_cycle[i],\r\n selected_cycle: cycle?.selected_cycle[i],\r\n selected_cycle_arr: [el],\r\n };\r\n this.tempSelectedCycle.push(payload);\r\n });\r\n // this.cycleToShow = cycle?.business_cycle[0]?.substring(0,11) + \" - \" + cycle?.business_cycle[1].substring(cycle?.business_cycle[1]?.length-11, cycle?.business_cycle[1]?.lenth);\r\n }\r\n // this.setCycleToShow(cycle);\r\n this.setCycleEnableDisable();\r\n }\r\n\r\n /**\r\n * #### Description\r\n * when user select one cycle then their besides cycles are enable and other are disabled.\r\n * if user select two cycles then all the cycles get disabled except selected cycles.\r\n *\r\n * In businessCycleList array we set a isDisabled key, we are set it true when need to disabled the cycle.\r\n */\r\n setCycleEnableDisable() {\r\n if (!this.tempSelectedCycle?.length) {\r\n if (this.businessCycleList?.length)\r\n this.businessCycleList.map((cycle: any) => {\r\n cycle['isDisabled'] = false;\r\n });\r\n } else if (this.tempSelectedCycle?.length === 1) {\r\n const index = this.businessCycleList?.findIndex(\r\n (el: any) => el.start_date == this.tempSelectedCycle[0].start_date\r\n );\r\n this.businessCycleList?.forEach((cycle: any, i: number) => {\r\n if (index - 1 === i || index === i || index + 1 === i) {\r\n cycle.isDisabled = false;\r\n } else {\r\n cycle.isDisabled = true;\r\n }\r\n });\r\n } else {\r\n this.businessCycleList?.forEach((cycle: any) => {\r\n let isDisabled = true;\r\n this.tempSelectedCycle.forEach((el: any) => {\r\n if (cycle.start_date == el.start_date) {\r\n isDisabled = false;\r\n }\r\n });\r\n cycle.isDisabled = isDisabled;\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * #### Description\r\n * When user click apply then selected cycle is set in local storage.\r\n *\r\n */\r\n setBusinessCycle() {\r\n const combinedDates = this.businessCycleService.convertNumericAlpha(\r\n this.businessCycleList[0]?.start_date +\r\n this.businessCycleList[0]?.end_date\r\n );\r\n const isFutureDates = (cycle: any) =>\r\n cycle?.business_cycle === combinedDates &&\r\n this.businessCycleList[0]?.business_cycle === FUTURE_DATES;\r\n\r\n let businessCycleObject: any = {\r\n userId: this.userId,\r\n selectedCycle: {\r\n selected: true,\r\n business_cycle: [],\r\n selected_cycle_arr: [],\r\n },\r\n };\r\n\r\n if (this.tempSelectedCycle?.length === 1) {\r\n this.setSingleSelectedCycle(businessCycleObject, isFutureDates);\r\n } else {\r\n this.setMultipleSelectedCycles(businessCycleObject, isFutureDates);\r\n }\r\n\r\n this.setCycleToShow(businessCycleObject?.selectedCycle);\r\n localStorage.setItem('businessCycle', JSON.stringify(businessCycleObject));\r\n this.selectedBusinessCycle = businessCycleObject?.selectedCycle;\r\n this.businessCycleChange.emit(this.selectedBusinessCycle);\r\n this.businessCycleService.changeBusinessCycle$.next(true);\r\n }\r\n\r\n setSingleSelectedCycle(\r\n businessCycleObject: any,\r\n isFutureDates: (cycle: any) => boolean\r\n ) {\r\n const cycle = this.tempSelectedCycle[0];\r\n if (isFutureDates(cycle)) {\r\n cycle.business_cycle = FUTURE_DATES;\r\n }\r\n Object.assign(businessCycleObject?.selectedCycle, {\r\n start_date: cycle?.start_date,\r\n end_date: cycle?.end_date,\r\n business_cycle: cycle?.business_cycle,\r\n selected_cycle: `${cycle?.start_date}-${cycle?.end_date}`,\r\n selected_cycle_arr: [`${cycle?.start_date}-${cycle?.end_date}`],\r\n });\r\n }\r\n\r\n setMultipleSelectedCycles(\r\n businessCycleObject: any,\r\n isFutureDates: (cycle: any) => boolean\r\n ) {\r\n this.tempSelectedCycle?.forEach((cycle: any) => {\r\n businessCycleObject?.selectedCycle.business_cycle?.push(\r\n isFutureDates(cycle) ? FUTURE_DATES : cycle?.business_cycle\r\n );\r\n businessCycleObject?.selectedCycle.selected_cycle_arr?.push(\r\n `${cycle?.start_date}-${cycle?.end_date}`\r\n );\r\n });\r\n\r\n businessCycleObject.selectedCycle.start_date =\r\n this.tempSelectedCycle[0]?.start_date;\r\n businessCycleObject.selectedCycle.end_date =\r\n this.tempSelectedCycle[1]?.end_date;\r\n businessCycleObject.selectedCycle.selected_cycle = `${businessCycleObject?.selectedCycle?.start_date}-${businessCycleObject?.selectedCycle?.end_date}`;\r\n }\r\n\r\n /**\r\n * #### Description\r\n * when user click cancel then it will close the popover.\r\n * remove temp value from term selected array and set the previous selected cycle in it.\r\n */\r\n cancelBusinessCycle() {\r\n this.setTempSelectedCycle(this.selectedBusinessCycle);\r\n }\r\n\r\n /**\r\n * #### Description\r\n * this will set the string of business cycle which will display in the header.\r\n * @param cycle object which is selected and apply. the same object will store in local storage.\r\n */\r\n setCycleToShow(cycle: any) {\r\n if (cycle?.selected_cycle_arr?.length === 1) {\r\n if (cycle?.business_cycle?.toLowerCase() == 'show future due dates') {\r\n this.cycleToShow = 'Future Due Dates';\r\n } else {\r\n this.cycleToShow = cycle.business_cycle;\r\n }\r\n } else {\r\n if (\r\n cycle?.business_cycle?.length > 0 &&\r\n cycle?.business_cycle[1]?.toLowerCase() == 'show future due dates'\r\n ) {\r\n this.cycleToShow = cycle?.business_cycle[0]?.substring(0, 11);\r\n } else if (cycle?.business_cycle?.length) {\r\n this.cycleToShow =\r\n cycle?.business_cycle[0]?.substring(0, 11) +\r\n ' - ' +\r\n cycle?.business_cycle[1].substring(\r\n cycle?.business_cycle[1]?.length - 11,\r\n cycle?.business_cycle[1]?.lenth\r\n );\r\n }\r\n }\r\n }\r\n}\r\n","<div\r\n class=\"vc-business-cycle vx-pt-2 vx-pb-2\"\r\n appPopover\r\n (click)=\"businessCyclePop.popover()\"\r\n position=\"left\"\r\n>\r\n <div class=\"heading vx-fs-9 vx-tt-uppercase vx-mb-1 vx-lh-3\">\r\n SHOWING DATA {{ cycleToShow === \"Show Future Due Dates\" ? \"For\" : \"From\" }}\r\n </div>\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-lh-4\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <i class=\"icons calendar vx-fs-12 vx-mr-2\"></i>\r\n <span class=\"vx-fs-11 vx-txt-white vx-d-inline-block\">{{\r\n cycleToShow === \"Show Future Due Dates\"\r\n ? \"Future Due Dates\"\r\n : cycleToShow\r\n }}</span>\r\n </div>\r\n <i class=\"icons arrow vx-fs-10 vx-mr-2\"></i>\r\n </div>\r\n</div>\r\n\r\n<vui-popover #businessCyclePop [dontCloseonClick]=\"true\">\r\n <div class=\"vc-business-cycle-popover-container\">\r\n <div\r\n class=\"vc-business-cycle-popover-container-top vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n >\r\n <p class=\"vx-fs-11 vx-fw-400 vx-label-txt vx-p-0 vx-m-0\">\r\n You can select upto a max of two consecutive years\r\n </p>\r\n </div>\r\n <div class=\"vc-business-cycle-popover-container-body\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <ng-container\r\n *ngFor=\"let eachCycle of businessCycleList; let i = index\"\r\n >\r\n <li\r\n *ngIf=\"\r\n eachCycle?.business_cycle?.toLowerCase() ===\r\n 'show future due dates'\r\n \"\r\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n [class.future-cycle]=\"true\"\r\n >\r\n <app-cs-checkbox\r\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\r\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\r\n [disabled]=\"eachCycle?.isDisabled\"\r\n >Show Future Due Dates</app-cs-checkbox\r\n >\r\n <i\r\n class=\"icons info-icon vx-fs-12\"\r\n [arTooltip]=\"\r\n 'This option lets you view data that lies outside the current business cycle and are due in the future.'\r\n \"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n ></i\r\n >\r\n </li>\r\n <li\r\n *ngIf=\"\r\n eachCycle?.business_cycle?.toLowerCase() !==\r\n 'show future due dates'\r\n \"\r\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n >\r\n <app-cs-checkbox\r\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\r\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\r\n [disabled]=\"eachCycle?.isDisabled\"\r\n >{{ eachCycle?.start_date | dateFormat }} -\r\n <ng-container>\r\n {{ eachCycle?.end_date | dateFormat }}</ng-container\r\n >\r\n </app-cs-checkbox>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"vc-business-cycle-popover-container-footer vx-d-flex vx-justify-between vx-p-3\"\r\n >\r\n <button\r\n (click)=\"businessCyclePop.closePopover('top')\"\r\n class=\"white vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-blue\"\r\n >\r\n CANCEL\r\n </button>\r\n <button\r\n (click)=\"setBusinessCycle(); businessCyclePop.closePopover('top')\"\r\n [class.disabled]=\"false\"\r\n class=\"blue vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-white\"\r\n >\r\n APPLY\r\n </button>\r\n </div>\r\n </div>\r\n</vui-popover>\r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'vc-search',\r\n template: `\r\n <div\r\n class=\"vc-search\"\r\n (click)=\"isDivClicked = true\"\r\n [class.searchFocus]=\"isDivClicked\"\r\n #searchArea\r\n >\r\n <input\r\n [(ngModel)]=\"searchValue\"\r\n (keyup)=\"onKeyUp($event)\"\r\n (focusOut)=\"isDivClicked = false\"\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n #searchBox\r\n />\r\n <i class=\"icons serachIcon vx-fs-10 vx-txt-white\"></i>\r\n\r\n <div\r\n *ngIf=\"isAdvanceSearch\"\r\n (click)=\"onSearch('advanceSearch', '')\"\r\n class=\"vc-advance-search-btn vx-d-flex vx-align-center vx-justify-center\"\r\n [arTooltip]=\"'Advance Search'\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >\r\n <i class=\"icons vx-fs-12\"></i>\r\n </div>\r\n <i\r\n *ngIf=\"searchValue\"\r\n (click)=\"onCrossClick()\"\r\n class=\"icons crossIcon vx-fs-10 vx-txt-white\"\r\n ></i\r\n >\r\n </div>\r\n `,\r\n styleUrls: ['./search.component.less'],\r\n})\r\nexport class SearchComponent implements OnInit {\r\n searchValue: string = '';\r\n isDivClicked: boolean = false;\r\n @Input() isAdvanceSearch: boolean = false;\r\n\r\n @ViewChild('searchArea') searchArea!: ElementRef;\r\n @ViewChild('searchBox') searchBox!: ElementRef;\r\n\r\n @Output() onSearchAction: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n constructor(private renderer: Renderer2, private router: ActivatedRoute) {\r\n this.onRouterChange();\r\n this.renderer.listen('window', 'click', (e: Event) => {\r\n /**\r\n * Only run when toggleButton is not clicked\r\n * If we don't check this, all clicks (even on the toggle button) gets into this\r\n * section which in the result we might never see the menu open!\r\n * And the menu itself is checked here, and it's where we check just outside of\r\n * the menu and button the condition abbove must close the menu\r\n */\r\n\r\n if (\r\n e.target !== this.searchBox.nativeElement &&\r\n e.target !== this.searchArea.nativeElement\r\n ) {\r\n this.isDivClicked = false;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n onKeyUp(event: any) {\r\n if (event.key === 'Enter') {\r\n this.onSearch('search', this.searchValue.trim());\r\n }\r\n }\r\n\r\n onSearch(type: string, searchValue: string) {\r\n searchValue = searchValue.trim();\r\n this.onSearchAction.emit({ type, searchValue });\r\n }\r\n\r\n onCrossClick() {\r\n this.searchValue = '';\r\n this.onSearch('search', '');\r\n }\r\n\r\n onRouterChange() {\r\n this.router.url.subscribe((url) => this.onSearch('search', ''));\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'vc-create-workflow',\r\n templateUrl: './create-workflow.component.html',\r\n styleUrls: ['./create-workflow.component.less'],\r\n})\r\nexport class CreateWorkflowComponent implements OnInit {\r\n @Input() iframeLoading: boolean = false;\r\n\r\n @Output() openWorkflow: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<div\r\n class=\"header-create-workflow vx-fs-16 vx-txt-white vx-d-flex vx-align-center vx-justify-center\"\r\n (click)=\"openWorkflow.emit()\"\r\n [class.disabled-workflow]=\"iframeLoading\"\r\n [arTooltip]=\"'Create'\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n>\r\n +\r\n</div>\r\n","import { Component } from '@angular/core';\r\nimport { ApiService } from '../../../shared/services/api.service';\r\nimport { LayoutService } from '../../../shared/services/layout.service';\r\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\r\n\r\n@Component({\r\n selector: 'vc-queue',\r\n template: `\r\n <a\r\n *ngIf=\"apiService?.queueCount$ | async\"\r\n class=\"header-queue vx-d-flex vx-align-center vx-justify-center\"\r\n [arTooltip]=\"'View Responsibilities in Queue'\"\r\n placement=\"bottom-right\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [href]=\"queueURL\"\r\n [tooltipMandatory]=\"true\"\r\n >\r\n <i class=\"icons vx-fs-12 vx-txt-white\"></i>\r\n <span\r\n class=\"queue-value vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-pl-1 vx-pr-1\"\r\n >{{ apiService?.queueCount$ | async }}</span\r\n >\r\n </a>\r\n `,\r\n styleUrls: ['./queue.component.less'],\r\n})\r\nexport class QueueComponent {\r\n queueURL: string = '';\r\n constructor(\r\n public apiService: ApiService,\r\n private layoutService: LayoutService\r\n ) {\r\n this.setQueueURl();\r\n }\r\n\r\n private setQueueURl() {\r\n this.queueURL = this.layoutService.baseUrl + IN_APP_URL.QUEUE;\r\n }\r\n}\r\n","import { Optional, Pipe, PipeTransform } from '@angular/core';\r\nimport { Configurations } from '../../configurations';\r\n\r\n@Pipe({\r\n name: 'getFileUrl',\r\n})\r\nexport class GetFileUrlPipe implements PipeTransform {\r\n environmentValue: any;\r\n constructor(@Optional() config?: Configurations) {\r\n this.environmentValue = config?.envConfig;\r\n }\r\n transform(value: any, ...args: any[]): string {\r\n return `${this.environmentValue.s3Url}${this.environmentValue.s3Bucket}/profile_pic/thumb/${value}`;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { AuthorizerService } from '@vcomply/authorizer';\r\n\r\n@Component({\r\n selector: 'vc-avatar',\r\n template: `\r\n <div class=\"vx-avatar \" [ngClass]=\"type\">\r\n <span *ngIf=\"!userInfo?.profile_pic\" class=\"blue\">{{ shortName }}</span>\r\n <img\r\n *ngIf=\"userInfo?.profile_pic\"\r\n [src]=\"userInfo?.profile_pic | getFileUrl\"\r\n alt=\"\"\r\n />\r\n </div>\r\n `,\r\n styleUrls: ['./avatar.component.less'],\r\n})\r\nexport class AvatarComponent {\r\n public baseUrl: string = '';\r\n public shortName: string = '';\r\n\r\n @Input() public userInfo: any;\r\n @Input() public type: 'md' | 'sm' | 'xs' | 'x-lg' = 'md';\r\n\r\n constructor(private authService: AuthorizerService) {\r\n this.shortName = this.authService.getUser()?.short_name ?? '';\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { LayoutService } from '../../../shared/services/layout.service';\r\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\r\nimport { AuthorizerService } from '@vcomply/authorizer';\r\n\r\n@Component({\r\n selector: 'vc-user-details',\r\n templateUrl: './user-details.component.html',\r\n styleUrls: ['./user-details.component.less'],\r\n})\r\nexport class UserDetailsComponent {\r\n @Input() userDetails: any;\r\n @Input() subscriptionDetails: any;\r\n constructor(\r\n private layoutService: LayoutService,\r\n private authService: AuthorizerService\r\n ) {}\r\n\r\n editProfile() {\r\n const URL = this.layoutService.baseUrl + IN_APP_URL.EDIT_PROFILE;\r\n window.location.href = URL;\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n }\r\n}\r\n","<div\r\n class=\"header-user-details\"\r\n [arTooltip]=\"'View Your Profile'\"\r\n placement=\"bottom-right\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n appPopover\r\n (click)=\"userInfo.popover()\"\r\n position=\"right\"\r\n>\r\n <vc-avatar [userInfo]=\"userDetails\"></vc-avatar>\r\n</div>\r\n\r\n<vui-popover #userInfo [dontCloseonClick]=\"true\">\r\n <div class=\"header-user-details-box vx-mt-3 vx-pl-2 vx-pr-2\">\r\n <div\r\n class=\"header-user-details-box-top vx-d-flex vx-align-center vx-pt-2 vx-pb-2\"\r\n >\r\n <vc-avatar [userInfo]=\"userDetails\" [type]=\"'x-lg'\"></vc-avatar>\r\n <div class=\"header-user-details-box-top-right vx-ml-2\">\r\n <div\r\n class=\"userName vx-fs-13 vx-fw-500 vx-label-txt vx-tt-capitalize\"\r\n [arTooltip]=\"userDetails?.member_name\"\r\n placement=\"bottom-left\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{ userDetails?.member_name }}\r\n </div>\r\n <div\r\n class=\"userEmail vx-fs-11 vx-paragraph-txt\"\r\n [arTooltip]=\"userDetails?.member_email\"\r\n placement=\"bottom-left\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{ userDetails?.member_email }}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"header-user-details-box-mid\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <li\r\n class=\"vx-fs-12 vx-d-flex vx-align-center vx-justify-between vx-pt-2 vx-pb-2 vx-lh-4\"\r\n >\r\n <span class=\"vx-label-txt vx-fw-500 vx-tt-uppercase vx-pl-3\"\r\n >SUBSCRIPTION :</span\r\n >\r\n <span\r\n [class.expired]=\"subscriptionDetails?.after_expired_days_allow\"\r\n >{{\r\n subscriptionDetails?.after_expired_days_allow\r\n ? \"Expired\"\r\n : \"Active\"\r\n }}</span\r\n >\r\n </li>\r\n <li\r\n class=\"vx-fs-12 vx-d-flex vx-align-center vx-justify-between vx-pt-2 vx-pb-2 vx-lh-4\"\r\n >\r\n <span class=\"vx-label-txt vx-fw-500 vx-tt-uppercase vx-pl-3\"\r\n >EXPIRING ON :</span\r\n >\r\n <span class=\"vx-paragraph-txt\">{{\r\n subscriptionDetails?.expiredDetails | date : \"dd MMM yyyy\"\r\n }}</span>\r\n </li>\r\n <li\r\n class=\"vx-fs-12 vx-d-flex vx-align-center vx-justify-between vx-pt-2 vx-pb-2 vx-lh-4\"\r\n >\r\n <span class=\"vx-label-txt vx-fw-500 vx-tt-uppercase vx-pl-3\"\r\n >Support Pin :</span\r\n >\r\n <span class=\"vx-paragraph-txt\">{{ userDetails?.calling_pin }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"header-user-details-box-bottom vx-d-flex vx-align-center vx-justify-center vx-pt-3 vx-pb-3\"\r\n >\r\n <button\r\n (click)=\"editProfile()\"\r\n class=\"editProfile-btn vx-fs-11 vx-fw-500 vx-txt-blue vx-tt-uppercase vx-pl-2 vx-pr-2 vx-m-0\"\r\n >\r\n Edit Profile\r\n </button>\r\n <button\r\n (click)=\"logout()\"\r\n class=\"logout-btn vx-fs-11 vx-fw-500 vx-txt-white vx-tt-uppercase vx-pl-2 vx-pr-2 vx-m-0\"\r\n >\r\n Log out\r\n </button>\r\n </div>\r\n </div>\r\n</vui-popover>\r\n","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { ASSETS } from '../../../constants/assets.constants';\r\n\r\n@Component({\r\n selector: 'vc-support',\r\n template: `<div\r\n (click)=\"openSupport.emit()\"\r\n class=\"header-support vx-fs-11 vx-txt-white vx-tt-uppercase vx-p-1 vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n >\r\n <img [src]=\"ASSETS.support_icon\" alt=\"Support\" width=\"18\" height=\"14\" />\r\n SUPPORT\r\n </div>`,\r\n styleUrls: ['./support.component.less'],\r\n})\r\nexport class SupportComponent implements OnInit {\r\n ASSETS: any = ASSETS;\r\n\r\n @Output() openSupport: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'checkPermission',\r\n})\r\nexport class CreatePermissionPipe implements PipeTransform {\r\n //TODO in case of light user when policy is stand alone module\r\n transform(value: any, args?: any): any {\r\n return value;\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\nimport { ASSETS } from '../../../constants/assets.constants';\r\nimport { ApiService } from '../../../shared/services/api.service';\r\nimport { BUSINESS_CYCLE_URL } from '../../../constants/business-cycle.constant';\r\nimport { LayoutService } from '../../../shared/services/layout.service';\r\nimport { IN_APP_URL } from '../../../constants/app-url.constant';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'vc-header-container',\r\n templateUrl: './header-container.component.html',\r\n styleUrls: ['./header-container.component.less'],\r\n})\r\nexport class HeaderContainerComponent implements OnInit, OnDestroy {\r\n ASSETS: any = ASSETS;\r\n isXmasCapVisible: boolean = false;\r\n showAnimation: boolean = false;\r\n private animationInterval: any;\r\n showBusinessCycle: string[] = BUSINESS_CYCLE_URL;\r\n currentUrl: string = '';\r\n defaultURL: string = '';\r\n showCreateWorkflow: boolean = true; \r\n\r\n @Input() showSearch: boolean = false;\r\n @Input() featureFlag: any;\r\n @Input() isAdvanceSearch: boolean = false;\r\n @Input() iframeLoading: boolean = false;\r\n\r\n @Output() businessCycleChange: EventEmitter<any> = new EventEmitter();\r\n @Output() openDialog: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() onSearchAction: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n constructor(\r\n public apiService: ApiService,\r\n private layoutService: LayoutService,\r\n private router: ActivatedRoute\r\n ) {\r\n this.currentUrl = window.location.pathname;\r\n this.defaultURL = this.layoutService.baseUrl + IN_APP_URL.DEFAULT;\r\n this.onRouterChange();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.checkXmasCapVisibility();\r\n this.checkSnowFallVisibility();\r\n this.checkComplianceFlag();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n // Clear interval to prevent memory leaks\r\n if (this.animationInterval) {\r\n clearInterval(this.animationInterval);\r\n }\r\n }\r\n\r\n businessCycleChangeHandler(event: any) {\r\n this.businessCycleChange.emit(event);\r\n }\r\n\r\n onRouterChange() {\r\n this.router.url.subscribe((url) => {\r\n console.log('url', url);\r\n this.currentUrl = window.location.pathname;\r\n });\r\n }\r\n\r\n get isBusinessCycleVisible(): boolean {\r\n const currentUrl = window.location.href;\r\n return this.showBusinessCycle.some((url) => {\r\n return currentUrl.includes(url);\r\n });\r\n }\r\n\r\n checkSnowFallVisibility(): void {\r\n // First-time display after 20 seconds\r\n setTimeout(() => {\r\n this.showAnimation = true;\r\n\r\n // Hide after 20 seconds\r\n setTimeout(() => {\r\n this.showAnimation = false;\r\n }, 20000);\r\n }, 0);\r\n\r\n // Repeated display every 5 minutes\r\n this.animationInterval = setInterval(() => {\r\n this.showAnimation = true;\r\n\r\n // Hide the animation after 20 seconds\r\n setTimeout(() => {\r\n this.showAnimation = false;\r\n }, 20000); // Show duration: 20 seconds\r\n }, 300000); // Repeat every 5 minutes (300,000 ms)\r\n }\r\n\r\n checkXmasCapVisibility(): void {\r\n const today = new Date();\r\n const currentYear = today.getFullYear();\r\n let startDate, endDate;\r\n\r\n // If today is after December 20, use January 7 of next year as the end date\r\n if (today.getMonth() === 11 && today.getDate() >= 20) {\r\n startDate = new Date(currentYear, 11, 20); // December 20 of current year\r\n endDate = new Date(currentYear + 1, 0, 7, 23, 59, 59); // January 7 of next year\r\n } else {\r\n // Otherwise, use December 20 of the previous year and January 7 of the current year\r\n startDate = new Date(currentYear - 1, 11, 20); // December 20 of previous year\r\n endDate = new Date(currentYear, 0, 7, 23, 59, 59); // January 7 of current year\r\n }\r\n\r\n // Check if today is within the range\r\n this.isXmasCapVisible = today >= startDate && today <= endDate;\r\n }\r\n\r\n checkComplianceFlag(): void {\r\n this.apiService.subscriptionDetail$.subscribe((subscriptionData) => {\r\n if (subscriptionData) {\r\n this.showCreateWorkflow = subscriptionData.compliance_flag === 1;\r\n }\r\n });\r\n }\r\n}\r\n","<vc-global-alert [feature]=\"featureFlag\"></vc-global-alert>\r\n<div\r\n class=\"header-container vx-d-flex vx-align-center vx-justify-between vx-pr-3\"\r\n>\r\n <div id=\"snowfall\" *ngIf=\"isXmasCapVisible\" [class.animate]=\"showAnimation\">\r\n <div class=\"snow\"></div>\r\n <div class=\"snow1\"></div>\r\n <div class=\"snow2\"></div>\r\n </div>\r\n <div class=\"header-container-left vx-d-flex vx-align-center\">\r\n <a\r\n class=\"product-logo vx-d-flex vx-align-center vx-justify-center vx-mr-3\"\r\n [href]=\"defaultURL\"\r\n >\r\n <img\r\n *ngIf=\"isXmasCapVisible\"\r\n class=\"xmas-cap\"\r\n [src]=\"ASSETS.xmas_cap\"\r\n alt=\"Santa Cap\"\r\n width=\"20\"\r\n height=\"20\" />\r\n <img [src]=\"ASSETS.v_icon\" alt=\"VComply\" width=\"24\" height=\"24\"\r\n /></a>\r\n <vc-business-cycle\r\n *ngIf=\"isBusinessCycleVisible\"\r\n (businessCycleChange)=\"businessCycleChangeHandler($event)\"\r\n ></vc-business-cycle>\r\n </div>\r\n <div class=\"search-area\">\r\n <vc-search\r\n *ngIf=\"showSearch\"\r\n [isAdvanceSearch]=\"isAdvanceSearch\"\r\n (onSearchAction)=\"onSearchAction.emit($event)\"\r\n ></vc-search>\r\n </div>\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <vc-support (openSupport)=\"openDialog.emit('SUPPORT')\"></vc-support>\r\n <vc-create-workflow\r\n *ngIf=\"(apiService.loggedUserDetail$ | async | checkPermission) && showCreateWorkflow\"\r\n (openWorkflow)=\"openDialog.emit('WORKFLOW')\"\r\n [iframeLoading]=\"iframeLoading\"\r\n ></vc-create-workflow>\r\n <vc-queue></vc-queue>\r\n <vc-user-details\r\n [userDetails]=\"apiService.loggedUserDetail$ | async\"\r\n [subscriptionDetails]=\"apiService.subscriptionDetail$ | async\"\r\n ></vc-user-details>\r\n </div>\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'vc-sub-menu-container',\r\n template: `\r\n <div\r\n class=\"sub-menu-container vx-pl-2 vx-pr-2 vx-pb-5\"\r\n [class.hide]=\"false\"\r\n >\r\n <div\r\n class=\"top-close-area vx-d-flex vx-align-center vx-justify-end vx-mb-2\"\r\n >\r\n <button\r\n (click)=\"onSubMenuClose()\"\r\n class=\"vx-fs-8 vx-d-flex vx-align-center vx-justify-center vx-p-0 vx-m-0\"\r\n [arTooltip]=\"'Close'\"\r\n placement=\"left\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n </div>\r\n <ul *ngIf=\"subMenuData?.length\" class=\"vx-m-0 vx-p-0\">\r\n <li\r\n class=\"vx-mb-2\"\r\n *ngFor=\"let eachMenu of subMenuData\"\r\n [ngClass]=\"eachMenu?.class\"\r\n >\r\n <a\r\n class=\"vx-fs-13 vx-fw-400 vx-txt-white vx-p-2 vx-d-block\"\r\n [href]=\"eachMenu?.href\"\r\n >{{ eachMenu?.name }}</a\r\n >\r\n </li>\r\n </ul>\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrls: ['./sub-menu-container.component.less'],\r\n})\r\nexport class SubMenuContainerComponent implements OnInit {\r\n @Input() subMenuData: any[] = [];\r\n @Output() onCloseSubMenu: EventEmitter<any> = new EventEmitter<any>();\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n public onSubMenuClose() {\r\n this.onCloseSubMenu.emit();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ToolTipDirective } from './tooltip.directive';\r\n\r\n@NgModule({\r\n declarations: [ToolTipDirective],\r\n imports: [CommonModule],\r\n exports: [ToolTipDirective],\r\n})\r\nexport class TooltipModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GetFileUrlPipe } from './get-file-url.pipe';\r\nimport { CreatePermissionPipe } from './check-create-permission.pipe';\r\nimport { DateFormatPipe } from './date-format.pipe';\r\nimport { GetModuleIconPipe } from './get-module-icon.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n GetFileUrlPipe,\r\n CreatePermissionPipe,\r\n DateFormatPipe,\r\n GetModuleIconPipe,\r\n ],\r\n imports: [CommonModule],\r\n exports: [\r\n GetFileUrlPipe,\r\n CreatePermissionPipe,\r\n DateFormatPipe,\r\n GetModuleIconPipe,\r\n ],\r\n})\r\nexport class PipesModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ProductListContainerComponent } from './product-list-container/product-list-container.component';\r\nimport { ModuleListComponent } from './module-list/module-list.component';\r\nimport { PreferenceListComponent } from './preference-list/preference-list.component';\r\nimport { TooltipModule } from '../../shared/ui-kit/tooltip/tooltip.module';\r\nimport { PipesModule } from '../../shared/pipe/pipes.module';\r\nimport { PageLoaderComponent } from '../../shared/ui-kit/page-loader/page-loader.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n ProductListContainerComponent,\r\n ModuleListComponent,\r\n PreferenceListComponent,\r\n PageLoaderComponent\r\n ],\r\n imports: [CommonModule, TooltipModule, PipesModule],\r\n exports: [ProductListContainerComponent],\r\n})\r\nexport class ProductListModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AvatarComponent } from './avatar/avatar.component';\r\nimport { PipesModule } from '../../pipe/pipes.module';\r\n\r\n@NgModule({\r\n declarations: [AvatarComponent],\r\n imports: [CommonModule, PipesModule],\r\n exports: [AvatarComponent],\r\n})\r\nexport class AvatarModule {}\r\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\nimport { PopoverService } from './popover.service';\r\n\r\n@Directive({\r\n selector: '[appPopoverEvent]',\r\n})\r\nexport class PopoverEventDirective {\r\n constructor(private popoverService: PopoverService) {}\r\n @HostListener('contextmenu', ['$event']) contextmenu(event: any) {\r\n this.getEventPosition(event);\r\n }\r\n getEventPosition(event: any) {\r\n // const container = event.currentTarget;\r\n this.popoverService.positionX = event.clientX;\r\n this.popoverService.positionY = event.clientY;\r\n }\r\n}\r\n\r\n// appPopoverEvent\r\n","import { Directive, EventEmitter, HostListener, Output } from '@angular/core';\r\nimport { PopoverService } from './popover.service';\r\n\r\n@Directive({\r\n selector: '[appPopoverLongpress]',\r\n})\r\nexport class PopoverLongpressDirective {\r\n getTime: any;\r\n currentTime: any;\r\n\r\n timer: any;\r\n @Output() longPressPopover = new EventEmitter<any>();\r\n constructor(private popoverService: PopoverService) {}\r\n @HostListener('mousedown', ['$event']) mousedown(event: any) {\r\n alert('Tong');\r\n this.currentTime = Date.now();\r\n // \r\n this.timer = setInterval(() => {\r\n if (Date.now() - this.currentTime > 1000) {\r\n this.longPressPopover.emit();\r\n clearInterval(this.timer);\r\n this.getEventPosition(event);\r\n alert('Ting tong');\r\n }\r\n }, 10);\r\n }\r\n @HostListener('mouseup') mouseup() {\r\n clearInterval(this.timer);\r\n this.currentTime = undefined;\r\n // \r\n }\r\n getEventPosition(event: any) {\r\n this.popoverService.positionX = event.clientX;\r\n this.popoverService.positionY = event.clientY;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover.component';\r\nimport { PopoverDirective } from './popover.directive';\r\nimport { PopoverEventDirective } from './popover-event.directive';\r\nimport { PopoverLongpressDirective } from './popover-longpress.directive';\r\nimport { PopoverService } from './popover.service';\r\n\r\n@NgModule({\r\n declarations: [PopoverComponent, PopoverDirective, PopoverEventDirective, PopoverLongpressDirective],\r\n imports: [CommonModule],\r\n exports: [PopoverComponent, PopoverDirective, PopoverEventDirective, PopoverLongpressDirective],\r\n providers: [PopoverService],\r\n})\r\nexport class PopoverModule {}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cs-radio',\r\n templateUrl: './cs-radio.component.html',\r\n styleUrls: ['./cs-radio.component.less'],\r\n})\r\nexport class CsRadioComponent implements OnInit {\r\n @Input() disabled!: boolean;\r\n @Input() readonly!: boolean;\r\n @Input() name!: string;\r\n @Input() checked!: boolean;\r\n @Input() value: any;\r\n @Output() checkedEvent = new EventEmitter();\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n changeState(evt: any) {\r\n this.checkedEvent.emit(evt);\r\n }\r\n}\r\n","<label class=\"radio-item\" [class.readonly]=\"readonly\">\r\n <input type=\"radio\" [disabled]=\"disabled\" [name]=\"name\" [value]=\"value\" [checked]=\"checked\" (change)=\"changeState($event)\" />\r\n <span class=\"radio\">\r\n <span class=\"inner\"></span>\r\n </span>\r\n <svg class=\"radiomark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"radiomark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <circle class=\"radiomark__check\" cx=\"26\" cy=\"26\" r=\"5\" fill=\"none\" />\r\n </svg>\r\n <span class=\"value\"><ng-content></ng-content></span>\r\n</label>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cs-switch',\r\n templateUrl: './cs-switch.component.html',\r\n styleUrls: ['./cs-switch.component.less'],\r\n})\r\nexport class CsSwitchComponent implements OnInit {\r\n @Input() disabled!: boolean;\r\n @Input() ngValue: any;\r\n @Input() value: any;\r\n @Output() ngValueChange = new EventEmitter<any>();\r\n @Input() tooltipMessage: any;\r\n @Input() position: any;\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n // \r\n }\r\n valueChanged() {\r\n this.ngValueChange.emit(this.ngValue);\r\n }\r\n}\r\n","<label class=\"cs-switch\" [class.top]=\"position == 'top'\">\r\n <!-- [class.large]=\"large\" -->\r\n <span class=\"value\">\r\n <span [innerHTML]=\"value\" *ngIf=\"value != undefined\"></span>\r\n <!-- <span class=\"notification\" *ngIf=\"!tooltipMessage\" [appTooltip]=\"tooltipMessage\" placement=\"bottom-right\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\r\n <i class=\"vc-icons\"></i>\r\n </span> -->\r\n </span>\r\n <!-- [class.last]=\"last\" -->\r\n <span\r\n class=\"switch\"\r\n *ngIf=\"tooltipMessage === '' || tooltipMessage === undefined\"\r\n >\r\n <input\r\n type=\"checkbox\"\r\n [(ngModel)]=\"ngValue\"\r\n (ngModelChange)=\"valueChanged()\"\r\n [disabled]=\"disabled\"\r\n />\r\n <span class=\"switch-box\">\r\n <span class=\"switch-ball\"></span>\r\n </span>\r\n </span>\r\n <span\r\n class=\"switch\"\r\n *ngIf=\"tooltipMessage !== '' && tooltipMessage !== undefined\"\r\n [arTooltip]=\"tooltipMessage\"\r\n placement=\"bottom-right\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n >\r\n <input\r\n type=\"checkbox\"\r\n [(ngModel)]=\"ngValue\"\r\n (ngModelChange)=\"valueChanged()\"\r\n [disabled]=\"disabled\"\r\n />\r\n <span class=\"switch-box\">\r\n <span class=\"switch-ball\"></span>\r\n </span>\r\n </span>\r\n</label>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cs-radio-group',\r\n templateUrl: './cs-radio-group.component.html',\r\n styleUrls: ['./cs-radio-group.component.less'],\r\n})\r\nexport class CsRadioGroupComponent implements OnInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<app-cs-radio>fefre</app-cs-radio>\r\n<app-cs-radio>fefre</app-cs-radio>\r\n<app-cs-radio>fefre</app-cs-radio>\r\n<app-cs-radio>fefre</app-cs-radio>\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[clickOutside]',\r\n})\r\nexport class ClickOutsideDirective {\r\n constructor(private elementRef: ElementRef) {}\r\n @Output('clickOutside') clickOutside: EventEmitter<any> = new EventEmitter();\r\n\r\n @HostListener('document:click', ['$event.target']) onMouseEnter(targetElement: any) {\r\n const clickedInside = this.elementRef.nativeElement.contains(targetElement);\r\n if (!clickedInside) {\r\n this.clickOutside.emit(null);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'pascal',\r\n})\r\nexport class PascalPipe implements PipeTransform {\r\n transform(value: string, ...args: unknown[]): unknown {\r\n if (typeof value !== 'string') {\r\n return value;\r\n }\r\n return value.charAt(0).toUpperCase() + value.slice(1);\r\n }\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cs-select',\r\n templateUrl: './cs-select.component.html',\r\n styleUrls: ['./cs-select.component.less'],\r\n})\r\nexport class CsSelectComponent implements OnChanges {\r\n @Input() dataList!: any[];\r\n @Input() dropdownLabel!: string;\r\n @Input() displayProperty!: string;\r\n @Input() selectedValue!: string;\r\n @Input() isRequired!: boolean;\r\n @Input() dropdownSubLabel!: string;\r\n @Input() disabled!: boolean;\r\n @ViewChild('option') option!: ElementRef;\r\n\r\n @Output() selectedData = new EventEmitter();\r\n @Output() selectedValueChange = new EventEmitter();\r\n @Input() placeholder: any;\r\n @Input() stylex: any;\r\n @Input() valueKey: any;\r\n @Input() multipleSelect: any;\r\n @Input() colorProperty!: string;\r\n\r\n @Input() colorSelected!: string;\r\n colorCode!: string;\r\n\r\n dropdownOption = false;\r\n positionReset!: boolean;\r\n getLeft!: number;\r\n getTop!: number;\r\n getWidth!: number;\r\n maxWidth!: number;\r\n activeDoropdown = false;\r\n\r\n private optionList!: ElementRef;\r\n\r\n @ViewChild('optionList') set content(content: ElementRef) {\r\n if (content) {\r\n // initially setter gets called with undefined\r\n this.optionList = content;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['selectedValue']) {\r\n this.selectedValue = this.selectedValue || '--';\r\n }\r\n }\r\n\r\n openDropdown(event: any): void {\r\n this.dropdownOption = true;\r\n setTimeout(() => {\r\n const dropdown = event.target.getBoundingClientRect();\r\n const selectOption = this.optionList.nativeElement.offsetHeight;\r\n if (dropdown.top + selectOption * 2 > window.innerHeight) {\r\n this.getTop = dropdown.top - selectOption;\r\n } else {\r\n this.getTop = dropdown.top + dropdown.height;\r\n }\r\n this.getLeft = dropdown.left;\r\n this.getWidth = dropdown.width;\r\n this.maxWidth = dropdown.width * 1.25;\r\n }, 10);\r\n setTimeout(() => {\r\n this.activeDoropdown = true;\r\n }, 100);\r\n }\r\n selectOption(selectedData: any) {\r\n if (typeof selectedData === 'object') {\r\n this.selectedValue = selectedData[this.displayProperty];\r\n this.colorSelected = selectedData[this.colorProperty];\r\n } else {\r\n this.selectedValue = selectedData;\r\n }\r\n this.selectedData.emit(selectedData);\r\n this.selectedValueChange.emit(selectedData);\r\n this.dropdownOption = false;\r\n }\r\n closeDropdown() {\r\n this.dropdownOption = false;\r\n }\r\n}\r\n","<div class=\"input-group\" (clickOutside)=\"dropdownOption = false\">\r\n <label *ngIf=\"dropdownLabel != undefined\">\r\n {{ dropdownLabel }} <span class=\"sub-label\">{{ dropdownSubLabel }}</span>\r\n <span class=\"required\" *ngIf=\"isRequired\">*</span></label\r\n >\r\n <div class=\"custom-select-box\" [class.disabled]=\"disabled\">\r\n <input\r\n type=\"text\"\r\n [class.line]=\"stylex\"\r\n [placeholder]=\"placeholder\"\r\n [value]=\"selectedValue | pascal\"\r\n readonly\r\n (click)=\"openDropdown($event)\"\r\n (keyup.enter)=\"openDropdown($event)\"\r\n (keyup.arrowup)=\"openDropdown($event)\"\r\n (keyup.arrowdown)=\"openDropdown($event)\"\r\n *ngIf=\"!colorProperty\"\r\n />\r\n <span\r\n class=\"show-label\"\r\n *ngIf=\"colorProperty\"\r\n (click)=\"openDropdown($event)\"\r\n >\r\n <span\r\n class=\"label\"\r\n [innerHTML]=\"selectedValue\"\r\n [style.backgroundColor]=\"colorSelected + '1A'\"\r\n [style.color]=\"colorSelected\"\r\n ></span>\r\n </span>\r\n <!-- <span class=\"arrow\" [class.line]=\"stylex\">\r\n <i class=\"icons\"></i>\r\n </span> -->\r\n <div\r\n class=\"overlay active\"\r\n *ngIf=\"dropdownOption === true\"\r\n (click)=\"closeDropdown()\"\r\n ></div>\r\n <ul\r\n class=\"list-of-option\"\r\n *ngIf=\"dropdownOption === true && !colorProperty\"\r\n #optionList\r\n (keyup.Escape)=\"closeDropdown()\"\r\n [style.top.px]=\"getTop\"\r\n [style.left.px]=\"getLeft\"\r\n [style.min-width.px]=\"getWidth\"\r\n [style.max-width.px]=\"maxWidth\"\r\n [class.active]=\"activeDoropdown\"\r\n >\r\n <li *ngFor=\"let data of dataList\">\r\n <label>\r\n <input\r\n type=\"radio\"\r\n [value]=\"data[valueKey]\"\r\n name=\"sliceLabel\"\r\n (change)=\"selectOption(data)\"\r\n #option\r\n (keyup.enter)=\"closeDropdown()\"\r\n class=\"pointer-none\"\r\n />\r\n <span\r\n (click)=\"closeDropdown(); selectOption(data)\"\r\n *ngIf=\"displayProperty && displayProperty !== ''\"\r\n class=\"value\"\r\n [arTooltip]=\"data[displayProperty]\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n >{{ data[displayProperty] }}</span\r\n >\r\n <span\r\n (click)=\"closeDropdown(); selectOption(data)\"\r\n *ngIf=\"!displayProperty || displayProperty === ''\"\r\n class=\"value\"\r\n [arTooltip]=\"data\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n >{{ data }}</span\r\n >\r\n </label>\r\n </li>\r\n </ul>\r\n <ul\r\n class=\"list-of-option\"\r\n *ngIf=\"dropdownOption === true && colorProperty\"\r\n #optionList\r\n (keyup.Escape)=\"closeDropdown()\"\r\n [style.top.px]=\"getTop\"\r\n [style.left.px]=\"getLeft\"\r\n [style.min-width.px]=\"getWidth\"\r\n [style.max-width.px]=\"maxWidth\"\r\n [class.active]=\"activeDoropdown\"\r\n >\r\n <li *ngFor=\"let data of dataList\">\r\n <label class=\"colors\">\r\n <input\r\n type=\"radio\"\r\n [value]=\"data[valueKey]\"\r\n name=\"sliceLabel\"\r\n (click)=\"selectOption(data)\"\r\n #option\r\n (keyup.enter)=\"closeDropdown()\"\r\n class=\"pointer-none\"\r\n />\r\n <span\r\n (click)=\"selectOption(data)\"\r\n *ngIf=\"displayProperty && displayProperty !== ''\"\r\n class=\"value\"\r\n [arTooltip]=\"data[displayProperty]\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n [ngStyle]=\"{ color: data.segment_color }\"\r\n [style.backgroundColor]=\"data.segment_color + '1A'\"\r\n >{{ data[displayProperty] }}</span\r\n >\r\n <span\r\n (click)=\"selectOption(data)\"\r\n *ngIf=\"!displayProperty || displayProperty === ''\"\r\n class=\"value\"\r\n [arTooltip]=\"data\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n [ngStyle]=\"{ color: data.segment_color }\"\r\n [style.backgroundColor]=\"data.segment_color + '1A'\"\r\n >{{ data }}</span\r\n >\r\n </label>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'searchMultiSelect',\r\n})\r\nexport class SearchMultiSelectPipe implements PipeTransform {\r\n transform(value: any[], key: string, searchKey: string): any[] {\r\n if (searchKey && searchKey.length > 0) {\r\n searchKey = searchKey.toLowerCase();\r\n return value.filter((item) => {\r\n if (item[key].toLowerCase().includes(searchKey)) {\r\n return item;\r\n }\r\n });\r\n }\r\n return value;\r\n }\r\n}\r\n","import { Component, OnInit, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cs-checkbox-indeterminate',\r\n templateUrl: './cs-checkbox-indeterminate.component.html',\r\n styleUrls: ['./cs-checkbox-indeterminate.component.less']\r\n})\r\nexport class CsCheckboxIndeterminateComponent implements OnInit {\r\n @Input() disabled!: boolean;\r\n @Input() ngValue: any;\r\n @Input() value: any;\r\n @Output() ngValueChange = new EventEmitter<any>();\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n valueChanged() {\r\n const emitValue = {\r\n value: this.value,\r\n checked: this.ngValue\r\n }\r\n this.ngValueChange.emit(emitValue);\r\n }\r\n\r\n}\r\n","<label class=\"checkbox-item\" [class.disabled]=\"disabled\">\r\n <input type=\"checkbox\" [name]=\"value\" [disabled]=\"disabled\" [(ngModel)]=\"ngValue\" (ngModelChange)=\"valueChanged()\" />\r\n <span class=\"checkbox\">\r\n <span class=\"inner\"></span>\r\n </span>\r\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path fill=\"none\" d=\"M37.9,27H14v-2h23.9V27z\"/>\r\n </svg>\r\n <span class=\"value\"><ng-content></ng-content></span>\r\n </label>\r\n ","\r\n\r\nimport { Component, forwardRef, Provider } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nconst CHECKBOX_VALUE_ACCESSOR: Provider = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => CheckboxComponent),\r\n multi: true,\r\n};\r\n\r\n@Component({\r\n selector: 'vui-checkbox',\r\n templateUrl: './checkbox.component.html',\r\n styleUrls: ['./checkbox.component.less'],\r\n providers: [CHECKBOX_VALUE_ACCESSOR],\r\n inputs:['disabled','checked','indeterminateEnabled'],\r\n\r\n})\r\nexport class CheckboxComponent implements ControlValueAccessor{\r\n disabled !:boolean | any;\r\n checked !:boolean | any;\r\n indeterminateEnabled !:boolean | any;\r\n onChanged = (value:any) => {};\r\n onTouched = () => {};\r\n\r\n writeValue(value: boolean): void {\r\n this.checked = value ?? false\r\n }\r\n registerOnChange(fn: any): void {\r\n this.onChanged = fn;\r\n }\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n setDisabledState(isDisabled: boolean) {\r\n this.disabled = isDisabled;\r\n }\r\n valueChanged(){\r\n \r\n this.checked = !this.checked;\r\n this.onChanged(this.checked);\r\n this.onTouched();\r\n }\r\n}\r\n","<label class=\"checkbox-item\" [class.disabled]=\"disabled\">\r\n <input type=\"checkbox\" [checked]=\"checked\" [disabled]=\"disabled\" (change)=\"valueChanged()\"/>\r\n <span class=\"checkbox\">\r\n <span class=\"inner\"></span>\r\n </span>\r\n <!-- svg for checkmark -->\r\n <ng-container *ngIf=\"!indeterminateEnabled\">\r\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkmark__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\r\n </svg>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"indeterminateEnabled\">\r\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkmark__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path fill=\"none\" d=\"M37.9,27H14v-2h23.9V27z\"/>\r\n </svg>\r\n </ng-container>\r\n \r\n <span class=\"value\"><ng-content></ng-content></span>\r\n </label>\r\n ","import { FormsModule } from '@angular/forms';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CsCheckboxComponent } from './cs-checkbox/cs-checkbox.component';\r\nimport { CsRadioComponent } from './cs-radio/cs-radio.component';\r\nimport { CsSwitchComponent } from './cs-switch/cs-switch.component';\r\nimport { CsRadioGroupComponent } from './cs-radio-group/cs-radio-group.component';\r\nimport { CsSelectComponent } from './cs-select/cs-select.component';\r\nimport { TooltipModule } from '../tooltip/tooltip.module';\r\nimport { PascalPipe } from './pipes/pascal.pipe';\r\nimport { SearchMultiSelectPipe } from './pipes/searchMultiSelect.pipe';\r\nimport { ClickOutsideDirective } from './click-outside.directive';\r\nimport { CsCheckboxIndeterminateComponent } from './cs-checkbox-indeterminate/cs-checkbox-indeterminate.component'\r\nimport { CheckboxComponent } from './checkbox/checkbox.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n CsCheckboxComponent,\r\n CsRadioComponent,\r\n CsSwitchComponent,\r\n CsRadioGroupComponent,\r\n CsSelectComponent,\r\n PascalPipe,\r\n SearchMultiSelectPipe,\r\n ClickOutsideDirective,\r\n CsCheckboxIndeterminateComponent,\r\n CheckboxComponent\r\n ],\r\n imports: [CommonModule, FormsModule, TooltipModule],\r\n exports: [\r\n CsCheckboxComponent,\r\n CsRadioComponent,\r\n CsSwitchComponent,\r\n CsRadioGroupComponent,\r\n CsSelectComponent,\r\n SearchMultiSelectPipe,\r\n CsCheckboxIndeterminateComponent,\r\n CheckboxComponent\r\n ],\r\n})\r\nexport class FormgroupModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GlobalAlertComponent } from './global-alert/global-alert.component';\r\n\r\n@NgModule({\r\n declarations: [GlobalAlertComponent],\r\n imports: [CommonModule],\r\n exports: [GlobalAlertComponent],\r\n})\r\nexport class GlobalAlertModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HeaderContainerComponent } from './header-container/header-container.component';\r\nimport { TooltipModule } from '../../shared/ui-kit/tooltip/tooltip.module';\r\nimport { BusinessCycleComponent } from './business-cycle/business-cycle.component';\r\nimport { SearchComponent } from './search/search.component';\r\nimport { CreateWorkflowComponent } from './create-workflow/create-workflow.component';\r\nimport { QueueComponent } from './queue/queue.component';\r\nimport { UserDetailsComponent } from './user-details/user-details.component';\r\nimport { SupportComponent } from './support/support.component';\r\nimport { AvatarModule } from '../../shared/ui-kit/avatar/avatar.module';\r\nimport { PopoverModule } from '../../shared/ui-kit/popover/popover.module';\r\nimport { FormgroupModule } from '../../shared/ui-kit/formgroup/formgroup.module';\r\nimport { GlobalAlertModule } from '../global-alert/global-alert.module';\r\nimport { PipesModule } from '../../shared/pipe/pipes.module';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n declarations: [\r\n HeaderContainerComponent,\r\n BusinessCycleComponent,\r\n SearchComponent,\r\n CreateWorkflowComponent,\r\n QueueComponent,\r\n UserDetailsComponent,\r\n SupportComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n TooltipModule,\r\n AvatarModule,\r\n PopoverModule,\r\n FormgroupModule,\r\n GlobalAlertModule,\r\n PipesModule,\r\n FormsModule,\r\n FormgroupModule,\r\n ],\r\n exports: [HeaderContainerComponent],\r\n})\r\nexport class HeaderModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubMenuContainerComponent } from './sub-menu-container/sub-menu-container.component';\r\nimport { TooltipModule } from '../../shared/ui-kit/tooltip/tooltip.module';\r\n\r\n@NgModule({\r\n declarations: [SubMenuContainerComponent],\r\n imports: [CommonModule, TooltipModule],\r\n exports: [SubMenuContainerComponent],\r\n})\r\nexport class SubMenuModule {}\r\n","/*\r\n * Public API Surface of vc-layout\r\n */\r\n\r\nexport * from './lib/shared/services/RBAC.service';\r\nexport * from './lib/vc-layout.service';\r\nexport * from './lib/vc-layout.component';\r\nexport * from './lib/vc-layout.module';\r\nexport * from './lib/components/product-list/product-list-container/product-list-container.component';\r\nexport * from './lib/components/header/header-container/header-container.component';\r\nexport * from './lib/components/sub-menu/sub-menu-container/sub-menu-container.component';\r\n\r\nexport * from './lib/components/product-list/product-list.module';\r\nexport * from './lib/components/header/header.module';\r\nexport * from './lib/components/sub-menu/sub-menu.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3.LayoutService","i4.Configurations","i1.ApiService","i1.RbacService","i1.ProductListService","i2.ApiService","i3.RbacService","i4","i5.ToolTipDirective","i6.PageLoaderComponent","i7.GetModuleIconPipe","i1.LayoutService","i3","i4.ToolTipDirective","i5.GetModuleIconPipe","i1.ModuleListComponent","i2.PreferenceListComponent","i1","i1.PopoverService","i2.BusinessCycleService","i3.ApiService","i6.PopoverComponent","i7.PopoverDirective","i8.CsCheckboxComponent","i9.DateFormatPipe","i3.ToolTipDirective","i1.ToolTipDirective","i2.LayoutService","i1.Configurations","i3.GetFileUrlPipe","i4.AvatarComponent","i5.PopoverComponent","i6.PopoverDirective","i7","i5.GlobalAlertComponent","i6.BusinessCycleComponent","i7.SearchComponent","i8.CreateWorkflowComponent","i9.QueueComponent","i10.UserDetailsComponent","i11.SupportComponent","i12.CreatePermissionPipe","i2.ToolTipDirective","i1.CsRadioComponent","i3.ClickOutsideDirective","i4.PascalPipe"],"mappings":"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"}
|