vcomply-workflow-engine 2.6.91 → 2.6.92

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 (100) hide show
  1. package/bundles/vcomply-workflow-engine.umd.js +3718 -3358
  2. package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
  3. package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.js +4 -11
  4. package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.ngfactory.js +40 -28
  5. package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.ngsummary.json +1 -1
  6. package/esm2015/lib/formgroup/select/cs-select/cs-select.component.js +2 -2
  7. package/esm2015/lib/formgroup/select/cs-select/cs-select.component.ngfactory.js +3 -3
  8. package/esm2015/lib/more-option/more-option.component.js +11 -2
  9. package/esm2015/lib/pipes/search.pipe.js +5 -5
  10. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.js +5 -18
  11. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.ngfactory.js +30 -520
  12. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.ngsummary.json +1 -1
  13. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-annual/frequency-dialog-annual.component.js +210 -0
  14. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-annual/frequency-dialog-annual.component.ngfactory.js +39 -0
  15. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-annual/frequency-dialog-annual.component.ngsummary.json +1 -0
  16. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-biannual/frequency-dialog-biannual.component.js +185 -0
  17. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-biannual/frequency-dialog-biannual.component.ngfactory.js +36 -0
  18. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-biannual/frequency-dialog-biannual.component.ngsummary.json +1 -0
  19. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-checkbox-list/frequency-dialog-checkbox-list.component.js +26 -0
  20. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-checkbox-list/frequency-dialog-checkbox-list.component.ngfactory.js +25 -0
  21. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-checkbox-list/frequency-dialog-checkbox-list.component.ngsummary.json +1 -0
  22. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-container/frequency-dialog-container.component.js +287 -0
  23. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-container/frequency-dialog-container.component.ngfactory.js +80 -0
  24. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-container/frequency-dialog-container.component.ngsummary.json +1 -0
  25. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-due-date/frequency-dialog-due-date.component.js +57 -0
  26. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-due-date/frequency-dialog-due-date.component.ngfactory.js +42 -0
  27. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-due-date/frequency-dialog-due-date.component.ngsummary.json +1 -0
  28. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-monthly/frequency-dialog-monthly.component.js +195 -0
  29. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-monthly/frequency-dialog-monthly.component.ngfactory.js +36 -0
  30. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-monthly/frequency-dialog-monthly.component.ngsummary.json +1 -0
  31. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-one-time/frequency-dialog-one-time.component.js +136 -0
  32. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-one-time/frequency-dialog-one-time.component.ngfactory.js +79 -0
  33. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-one-time/frequency-dialog-one-time.component.ngsummary.json +1 -0
  34. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-quarterly/frequency-dialog-quarterly.component.js +179 -0
  35. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-quarterly/frequency-dialog-quarterly.component.ngfactory.js +36 -0
  36. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-quarterly/frequency-dialog-quarterly.component.ngsummary.json +1 -0
  37. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-radio-list/frequency-dialog-radio-list.component.js +31 -0
  38. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-radio-list/frequency-dialog-radio-list.component.ngfactory.js +24 -0
  39. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-radio-list/frequency-dialog-radio-list.component.ngsummary.json +1 -0
  40. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-top/frequency-dialog-top.component.js +102 -0
  41. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-top/frequency-dialog-top.component.ngfactory.js +99 -0
  42. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-top/frequency-dialog-top.component.ngsummary.json +1 -0
  43. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-weekly/frequency-dialog-weekly.component.js +163 -0
  44. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-weekly/frequency-dialog-weekly.component.ngfactory.js +36 -0
  45. package/esm2015/lib/sharedComponents/frequency-dialog/frequency-dialog-weekly/frequency-dialog-weekly.component.ngsummary.json +1 -0
  46. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.js +2 -2
  47. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngfactory.js +7 -7
  48. package/esm2015/lib/workflow-engine.module.js +23 -5
  49. package/esm2015/lib/workflow-engine.module.ngfactory.js +1 -1
  50. package/esm2015/lib/workflow-program/create-program-ui/pipes/search.pipe.js +2 -2
  51. package/esm2015/lib/workflow-risk/workflow-risk.component.js +384 -45
  52. package/esm2015/lib/workflow-risk/workflow-risk.component.ngfactory.js +170 -112
  53. package/esm2015/lib/workflow-risk/workflow-risk.component.ngsummary.json +1 -1
  54. package/esm2015/lib/workflow-services/add-risk.service.js +3 -3
  55. package/esm2015/lib/workflow-services/frequency.service.js +12 -41
  56. package/esm2015/vcomply-workflow-engine.js +202 -194
  57. package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
  58. package/fesm2015/vcomply-workflow-engine.js +5000 -4647
  59. package/fesm2015/vcomply-workflow-engine.js.map +1 -1
  60. package/lib/add-multiple-responsibility/add-multiple-responsibility.component.d.ts +0 -2
  61. package/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.d.ts +0 -5
  62. package/lib/sharedComponents/frequency-dialog/frequency-dialog-annual/frequency-dialog-annual.component.d.ts +37 -0
  63. package/lib/{add-multiple-responsibility-container/add-multiple-responsibility-container.component.ngfactory.d.ts → sharedComponents/frequency-dialog/frequency-dialog-annual/frequency-dialog-annual.component.ngfactory.d.ts} +0 -0
  64. package/lib/sharedComponents/frequency-dialog/frequency-dialog-biannual/frequency-dialog-biannual.component.d.ts +35 -0
  65. package/lib/{add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.ngfactory.d.ts → sharedComponents/frequency-dialog/frequency-dialog-biannual/frequency-dialog-biannual.component.ngfactory.d.ts} +0 -0
  66. package/lib/sharedComponents/frequency-dialog/frequency-dialog-checkbox-list/frequency-dialog-checkbox-list.component.d.ts +9 -0
  67. package/lib/sharedComponents/frequency-dialog/frequency-dialog-checkbox-list/frequency-dialog-checkbox-list.component.ngfactory.d.ts +1 -0
  68. package/lib/sharedComponents/frequency-dialog/frequency-dialog-container/frequency-dialog-container.component.d.ts +31 -0
  69. package/lib/sharedComponents/frequency-dialog/frequency-dialog-container/frequency-dialog-container.component.ngfactory.d.ts +1 -0
  70. package/lib/sharedComponents/frequency-dialog/frequency-dialog-due-date/frequency-dialog-due-date.component.d.ts +16 -0
  71. package/lib/sharedComponents/frequency-dialog/frequency-dialog-due-date/frequency-dialog-due-date.component.ngfactory.d.ts +1 -0
  72. package/lib/sharedComponents/frequency-dialog/frequency-dialog-monthly/frequency-dialog-monthly.component.d.ts +33 -0
  73. package/lib/sharedComponents/frequency-dialog/frequency-dialog-monthly/frequency-dialog-monthly.component.ngfactory.d.ts +1 -0
  74. package/lib/sharedComponents/frequency-dialog/frequency-dialog-one-time/frequency-dialog-one-time.component.d.ts +32 -0
  75. package/lib/sharedComponents/frequency-dialog/frequency-dialog-one-time/frequency-dialog-one-time.component.ngfactory.d.ts +1 -0
  76. package/lib/sharedComponents/frequency-dialog/frequency-dialog-quarterly/frequency-dialog-quarterly.component.d.ts +32 -0
  77. package/lib/sharedComponents/frequency-dialog/frequency-dialog-quarterly/frequency-dialog-quarterly.component.ngfactory.d.ts +1 -0
  78. package/lib/sharedComponents/frequency-dialog/frequency-dialog-radio-list/frequency-dialog-radio-list.component.d.ts +10 -0
  79. package/lib/sharedComponents/frequency-dialog/frequency-dialog-radio-list/frequency-dialog-radio-list.component.ngfactory.d.ts +1 -0
  80. package/lib/sharedComponents/frequency-dialog/frequency-dialog-top/frequency-dialog-top.component.d.ts +22 -0
  81. package/lib/sharedComponents/frequency-dialog/frequency-dialog-top/frequency-dialog-top.component.ngfactory.d.ts +1 -0
  82. package/lib/sharedComponents/frequency-dialog/frequency-dialog-weekly/frequency-dialog-weekly.component.d.ts +30 -0
  83. package/lib/sharedComponents/frequency-dialog/frequency-dialog-weekly/frequency-dialog-weekly.component.ngfactory.d.ts +1 -0
  84. package/lib/workflow-risk/workflow-risk.component.d.ts +77 -1
  85. package/lib/workflow-services/add-risk.service.d.ts +1 -1
  86. package/lib/workflow-services/frequency.service.d.ts +1 -1
  87. package/package.json +1 -1
  88. package/vcomply-workflow-engine.d.ts +201 -193
  89. package/vcomply-workflow-engine.metadata.json +1 -1
  90. package/esm2015/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.js +0 -177
  91. package/esm2015/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.ngfactory.js +0 -100
  92. package/esm2015/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.ngsummary.json +0 -1
  93. package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.js +0 -1295
  94. package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.ngfactory.js +0 -70
  95. package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.ngsummary.json +0 -1
  96. package/esm2015/lib/services/bulk-upload.service.js +0 -43
  97. package/esm2015/lib/services/bulk-upload.service.ngsummary.json +0 -1
  98. package/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.d.ts +0 -34
  99. package/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.d.ts +0 -170
  100. package/lib/services/bulk-upload.service.d.ts +0 -6
@@ -1 +1 @@
1
- {"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"responsibilityBulkUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"fileName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"defaultOwner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"loader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"tabType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"bulkUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"submitResponsibilityBulkUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]}}]}],"cancel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]}}]}],"selectedTab":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]}}]}],"responsibilityType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"type":{"summaryKind":1,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[],"lifecycleHooks":[0,3]},"isComponent":true,"selector":"app-bulk-responsibility-view","exportAs":null,"inputs":{"responsibilityBulkUpload":"responsibilityBulkUpload","fileName":"fileName","defaultOwner":"defaultOwner","loader":"loader","tabType":"tabType","bulkUpload":"bulkUpload","responsibilityType":"responsibilityType"},"outputs":{"submitResponsibilityBulkUpload":"submitResponsibilityBulkUpload","cancel":"cancel","selectedTab":"selectedTab"},"hostListeners":{},"hostProperties":{},"hostAttributes":{},"providers":[],"viewProviders":[],"queries":[],"guards":{},"viewQueries":[],"entryComponents":[],"changeDetection":1,"template":{"ngContentSelectors":[],"encapsulation":0,"styles":[],"animations":[]},"componentViewType":{"__symbol":3,"members":[]},"rendererType":{"__symbol":4,"members":[]},"componentFactory":{"__symbol":5,"members":[]}}}],"symbols":[{"__symbol":0,"name":"BulkResponsibilityViewComponent","filePath":"./bulk-responsibility-view.component"},{"__symbol":1,"name":"Input","filePath":"@angular/core"},{"__symbol":2,"name":"Output","filePath":"@angular/core"},{"__symbol":3,"name":"View_BulkResponsibilityViewComponent_0","filePath":"./bulk-responsibility-view.component.ngfactory"},{"__symbol":4,"name":"RenderType_BulkResponsibilityViewComponent","filePath":"./bulk-responsibility-view.component.ngfactory"},{"__symbol":5,"name":"BulkResponsibilityViewComponentNgFactory","filePath":"./bulk-responsibility-view.component.ngfactory"}]}
1
+ {"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"responsibilityBulkUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"fileName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"defaultOwner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"loader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"submitResponsibilityBulkUpload":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]}}]}],"cancel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]}}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"type":{"summaryKind":1,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[],"lifecycleHooks":[0,3]},"isComponent":true,"selector":"app-bulk-responsibility-view","exportAs":null,"inputs":{"responsibilityBulkUpload":"responsibilityBulkUpload","fileName":"fileName","defaultOwner":"defaultOwner","loader":"loader"},"outputs":{"submitResponsibilityBulkUpload":"submitResponsibilityBulkUpload","cancel":"cancel"},"hostListeners":{},"hostProperties":{},"hostAttributes":{},"providers":[],"viewProviders":[],"queries":[],"guards":{},"viewQueries":[],"entryComponents":[],"changeDetection":1,"template":{"ngContentSelectors":[],"encapsulation":0,"styles":[],"animations":[]},"componentViewType":{"__symbol":3,"members":[]},"rendererType":{"__symbol":4,"members":[]},"componentFactory":{"__symbol":5,"members":[]}}}],"symbols":[{"__symbol":0,"name":"BulkResponsibilityViewComponent","filePath":"./bulk-responsibility-view.component"},{"__symbol":1,"name":"Input","filePath":"@angular/core"},{"__symbol":2,"name":"Output","filePath":"@angular/core"},{"__symbol":3,"name":"View_BulkResponsibilityViewComponent_0","filePath":"./bulk-responsibility-view.component.ngfactory"},{"__symbol":4,"name":"RenderType_BulkResponsibilityViewComponent","filePath":"./bulk-responsibility-view.component.ngfactory"},{"__symbol":5,"name":"BulkResponsibilityViewComponentNgFactory","filePath":"./bulk-responsibility-view.component.ngfactory"}]}
@@ -0,0 +1,210 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as moment from 'moment';
3
+ import { FrequencyService } from '../../frequency/frequency.service';
4
+ export class FrequencyDialogAnnualComponent {
5
+ constructor(frequencyService) {
6
+ this.frequencyService = frequencyService;
7
+ this.monthList = [];
8
+ this.yearlyInterval = '11:59 pm';
9
+ this.yearlyInput = 1;
10
+ this.yearlyFailed = 5;
11
+ this.yearlyWindow = 30;
12
+ this.yearlyDay = new Date().getDate();
13
+ this.yearlyLifeCycleStart = new Date();
14
+ this.yearlyLifeCycleEndTime = new Date(this.yearlyLifeCycleStart.getTime() + 86400000);
15
+ this.yearlyLifecycleOccurance = 10;
16
+ this.yearlySeletedLifecycleType = 2;
17
+ this.yearlySelected = new Date().getMonth();
18
+ this.lifecycleDetails = '0000-00-00~~0';
19
+ this.previousStartDate = Math.floor(Date.now() / 1000);
20
+ this.shortMonth = [];
21
+ this.mode = '';
22
+ this.startDate = Math.floor(Date.now() / 1000);
23
+ this.frequencyDetails = new EventEmitter();
24
+ }
25
+ ngOnInit() {
26
+ var _a, _b;
27
+ this.monthList = this.frequencyService.monthArray;
28
+ this.frequencyInfo = Object.assign(this.frequencyService.frequencyInfo);
29
+ this.shortMonth = this.frequencyService.monthArray.map(month => month.substring(0, 3));
30
+ if (((_a = this.frequencyData) === null || _a === void 0 ? void 0 : _a.pattern) != '' && parseInt((_b = this.frequencyData) === null || _b === void 0 ? void 0 : _b.pattern.split('~')[0]) === 4) {
31
+ this.populateFrequency();
32
+ }
33
+ this.getAnnualFrequency();
34
+ }
35
+ populateFrequency() {
36
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
37
+ const patternInfo = (_a = this.frequencyData) === null || _a === void 0 ? void 0 : _a.pattern.split('~').map(Number);
38
+ this.yearlySelected = patternInfo[2] - 1;
39
+ // const lifecycleInfo = this.frequencyData?.lifecycle.split('~~');
40
+ this.yearlyInterval = (_b = this.frequencyData) === null || _b === void 0 ? void 0 : _b.failedTime;
41
+ this.yearlyWindow = (_c = this.frequencyData) === null || _c === void 0 ? void 0 : _c.window;
42
+ this.yearlyInput = patternInfo[3];
43
+ this.yearlyDay = patternInfo[1];
44
+ // if(Number(lifecycleInfo[1]) > 0) {
45
+ // this.yearlyLifecycleOccurance = Number(lifecycleInfo[1]);
46
+ // }
47
+ this.yearlyLifecycleOccurance = Number(patternInfo[1]);
48
+ this.yearlyLifeCycleStart = new Date(((_d = this.frequencyData) === null || _d === void 0 ? void 0 : _d.startDate) * 1000);
49
+ this.startDate = (_f = (_e = this.frequencyData) === null || _e === void 0 ? void 0 : _e.startFrom) !== null && _f !== void 0 ? _f : (_g = this.frequencyData) === null || _g === void 0 ? void 0 : _g.startDate;
50
+ this.yearlyFailed = (_h = this.frequencyData) === null || _h === void 0 ? void 0 : _h.failed;
51
+ // if( lifecycleInfo[0] !== '0000-00-00') {
52
+ // const dateSelected = moment(lifecycleInfo[0] + ' 11:59 pm', 'DD-MMMM-YYYY HH:mm a').unix()
53
+ // this.yearlyLifeCycleEndTime = new Date(dateSelected * 1000);
54
+ // }
55
+ this.lifecycleDetails = (_j = this.frequencyData) === null || _j === void 0 ? void 0 : _j.lifecycle;
56
+ // if( this.frequencyData?.lifecycle == '0000-00-00~~0') {
57
+ // this.yearlySeletedLifecycleType = 2;
58
+ // } else if(lifecycleInfo[0] !== '0000-00-00') {
59
+ // this.yearlySeletedLifecycleType = 0;
60
+ // } else {
61
+ // this.yearlySeletedLifecycleType = 1;
62
+ // }
63
+ }
64
+ onTimeChanged(event) {
65
+ this.yearlyInterval = event;
66
+ this.getAnnualFrequency();
67
+ }
68
+ dateChange(event) {
69
+ this.yearlyDay = event;
70
+ this.getAnnualFrequency();
71
+ }
72
+ valueChangedFirst(event) {
73
+ this.yearlyInput = event.value;
74
+ this.getAnnualFrequency();
75
+ }
76
+ selectedMonth(event) {
77
+ this.yearlySelected = parseInt(event.target.value);
78
+ this.getAnnualFrequency();
79
+ }
80
+ lifecycleChange(event) {
81
+ switch (event.type) {
82
+ case 0:
83
+ this.lifecycleDetails = event.endsBy + '~~0';
84
+ break;
85
+ case 1:
86
+ this.lifecycleDetails = '0000-00-00~~' + event.endafter;
87
+ break;
88
+ case 2:
89
+ this.lifecycleDetails = '0000-00-00~~0';
90
+ break;
91
+ }
92
+ if (event.startFrom.toString().length > 10) {
93
+ this.startDate = Math.floor(event.startFrom / 1000);
94
+ }
95
+ else {
96
+ this.startDate = Math.floor(event.startFrom);
97
+ }
98
+ let endByDate = Math.floor(new Date().getTime() / 1000 + 86400000);
99
+ if (event.type === 0) {
100
+ endByDate = event.endsBy ? moment(event.endsBy + ' 00:00:00', 'DD-MMM-YYYY HH:mm:ss').unix() : endByDate;
101
+ }
102
+ this.frequencyInfo.failed_time_utc = endByDate;
103
+ this.getAnnualFrequency();
104
+ }
105
+ onValueChange(event) {
106
+ if (event.type === 'completed') {
107
+ this.yearlyWindow = event.value;
108
+ }
109
+ else {
110
+ this.yearlyFailed = event.value;
111
+ }
112
+ this.getAnnualFrequency();
113
+ }
114
+ // frequency pattern and details info
115
+ getAnnualFrequency() {
116
+ this.frequencyInfo.placeholder = this.getFrequencyPlaceholder(Number(this.yearlyInput));
117
+ this.frequencyInfo.pattern = 4 + '~' + this.yearlyDay + '~' + (this.yearlySelected + 1) + '~' + this.yearlyInput;
118
+ this.frequencyInfo.case = 'yearly';
119
+ this.frequencyInfo.failedAfter = this.yearlyFailed;
120
+ this.frequencyInfo.window = this.yearlyWindow;
121
+ this.frequencyInfo.timeIn12hr = this.yearlyInterval;
122
+ this.frequencyInfo.timeIn24Hr = this.frequencyService.timeFrom12hTo24h(this.yearlyInterval);
123
+ this.frequencyInfo.lifecycleDetails = this.lifecycleDetails;
124
+ this.frequencyInfo.startFrom = this.startDate;
125
+ this.frequencyInfo.reportId = 0;
126
+ console.log(" this.frequencyInfo ==>", this.frequencyInfo);
127
+ this.frequencyDetails.emit(this.frequencyInfo);
128
+ }
129
+ getFrequencyPlaceholder(yearlyInput) {
130
+ let placeholder = '';
131
+ if (yearlyInput === 1) {
132
+ placeholder = this.getPlaceholderForSt2();
133
+ }
134
+ else {
135
+ placeholder = this.getPlaceholderForGt1();
136
+ }
137
+ return placeholder;
138
+ }
139
+ // if yearlyInput is smaller than 2 then this function will called
140
+ getPlaceholderForSt2() {
141
+ let placeholder = '';
142
+ if (this.yearlyDay === 1) {
143
+ placeholder = '1st of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
144
+ }
145
+ if (this.yearlyDay === 2) {
146
+ placeholder = '2nd of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
147
+ }
148
+ if (this.yearlyDay === 3) {
149
+ placeholder = '3rd of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
150
+ }
151
+ if (this.yearlyDay > 3) {
152
+ placeholder = this.yearlyDay + 'th of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
153
+ }
154
+ if (this.yearlyDay === 31 || this.yearlyDay === 21) {
155
+ placeholder = this.yearlyDay + 'st of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
156
+ }
157
+ if (this.yearlyDay === 22) {
158
+ placeholder = this.yearlyDay + 'nd of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
159
+ }
160
+ if (this.yearlyDay === 23) {
161
+ placeholder = this.yearlyDay + 'rd of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
162
+ }
163
+ return placeholder;
164
+ }
165
+ // if yearlyInput is greater than 1 then this function will called
166
+ getPlaceholderForGt1() {
167
+ let placeholder = '';
168
+ if (this.yearlyDay === 1) {
169
+ placeholder = '1st ' + this.shortMonth[this.yearlySelected] + ', Interval: every ' + this.yearlyInput + ' years by ' + this.yearlyInterval;
170
+ }
171
+ if (this.yearlyDay === 2) {
172
+ placeholder = '2nd ' + this.shortMonth[this.yearlySelected] + ', Interval: every ' + this.yearlyInput + ' years by ' + this.yearlyInterval;
173
+ }
174
+ if (this.yearlyDay === 3) {
175
+ placeholder = '3rd ' + this.shortMonth[this.yearlySelected] + ', Interval: every ' + this.yearlyInput + ' years by ' + this.yearlyInterval;
176
+ }
177
+ if (this.yearlyDay > 3) {
178
+ // tslint:disable-next-line: max-line-length
179
+ placeholder =
180
+ this.yearlyDay + 'th of ' + this.shortMonth[this.yearlySelected] + ', Interval: every ' + this.yearlyInput + ' years by ' + this.yearlyInterval;
181
+ }
182
+ if (this.yearlyDay === 31 || this.yearlyDay === 21) {
183
+ placeholder = this.yearlyDay + 'st of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
184
+ }
185
+ if (this.yearlyDay === 22) {
186
+ placeholder = this.yearlyDay + 'nd of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
187
+ }
188
+ if (this.yearlyDay === 23) {
189
+ placeholder = this.yearlyDay + 'rd of every ' + this.shortMonth[this.yearlySelected] + ' by ' + this.yearlyInterval;
190
+ }
191
+ return placeholder;
192
+ }
193
+ }
194
+ FrequencyDialogAnnualComponent.decorators = [
195
+ { type: Component, args: [{
196
+ selector: 'app-frequency-dialog-annual',
197
+ template: "<!-- <div class=\"frequency-dialog-annual\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT FREQUENCY:</div>\r\n <div class=\"frequency-dialog-annual-item vx-mb-5\">\r\n <app-frequency-dialog-top></app-frequency-dialog-top>\r\n <app-frequency-dialog-radio-list></app-frequency-dialog-radio-list>\r\n </div>\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT EMAIL NOTIFICATION:</div>\r\n <div class=\"frequency-dialog-annual-item vx-mb-5\">\r\n <app-frequency-dialog-due-date></app-frequency-dialog-due-date>\r\n </div>\r\n</div> -->\r\n\r\n\r\n<div class=\"frequency-dialog-annual\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT FREQUENCY:</div>\r\n <div class=\"frequency-dialog-annual-item vx-mb-5\">\r\n <app-frequency-dialog-top\r\n [id]=\"5\"\r\n [inputTime]=\"yearlyInterval\"\r\n [occurrenceFirst]=\"yearlyInput\"\r\n [yearlyDay]=\"yearlyDay\"\r\n [frequencyType]=\"2\"\r\n (timeChanged)=\"onTimeChanged($event)\"\r\n (valueChangedFirst)=\"valueChangedFirst($event)\"\r\n (yearlyDateChanged)=\"dateChange($event)\">\r\n </app-frequency-dialog-top>\r\n <app-frequency-dialog-radio-list\r\n [radioList]=\"monthList\" \r\n [selectedIndex]=\"yearlySelected\" \r\n (selectedRadio)=\"selectedMonth($event)\"\r\n [name]=\"'annual'\">\r\n </app-frequency-dialog-radio-list>\r\n </div>\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT EMAIL NOTIFICATION:</div>\r\n <div class=\"frequency-dialog-annual-item vx-mb-5\">\r\n <app-frequency-dialog-due-date\r\n [pageName]=\"'yearly'\"\r\n [mode]=\"mode\"\r\n [id]=\"5\"\r\n [completedValue]=\"yearlyWindow\"\r\n (valueChange)=\"onValueChange($event)\">\r\n </app-frequency-dialog-due-date>\r\n </div>\r\n</div>",
198
+ styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");@import url(\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/display/display.css\");@import url(\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\");@import url(\"https://cdn.v-comply.com/design-system/css/color/color.css\");@import url(\"https://cdn.v-comply.com/design-system/css/text/text.css\");@import url(\"https://cdn.v-comply.com/design-system/css/width/width.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\");::ng-deep .frequency-dialog-annual-item{border-radius:.25rem;border:1px solid #f1f1f1}"]
199
+ },] }
200
+ ];
201
+ FrequencyDialogAnnualComponent.ctorParameters = () => [
202
+ { type: FrequencyService }
203
+ ];
204
+ FrequencyDialogAnnualComponent.propDecorators = {
205
+ frequencyData: [{ type: Input }],
206
+ mode: [{ type: Input }],
207
+ startDate: [{ type: Input }],
208
+ frequencyDetails: [{ type: Output }]
209
+ };
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWRpYWxvZy1hbm51YWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3ktZGlhbG9nL2ZyZXF1ZW5jeS1kaWFsb2ctYW5udWFsL2ZyZXF1ZW5jeS1kaWFsb2ctYW5udWFsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBT3JFLE1BQU0sT0FBTyw4QkFBOEI7SUEyQnpDLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBekJ0RCxjQUFTLEdBQWUsRUFBRSxDQUFDO1FBRTNCLG1CQUFjLEdBQVcsVUFBVSxDQUFDO1FBQ3BDLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBQ3hCLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO1FBQ3pCLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLGNBQVMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLHlCQUFvQixHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDbEMsMkJBQXNCLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBQ2xGLDZCQUF3QixHQUFXLEVBQUUsQ0FBQztRQUN0QywrQkFBMEIsR0FBVyxDQUFDLENBQUM7UUFDdkMsbUJBQWMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFFBQVEsRUFB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHsgRnJlcXVlbmN5U2VydmljZSB9IGZyb20gJy4uLy4uL2ZyZXF1ZW5jeS9mcmVxdWVuY3kuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1mcmVxdWVuY3ktZGlhbG9nLWFubnVhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZyZXF1ZW5jeS1kaWFsb2ctYW5udWFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mcmVxdWVuY3ktZGlhbG9nLWFubnVhbC5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGcmVxdWVuY3lEaWFsb2dBbm51YWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBtb250aExpc3Q6IEFycmF5PGFueT4gPSBbXTtcclxuXHJcbiAgeWVhcmx5SW50ZXJ2YWw6IHN0cmluZyA9ICcxMTo1OSBwbSc7XHJcbiAgeWVhcmx5SW5wdXQ6IG51bWJlciA9IDE7XHJcbiAgeWVhcmx5RmFpbGVkOiBudW1iZXIgPSA1O1xyXG4gIHllYXJseVdpbmRvdzogbnVtYmVyID0gMzA7XHJcbiAgeWVhcmx5RGF5ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XHJcbiAgeWVhcmx5TGlmZUN5Y2xlU3RhcnQgPSBuZXcgRGF0ZSgpO1xyXG4gIHllYXJseUxpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZSh0aGlzLnllYXJseUxpZmVDeWNsZVN0YXJ0LmdldFRpbWUoKSArIDg2NDAwMDAwKTtcclxuICB5ZWFybHlMaWZlY3ljbGVPY2N1cmFuY2U6IG51bWJlciA9IDEwO1xyXG4gIHllYXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlOiBudW1iZXIgPSAyO1xyXG4gIHllYXJseVNlbGVjdGVkID0gbmV3IERhdGUoKS5nZXRNb250aCgpO1xyXG4gIGxpZmVjeWNsZURldGFpbHM6IGFueSA9ICcwMDAwLTAwLTAwfn4wJztcclxuICBwcmV2aW91c1N0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xyXG4gIGZyZXF1ZW5jeUluZm86IGFueTtcclxuICBzaG9ydE1vbnRoOkFycmF5PHN0cmluZz4gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgZnJlcXVlbmN5RGF0YTogYW55O1xyXG4gIEBJbnB1dCgpIG1vZGU6IGFueT0nJztcclxuXHJcbiAgQElucHV0KCkgc3RhcnREYXRlID0gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMCk7XHJcblxyXG4gIEBPdXRwdXQoKSBmcmVxdWVuY3lEZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZyZXF1ZW5jeVNlcnZpY2U6IEZyZXF1ZW5jeVNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubW9udGhMaXN0ID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXk7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8gPSBPYmplY3QuYXNzaWduKHRoaXMuZnJlcXVlbmN5U2VydmljZS5mcmVxdWVuY3lJbmZvKTtcclxuICAgIHRoaXMuc2hvcnRNb250aCA9IHRoaXMuZnJlcXVlbmN5U2VydmljZS5tb250aEFycmF5Lm1hcChtb250aCA9PiBtb250aC5zdWJzdHJpbmcoMCwgMykpO1xyXG4gICAgaWYodGhpcy5mcmVxdWVuY3lEYXRhPy5wYXR0ZXJuICE9ICcnICYmIHBhcnNlSW50KHRoaXMuZnJlcXVlbmN5RGF0YT8ucGF0dGVybi5zcGxpdCgnficpWzBdKSA9PT0gNCkge1xyXG4gICAgICB0aGlzLnBvcHVsYXRlRnJlcXVlbmN5KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmdldEFubnVhbEZyZXF1ZW5jeSgpO1xyXG4gIH1cclxuXHJcbiAgcG9wdWxhdGVGcmVxdWVuY3koKSB7XHJcbiAgICBjb25zdCBwYXR0ZXJuSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YT8ucGF0dGVybi5zcGxpdCgnficpLm1hcChOdW1iZXIpO1xyXG4gICAgdGhpcy55ZWFybHlTZWxlY3RlZCA9IHBhdHRlcm5JbmZvWzJdIC0gMTtcclxuICAgIC8vIGNvbnN0IGxpZmVjeWNsZUluZm8gPSB0aGlzLmZyZXF1ZW5jeURhdGE/LmxpZmVjeWNsZS5zcGxpdCgnfn4nKTtcclxuICAgIHRoaXMueWVhcmx5SW50ZXJ2YWwgPSB0aGlzLmZyZXF1ZW5jeURhdGE/LmZhaWxlZFRpbWU7XHJcbiAgICB0aGlzLnllYXJseVdpbmRvdyA9IHRoaXMuZnJlcXVlbmN5RGF0YT8ud2luZG93O1xyXG4gICAgdGhpcy55ZWFybHlJbnB1dCA9IHBhdHRlcm5JbmZvWzNdO1xyXG4gICAgdGhpcy55ZWFybHlEYXkgPSBwYXR0ZXJuSW5mb1sxXVxyXG4gICAgLy8gaWYoTnVtYmVyKGxpZmVjeWNsZUluZm9bMV0pID4gMCkge1xyXG4gICAgLy8gICB0aGlzLnllYXJseUxpZmVjeWNsZU9jY3VyYW5jZSA9IE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKTtcclxuICAgIC8vIH1cclxuICAgIHRoaXMueWVhcmx5TGlmZWN5Y2xlT2NjdXJhbmNlID0gTnVtYmVyKHBhdHRlcm5JbmZvWzFdKTtcclxuICAgIHRoaXMueWVhcmx5TGlmZUN5Y2xlU3RhcnQgPSBuZXcgRGF0ZSh0aGlzLmZyZXF1ZW5jeURhdGE/LnN0YXJ0RGF0ZSAqIDEwMDApXHJcbiAgICB0aGlzLnN0YXJ0RGF0ZSA9IHRoaXMuZnJlcXVlbmN5RGF0YT8uc3RhcnRGcm9tID8/IHRoaXMuZnJlcXVlbmN5RGF0YT8uc3RhcnREYXRlXHJcbiAgICB0aGlzLnllYXJseUZhaWxlZCA9IHRoaXMuZnJlcXVlbmN5RGF0YT8uZmFpbGVkO1xyXG4gICAgLy8gaWYoIGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xyXG4gICAgLy8gICBjb25zdCBkYXRlU2VsZWN0ZWQgPSBtb21lbnQobGlmZWN5Y2xlSW5mb1swXSArICcgMTE6NTkgcG0nLCAnREQtTU1NTS1ZWVlZIEhIOm1tIGEnKS51bml4KClcclxuICAgIC8vICAgdGhpcy55ZWFybHlMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoZGF0ZVNlbGVjdGVkICogMTAwMCk7XHJcbiAgICAvLyB9XHJcbiAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSB0aGlzLmZyZXF1ZW5jeURhdGE/LmxpZmVjeWNsZTtcclxuICAgIC8vIGlmKCB0aGlzLmZyZXF1ZW5jeURhdGE/LmxpZmVjeWNsZSA9PSAnMDAwMC0wMC0wMH5+MCcpIHtcclxuICAgIC8vICAgdGhpcy55ZWFybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XHJcbiAgICAvLyB9IGVsc2UgaWYobGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XHJcbiAgICAvLyAgIHRoaXMueWVhcmx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAwO1xyXG4gICAgLy8gfSBlbHNlIHtcclxuICAgIC8vICAgdGhpcy55ZWFybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDE7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICBvblRpbWVDaGFuZ2VkKGV2ZW50OnN0cmluZykge1xyXG4gICAgdGhpcy55ZWFybHlJbnRlcnZhbCA9IGV2ZW50O1xyXG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcclxuICB9XHJcblxyXG4gIGRhdGVDaGFuZ2UoZXZlbnQ6IG51bWJlcikge1xyXG4gICAgdGhpcy55ZWFybHlEYXkgPSBldmVudDtcclxuICAgIHRoaXMuZ2V0QW5udWFsRnJlcXVlbmN5KCk7XHJcbiAgfVxyXG5cclxuICB2YWx1ZUNoYW5nZWRGaXJzdChldmVudDogYW55KSB7XHJcbiAgIHRoaXMueWVhcmx5SW5wdXQgPSBldmVudC52YWx1ZTtcclxuICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdGVkTW9udGgoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy55ZWFybHlTZWxlY3RlZCA9IHBhcnNlSW50KGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgICB0aGlzLmdldEFubnVhbEZyZXF1ZW5jeSgpO1xyXG4gIH1cclxuXHJcbiAgbGlmZWN5Y2xlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuXHJcbiAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcclxuICAgICAgY2FzZSAwOlxyXG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9IGV2ZW50LmVuZHNCeSArICd+fjAnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDE6XHJcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gJzAwMDAtMDAtMDB+ficgKyBldmVudC5lbmRhZnRlcjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAyOlxyXG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4wJztcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIGlmIChldmVudC5zdGFydEZyb20udG9TdHJpbmcoKS5sZW5ndGggPiAxMCkge1xyXG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tIC8gMTAwMCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tKTtcclxuICAgIH1cclxuICAgIGxldCBlbmRCeURhdGUgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCArIDg2NDAwMDAwKTtcclxuICAgIGlmIChldmVudC50eXBlID09PSAwKSB7XHJcbiAgICAgIGVuZEJ5RGF0ZSA9IGV2ZW50LmVuZHNCeSA/IG1vbWVudChldmVudC5lbmRzQnkgKyAnIDAwOjAwOjAwJywgJ0RELU1NTS1ZWVlZIEhIOm1tOnNzJykudW5peCgpIDogZW5kQnlEYXRlO1xyXG4gICAgICBcclxuICAgIH1cclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRfdGltZV91dGMgPSBlbmRCeURhdGU7XHJcbiAgICB0aGlzLmdldEFubnVhbEZyZXF1ZW5jeSgpO1xyXG4gIH1cclxuXHJcbiAgXHJcbiAgb25WYWx1ZUNoYW5nZShldmVudDogYW55KSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdjb21wbGV0ZWQnKSB7XHJcbiAgICAgICAgICB0aGlzLnllYXJseVdpbmRvdyA9IGV2ZW50LnZhbHVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnllYXJseUZhaWxlZCA9IGV2ZW50LnZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmdldEFubnVhbEZyZXF1ZW5jeSgpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vIGZyZXF1ZW5jeSBwYXR0ZXJuIGFuZCBkZXRhaWxzIGluZm9cclxuICBnZXRBbm51YWxGcmVxdWVuY3koKSB7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucGxhY2Vob2xkZXIgPSAgdGhpcy5nZXRGcmVxdWVuY3lQbGFjZWhvbGRlcihOdW1iZXIodGhpcy55ZWFybHlJbnB1dCkpO1xyXG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnBhdHRlcm4gPSA0ICsgJ34nICsgdGhpcy55ZWFybHlEYXkgKyAnficgKyAodGhpcy55ZWFybHlTZWxlY3RlZCArIDEpICsgJ34nICsgdGhpcy55ZWFybHlJbnB1dDtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5jYXNlID0gJ3llYXJseSc7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkQWZ0ZXIgPSB0aGlzLnllYXJseUZhaWxlZDtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby53aW5kb3cgPSB0aGlzLnllYXJseVdpbmRvdztcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4xMmhyID0gdGhpcy55ZWFybHlJbnRlcnZhbDtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4yNEhyID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLnRpbWVGcm9tMTJoVG8yNGgodGhpcy55ZWFybHlJbnRlcnZhbCk7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ubGlmZWN5Y2xlRGV0YWlscyA9IHRoaXMubGlmZWN5Y2xlRGV0YWlscztcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zdGFydEZyb20gPSB0aGlzLnN0YXJ0RGF0ZTtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5yZXBvcnRJZCA9IDA7XHJcbiAgICBjb25zb2xlLmxvZyhcIiB0aGlzLmZyZXF1ZW5jeUluZm8gPT0+XCIsICB0aGlzLmZyZXF1ZW5jeUluZm8pO1xyXG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcclxuICB9XHJcblxyXG4gIGdldEZyZXF1ZW5jeVBsYWNlaG9sZGVyKHllYXJseUlucHV0OiBhbnkpIHsgXHJcbiAgICBsZXQgcGxhY2Vob2xkZXIgPSAnJztcclxuICAgIGlmKHllYXJseUlucHV0ID09PSAxKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gIHRoaXMuZ2V0UGxhY2Vob2xkZXJGb3JTdDIoKTsgXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBwbGFjZWhvbGRlciA9ICB0aGlzLmdldFBsYWNlaG9sZGVyRm9yR3QxKClcclxuICAgIH1cclxuICAgIHJldHVybiBwbGFjZWhvbGRlcjtcclxuICB9XHJcblxyXG4gIC8vIGlmIHllYXJseUlucHV0IGlzIHNtYWxsZXIgdGhhbiAyIHRoZW4gdGhpcyBmdW5jdGlvbiB3aWxsIGNhbGxlZFxyXG4gIGdldFBsYWNlaG9sZGVyRm9yU3QyKCkge1xyXG4gICAgbGV0IHBsYWNlaG9sZGVyID0gJyc7XHJcbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDEpIHtcclxuICAgICAgcGxhY2Vob2xkZXIgPSAnMXN0IG9mIGV2ZXJ5ICcgKyB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gKyAnIGJ5ICcgKyB0aGlzLnllYXJseUludGVydmFsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gJzJuZCBvZiBldmVyeSAnICsgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICsgJyBieSAnICsgdGhpcy55ZWFybHlJbnRlcnZhbDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMykge1xyXG4gICAgICBwbGFjZWhvbGRlciA9ICczcmQgb2YgZXZlcnkgJyArIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArICcgYnkgJyArIHRoaXMueWVhcmx5SW50ZXJ2YWw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPiAzKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gdGhpcy55ZWFybHlEYXkgKyAndGggb2YgZXZlcnkgJyArIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArICcgYnkgJyArIHRoaXMueWVhcmx5SW50ZXJ2YWw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDMxIHx8IHRoaXMueWVhcmx5RGF5ID09PSAyMSkge1xyXG4gICAgICBwbGFjZWhvbGRlciA9IHRoaXMueWVhcmx5RGF5ICsgJ3N0IG9mIGV2ZXJ5ICcgKyB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gKyAnIGJ5ICcgKyB0aGlzLnllYXJseUludGVydmFsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyMikge1xyXG4gICAgICBwbGFjZWhvbGRlciA9IHRoaXMueWVhcmx5RGF5ICsgJ25kIG9mIGV2ZXJ5ICcgKyB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gKyAnIGJ5ICcgKyB0aGlzLnllYXJseUludGVydmFsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyMykge1xyXG4gICAgICBwbGFjZWhvbGRlciA9IHRoaXMueWVhcmx5RGF5ICsgJ3JkIG9mIGV2ZXJ5ICcgKyB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gKyAnIGJ5ICcgKyB0aGlzLnllYXJseUludGVydmFsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xyXG4gIH1cclxuXHJcbiAgLy8gaWYgeWVhcmx5SW5wdXQgaXMgZ3JlYXRlciB0aGFuIDEgdGhlbiB0aGlzIGZ1bmN0aW9uIHdpbGwgY2FsbGVkXHJcbiAgZ2V0UGxhY2Vob2xkZXJGb3JHdDEoKSB7XHJcbiAgICBsZXQgcGxhY2Vob2xkZXIgPSAnJztcclxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMSkge1xyXG4gICAgICBwbGFjZWhvbGRlciA9ICcxc3QgJyArIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArICcsIEludGVydmFsOiBldmVyeSAnICsgdGhpcy55ZWFybHlJbnB1dCArICcgeWVhcnMgYnkgJyArIHRoaXMueWVhcmx5SW50ZXJ2YWw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIpIHtcclxuICAgICAgcGxhY2Vob2xkZXIgPSAnMm5kICcgKyB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gKyAnLCBJbnRlcnZhbDogZXZlcnkgJyArIHRoaXMueWVhcmx5SW5wdXQgKyAnIHllYXJzIGJ5ICcgKyB0aGlzLnllYXJseUludGVydmFsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAzKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gJzNyZCAnICsgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICsgJywgSW50ZXJ2YWw6IGV2ZXJ5ICcgKyB0aGlzLnllYXJseUlucHV0ICsgJyB5ZWFycyBieSAnICsgdGhpcy55ZWFybHlJbnRlcnZhbDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnllYXJseURheSA+IDMpIHtcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICAgICAgcGxhY2Vob2xkZXIgPVxyXG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICsgJ3RoIG9mICAnICsgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICsgJywgSW50ZXJ2YWw6IGV2ZXJ5ICcgKyB0aGlzLnllYXJseUlucHV0ICsgJyB5ZWFycyBieSAnICsgdGhpcy55ZWFybHlJbnRlcnZhbDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMzEgfHwgdGhpcy55ZWFybHlEYXkgPT09IDIxKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gdGhpcy55ZWFybHlEYXkgKyAnc3Qgb2YgZXZlcnkgJyArIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArICcgYnkgJyArIHRoaXMueWVhcmx5SW50ZXJ2YWw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIyKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gdGhpcy55ZWFybHlEYXkgKyAnbmQgb2YgZXZlcnkgJyArIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArICcgYnkgJyArIHRoaXMueWVhcmx5SW50ZXJ2YWw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIzKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gdGhpcy55ZWFybHlEYXkgKyAncmQgb2YgZXZlcnkgJyArIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArICcgYnkgJyArIHRoaXMueWVhcmx5SW50ZXJ2YWw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcGxhY2Vob2xkZXI7XHJcbiAgICBcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @fileoverview This file was generated by the Angular template compiler. Do not edit.
3
+ *
4
+ * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
5
+ * tslint:disable
6
+ */
7
+ import * as i0 from "./frequency-dialog-annual.component.less.shim.ngstyle";
8
+ import * as i1 from "@angular/core";
9
+ import * as i2 from "../frequency-dialog-top/frequency-dialog-top.component.ngfactory";
10
+ import * as i3 from "../frequency-dialog-top/frequency-dialog-top.component";
11
+ import * as i4 from "../frequency-dialog-radio-list/frequency-dialog-radio-list.component.ngfactory";
12
+ import * as i5 from "../frequency-dialog-radio-list/frequency-dialog-radio-list.component";
13
+ import * as i6 from "../frequency-dialog-due-date/frequency-dialog-due-date.component.ngfactory";
14
+ import * as i7 from "../frequency-dialog-due-date/frequency-dialog-due-date.component";
15
+ import * as i8 from "./frequency-dialog-annual.component";
16
+ import * as i9 from "../../frequency/frequency.service";
17
+ var styles_FrequencyDialogAnnualComponent = [i0.styles];
18
+ var RenderType_FrequencyDialogAnnualComponent = i1.ɵcrt({ encapsulation: 0, styles: styles_FrequencyDialogAnnualComponent, data: {} });
19
+ export { RenderType_FrequencyDialogAnnualComponent as RenderType_FrequencyDialogAnnualComponent };
20
+ export function View_FrequencyDialogAnnualComponent_0(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 12, "div", [["class", "frequency-dialog-annual"]], null, null, null, null, null)), (_l()(), i1.ɵeld(1, 0, null, null, 1, "div", [["class", "vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["REASSESSMENT FREQUENCY:"])), (_l()(), i1.ɵeld(3, 0, null, null, 4, "div", [["class", "frequency-dialog-annual-item vx-mb-5"]], null, null, null, null, null)), (_l()(), i1.ɵeld(4, 0, null, null, 1, "app-frequency-dialog-top", [], null, [[null, "timeChanged"], [null, "valueChangedFirst"], [null, "yearlyDateChanged"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("timeChanged" === en)) {
21
+ var pd_0 = (_co.onTimeChanged($event) !== false);
22
+ ad = (pd_0 && ad);
23
+ } if (("valueChangedFirst" === en)) {
24
+ var pd_1 = (_co.valueChangedFirst($event) !== false);
25
+ ad = (pd_1 && ad);
26
+ } if (("yearlyDateChanged" === en)) {
27
+ var pd_2 = (_co.dateChange($event) !== false);
28
+ ad = (pd_2 && ad);
29
+ } return ad; }, i2.View_FrequencyDialogTopComponent_0, i2.RenderType_FrequencyDialogTopComponent)), i1.ɵdid(5, 114688, null, 0, i3.FrequencyDialogTopComponent, [], { occurrenceFirst: [0, "occurrenceFirst"], id: [1, "id"], inputTime: [2, "inputTime"], frequencyType: [3, "frequencyType"], yearlyDay: [4, "yearlyDay"] }, { valueChangedFirst: "valueChangedFirst", timeChanged: "timeChanged", yearlyDateChanged: "yearlyDateChanged" }), (_l()(), i1.ɵeld(6, 0, null, null, 1, "app-frequency-dialog-radio-list", [], null, [[null, "selectedRadio"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("selectedRadio" === en)) {
30
+ var pd_0 = (_co.selectedMonth($event) !== false);
31
+ ad = (pd_0 && ad);
32
+ } return ad; }, i4.View_FrequencyDialogRadioListComponent_0, i4.RenderType_FrequencyDialogRadioListComponent)), i1.ɵdid(7, 114688, null, 0, i5.FrequencyDialogRadioListComponent, [], { radioList: [0, "radioList"], selectedIndex: [1, "selectedIndex"], name: [2, "name"] }, { selectedRadio: "selectedRadio" }), (_l()(), i1.ɵeld(8, 0, null, null, 1, "div", [["class", "vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1"]], null, null, null, null, null)), (_l()(), i1.ɵted(-1, null, ["REASSESSMENT EMAIL NOTIFICATION:"])), (_l()(), i1.ɵeld(10, 0, null, null, 2, "div", [["class", "frequency-dialog-annual-item vx-mb-5"]], null, null, null, null, null)), (_l()(), i1.ɵeld(11, 0, null, null, 1, "app-frequency-dialog-due-date", [], null, [[null, "valueChange"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("valueChange" === en)) {
33
+ var pd_0 = (_co.onValueChange($event) !== false);
34
+ ad = (pd_0 && ad);
35
+ } return ad; }, i6.View_FrequencyDialogDueDateComponent_0, i6.RenderType_FrequencyDialogDueDateComponent)), i1.ɵdid(12, 114688, null, 0, i7.FrequencyDialogDueDateComponent, [], { mode: [0, "mode"], completedValue: [1, "completedValue"], id: [2, "id"], pageName: [3, "pageName"] }, { valueChange: "valueChange" })], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.yearlyInput; var currVal_1 = 5; var currVal_2 = _co.yearlyInterval; var currVal_3 = 2; var currVal_4 = _co.yearlyDay; _ck(_v, 5, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4); var currVal_5 = _co.monthList; var currVal_6 = _co.yearlySelected; var currVal_7 = "annual"; _ck(_v, 7, 0, currVal_5, currVal_6, currVal_7); var currVal_8 = _co.mode; var currVal_9 = _co.yearlyWindow; var currVal_10 = 5; var currVal_11 = "yearly"; _ck(_v, 12, 0, currVal_8, currVal_9, currVal_10, currVal_11); }, null); }
36
+ export function View_FrequencyDialogAnnualComponent_Host_0(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 1, "app-frequency-dialog-annual", [], null, null, null, View_FrequencyDialogAnnualComponent_0, RenderType_FrequencyDialogAnnualComponent)), i1.ɵdid(1, 114688, null, 0, i8.FrequencyDialogAnnualComponent, [i9.FrequencyService], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); }
37
+ var FrequencyDialogAnnualComponentNgFactory = i1.ɵccf("app-frequency-dialog-annual", i8.FrequencyDialogAnnualComponent, View_FrequencyDialogAnnualComponent_Host_0, { frequencyData: "frequencyData", mode: "mode", startDate: "startDate" }, { frequencyDetails: "frequencyDetails" }, []);
38
+ export { FrequencyDialogAnnualComponentNgFactory as FrequencyDialogAnnualComponentNgFactory };
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWRpYWxvZy1hbm51YWwuY29tcG9uZW50Lm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvZnJlcXVlbmN5LWRpYWxvZy9mcmVxdWVuY3ktZGlhbG9nLWFubnVhbC9mcmVxdWVuY3ktZGlhbG9nLWFubnVhbC5jb21wb25lbnQubmdmYWN0b3J5LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3ktZGlhbG9nL2ZyZXF1ZW5jeS1kaWFsb2ctYW5udWFsL2ZyZXF1ZW5jeS1kaWFsb2ctYW5udWFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0ZDYUEsaUhBOEJNLEtBN0JGLGdKQUFrRyxLQUE3QixvREFBdUIsTUFDNUYsNkhBaUJNLEtBaEJGLHFOQVMyQixZQUh2Qjs7d0JBQXFDO01BQ3JDOzt3QkFBK0M7TUFDL0M7O3dCQUF3QztNQVI1Qyx5YUFTMkIsTUFDM0Isb0tBS2tDLFlBRjlCOzt3QkFBdUM7TUFIM0MsNlNBS2tDLE1BRXRDLGdKQUEyRyxLQUF0Qyw2REFBZ0MsTUFDckcsOEhBUU0sS0FQRixpS0FNZ0MsWUFENUI7O3dCQUFxQztNQUx6QyxtVEFNZ0MsbURBdEI1QixtQkFBK0IsY0FGL0IsaUJBQVEsRUFDUixtQkFBNEIsaUJBRzVCLGlCQUFtQixFQURuQixtQkFBdUIsWUFKM0IsWUFTMkIsRUFOdkIsU0FBK0IsRUFGL0IsU0FBUSxFQUNSLFNBQTRCLEVBRzVCLFNBQW1CLEVBRG5CLFNBQXVCLEdBT3ZCLG1CQUF1QixZQUN2QixtQkFBZ0MsaUJBRWhDLHdCQUFpQixFQUpyQixZQUtrQyxFQUo5QixTQUF1QixFQUN2QixTQUFnQyxFQUVoQyxTQUFpQixHQU9qQixtQkFBYSxPQUViLG1CQUErQixlQUQvQixrQkFBUSxFQUZSLHlCQUFxQixFQUR6QixhQU1nQyxFQUo1QixTQUFhLEVBRWIsU0FBK0IsRUFEL0IsVUFBUSxFQUZSLFVBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pMC5Db21wb25lbnRGYWN0b3J5O1xuIiwiPCEtLSA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWRpYWxvZy1hbm51YWxcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+UkVBU1NFU1NNRU5UIEZSRVFVRU5DWTo8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZGlhbG9nLWFubnVhbC1pdGVtIHZ4LW1iLTVcIj5cclxuICAgICAgICA8YXBwLWZyZXF1ZW5jeS1kaWFsb2ctdG9wPjwvYXBwLWZyZXF1ZW5jeS1kaWFsb2ctdG9wPlxyXG4gICAgICAgIDxhcHAtZnJlcXVlbmN5LWRpYWxvZy1yYWRpby1saXN0PjwvYXBwLWZyZXF1ZW5jeS1kaWFsb2ctcmFkaW8tbGlzdD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtdHQtdXBwZXJjYXNlIHZ4LW1iLTFcIj5SRUFTU0VTU01FTlQgRU1BSUwgTk9USUZJQ0FUSU9OOjwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1kaWFsb2ctYW5udWFsLWl0ZW0gdngtbWItNVwiPlxyXG4gICAgICAgIDxhcHAtZnJlcXVlbmN5LWRpYWxvZy1kdWUtZGF0ZT48L2FwcC1mcmVxdWVuY3ktZGlhbG9nLWR1ZS1kYXRlPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiAtLT5cclxuXHJcblxyXG48ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWRpYWxvZy1hbm51YWxcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+UkVBU1NFU1NNRU5UIEZSRVFVRU5DWTo8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZGlhbG9nLWFubnVhbC1pdGVtIHZ4LW1iLTVcIj5cclxuICAgICAgICA8YXBwLWZyZXF1ZW5jeS1kaWFsb2ctdG9wXHJcbiAgICAgICAgICAgIFtpZF09XCI1XCJcclxuICAgICAgICAgICAgW2lucHV0VGltZV09XCJ5ZWFybHlJbnRlcnZhbFwiXHJcbiAgICAgICAgICAgIFtvY2N1cnJlbmNlRmlyc3RdPVwieWVhcmx5SW5wdXRcIlxyXG4gICAgICAgICAgICBbeWVhcmx5RGF5XT1cInllYXJseURheVwiXHJcbiAgICAgICAgICAgIFtmcmVxdWVuY3lUeXBlXT1cIjJcIlxyXG4gICAgICAgICAgICAodGltZUNoYW5nZWQpPVwib25UaW1lQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlZEZpcnN0KT1cInZhbHVlQ2hhbmdlZEZpcnN0KCRldmVudClcIlxyXG4gICAgICAgICAgICAoeWVhcmx5RGF0ZUNoYW5nZWQpPVwiZGF0ZUNoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtZnJlcXVlbmN5LWRpYWxvZy10b3A+XHJcbiAgICAgICAgPGFwcC1mcmVxdWVuY3ktZGlhbG9nLXJhZGlvLWxpc3RcclxuICAgICAgICAgICAgW3JhZGlvTGlzdF09XCJtb250aExpc3RcIiBcclxuICAgICAgICAgICAgW3NlbGVjdGVkSW5kZXhdPVwieWVhcmx5U2VsZWN0ZWRcIiBcclxuICAgICAgICAgICAgKHNlbGVjdGVkUmFkaW8pPVwic2VsZWN0ZWRNb250aCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW25hbWVdPVwiJ2FubnVhbCdcIj5cclxuICAgICAgICA8L2FwcC1mcmVxdWVuY3ktZGlhbG9nLXJhZGlvLWxpc3Q+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+UkVBU1NFU1NNRU5UIEVNQUlMIE5PVElGSUNBVElPTjo8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktZGlhbG9nLWFubnVhbC1pdGVtIHZ4LW1iLTVcIj5cclxuICAgICAgICA8YXBwLWZyZXF1ZW5jeS1kaWFsb2ctZHVlLWRhdGVcclxuICAgICAgICAgICAgW3BhZ2VOYW1lXT1cIid5ZWFybHknXCJcclxuICAgICAgICAgICAgW21vZGVdPVwibW9kZVwiXHJcbiAgICAgICAgICAgIFtpZF09XCI1XCJcclxuICAgICAgICAgICAgW2NvbXBsZXRlZFZhbHVlXT1cInllYXJseVdpbmRvd1wiXHJcbiAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC1mcmVxdWVuY3ktZGlhbG9nLWR1ZS1kYXRlPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1 @@
1
+ {"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"frequencyData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"startDate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]}],"frequencyDetails":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbol":3,"members":[]}]}],"ngOnInit":[{"__symbolic":"method"}],"populateFrequency":[{"__symbolic":"method"}],"onTimeChanged":[{"__symbolic":"method"}],"dateChange":[{"__symbolic":"method"}],"valueChangedFirst":[{"__symbolic":"method"}],"selectedMonth":[{"__symbolic":"method"}],"lifecycleChange":[{"__symbolic":"method"}],"onValueChange":[{"__symbolic":"method"}],"getAnnualFrequency":[{"__symbolic":"method"}],"getFrequencyPlaceholder":[{"__symbolic":"method"}],"getPlaceholderForSt2":[{"__symbolic":"method"}],"getPlaceholderForGt1":[{"__symbolic":"method"}]}},"type":{"summaryKind":1,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":3,"members":[]}}}}],"lifecycleHooks":[0]},"isComponent":true,"selector":"app-frequency-dialog-annual","exportAs":null,"inputs":{"frequencyData":"frequencyData","mode":"mode","startDate":"startDate"},"outputs":{"frequencyDetails":"frequencyDetails"},"hostListeners":{},"hostProperties":{},"hostAttributes":{},"providers":[],"viewProviders":[],"queries":[],"guards":{},"viewQueries":[],"entryComponents":[],"changeDetection":1,"template":{"ngContentSelectors":[],"encapsulation":0,"styles":[],"animations":[]},"componentViewType":{"__symbol":4,"members":[]},"rendererType":{"__symbol":5,"members":[]},"componentFactory":{"__symbol":6,"members":[]}}}],"symbols":[{"__symbol":0,"name":"FrequencyDialogAnnualComponent","filePath":"./frequency-dialog-annual.component"},{"__symbol":1,"name":"Input","filePath":"@angular/core"},{"__symbol":2,"name":"Output","filePath":"@angular/core"},{"__symbol":3,"name":"FrequencyService","filePath":"../../frequency/frequency.service"},{"__symbol":4,"name":"View_FrequencyDialogAnnualComponent_0","filePath":"./frequency-dialog-annual.component.ngfactory"},{"__symbol":5,"name":"RenderType_FrequencyDialogAnnualComponent","filePath":"./frequency-dialog-annual.component.ngfactory"},{"__symbol":6,"name":"FrequencyDialogAnnualComponentNgFactory","filePath":"./frequency-dialog-annual.component.ngfactory"}]}
@@ -0,0 +1,185 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as moment from 'moment';
3
+ import { FrequencyService } from '../../frequency/frequency.service';
4
+ export class FrequencyDialogBiannualComponent {
5
+ constructor(frequencyService) {
6
+ this.frequencyService = frequencyService;
7
+ this.biannualInterval = '11:59 pm';
8
+ this.biannualInput = new Date().getDate();
9
+ this.biannualFailed = 5;
10
+ this.biannualWindow = 30;
11
+ this.biannualDay = new Date().getDate();
12
+ this.biannualLifeCycleStart = new Date();
13
+ this.biannualLifeCycleEndTime = new Date(this.biannualLifeCycleStart.getTime() + 86400000);
14
+ this.biannualLifecycleOccurance = 10;
15
+ this.biannualSeletedLifecycleType = 2;
16
+ this.biannualSelected = [];
17
+ this.biannualLifecycle = false;
18
+ this.monthNameArray = [];
19
+ this.shortMonth = [];
20
+ this.selectedMonthly = [];
21
+ this.mode = '';
22
+ this.startDate = Math.floor(Date.now() / 1000);
23
+ this.lifecycleDetails = '0000-00-00~~0';
24
+ this.frequencyDetails = new EventEmitter();
25
+ }
26
+ ngOnInit() {
27
+ var _a, _b;
28
+ this.frequencyInfo = Object.assign(this.frequencyService.frequencyInfo);
29
+ this.monthNameArray = [...new Set(this.frequencyService.monthArray)];
30
+ this.shortMonth = this.frequencyService.monthArray.map(month => month.substring(0, 3));
31
+ console.log("this.frequencyData ==>", this.frequencyData);
32
+ if (((_a = this.frequencyData) === null || _a === void 0 ? void 0 : _a.pattern) != '' && parseInt((_b = this.frequencyData) === null || _b === void 0 ? void 0 : _b.pattern.split('~')[0]) === 9) {
33
+ this.populateFrequency();
34
+ }
35
+ this.getBiannualFrequency();
36
+ }
37
+ populateFrequency() {
38
+ var _a, _b, _c, _d, _e, _f;
39
+ const patternInfo = (_a = this.frequencyData) === null || _a === void 0 ? void 0 : _a.pattern.split('~');
40
+ this.biannualSelected = patternInfo[2].split(',').map((ele) => Number(ele) - 1);
41
+ // const lifecycleInfo = this.frequencyData?.lifecycle.split('~~');
42
+ this.biannualInterval = (_b = this.frequencyData) === null || _b === void 0 ? void 0 : _b.failedTime;
43
+ this.biannualWindow = (_c = this.frequencyData) === null || _c === void 0 ? void 0 : _c.window;
44
+ this.biannualInput = patternInfo[1];
45
+ // if(Number(lifecycleInfo[1]) > 0) {
46
+ // this.biannualLifecycleOccurance = Number(lifecycleInfo[1]);
47
+ // }
48
+ this.biannualLifecycleOccurance = Number(patternInfo[1]);
49
+ this.biannualLifeCycleStart = new Date(((_d = this.frequencyData) === null || _d === void 0 ? void 0 : _d.startDate) * 1000);
50
+ this.biannualFailed = (_e = this.frequencyData) === null || _e === void 0 ? void 0 : _e.failed;
51
+ // if( lifecycleInfo[0] !== '0000-00-00') {
52
+ // const dateSelected = moment(lifecycleInfo[0] + ' 11:59 pm', 'DD-MMMM-YYYY HH:mm a').unix()
53
+ // this.biannualLifeCycleEndTime = new Date(dateSelected * 1000);
54
+ // }
55
+ this.lifecycleDetails = (_f = this.frequencyData) === null || _f === void 0 ? void 0 : _f.lifecycle;
56
+ // if( this.frequencyData?.lifecycle == '0000-00-00~~0') {
57
+ // this.biannualSeletedLifecycleType = 2;
58
+ // } else if(lifecycleInfo[0] !== '0000-00-00') {
59
+ // this.biannualSeletedLifecycleType = 0;
60
+ // } else {
61
+ // this.biannualSeletedLifecycleType = 1;
62
+ // }
63
+ }
64
+ onMonthSelected(event) {
65
+ console.log("event", event);
66
+ if (event.checked) {
67
+ this.biannualSelected.push(event.index);
68
+ }
69
+ else {
70
+ this.biannualSelected = this.biannualSelected.filter((ele) => ele !== event.index);
71
+ }
72
+ this.getBiannualFrequency();
73
+ }
74
+ valueChangedFirst(event) {
75
+ console.log('event ==>', event);
76
+ this.biannualInput = event.value;
77
+ this.getBiannualFrequency();
78
+ }
79
+ onTimeChanged(event) {
80
+ console.log("time event =>", event);
81
+ this.biannualInterval = event;
82
+ this.getBiannualFrequency();
83
+ }
84
+ onValueChange(event) {
85
+ if (event.type === 'completed') {
86
+ this.biannualWindow = event.value;
87
+ }
88
+ else {
89
+ this.biannualFailed = event.value;
90
+ }
91
+ this.getBiannualFrequency();
92
+ }
93
+ lifecycleChange(event) {
94
+ console.log('event==>', event);
95
+ switch (event.type) {
96
+ case 0:
97
+ this.lifecycleDetails = event.endsBy + '~~0';
98
+ break;
99
+ case 1:
100
+ this.lifecycleDetails = '0000-00-00~~' + event.endafter;
101
+ break;
102
+ case 2:
103
+ this.lifecycleDetails = '0000-00-00~~0';
104
+ break;
105
+ }
106
+ if (event.startFrom.toString().length > 10) {
107
+ console.log("start 1111");
108
+ this.startDate = Math.floor(event.startFrom / 1000);
109
+ }
110
+ else {
111
+ console.log("start 11112222");
112
+ this.startDate = Math.floor(event.startFrom);
113
+ }
114
+ let endByDate = Math.floor(new Date().getTime() / 1000 + 86400000);
115
+ console.log('strat date ====>', this.startDate);
116
+ console.log('end date', endByDate);
117
+ if (event.type === 0) {
118
+ endByDate = event.endsBy ? moment(event.endsBy + ' 00:00:00', 'DD-MMM-YYYY HH:mm:ss').unix() : endByDate;
119
+ console.log('endByDate', endByDate);
120
+ }
121
+ this.frequencyInfo.failed_time_utc = endByDate;
122
+ this.getBiannualFrequency();
123
+ }
124
+ getBiannualFrequency() {
125
+ this.biannualSelected = this.biannualSelected.sort((n1, n2) => n1 - n2);
126
+ const monthIndex = this.biannualSelected.map((ele) => ele + 1);
127
+ this.frequencyInfo.pattern = 9 + '~' + this.biannualInput + '~' + monthIndex.join(',') + '~0';
128
+ this.frequencyInfo.case = 'biannual';
129
+ this.frequencyInfo.failedAfter = this.biannualFailed;
130
+ this.frequencyInfo.window = this.biannualWindow;
131
+ this.frequencyInfo.timeIn12hr = this.biannualInterval;
132
+ this.frequencyInfo.timeIn24Hr = this.frequencyService.timeFrom12hTo24h(this.biannualInterval);
133
+ this.frequencyInfo.lifecycleDetails = this.lifecycleDetails;
134
+ this.frequencyInfo.startFrom = this.startDate;
135
+ this.frequencyInfo.reportId = 0;
136
+ this.frequencyInfo.placeholder = this.getFrequencyPlaceholder(Number(this.biannualInput));
137
+ this.frequencyDetails.emit(this.frequencyInfo);
138
+ console.log(" this.frequencyInfo ==>", this.frequencyInfo);
139
+ }
140
+ getFrequencyPlaceholder(biannualInput) {
141
+ let placeholder = '';
142
+ const selectedMonth = this.biannualSelected.map((ele) => {
143
+ return this.shortMonth[ele];
144
+ });
145
+ if (biannualInput === 1) {
146
+ placeholder = '1st of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
147
+ }
148
+ else if (biannualInput === 2) {
149
+ placeholder = '2nd of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
150
+ }
151
+ else if (biannualInput === 3) {
152
+ placeholder = '3rd of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
153
+ }
154
+ else if (biannualInput === 21 || biannualInput === 31) {
155
+ placeholder = biannualInput + 'st of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
156
+ }
157
+ else if (biannualInput === 22) {
158
+ placeholder = biannualInput + 'nd of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
159
+ }
160
+ else if (biannualInput === 23) {
161
+ placeholder = biannualInput + 'rd of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
162
+ }
163
+ else if (biannualInput > 3) {
164
+ placeholder = biannualInput + 'th of every ' + selectedMonth.join(', ') + ' by ' + this.biannualInterval;
165
+ }
166
+ return placeholder;
167
+ }
168
+ }
169
+ FrequencyDialogBiannualComponent.decorators = [
170
+ { type: Component, args: [{
171
+ selector: 'app-frequency-dialog-biannual',
172
+ template: "<!-- <div class=\"frequency-dialog-biannual\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT FREQUENCY:</div>\r\n <div class=\"frequency-dialog-biannual-item vx-mb-5\">\r\n <app-frequency-dialog-top></app-frequency-dialog-top>\r\n <app-frequency-dialog-checkbox-list></app-frequency-dialog-checkbox-list>\r\n </div>\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT EMAIL NOTIFICATION:</div>\r\n <div class=\"frequency-dialog-biannual-item vx-mb-5\">\r\n <app-frequency-dialog-due-date></app-frequency-dialog-due-date>\r\n </div>\r\n</div> -->\r\n<div class=\"frequency-dialog-biannual\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT FREQUENCY:</div>\r\n <div class=\"frequency-dialog-biannual-item vx-mb-5\">\r\n <app-frequency-dialog-top\r\n [id]=\"4\"\r\n [inputTime]=\"biannualInterval\"\r\n [occurrenceFirst]=\"biannualInput\"\r\n [frequencyType]=\"4\"\r\n (timeChanged)=\"onTimeChanged($event)\"\r\n (valueChangedFirst)=\"valueChangedFirst($event)\"\r\n ></app-frequency-dialog-top>\r\n <app-frequency-dialog-checkbox-list \r\n [id]=\"4\"\r\n [listArray]=\"monthNameArray\"\r\n [selectedIndex]=\"biannualSelected\"\r\n (selectedCheckbox)=\"onMonthSelected($event)\">\r\n </app-frequency-dialog-checkbox-list>\r\n </div>\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">REASSESSMENT EMAIL NOTIFICATION:</div>\r\n <div class=\"frequency-dialog-biannual-item vx-mb-5\">\r\n <app-frequency-dialog-due-date\r\n [pageName]=\"'biannual'\"\r\n [mode]=\"mode\"\r\n [id]=\"4\"\r\n [completedValue]=\"biannualWindow\"\r\n (valueChange)=\"onValueChange($event)\"\r\n ></app-frequency-dialog-due-date>\r\n </div>\r\n</div>",
173
+ styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");@import url(\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/display/display.css\");@import url(\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\");@import url(\"https://cdn.v-comply.com/design-system/css/color/color.css\");@import url(\"https://cdn.v-comply.com/design-system/css/text/text.css\");@import url(\"https://cdn.v-comply.com/design-system/css/width/width.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\");::ng-deep .frequency-dialog-biannual-item{border-radius:.25rem;border:1px solid #f1f1f1}"]
174
+ },] }
175
+ ];
176
+ FrequencyDialogBiannualComponent.ctorParameters = () => [
177
+ { type: FrequencyService }
178
+ ];
179
+ FrequencyDialogBiannualComponent.propDecorators = {
180
+ mode: [{ type: Input }],
181
+ startDate: [{ type: Input }],
182
+ frequencyData: [{ type: Input }],
183
+ frequencyDetails: [{ type: Output }]
184
+ };
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWRpYWxvZy1iaWFubnVhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS1kaWFsb2cvZnJlcXVlbmN5LWRpYWxvZy1iaWFubnVhbC9mcmVxdWVuY3ktZGlhbG9nLWJpYW5udWFsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBT3JFLE1BQU0sT0FBTyxnQ0FBZ0M7SUEyQjNDLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBekJ0RCxxQkFBZ0IsR0FBRyxVQUFVLENBQUM7UUFDOUIsa0JBQWEsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3JDLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQywyQkFBc0IsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3BDLDZCQUF3QixHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUN0RiwrQkFBMEIsR0FBRyxFQUFFLENBQUM7UUFDaEMsaUNBQTRCLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLHFCQUFnQixHQUFrQixFQUFFLENBQUM7UUFDckMsc0JB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cG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCB7IEZyZXF1ZW5jeVNlcnZpY2UgfSBmcm9tICcuLi8uLi9mcmVxdWVuY3kvZnJlcXVlbmN5LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZnJlcXVlbmN5LWRpYWxvZy1iaWFubnVhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZyZXF1ZW5jeS1kaWFsb2ctYmlhbm51YWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZyZXF1ZW5jeS1kaWFsb2ctYmlhbm51YWwuY29tcG9uZW50Lmxlc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5RGlhbG9nQmlhbm51YWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBiaWFubnVhbEludGVydmFsID0gJzExOjU5IHBtJztcclxuICBiaWFubnVhbElucHV0ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XHJcbiAgYmlhbm51YWxGYWlsZWQgPSA1O1xyXG4gIGJpYW5udWFsV2luZG93ID0gMzA7XHJcbiAgYmlhbm51YWxEYXkgPSBuZXcgRGF0ZSgpLmdldERhdGUoKTtcclxuICBiaWFubnVhbExpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUoKTtcclxuICBiaWFubnVhbExpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZSh0aGlzLmJpYW5udWFsTGlmZUN5Y2xlU3RhcnQuZ2V0VGltZSgpICsgODY0MDAwMDApO1xyXG4gIGJpYW5udWFsTGlmZWN5Y2xlT2NjdXJhbmNlID0gMTA7XHJcbiAgYmlhbm51YWxTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XHJcbiAgYmlhbm51YWxTZWxlY3RlZDogQXJyYXk8bnVtYmVyPiA9IFtdO1xyXG4gIGJpYW5udWFsTGlmZWN5Y2xlID0gZmFsc2U7XHJcbiAgZnJlcXVlbmN5SW5mbzogYW55O1xyXG4gIG1vbnRoTmFtZUFycmF5OiBBcnJheTxzdHJpbmc+ID0gW107XHJcbiAgc2hvcnRNb250aDogQXJyYXk8c3RyaW5nPiA9IFtdO1xyXG4gIHNlbGVjdGVkTW9udGhseTogQXJyYXk8bnVtYmVyPiA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBtb2RlOiBhbnk9Jyc7XHJcblxyXG4gIEBJbnB1dCgpIHN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xyXG4gIEBJbnB1dCgpIGZyZXF1ZW5jeURhdGE6IGFueTtcclxuICBsaWZlY3ljbGVEZXRhaWxzOiBhbnkgPSAnMDAwMC0wMC0wMH5+MCc7XHJcblxyXG4gIEBPdXRwdXQoKSBmcmVxdWVuY3lEZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZnJlcXVlbmN5U2VydmljZTogRnJlcXVlbmN5U2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvID0gT2JqZWN0LmFzc2lnbih0aGlzLmZyZXF1ZW5jeVNlcnZpY2UuZnJlcXVlbmN5SW5mbyk7XHJcbiAgICB0aGlzLm1vbnRoTmFtZUFycmF5ID0gWy4uLm5ldyBTZXQodGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXkpXTtcclxuICAgIHRoaXMuc2hvcnRNb250aCA9IHRoaXMuZnJlcXVlbmN5U2VydmljZS5tb250aEFycmF5Lm1hcChtb250aCA9PiBtb250aC5zdWJzdHJpbmcoMCwgMykpO1xyXG4gICAgY29uc29sZS5sb2coXCJ0aGlzLmZyZXF1ZW5jeURhdGEgPT0+XCIsIHRoaXMuZnJlcXVlbmN5RGF0YSlcclxuICAgIGlmKHRoaXMuZnJlcXVlbmN5RGF0YT8ucGF0dGVybiAhPSAnJyAmJiBwYXJzZUludCh0aGlzLmZyZXF1ZW5jeURhdGE/LnBhdHRlcm4uc3BsaXQoJ34nKVswXSkgPT09IDkpIHtcclxuICAgICAgdGhpcy5wb3B1bGF0ZUZyZXF1ZW5jeSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5nZXRCaWFubnVhbEZyZXF1ZW5jeSgpXHJcbiAgfVxyXG5cclxuICBwb3B1bGF0ZUZyZXF1ZW5jeSgpIHtcclxuICAgIGNvbnN0IHBhdHRlcm5JbmZvID0gdGhpcy5mcmVxdWVuY3lEYXRhPy5wYXR0ZXJuLnNwbGl0KCd+JylcclxuICAgIHRoaXMuYmlhbm51YWxTZWxlY3RlZCA9IHBhdHRlcm5JbmZvWzJdLnNwbGl0KCcsJykubWFwKChlbGU6IGFueSkgPT4gTnVtYmVyKGVsZSkgLSAxKVxyXG4gICAgLy8gY29uc3QgbGlmZWN5Y2xlSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YT8ubGlmZWN5Y2xlLnNwbGl0KCd+ficpO1xyXG4gICAgdGhpcy5iaWFubnVhbEludGVydmFsID0gdGhpcy5mcmVxdWVuY3lEYXRhPy5mYWlsZWRUaW1lO1xyXG4gICAgdGhpcy5iaWFubnVhbFdpbmRvdyA9IHRoaXMuZnJlcXVlbmN5RGF0YT8ud2luZG93O1xyXG4gICAgdGhpcy5iaWFubnVhbElucHV0ID0gcGF0dGVybkluZm9bMV07XHJcbiAgICAvLyBpZihOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSkgPiAwKSB7XHJcbiAgICAvLyAgIHRoaXMuYmlhbm51YWxMaWZlY3ljbGVPY2N1cmFuY2UgPSBOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSk7XHJcbiAgICAvLyB9XHJcbiAgXHJcbiAgICB0aGlzLmJpYW5udWFsTGlmZWN5Y2xlT2NjdXJhbmNlID0gTnVtYmVyKHBhdHRlcm5JbmZvWzFdKTtcclxuICAgIHRoaXMuYmlhbm51YWxMaWZlQ3ljbGVTdGFydCA9IG5ldyBEYXRlKHRoaXMuZnJlcXVlbmN5RGF0YT8uc3RhcnREYXRlICogMTAwMCkgXHJcbiAgICB0aGlzLmJpYW5udWFsRmFpbGVkID0gdGhpcy5mcmVxdWVuY3lEYXRhPy5mYWlsZWQ7XHJcbiAgICAvLyBpZiggbGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XHJcbiAgICAvLyAgIGNvbnN0IGRhdGVTZWxlY3RlZCA9IG1vbWVudChsaWZlY3ljbGVJbmZvWzBdICsgJyAxMTo1OSBwbScsICdERC1NTU1NLVlZWVkgSEg6bW0gYScpLnVuaXgoKVxyXG4gICAgLy8gICB0aGlzLmJpYW5udWFsTGlmZUN5Y2xlRW5kVGltZSA9IG5ldyBEYXRlKGRhdGVTZWxlY3RlZCAqIDEwMDApO1xyXG4gICAgLy8gfVxyXG4gICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5mcmVxdWVuY3lEYXRhPy5saWZlY3ljbGU7XHJcbiAgICAvLyBpZiggIHRoaXMuZnJlcXVlbmN5RGF0YT8ubGlmZWN5Y2xlID09ICcwMDAwLTAwLTAwfn4wJykge1xyXG4gICAgLy8gICB0aGlzLmJpYW5udWFsU2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xyXG4gICAgLy8gfSBlbHNlIGlmKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xyXG4gICAgLy8gICB0aGlzLmJpYW5udWFsU2VsZXRlZExpZmVjeWNsZVR5cGUgPSAwO1xyXG4gICAgLy8gfSBlbHNlIHtcclxuICAgIC8vICAgdGhpcy5iaWFubnVhbFNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMTtcclxuICAgIC8vIH1cclxuICB9XHJcblxyXG4gIG9uTW9udGhTZWxlY3RlZChldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImV2ZW50XCIsIGV2ZW50KVxyXG4gICAgaWYgKGV2ZW50LmNoZWNrZWQpIHtcclxuICAgICB0aGlzLmJpYW5udWFsU2VsZWN0ZWQucHVzaChldmVudC5pbmRleCk7XHJcbiAgIH0gZWxzZSB7XHJcbiAgICAgdGhpcy5iaWFubnVhbFNlbGVjdGVkID0gdGhpcy5iaWFubnVhbFNlbGVjdGVkLmZpbHRlcigoZWxlKSA9PiBlbGUgIT09IGV2ZW50LmluZGV4KTtcclxuICAgfVxyXG4gICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XHJcbiAgfVxyXG5cclxuICB2YWx1ZUNoYW5nZWRGaXJzdChldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZygnZXZlbnQgPT0+JywgZXZlbnQpO1xyXG4gICAgdGhpcy5iaWFubnVhbElucHV0ID0gZXZlbnQudmFsdWU7XHJcbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XHJcbiAgIH1cclxuXHJcbiAgIG9uVGltZUNoYW5nZWQoZXZlbnQ6c3RyaW5nKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcInRpbWUgZXZlbnQgPT5cIiwgZXZlbnQpXHJcbiAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWwgPSBldmVudDtcclxuICAgIHRoaXMuZ2V0Qmlhbm51YWxGcmVxdWVuY3koKTtcclxuICB9XHJcblxyXG4gIG9uVmFsdWVDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKGV2ZW50LnR5cGUgPT09ICdjb21wbGV0ZWQnKSB7XHJcbiAgICAgIHRoaXMuYmlhbm51YWxXaW5kb3cgPSBldmVudC52YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYmlhbm51YWxGYWlsZWQgPSBldmVudC52YWx1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuZ2V0Qmlhbm51YWxGcmVxdWVuY3koKTtcclxufVxyXG5cclxuICBsaWZlY3ljbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coJ2V2ZW50PT0+JywgZXZlbnQpO1xyXG5cclxuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xyXG4gICAgICBjYXNlIDA6XHJcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gZXZlbnQuZW5kc0J5ICsgJ35+MCc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgMTpcclxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+JyArIGV2ZW50LmVuZGFmdGVyO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDI6XHJcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gJzAwMDAtMDAtMDB+fjAnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LnN0YXJ0RnJvbS50b1N0cmluZygpLmxlbmd0aCA+IDEwKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwic3RhcnQgMTExMVwiKVxyXG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tIC8gMTAwMCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmxvZyhcInN0YXJ0IDExMTEyMjIyXCIpXHJcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20pO1xyXG4gICAgfVxyXG4gICAgbGV0IGVuZEJ5RGF0ZSA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwICsgODY0MDAwMDApO1xyXG4gICAgY29uc29sZS5sb2coJ3N0cmF0IGRhdGUgPT09PT4nLCB0aGlzLnN0YXJ0RGF0ZSk7XHJcbiAgICBjb25zb2xlLmxvZygnZW5kIGRhdGUnLCBlbmRCeURhdGUpO1xyXG4gICAgaWYgKGV2ZW50LnR5cGUgPT09IDApIHtcclxuICAgICAgZW5kQnlEYXRlID0gZXZlbnQuZW5kc0J5ID8gbW9tZW50KGV2ZW50LmVuZHNCeSArICcgMDA6MDA6MDAnLCAnREQtTU1NLVlZWVkgSEg6bW06c3MnKS51bml4KCkgOiBlbmRCeURhdGU7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdlbmRCeURhdGUnLCBlbmRCeURhdGUpO1xyXG4gICAgICBcclxuICAgIH1cclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRfdGltZV91dGMgPSBlbmRCeURhdGU7XHJcbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XHJcbiAgfVxyXG5cclxuICBnZXRCaWFubnVhbEZyZXF1ZW5jeSgpIHtcclxuICAgIHRoaXMuYmlhbm51YWxTZWxlY3RlZCA9IHRoaXMuYmlhbm51YWxTZWxlY3RlZC5zb3J0KChuMSwgbjIpID0+IG4xIC0gbjIpO1xyXG4gICAgY29uc3QgbW9udGhJbmRleCA9IHRoaXMuYmlhbm51YWxTZWxlY3RlZC5tYXAoKGVsZSkgPT4gZWxlICsgMSk7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucGF0dGVybiA9IDkgKyAnficgKyB0aGlzLmJpYW5udWFsSW5wdXQgKyAnficgKyBtb250aEluZGV4LmpvaW4oJywnKSArICd+MCc7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uY2FzZSA9ICdiaWFubnVhbCc7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkQWZ0ZXIgPSB0aGlzLmJpYW5udWFsRmFpbGVkO1xyXG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLndpbmRvdyA9IHRoaXMuYmlhbm51YWxXaW5kb3c7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8udGltZUluMTJociA9IHRoaXMuYmlhbm51YWxJbnRlcnZhbDtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4yNEhyID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLnRpbWVGcm9tMTJoVG8yNGgodGhpcy5iaWFubnVhbEludGVydmFsKTtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5saWZlY3ljbGVEZXRhaWxzO1xyXG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnN0YXJ0RnJvbSA9IHRoaXMuc3RhcnREYXRlO1xyXG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnJlcG9ydElkID0gMDtcclxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0RnJlcXVlbmN5UGxhY2Vob2xkZXIoTnVtYmVyKHRoaXMuYmlhbm51YWxJbnB1dCkpO1xyXG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcclxuICAgIGNvbnNvbGUubG9nKFwiIHRoaXMuZnJlcXVlbmN5SW5mbyA9PT5cIiwgIHRoaXMuZnJlcXVlbmN5SW5mbyk7XHJcbiAgfVxyXG5cclxuICBnZXRGcmVxdWVuY3lQbGFjZWhvbGRlcihiaWFubnVhbElucHV0OiBudW1iZXIpIHtcclxuICAgIGxldCBwbGFjZWhvbGRlciA9ICcnO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRNb250aCA9IHRoaXMuYmlhbm51YWxTZWxlY3RlZC5tYXAoKGVsZSkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5zaG9ydE1vbnRoW2VsZV07XHJcbiAgICB9KTtcclxuICAgIFxyXG4gICAgaWYgKGJpYW5udWFsSW5wdXQgPT09IDEpIHtcclxuICAgICAgcGxhY2Vob2xkZXIgPSAnMXN0IG9mIGV2ZXJ5ICcgKyBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgKyAnIGJ5ICcgKyB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XHJcbiAgICB9IGVsc2UgaWYgKGJpYW5udWFsSW5wdXQgPT09IDIpIHtcclxuICAgICAgcGxhY2Vob2xkZXIgPSAnMm5kIG9mIGV2ZXJ5ICcgKyBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgKyAnIGJ5ICcgKyB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XHJcbiAgICB9IGVsc2UgaWYgKGJpYW5udWFsSW5wdXQgPT09IDMpIHtcclxuICAgICAgcGxhY2Vob2xkZXIgPSAnM3JkIG9mIGV2ZXJ5ICcgKyBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgKyAnIGJ5ICcgKyB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XHJcbiAgICB9IGVsc2UgaWYgKGJpYW5udWFsSW5wdXQgPT09IDIxIHx8IGJpYW5udWFsSW5wdXQgPT09IDMxKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gYmlhbm51YWxJbnB1dCArICdzdCBvZiBldmVyeSAnICsgc2VsZWN0ZWRNb250aC5qb2luKCcsICcpICsgJyBieSAnICsgdGhpcy5iaWFubnVhbEludGVydmFsO1xyXG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMikge1xyXG4gICAgICBwbGFjZWhvbGRlciA9IGJpYW5udWFsSW5wdXQgKyAnbmQgb2YgZXZlcnkgJyArIHNlbGVjdGVkTW9udGguam9pbignLCAnKSArICcgYnkgJyArIHRoaXMuYmlhbm51YWxJbnRlcnZhbDtcclxuICAgIH0gZWxzZSBpZiAoYmlhbm51YWxJbnB1dCA9PT0gMjMpIHtcclxuICAgICAgcGxhY2Vob2xkZXIgPSBiaWFubnVhbElucHV0ICsgJ3JkIG9mIGV2ZXJ5ICcgKyBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgKyAnIGJ5ICcgKyB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XHJcbiAgICB9IGVsc2UgaWYgKGJpYW5udWFsSW5wdXQgPiAzKSB7XHJcbiAgICAgIHBsYWNlaG9sZGVyID0gYmlhbm51YWxJbnB1dCArICd0aCBvZiBldmVyeSAnICsgc2VsZWN0ZWRNb250aC5qb2luKCcsICcpICsgJyBieSAnICsgdGhpcy5iaWFubnVhbEludGVydmFsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xyXG4gIH1cclxuXHJcbn1cclxuIl19