vc-layout 3.0.3 → 3.0.4

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.
Files changed (75) hide show
  1. package/fesm2022/vc-layout.mjs +573 -354
  2. package/fesm2022/vc-layout.mjs.map +1 -1
  3. package/lib/components/ai-assistant/ai-assistant-container.component.d.ts +25 -0
  4. package/lib/components/ai-assistant/assistant-state.config.d.ts +11 -0
  5. package/lib/components/header/ai-assistant/ai-assistant.component.d.ts +12 -0
  6. package/lib/components/header/business-cycle/business-cycle.component.d.ts +1 -0
  7. package/lib/components/header/header-container/header-container.component.d.ts +5 -3
  8. package/lib/components/header/header.module.d.ts +11 -9
  9. package/lib/components/product-list/module-list/module-list.component.d.ts +0 -10
  10. package/lib/constants/assistant.constants.d.ts +2 -0
  11. package/lib/shared/pipe/pipes.module.d.ts +3 -2
  12. package/lib/shared/pipe/safe-url.pipe.d.ts +10 -0
  13. package/lib/shared/services/local-storage.service.d.ts +8 -0
  14. package/package.json +3 -5
  15. package/public-api.d.ts +1 -0
  16. package/esm2022/lib/components/global-alert/global-alert/global-alert.component.mjs +0 -191
  17. package/esm2022/lib/components/global-alert/global-alert.module.mjs +0 -18
  18. package/esm2022/lib/components/header/business-cycle/business-cycle.component.mjs +0 -275
  19. package/esm2022/lib/components/header/create-workflow/create-workflow.component.mjs +0 -21
  20. package/esm2022/lib/components/header/header-container/header-container.component.mjs +0 -129
  21. package/esm2022/lib/components/header/header.module.mjs +0 -71
  22. package/esm2022/lib/components/header/queue/queue.component.mjs +0 -59
  23. package/esm2022/lib/components/header/search/search.component.mjs +0 -136
  24. package/esm2022/lib/components/header/support/support.component.mjs +0 -31
  25. package/esm2022/lib/components/header/user-details/user-details.component.mjs +0 -34
  26. package/esm2022/lib/components/product-list/module-list/module-list.component.mjs +0 -255
  27. package/esm2022/lib/components/product-list/preference-list/preference-list.component.mjs +0 -97
  28. package/esm2022/lib/components/product-list/product-list-container/product-list-container.component.mjs +0 -42
  29. package/esm2022/lib/components/product-list/product-list.module.mjs +0 -31
  30. package/esm2022/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.mjs +0 -106
  31. package/esm2022/lib/components/sub-menu/sub-menu.module.mjs +0 -19
  32. package/esm2022/lib/configurations.mjs +0 -6
  33. package/esm2022/lib/constants/alerts.constant.mjs +0 -7
  34. package/esm2022/lib/constants/api.constant.mjs +0 -7
  35. package/esm2022/lib/constants/app-url.constant.mjs +0 -22
  36. package/esm2022/lib/constants/assets.constants.mjs +0 -35
  37. package/esm2022/lib/constants/business-cycle.constant.mjs +0 -42
  38. package/esm2022/lib/constants/product-list.constant.mjs +0 -124
  39. package/esm2022/lib/shared/pipe/check-create-permission.pipe.mjs +0 -17
  40. package/esm2022/lib/shared/pipe/date-format.pipe.mjs +0 -35
  41. package/esm2022/lib/shared/pipe/get-file-url.pipe.mjs +0 -22
  42. package/esm2022/lib/shared/pipe/get-module-icon.pipe.mjs +0 -22
  43. package/esm2022/lib/shared/pipe/pipes.module.mjs +0 -37
  44. package/esm2022/lib/shared/services/RBAC.service.mjs +0 -57
  45. package/esm2022/lib/shared/services/api.service.mjs +0 -127
  46. package/esm2022/lib/shared/services/business-cycle.service.mjs +0 -123
  47. package/esm2022/lib/shared/services/layout.service.mjs +0 -41
  48. package/esm2022/lib/shared/services/product-list.service.mjs +0 -82
  49. package/esm2022/lib/shared/ui-kit/avatar/avatar/avatar.component.mjs +0 -43
  50. package/esm2022/lib/shared/ui-kit/avatar/avatar.module.mjs +0 -19
  51. package/esm2022/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.mjs +0 -39
  52. package/esm2022/lib/shared/ui-kit/formgroup/click-outside.directive.mjs +0 -29
  53. package/esm2022/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +0 -28
  54. package/esm2022/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.mjs +0 -32
  55. package/esm2022/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +0 -30
  56. package/esm2022/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +0 -14
  57. package/esm2022/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.mjs +0 -102
  58. package/esm2022/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +0 -35
  59. package/esm2022/lib/shared/ui-kit/formgroup/formgroup.module.mjs +0 -65
  60. package/esm2022/lib/shared/ui-kit/formgroup/pipes/pascal.pipe.mjs +0 -19
  61. package/esm2022/lib/shared/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +0 -24
  62. package/esm2022/lib/shared/ui-kit/page-loader/page-loader.component.mjs +0 -27
  63. package/esm2022/lib/shared/ui-kit/popover/popover-event.directive.mjs +0 -28
  64. package/esm2022/lib/shared/ui-kit/popover/popover-longpress.directive.mjs +0 -48
  65. package/esm2022/lib/shared/ui-kit/popover/popover.component.mjs +0 -141
  66. package/esm2022/lib/shared/ui-kit/popover/popover.directive.mjs +0 -82
  67. package/esm2022/lib/shared/ui-kit/popover/popover.module.mjs +0 -23
  68. package/esm2022/lib/shared/ui-kit/popover/popover.service.mjs +0 -15
  69. package/esm2022/lib/shared/ui-kit/tooltip/tooltip.directive.mjs +0 -156
  70. package/esm2022/lib/shared/ui-kit/tooltip/tooltip.module.mjs +0 -18
  71. package/esm2022/lib/vc-layout.component.mjs +0 -19
  72. package/esm2022/lib/vc-layout.module.mjs +0 -24
  73. package/esm2022/lib/vc-layout.service.mjs +0 -14
  74. package/esm2022/public-api.mjs +0 -14
  75. package/esm2022/vc-layout.mjs +0 -5
@@ -0,0 +1,25 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import { LocalStorageService } from '../../shared/services/local-storage.service';
3
+ import * as i0 from "@angular/core";
4
+ export declare class VcAiAssistantComponent implements OnInit {
5
+ private localStorageService;
6
+ isAiAssistantInitialized: boolean;
7
+ isAiAssistantMaximized: boolean;
8
+ isAiAssistantVisible: boolean;
9
+ aiAssistantUrl: string;
10
+ set isAiAssistantOpen(value: boolean);
11
+ aiAssistantVisibility: EventEmitter<boolean>;
12
+ constructor(localStorageService: LocalStorageService);
13
+ ngOnInit(): void;
14
+ onWindowMessage(event: MessageEvent): void;
15
+ private applyAssistantState;
16
+ openAiAssistant(): void;
17
+ private handleAssistantMessage;
18
+ private updateAssistantContext;
19
+ private restoreAssistantState;
20
+ getAiAssistantContainerClasses(): {
21
+ [klass: string]: boolean;
22
+ };
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<VcAiAssistantComponent, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<VcAiAssistantComponent, "vc-ai-assistant-container", never, { "aiAssistantUrl": { "alias": "aiAssistantUrl"; "required": false; }; "isAiAssistantOpen": { "alias": "isAiAssistantOpen"; "required": false; }; }, { "aiAssistantVisibility": "aiAssistantVisibility"; }, never, never, false, never>;
25
+ }
@@ -0,0 +1,11 @@
1
+ export interface AssistantStateInterface {
2
+ initialize: boolean;
3
+ maximize: boolean;
4
+ visible: boolean;
5
+ assistant_state: 0 | 1;
6
+ }
7
+ export declare const AssistantStates: {
8
+ maximize: AssistantStateInterface;
9
+ minimize: AssistantStateInterface;
10
+ close: AssistantStateInterface;
11
+ };
@@ -0,0 +1,12 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AiAssistantComponent implements OnInit {
4
+ ASSETS: any;
5
+ isAiAssistantOpen: boolean;
6
+ openAiAssistant: EventEmitter<boolean>;
7
+ constructor();
8
+ ngOnInit(): void;
9
+ onClick(): void;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<AiAssistantComponent, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<AiAssistantComponent, "vc-ai-assistant", never, { "isAiAssistantOpen": { "alias": "isAiAssistantOpen"; "required": false; }; }, { "openAiAssistant": "openAiAssistant"; }, never, never, false, never>;
12
+ }
@@ -22,6 +22,7 @@ export declare class BusinessCycleComponent implements OnInit {
22
22
  constructor(authService: AuthorizerService, businessCycleService: BusinessCycleService, apiService: ApiService);
23
23
  ngOnInit(): void;
24
24
  getOrgDetails(): void;
25
+ private initializeTempSelectedCycle;
25
26
  setSelectedBusinessCycle(): void;
26
27
  /**
27
28
  * #### Description
@@ -14,23 +14,25 @@ export declare class HeaderContainerComponent implements OnInit, OnDestroy {
14
14
  showBusinessCycle: string[];
15
15
  currentUrl: string;
16
16
  defaultURL: string;
17
- showCreateWorkflow: boolean;
17
+ isAiAssistantEnabled: boolean;
18
18
  showSearch: boolean;
19
19
  featureFlag: any;
20
20
  isAdvanceSearch: boolean;
21
21
  iframeLoading: boolean;
22
+ isAiAssistantOpen: boolean;
22
23
  businessCycleChange: EventEmitter<any>;
23
24
  openDialog: EventEmitter<any>;
24
25
  onSearchAction: EventEmitter<any>;
26
+ openAiAssistant: EventEmitter<boolean>;
25
27
  constructor(apiService: ApiService, layoutService: LayoutService, router: ActivatedRoute);
26
28
  ngOnInit(): void;
27
29
  ngOnDestroy(): void;
28
30
  businessCycleChangeHandler(event: any): void;
29
31
  onRouterChange(): void;
30
32
  get isBusinessCycleVisible(): boolean;
33
+ checkAiAssistantEnabled(): void;
31
34
  checkSnowFallVisibility(): void;
32
35
  checkXmasCapVisibility(): void;
33
- checkComplianceFlag(): void;
34
36
  static ɵfac: i0.ɵɵFactoryDeclaration<HeaderContainerComponent, never>;
35
- static ɵcmp: i0.ɵɵComponentDeclaration<HeaderContainerComponent, "vc-header-container", never, { "showSearch": { "alias": "showSearch"; "required": false; }; "featureFlag": { "alias": "featureFlag"; "required": false; }; "isAdvanceSearch": { "alias": "isAdvanceSearch"; "required": false; }; "iframeLoading": { "alias": "iframeLoading"; "required": false; }; }, { "businessCycleChange": "businessCycleChange"; "openDialog": "openDialog"; "onSearchAction": "onSearchAction"; }, never, never, false, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<HeaderContainerComponent, "vc-header-container", never, { "showSearch": { "alias": "showSearch"; "required": false; }; "featureFlag": { "alias": "featureFlag"; "required": false; }; "isAdvanceSearch": { "alias": "isAdvanceSearch"; "required": false; }; "iframeLoading": { "alias": "iframeLoading"; "required": false; }; "isAiAssistantOpen": { "alias": "isAiAssistantOpen"; "required": false; }; }, { "businessCycleChange": "businessCycleChange"; "openDialog": "openDialog"; "onSearchAction": "onSearchAction"; "openAiAssistant": "openAiAssistant"; }, never, never, false, never>;
36
38
  }
@@ -6,16 +6,18 @@ import * as i4 from "./create-workflow/create-workflow.component";
6
6
  import * as i5 from "./queue/queue.component";
7
7
  import * as i6 from "./user-details/user-details.component";
8
8
  import * as i7 from "./support/support.component";
9
- import * as i8 from "@angular/common";
10
- import * as i9 from "../../shared/ui-kit/tooltip/tooltip.module";
11
- import * as i10 from "../../shared/ui-kit/avatar/avatar.module";
12
- import * as i11 from "../../shared/ui-kit/popover/popover.module";
13
- import * as i12 from "../../shared/ui-kit/formgroup/formgroup.module";
14
- import * as i13 from "../global-alert/global-alert.module";
15
- import * as i14 from "../../shared/pipe/pipes.module";
16
- import * as i15 from "@angular/forms";
9
+ import * as i8 from "./ai-assistant/ai-assistant.component";
10
+ import * as i9 from "../ai-assistant/ai-assistant-container.component";
11
+ import * as i10 from "@angular/common";
12
+ import * as i11 from "../../shared/ui-kit/tooltip/tooltip.module";
13
+ import * as i12 from "../../shared/ui-kit/avatar/avatar.module";
14
+ import * as i13 from "../../shared/ui-kit/popover/popover.module";
15
+ import * as i14 from "../../shared/ui-kit/formgroup/formgroup.module";
16
+ import * as i15 from "../global-alert/global-alert.module";
17
+ import * as i16 from "../../shared/pipe/pipes.module";
18
+ import * as i17 from "@angular/forms";
17
19
  export declare class HeaderModule {
18
20
  static ɵfac: i0.ɵɵFactoryDeclaration<HeaderModule, never>;
19
- static ɵmod: i0.ɵɵNgModuleDeclaration<HeaderModule, [typeof i1.HeaderContainerComponent, typeof i2.BusinessCycleComponent, typeof i3.SearchComponent, typeof i4.CreateWorkflowComponent, typeof i5.QueueComponent, typeof i6.UserDetailsComponent, typeof i7.SupportComponent], [typeof i8.CommonModule, typeof i9.TooltipModule, typeof i10.AvatarModule, typeof i11.PopoverModule, typeof i12.FormgroupModule, typeof i13.GlobalAlertModule, typeof i14.PipesModule, typeof i15.FormsModule, typeof i12.FormgroupModule], [typeof i1.HeaderContainerComponent]>;
21
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HeaderModule, [typeof i1.HeaderContainerComponent, typeof i2.BusinessCycleComponent, typeof i3.SearchComponent, typeof i4.CreateWorkflowComponent, typeof i5.QueueComponent, typeof i6.UserDetailsComponent, typeof i7.SupportComponent, typeof i8.AiAssistantComponent, typeof i9.VcAiAssistantComponent], [typeof i10.CommonModule, typeof i11.TooltipModule, typeof i12.AvatarModule, typeof i13.PopoverModule, typeof i14.FormgroupModule, typeof i15.GlobalAlertModule, typeof i16.PipesModule, typeof i17.FormsModule, typeof i14.FormgroupModule], [typeof i1.HeaderContainerComponent, typeof i9.VcAiAssistantComponent]>;
20
22
  static ɵinj: i0.ɵɵInjectorDeclaration<HeaderModule>;
21
23
  }
@@ -19,16 +19,6 @@ export declare class ModuleListComponent implements OnChanges, OnInit {
19
19
  constructor(productListService: ProductListService, apiService: ApiService, rbacService: RbacService);
20
20
  ngOnInit(): void;
21
21
  ngOnChanges(): void;
22
- /**
23
- * Initialize the product list only after all required data is available
24
- * This prevents icon flashing by building the filtered list incrementally
25
- */
26
- private initializeProductList;
27
- /**
28
- * Build the filtered product list incrementally and show all at once
29
- * This prevents icon flashing by only showing the final filtered result
30
- */
31
- private buildFilteredProductList;
32
22
  /**
33
23
  * Handles the toggle event of the submenu for each product.
34
24
  *
@@ -0,0 +1,2 @@
1
+ export declare const ASSISTANT_URL = "/assistant";
2
+ export declare const ASSISTANT_CONTEXT_KEY = "assistant_context";
@@ -3,9 +3,10 @@ import * as i1 from "./get-file-url.pipe";
3
3
  import * as i2 from "./check-create-permission.pipe";
4
4
  import * as i3 from "./date-format.pipe";
5
5
  import * as i4 from "./get-module-icon.pipe";
6
- import * as i5 from "@angular/common";
6
+ import * as i5 from "./safe-url.pipe";
7
+ import * as i6 from "@angular/common";
7
8
  export declare class PipesModule {
8
9
  static ɵfac: i0.ɵɵFactoryDeclaration<PipesModule, never>;
9
- static ɵmod: i0.ɵɵNgModuleDeclaration<PipesModule, [typeof i1.GetFileUrlPipe, typeof i2.CreatePermissionPipe, typeof i3.DateFormatPipe, typeof i4.GetModuleIconPipe], [typeof i5.CommonModule], [typeof i1.GetFileUrlPipe, typeof i2.CreatePermissionPipe, typeof i3.DateFormatPipe, typeof i4.GetModuleIconPipe]>;
10
+ static ɵmod: i0.ɵɵNgModuleDeclaration<PipesModule, [typeof i1.GetFileUrlPipe, typeof i2.CreatePermissionPipe, typeof i3.DateFormatPipe, typeof i4.GetModuleIconPipe, typeof i5.SafeUrlPipe], [typeof i6.CommonModule], [typeof i1.GetFileUrlPipe, typeof i2.CreatePermissionPipe, typeof i3.DateFormatPipe, typeof i4.GetModuleIconPipe, typeof i5.SafeUrlPipe]>;
10
11
  static ɵinj: i0.ɵɵInjectorDeclaration<PipesModule>;
11
12
  }
@@ -0,0 +1,10 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
3
+ import * as i0 from "@angular/core";
4
+ export declare class SafeUrlPipe implements PipeTransform {
5
+ private sanitizer;
6
+ constructor(sanitizer: DomSanitizer);
7
+ transform(url: string | null | undefined): SafeResourceUrl;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<SafeUrlPipe, never>;
9
+ static ɵpipe: i0.ɵɵPipeDeclaration<SafeUrlPipe, "SafeUrl", false>;
10
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LocalStorageService {
3
+ getItem<T = any>(key: string): T | null;
4
+ setItem(key: string, value: unknown): void;
5
+ removeItem(key: string): void;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<LocalStorageService, never>;
7
+ static ɵprov: i0.ɵɵInjectableDeclaration<LocalStorageService>;
8
+ }
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "vc-layout",
3
- "version": "3.0.3",
3
+ "version": "3.0.4",
4
4
  "peerDependencies": {
5
- "@angular/common": " 12.x || 13.x || 14.x || 15.x || 16.x || 17.x || 18.x || 19.x ",
6
- "@angular/core": " 12.x || 13.x || 14.x || 15.x || 16.x || 17.x || 18.x || 19.x "
5
+ "@angular/common": " 12.x || 13.x || 14.x || 15.x || 16.x || 17.x || 18.x || 19.x || 20.x || 21.x || 22.x || 23.x || 24.x ",
6
+ "@angular/core": " 12.x || 13.x || 14.x || 15.x || 16.x || 17.x || 18.x || 19.x || 20.x || 21.x || 22.x || 23.x || 24.x "
7
7
  },
8
8
  "dependencies": {
9
9
  "tslib": "^2.3.0"
@@ -16,8 +16,6 @@
16
16
  },
17
17
  ".": {
18
18
  "types": "./index.d.ts",
19
- "esm2022": "./esm2022/vc-layout.mjs",
20
- "esm": "./esm2022/vc-layout.mjs",
21
19
  "default": "./fesm2022/vc-layout.mjs"
22
20
  }
23
21
  },
package/public-api.d.ts CHANGED
@@ -8,3 +8,4 @@ export * from './lib/components/sub-menu/sub-menu-container/sub-menu-container.c
8
8
  export * from './lib/components/product-list/product-list.module';
9
9
  export * from './lib/components/header/header.module';
10
10
  export * from './lib/components/sub-menu/sub-menu.module';
11
+ export * from './lib/components/ai-assistant/ai-assistant-container.component';
@@ -1,191 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { GLOBAL_ALERTS } from '../../../constants/alerts.constant';
3
- import { IN_APP_URL } from '../../../constants/app-url.constant';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../../shared/services/api.service";
6
- import * as i2 from "@angular/common";
7
- export class GlobalAlertComponent {
8
- constructor(apiService) {
9
- this.apiService = apiService;
10
- this.activeIndex = 0;
11
- this.messages = [];
12
- this.isNotificationVisible = false;
13
- this.subscriptionStatus = new EventEmitter();
14
- this.setSubscriptionInfo();
15
- }
16
- setSubscriptionInfo() {
17
- this.apiService.subscriptionDetail$.subscribe((res) => {
18
- if (res) {
19
- this.subscriptionData = res;
20
- this.setMessages(this.subscriptionData);
21
- this.getOrgDetails();
22
- }
23
- });
24
- }
25
- getOrgDetails() {
26
- this.apiService.organizationDetail$.subscribe((res) => {
27
- if (res) {
28
- this.setMailAlert(res);
29
- }
30
- });
31
- }
32
- setMessages(subscriptionData) {
33
- const messages = [];
34
- this.activeIndex = 0;
35
- if (subscriptionData) {
36
- const { trial_flag, no_of_days_left, after_expired_days_allow, no_of_days_for_password_expire, } = subscriptionData;
37
- if (trial_flag && no_of_days_left <= 0) {
38
- messages.push({
39
- message: GLOBAL_ALERTS.trialUserExpired + GLOBAL_ALERTS.contactUs,
40
- class: 'HIGH',
41
- });
42
- }
43
- else if (no_of_days_left > 0 && no_of_days_left <= 30) {
44
- messages.push({
45
- message: `YOUR SUBSCRIPTION EXPIRES IN ${no_of_days_left} DAYS. ${GLOBAL_ALERTS.contactUs}`,
46
- class: no_of_days_left <= 10 ? 'HIGH' : 'MEDIUM',
47
- });
48
- }
49
- else if (no_of_days_left <= 0) {
50
- messages.push({
51
- message: `SUBSCRIPTION EXPIRED: YOU WILL NOT BE ABLE TO LOGIN TO YOUR ACCOUNT AFTER ${after_expired_days_allow} DAYS. ${GLOBAL_ALERTS.contactUs}`,
52
- class: 'HIGH',
53
- });
54
- }
55
- if (no_of_days_for_password_expire < 1) {
56
- messages.push({
57
- message: `YOUR PASSWORD HAS EXPIRED. PLEASE <a href="${this.getPasswordResetUrl()}" target="_blank">CLICK HERE</a> TO RESET YOUR PASSWORD.`,
58
- class: 'HIGH',
59
- });
60
- }
61
- else if (no_of_days_for_password_expire < 30) {
62
- messages.push({
63
- 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.`,
64
- class: 'MEDIUM',
65
- });
66
- }
67
- }
68
- this.messages = messages;
69
- this.isNotificationVisible = this.messages.length > 0;
70
- this.subscriptionStatus.emit(this.isNotificationVisible);
71
- }
72
- /**
73
- * If the response is true, then push the message to the array. If the response is false, then remove
74
- * the message from the array.
75
- * </code>
76
- * @param {any} res - any = {
77
- */
78
- setMailAlert(res) {
79
- const emailPausedMessage = this.feature?.isFeatureEnabled('ff_email_alert_update')
80
- ? GLOBAL_ALERTS.NOTIF_PAUSE_MESSAGE
81
- : GLOBAL_ALERTS.EMAIL_PAUSE;
82
- const index = this.messages.findIndex((message) => message?.message?.includes(emailPausedMessage));
83
- if (res?.is_mail_block === 1 && index === -1) {
84
- this.messages.push({
85
- message: emailPausedMessage,
86
- class: 'MEDIUM',
87
- });
88
- }
89
- else if (res?.is_mail_block === 0 && index >= 0) {
90
- this.setMessages(this.subscriptionData);
91
- }
92
- this.isNotificationVisible = this.messages.length > 0;
93
- this.subscriptionStatus.emit(this.isNotificationVisible);
94
- }
95
- getPasswordResetUrl() {
96
- return `https://${window.location.host}${IN_APP_URL.PASSWORD_RESET}`;
97
- }
98
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertComponent, deps: [{ token: i1.ApiService }], target: i0.ɵɵFactoryTarget.Component }); }
99
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GlobalAlertComponent, selector: "vc-global-alert", inputs: { feature: "feature" }, outputs: { subscriptionStatus: "subscriptionStatus" }, ngImport: i0, template: `
100
- <div
101
- *ngIf="messages.length > 0"
102
- class="global-alert vx-d-flex vx-align-center vx-justify-center"
103
- [class.expired]="messages[activeIndex]?.class === 'HIGH'"
104
- >
105
- <i class="icons vx-fs-12 vx-mr-2">&#xe930;</i>
106
- <!-- <span class="vx-fs-13"
107
- >Email notifications have been paused by the Key Admin. You will not be able
108
- to edit your email notifications until the Key Admin turns it back on.</span
109
- > -->
110
- <span
111
- class="vx-fs-13"
112
- [innerHTML]="messages[activeIndex]?.message"
113
- ></span>
114
- <div
115
- *ngIf="messages.length > 1"
116
- class="global-alert-action vx-d-flex vx-align-center vx-lh-6"
117
- >
118
- <button
119
- [class.disabled]="activeIndex === 0"
120
- (click)="activeIndex = activeIndex - 1"
121
- class="vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled"
122
- >
123
- <i class="icons">&#xe96b;</i>
124
- </button>
125
- <span class="vx-fs-13 vx-txt-white">{{ activeIndex + 1 }}</span>
126
- <span class="divider vx-fs-11 vx-txt-white">/</span>
127
- <span class="vx-fs-13 vx-fw-600 vx-txt-white">{{
128
- messages.length
129
- }}</span>
130
-
131
- <button
132
- (click)="activeIndex = activeIndex + 1"
133
- [class.disabled]="activeIndex === messages.length - 1"
134
- class="vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center"
135
- >
136
- <i class="icons">&#xe970;</i>
137
- </button>
138
- </div>
139
- </div>
140
- `, isInline: true, styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .global-alert{background:#343952;height:2.25rem;color:#f7d873}::ng-deep .global-alert.expired{color:#e38b7a}::ng-deep .global-alert.expired a{color:#fac3b7;margin-left:.5rem}::ng-deep .global-alert a{color:#f7d873}::ng-deep .global-alert-action{position:absolute;right:.75rem;top:.375rem}::ng-deep .global-alert-action span{letter-spacing:2px}::ng-deep .global-alert-action button{background:transparent;border-radius:0;border:none;color:#fff}::ng-deep .global-alert-action button.disabled{pointer-events:none;opacity:.5;color:#fff}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
141
- }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertComponent, decorators: [{
143
- type: Component,
144
- args: [{ selector: 'vc-global-alert', template: `
145
- <div
146
- *ngIf="messages.length > 0"
147
- class="global-alert vx-d-flex vx-align-center vx-justify-center"
148
- [class.expired]="messages[activeIndex]?.class === 'HIGH'"
149
- >
150
- <i class="icons vx-fs-12 vx-mr-2">&#xe930;</i>
151
- <!-- <span class="vx-fs-13"
152
- >Email notifications have been paused by the Key Admin. You will not be able
153
- to edit your email notifications until the Key Admin turns it back on.</span
154
- > -->
155
- <span
156
- class="vx-fs-13"
157
- [innerHTML]="messages[activeIndex]?.message"
158
- ></span>
159
- <div
160
- *ngIf="messages.length > 1"
161
- class="global-alert-action vx-d-flex vx-align-center vx-lh-6"
162
- >
163
- <button
164
- [class.disabled]="activeIndex === 0"
165
- (click)="activeIndex = activeIndex - 1"
166
- class="vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled"
167
- >
168
- <i class="icons">&#xe96b;</i>
169
- </button>
170
- <span class="vx-fs-13 vx-txt-white">{{ activeIndex + 1 }}</span>
171
- <span class="divider vx-fs-11 vx-txt-white">/</span>
172
- <span class="vx-fs-13 vx-fw-600 vx-txt-white">{{
173
- messages.length
174
- }}</span>
175
-
176
- <button
177
- (click)="activeIndex = activeIndex + 1"
178
- [class.disabled]="activeIndex === messages.length - 1"
179
- class="vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center"
180
- >
181
- <i class="icons">&#xe970;</i>
182
- </button>
183
- </div>
184
- </div>
185
- `, styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .global-alert{background:#343952;height:2.25rem;color:#f7d873}::ng-deep .global-alert.expired{color:#e38b7a}::ng-deep .global-alert.expired a{color:#fac3b7;margin-left:.5rem}::ng-deep .global-alert a{color:#f7d873}::ng-deep .global-alert-action{position:absolute;right:.75rem;top:.375rem}::ng-deep .global-alert-action span{letter-spacing:2px}::ng-deep .global-alert-action button{background:transparent;border-radius:0;border:none;color:#fff}::ng-deep .global-alert-action button.disabled{pointer-events:none;opacity:.5;color:#fff}\n"] }]
186
- }], ctorParameters: function () { return [{ type: i1.ApiService }]; }, propDecorators: { feature: [{
187
- type: Input
188
- }], subscriptionStatus: [{
189
- type: Output
190
- }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWFsZXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjLWxheW91dC9zcmMvbGliL2NvbXBvbmVudHMvZ2xvYmFsLWFsZXJ0L2dsb2JhbC1hbGVydC9nbG9iYWwtYWxlcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7OztBQWlEakUsTUFBTSxPQUFPLG9CQUFvQjtJQVMvQixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBUjFDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGFBQVEsR0FBZSxFQUFFLENBQUM7UUFFMUIsMEJBQXFCLEdBQVksS0FBSyxDQUFDO1FBRzdCLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3BELElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN0QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLG1C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LGtCQUFrQjtnQkFDM0IsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1NBQ0o7YUFBTSxJQUFJLEdBQUcsRUFBRSxhQUFhLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN6QztRQUVELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sV0FBVyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdkUsQ0FBQzsrR0E5R1Usb0JBQW9CO21HQUFwQixvQkFBb0IsOElBNUNyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Q1Q7OzRGQUdVLG9CQUFvQjtrQkE5Q2hDLFNBQVM7K0JBQ0UsaUJBQWlCLFlBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlDVDtpR0FTUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdMT0JBTF9BTEVSVFMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYWxlcnRzLmNvbnN0YW50JztcbmltcG9ydCB7IElOX0FQUF9VUkwgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYXBwLXVybC5jb25zdGFudCc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmMtZ2xvYmFsLWFsZXJ0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIm1lc3NhZ2VzLmxlbmd0aCA+IDBcIlxuICAgICAgY2xhc3M9XCJnbG9iYWwtYWxlcnQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlclwiXG4gICAgICBbY2xhc3MuZXhwaXJlZF09XCJtZXNzYWdlc1thY3RpdmVJbmRleF0/LmNsYXNzID09PSAnSElHSCdcIlxuICAgID5cbiAgICAgIDxpIGNsYXNzPVwiaWNvbnMgdngtZnMtMTIgdngtbXItMlwiPiYjeGU5MzA7PC9pPlxuICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cInZ4LWZzLTEzXCJcbiAgICA+RW1haWwgbm90aWZpY2F0aW9ucyBoYXZlIGJlZW4gcGF1c2VkIGJ5IHRoZSBLZXkgQWRtaW4uIFlvdSB3aWxsIG5vdCBiZSBhYmxlXG4gICAgdG8gZWRpdCB5b3VyIGVtYWlsIG5vdGlmaWNhdGlvbnMgdW50aWwgdGhlIEtleSBBZG1pbiB0dXJucyBpdCBiYWNrIG9uLjwvc3BhblxuICA+IC0tPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3M9XCJ2eC1mcy0xM1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwibWVzc2FnZXNbYWN0aXZlSW5kZXhdPy5tZXNzYWdlXCJcbiAgICAgID48L3NwYW4+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwibWVzc2FnZXMubGVuZ3RoID4gMVwiXG4gICAgICAgIGNsYXNzPVwiZ2xvYmFsLWFsZXJ0LWFjdGlvbiB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWxoLTZcIlxuICAgICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUluZGV4ID09PSAwXCJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aXZlSW5kZXggPSBhY3RpdmVJbmRleCAtIDFcIlxuICAgICAgICAgIGNsYXNzPVwidngtZnMtMTIgdngtcC0wIHZ4LW0tMCB2eC1tci00IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgZGlzYWJsZWRcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5NmI7PC9pPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMyB2eC10eHQtd2hpdGVcIj57eyBhY3RpdmVJbmRleCArIDEgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlciB2eC1mcy0xMSB2eC10eHQtd2hpdGVcIj4vPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInZ4LWZzLTEzIHZ4LWZ3LTYwMCB2eC10eHQtd2hpdGVcIj57e1xuICAgICAgICAgIG1lc3NhZ2VzLmxlbmd0aFxuICAgICAgICB9fTwvc3Bhbj5cblxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImFjdGl2ZUluZGV4ID0gYWN0aXZlSW5kZXggKyAxXCJcbiAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlSW5kZXggPT09IG1lc3NhZ2VzLmxlbmd0aCAtIDFcIlxuICAgICAgICAgIGNsYXNzPVwidngtZnMtMTIgdngtcC0wIHZ4LW0tMCB2eC1tbC00IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5NzA7PC9pPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9nbG9iYWwtYWxlcnQuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR2xvYmFsQWxlcnRDb21wb25lbnQge1xuICBhY3RpdmVJbmRleCA9IDA7XG4gIG1lc3NhZ2VzOiBBcnJheTxhbnk+ID0gW107XG4gIG1haWxBbGVydDogYW55O1xuICBpc05vdGlmaWNhdGlvblZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc3Vic2NyaXB0aW9uRGF0YTogYW55O1xuICBASW5wdXQoKSBmZWF0dXJlOiBhbnk7XG4gIEBPdXRwdXQoKSBzdWJzY3JpcHRpb25TdGF0dXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlKSB7XG4gICAgdGhpcy5zZXRTdWJzY3JpcHRpb25JbmZvKCk7XG4gIH1cblxuICBzZXRTdWJzY3JpcHRpb25JbmZvKCkge1xuICAgIHRoaXMuYXBpU2VydmljZS5zdWJzY3JpcHRpb25EZXRhaWwkLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICBpZiAocmVzKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uRGF0YSA9IHJlcztcbiAgICAgICAgdGhpcy5zZXRNZXNzYWdlcyh0aGlzLnN1YnNjcmlwdGlvbkRhdGEpO1xuICAgICAgICB0aGlzLmdldE9yZ0RldGFpbHMoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldE9yZ0RldGFpbHMoKSB7XG4gICAgdGhpcy5hcGlTZXJ2aWNlLm9yZ2FuaXphdGlvbkRldGFpbCQuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgdGhpcy5zZXRNYWlsQWxlcnQocmVzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHNldE1lc3NhZ2VzKHN1YnNjcmlwdGlvbkRhdGE6IGFueSkge1xuICAgIGNvbnN0IG1lc3NhZ2VzID0gW107XG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IDA7XG5cbiAgICBpZiAoc3Vic2NyaXB0aW9uRGF0YSkge1xuICAgICAgY29uc3Qge1xuICAgICAgICB0cmlhbF9mbGFnLFxuICAgICAgICBub19vZl9kYXlzX2xlZnQsXG4gICAgICAgIGFmdGVyX2V4cGlyZWRfZGF5c19hbGxvdyxcbiAgICAgICAgbm9fb2ZfZGF5c19mb3JfcGFzc3dvcmRfZXhwaXJlLFxuICAgICAgfSA9IHN1YnNjcmlwdGlvbkRhdGE7XG5cbiAgICAgIGlmICh0cmlhbF9mbGFnICYmIG5vX29mX2RheXNfbGVmdCA8PSAwKSB7XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IEdMT0JBTF9BTEVSVFMudHJpYWxVc2VyRXhwaXJlZCArIEdMT0JBTF9BTEVSVFMuY29udGFjdFVzLFxuICAgICAgICAgIGNsYXNzOiAnSElHSCcsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChub19vZl9kYXlzX2xlZnQgPiAwICYmIG5vX29mX2RheXNfbGVmdCA8PSAzMCkge1xuICAgICAgICBtZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICBtZXNzYWdlOiBgWU9VUiBTVUJTQ1JJUFRJT04gRVhQSVJFUyBJTiAke25vX29mX2RheXNfbGVmdH0gREFZUy4gJHtHTE9CQUxfQUxFUlRTLmNvbnRhY3RVc31gLFxuICAgICAgICAgIGNsYXNzOiBub19vZl9kYXlzX2xlZnQgPD0gMTAgPyAnSElHSCcgOiAnTUVESVVNJyxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKG5vX29mX2RheXNfbGVmdCA8PSAwKSB7XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IGBTVUJTQ1JJUFRJT04gRVhQSVJFRDogWU9VIFdJTEwgTk9UIEJFIEFCTEUgVE8gTE9HSU4gVE8gWU9VUiBBQ0NPVU5UIEFGVEVSICR7YWZ0ZXJfZXhwaXJlZF9kYXlzX2FsbG93fSBEQVlTLiAke0dMT0JBTF9BTEVSVFMuY29udGFjdFVzfWAsXG4gICAgICAgICAgY2xhc3M6ICdISUdIJyxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmUgPCAxKSB7XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IGBZT1VSIFBBU1NXT1JEIEhBUyBFWFBJUkVELiBQTEVBU0UgPGEgaHJlZj1cIiR7dGhpcy5nZXRQYXNzd29yZFJlc2V0VXJsKCl9XCIgdGFyZ2V0PVwiX2JsYW5rXCI+Q0xJQ0sgSEVSRTwvYT4gVE8gUkVTRVQgWU9VUiBQQVNTV09SRC5gLFxuICAgICAgICAgIGNsYXNzOiAnSElHSCcsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmUgPCAzMCkge1xuICAgICAgICBtZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICBtZXNzYWdlOiBgWU9VUiBQQVNTV09SRCBJUyBHT0lORyBUTyBFWFBJUkUgSU4gJHtub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmV9IERBWVMuIDxhIGhyZWY9XCIke3RoaXMuZ2V0UGFzc3dvcmRSZXNldFVybCgpfVwiIHRhcmdldD1cIl9ibGFua1wiPkNMSUNLIEhFUkU8L2E+IFRPIFJFU0VUIFlPVVIgUEFTU1dPUkQuYCxcbiAgICAgICAgICBjbGFzczogJ01FRElVTScsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMubWVzc2FnZXMgPSBtZXNzYWdlcztcbiAgICB0aGlzLmlzTm90aWZpY2F0aW9uVmlzaWJsZSA9IHRoaXMubWVzc2FnZXMubGVuZ3RoID4gMDtcbiAgICB0aGlzLnN1YnNjcmlwdGlvblN0YXR1cy5lbWl0KHRoaXMuaXNOb3RpZmljYXRpb25WaXNpYmxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0aGUgcmVzcG9uc2UgaXMgdHJ1ZSwgdGhlbiBwdXNoIHRoZSBtZXNzYWdlIHRvIHRoZSBhcnJheS4gSWYgdGhlIHJlc3BvbnNlIGlzIGZhbHNlLCB0aGVuIHJlbW92ZVxuICAgKiB0aGUgbWVzc2FnZSBmcm9tIHRoZSBhcnJheS5cbiAgICogPC9jb2RlPlxuICAgKiBAcGFyYW0ge2FueX0gcmVzIC0gYW55ID0ge1xuICAgKi9cbiAgc2V0TWFpbEFsZXJ0KHJlczogYW55KSB7XG4gICAgY29uc3QgZW1haWxQYXVzZWRNZXNzYWdlID0gdGhpcy5mZWF0dXJlPy5pc0ZlYXR1cmVFbmFibGVkKFxuICAgICAgJ2ZmX2VtYWlsX2FsZXJ0X3VwZGF0ZSdcbiAgICApXG4gICAgICA/IEdMT0JBTF9BTEVSVFMuTk9USUZfUEFVU0VfTUVTU0FHRVxuICAgICAgOiBHTE9CQUxfQUxFUlRTLkVNQUlMX1BBVVNFO1xuXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLm1lc3NhZ2VzLmZpbmRJbmRleCgobWVzc2FnZTogYW55KSA9PlxuICAgICAgbWVzc2FnZT8ubWVzc2FnZT8uaW5jbHVkZXMoZW1haWxQYXVzZWRNZXNzYWdlKVxuICAgICk7XG5cbiAgICBpZiAocmVzPy5pc19tYWlsX2Jsb2NrID09PSAxICYmIGluZGV4ID09PSAtMSkge1xuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgbWVzc2FnZTogZW1haWxQYXVzZWRNZXNzYWdlLFxuICAgICAgICBjbGFzczogJ01FRElVTScsXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHJlcz8uaXNfbWFpbF9ibG9jayA9PT0gMCAmJiBpbmRleCA+PSAwKSB7XG4gICAgICB0aGlzLnNldE1lc3NhZ2VzKHRoaXMuc3Vic2NyaXB0aW9uRGF0YSk7XG4gICAgfVxuXG4gICAgdGhpcy5pc05vdGlmaWNhdGlvblZpc2libGUgPSB0aGlzLm1lc3NhZ2VzLmxlbmd0aCA+IDA7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25TdGF0dXMuZW1pdCh0aGlzLmlzTm90aWZpY2F0aW9uVmlzaWJsZSk7XG4gIH1cblxuICBnZXRQYXNzd29yZFJlc2V0VXJsKCkge1xuICAgIHJldHVybiBgaHR0cHM6Ly8ke3dpbmRvdy5sb2NhdGlvbi5ob3N0fSR7SU5fQVBQX1VSTC5QQVNTV09SRF9SRVNFVH1gO1xuICB9XG59XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { GlobalAlertComponent } from './global-alert/global-alert.component';
4
- import * as i0 from "@angular/core";
5
- export class GlobalAlertModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertModule, declarations: [GlobalAlertComponent], imports: [CommonModule], exports: [GlobalAlertComponent] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertModule, imports: [CommonModule] }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- declarations: [GlobalAlertComponent],
14
- imports: [CommonModule],
15
- exports: [GlobalAlertComponent],
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWFsZXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjLWxheW91dC9zcmMvbGliL2NvbXBvbmVudHMvZ2xvYmFsLWFsZXJ0L2dsb2JhbC1hbGVydC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBTzdFLE1BQU0sT0FBTyxpQkFBaUI7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQUpiLG9CQUFvQixhQUN6QixZQUFZLGFBQ1osb0JBQW9CO2dIQUVuQixpQkFBaUIsWUFIbEIsWUFBWTs7NEZBR1gsaUJBQWlCO2tCQUw3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgR2xvYmFsQWxlcnRDb21wb25lbnQgfSBmcm9tICcuL2dsb2JhbC1hbGVydC9nbG9iYWwtYWxlcnQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbR2xvYmFsQWxlcnRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZXhwb3J0czogW0dsb2JhbEFsZXJ0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgR2xvYmFsQWxlcnRNb2R1bGUge31cbiJdfQ==