vc-create-dashboard 3.0.88 → 3.1.0

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 (179) hide show
  1. package/README.md +24 -24
  2. package/fesm2022/vc-create-dashboard.mjs +6475 -6555
  3. package/fesm2022/vc-create-dashboard.mjs.map +1 -1
  4. package/package.json +5 -6
  5. package/types/vc-create-dashboard.d.ts +1680 -0
  6. package/esm2022/lib/configurations.mjs +0 -7
  7. package/esm2022/lib/create-dashboard-container/categories/categories-config.mjs +0 -2
  8. package/esm2022/lib/create-dashboard-container/categories/categories.component.mjs +0 -212
  9. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.mjs +0 -350
  10. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.mjs +0 -2
  11. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets.module.mjs +0 -47
  12. package/esm2022/lib/create-dashboard-container/constants/assets.constant.mjs +0 -37
  13. package/esm2022/lib/create-dashboard-container/create-dashboard-config.mjs +0 -2
  14. package/esm2022/lib/create-dashboard-container/create-dashboard.component.mjs +0 -1601
  15. package/esm2022/lib/create-dashboard-container/create-dashboard.module.mjs +0 -127
  16. package/esm2022/lib/create-dashboard-container/directives/directives.module.mjs +0 -24
  17. package/esm2022/lib/create-dashboard-container/directives/scroll-in-view.directive.mjs +0 -36
  18. package/esm2022/lib/create-dashboard-container/form-group/form-group.component.mjs +0 -153
  19. package/esm2022/lib/create-dashboard-container/frequency/frequency.component.mjs +0 -309
  20. package/esm2022/lib/create-dashboard-container/interfaces/widget-data-model.mjs +0 -2
  21. package/esm2022/lib/create-dashboard-container/pipes/filter.pipe.mjs +0 -30
  22. package/esm2022/lib/create-dashboard-container/pipes/search-program.pipe.mjs +0 -37
  23. package/esm2022/lib/create-dashboard-container/pipes/search.pipe.mjs +0 -25
  24. package/esm2022/lib/create-dashboard-container/pipes/text-count.pipe.mjs +0 -18
  25. package/esm2022/lib/create-dashboard-container/program-list/constant.mjs +0 -31
  26. package/esm2022/lib/create-dashboard-container/program-list/information-block/information-block.component.mjs +0 -13
  27. package/esm2022/lib/create-dashboard-container/program-list/interfaces/list-item.interface.mjs +0 -2
  28. package/esm2022/lib/create-dashboard-container/program-list/list-container/list-container.component.mjs +0 -50
  29. package/esm2022/lib/create-dashboard-container/program-list/pipes/check-selected-items.pipes.mjs +0 -23
  30. package/esm2022/lib/create-dashboard-container/program-list/program-list/program-list.component.mjs +0 -294
  31. package/esm2022/lib/create-dashboard-container/program-list/program-list.module.mjs +0 -60
  32. package/esm2022/lib/create-dashboard-container/program-list/services/list-utils.service.mjs +0 -27
  33. package/esm2022/lib/create-dashboard-container/program-list/services/program-list-api.service.mjs +0 -28
  34. package/esm2022/lib/create-dashboard-container/responsibility-center/responsibility-center.component.mjs +0 -239
  35. package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories-config.mjs +0 -2
  36. package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories.component.mjs +0 -206
  37. package/esm2022/lib/create-dashboard-container/services/configure-widgets.service.mjs +0 -233
  38. package/esm2022/lib/create-dashboard-container/services/create-dashboard.service.mjs +0 -227
  39. package/esm2022/lib/create-dashboard-container/services/pagination.service.mjs +0 -28
  40. package/esm2022/lib/create-dashboard-container/user-list/user-list.component.mjs +0 -440
  41. package/esm2022/lib/create-dashboard-container/user-list/user-list.config.mjs +0 -2
  42. package/esm2022/lib/create-dashboard-container/utils/dashboard-edit.utils.mjs +0 -181
  43. package/esm2022/lib/create-dashboard-container/utils/dashboard-timeframe.util.mjs +0 -88
  44. package/esm2022/lib/create-dashboard.service.mjs +0 -14
  45. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.mjs +0 -52
  46. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer-config.mjs +0 -2
  47. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer.module.mjs +0 -32
  48. package/esm2022/lib/ui-kit/dialog/dialog-config.mjs +0 -7
  49. package/esm2022/lib/ui-kit/dialog/dialog-injector.mjs +0 -17
  50. package/esm2022/lib/ui-kit/dialog/dialog-ref.mjs +0 -11
  51. package/esm2022/lib/ui-kit/dialog/dialog.component.mjs +0 -96
  52. package/esm2022/lib/ui-kit/dialog/dialog.module.mjs +0 -20
  53. package/esm2022/lib/ui-kit/dialog/dialog.service.mjs +0 -56
  54. package/esm2022/lib/ui-kit/dialog/insertion.directive.mjs +0 -17
  55. package/esm2022/lib/ui-kit/floating-bar/floating-bar.component.mjs +0 -57
  56. package/esm2022/lib/ui-kit/floating-bar/floating-bar.module.mjs +0 -32
  57. package/esm2022/lib/ui-kit/formgroup/click-outside.directive.mjs +0 -30
  58. package/esm2022/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +0 -29
  59. package/esm2022/lib/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +0 -34
  60. package/esm2022/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +0 -14
  61. package/esm2022/lib/ui-kit/formgroup/cs-select/cs-select.component.mjs +0 -119
  62. package/esm2022/lib/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +0 -39
  63. package/esm2022/lib/ui-kit/formgroup/formgroup.module.mjs +0 -55
  64. package/esm2022/lib/ui-kit/formgroup/pipes/pascal.pipe.mjs +0 -19
  65. package/esm2022/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +0 -24
  66. package/esm2022/lib/ui-kit/loaders/loaders.module.mjs +0 -24
  67. package/esm2022/lib/ui-kit/loaders/table-loader/table-loader.component.mjs +0 -18
  68. package/esm2022/lib/ui-kit/no-data/no-data.component.mjs +0 -47
  69. package/esm2022/lib/ui-kit/no-data/no-data.module.mjs +0 -18
  70. package/esm2022/lib/ui-kit/pagination/pagination.component.mjs +0 -130
  71. package/esm2022/lib/ui-kit/pagination/pagination.module.mjs +0 -18
  72. package/esm2022/lib/ui-kit/popover/popover.component.mjs +0 -129
  73. package/esm2022/lib/ui-kit/popover/popover.directive.mjs +0 -93
  74. package/esm2022/lib/ui-kit/popover/popover.module.mjs +0 -21
  75. package/esm2022/lib/ui-kit/popover/popover.service.mjs +0 -23
  76. package/esm2022/lib/ui-kit/select/cs-option/cs-option.component.mjs +0 -41
  77. package/esm2022/lib/ui-kit/select/cs-select/cs-select.component.mjs +0 -107
  78. package/esm2022/lib/ui-kit/select/safe-html.pipe.mjs +0 -21
  79. package/esm2022/lib/ui-kit/select/select.module.mjs +0 -21
  80. package/esm2022/lib/ui-kit/services/cs-select.service.mjs +0 -16
  81. package/esm2022/lib/ui-kit/smiley-dialog/smiley-dialog.component.mjs +0 -52
  82. package/esm2022/lib/ui-kit/smiley-dialog/smiley-dialog.module.mjs +0 -18
  83. package/esm2022/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.mjs +0 -46
  84. package/esm2022/lib/ui-kit/snack-bar/snack-bar.module.mjs +0 -18
  85. package/esm2022/lib/ui-kit/snack-bar/snack-bar.service.mjs +0 -23
  86. package/esm2022/lib/ui-kit/tooltip/tooltip.directive.mjs +0 -168
  87. package/esm2022/lib/ui-kit/tooltip/tooltip.module.mjs +0 -18
  88. package/esm2022/lib/ui-kit/v-loader/loader/loader.component.mjs +0 -24
  89. package/esm2022/lib/ui-kit/v-loader/loader-inline/loader-inline.component.mjs +0 -24
  90. package/esm2022/lib/ui-kit/v-loader/v-loader.module.mjs +0 -19
  91. package/esm2022/public-api.mjs +0 -10
  92. package/esm2022/vc-create-dashboard.mjs +0 -5
  93. package/index.d.ts +0 -5
  94. package/lib/configurations.d.ts +0 -4
  95. package/lib/create-dashboard-container/categories/categories-config.d.ts +0 -18
  96. package/lib/create-dashboard-container/categories/categories.component.d.ts +0 -66
  97. package/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.d.ts +0 -113
  98. package/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.d.ts +0 -9
  99. package/lib/create-dashboard-container/configure-widgets/configure-widgets.module.d.ts +0 -14
  100. package/lib/create-dashboard-container/constants/assets.constant.d.ts +0 -35
  101. package/lib/create-dashboard-container/create-dashboard-config.d.ts +0 -18
  102. package/lib/create-dashboard-container/create-dashboard.component.d.ts +0 -219
  103. package/lib/create-dashboard-container/create-dashboard.module.d.ts +0 -37
  104. package/lib/create-dashboard-container/directives/directives.module.d.ts +0 -8
  105. package/lib/create-dashboard-container/directives/scroll-in-view.directive.d.ts +0 -12
  106. package/lib/create-dashboard-container/form-group/form-group.component.d.ts +0 -48
  107. package/lib/create-dashboard-container/frequency/frequency.component.d.ts +0 -39
  108. package/lib/create-dashboard-container/interfaces/widget-data-model.d.ts +0 -8
  109. package/lib/create-dashboard-container/pipes/filter.pipe.d.ts +0 -7
  110. package/lib/create-dashboard-container/pipes/search-program.pipe.d.ts +0 -7
  111. package/lib/create-dashboard-container/pipes/search.pipe.d.ts +0 -7
  112. package/lib/create-dashboard-container/pipes/text-count.pipe.d.ts +0 -7
  113. package/lib/create-dashboard-container/program-list/constant.d.ts +0 -24
  114. package/lib/create-dashboard-container/program-list/information-block/information-block.component.d.ts +0 -6
  115. package/lib/create-dashboard-container/program-list/interfaces/list-item.interface.d.ts +0 -5
  116. package/lib/create-dashboard-container/program-list/list-container/list-container.component.d.ts +0 -9
  117. package/lib/create-dashboard-container/program-list/pipes/check-selected-items.pipes.d.ts +0 -7
  118. package/lib/create-dashboard-container/program-list/program-list/program-list.component.d.ts +0 -119
  119. package/lib/create-dashboard-container/program-list/program-list.module.d.ts +0 -17
  120. package/lib/create-dashboard-container/program-list/services/list-utils.service.d.ts +0 -7
  121. package/lib/create-dashboard-container/program-list/services/program-list-api.service.d.ts +0 -12
  122. package/lib/create-dashboard-container/responsibility-center/responsibility-center.component.d.ts +0 -72
  123. package/lib/create-dashboard-container/risk-categories/risk-categories-config.d.ts +0 -18
  124. package/lib/create-dashboard-container/risk-categories/risk-categories.component.d.ts +0 -66
  125. package/lib/create-dashboard-container/services/configure-widgets.service.d.ts +0 -21
  126. package/lib/create-dashboard-container/services/create-dashboard.service.d.ts +0 -80
  127. package/lib/create-dashboard-container/services/pagination.service.d.ts +0 -12
  128. package/lib/create-dashboard-container/user-list/user-list.component.d.ts +0 -123
  129. package/lib/create-dashboard-container/user-list/user-list.config.d.ts +0 -13
  130. package/lib/create-dashboard-container/utils/dashboard-edit.utils.d.ts +0 -16
  131. package/lib/create-dashboard-container/utils/dashboard-timeframe.util.d.ts +0 -11
  132. package/lib/create-dashboard.service.d.ts +0 -6
  133. package/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.d.ts +0 -17
  134. package/lib/ui-kit/dashboard-footer/dashboard-footer-config.d.ts +0 -11
  135. package/lib/ui-kit/dashboard-footer/dashboard-footer.module.d.ts +0 -10
  136. package/lib/ui-kit/dialog/dialog-config.d.ts +0 -6
  137. package/lib/ui-kit/dialog/dialog-injector.d.ts +0 -7
  138. package/lib/ui-kit/dialog/dialog-ref.d.ts +0 -7
  139. package/lib/ui-kit/dialog/dialog.component.d.ts +0 -33
  140. package/lib/ui-kit/dialog/dialog.module.d.ts +0 -9
  141. package/lib/ui-kit/dialog/dialog.service.d.ts +0 -17
  142. package/lib/ui-kit/dialog/insertion.directive.d.ts +0 -8
  143. package/lib/ui-kit/floating-bar/floating-bar.component.d.ts +0 -20
  144. package/lib/ui-kit/floating-bar/floating-bar.module.d.ts +0 -10
  145. package/lib/ui-kit/formgroup/click-outside.directive.d.ts +0 -10
  146. package/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.d.ts +0 -13
  147. package/lib/ui-kit/formgroup/cs-radio/cs-radio.component.d.ts +0 -15
  148. package/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.d.ts +0 -8
  149. package/lib/ui-kit/formgroup/cs-select/cs-select.component.d.ts +0 -36
  150. package/lib/ui-kit/formgroup/cs-switch/cs-switch.component.d.ts +0 -15
  151. package/lib/ui-kit/formgroup/formgroup.module.d.ts +0 -17
  152. package/lib/ui-kit/formgroup/pipes/pascal.pipe.d.ts +0 -7
  153. package/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.d.ts +0 -7
  154. package/lib/ui-kit/loaders/loaders.module.d.ts +0 -8
  155. package/lib/ui-kit/loaders/table-loader/table-loader.component.d.ts +0 -9
  156. package/lib/ui-kit/no-data/no-data.component.d.ts +0 -19
  157. package/lib/ui-kit/no-data/no-data.module.d.ts +0 -8
  158. package/lib/ui-kit/pagination/pagination.component.d.ts +0 -21
  159. package/lib/ui-kit/pagination/pagination.module.d.ts +0 -8
  160. package/lib/ui-kit/popover/popover.component.d.ts +0 -28
  161. package/lib/ui-kit/popover/popover.directive.d.ts +0 -17
  162. package/lib/ui-kit/popover/popover.module.d.ts +0 -9
  163. package/lib/ui-kit/popover/popover.service.d.ts +0 -13
  164. package/lib/ui-kit/select/cs-option/cs-option.component.d.ts +0 -16
  165. package/lib/ui-kit/select/cs-select/cs-select.component.d.ts +0 -32
  166. package/lib/ui-kit/select/safe-html.pipe.d.ts +0 -10
  167. package/lib/ui-kit/select/select.module.d.ts +0 -11
  168. package/lib/ui-kit/services/cs-select.service.d.ts +0 -7
  169. package/lib/ui-kit/smiley-dialog/smiley-dialog.component.d.ts +0 -17
  170. package/lib/ui-kit/smiley-dialog/smiley-dialog.module.d.ts +0 -8
  171. package/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.d.ts +0 -17
  172. package/lib/ui-kit/snack-bar/snack-bar.module.d.ts +0 -8
  173. package/lib/ui-kit/snack-bar/snack-bar.service.d.ts +0 -9
  174. package/lib/ui-kit/tooltip/tooltip.directive.d.ts +0 -28
  175. package/lib/ui-kit/tooltip/tooltip.module.d.ts +0 -8
  176. package/lib/ui-kit/v-loader/loader/loader.component.d.ts +0 -11
  177. package/lib/ui-kit/v-loader/loader-inline/loader-inline.component.d.ts +0 -11
  178. package/lib/ui-kit/v-loader/v-loader.module.d.ts +0 -9
  179. package/public-api.d.ts +0 -3
@@ -1,309 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../ui-kit/snack-bar/snack-bar.service";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "../../ui-kit/formgroup/cs-checkbox/cs-checkbox.component";
6
- import * as i4 from "../../ui-kit/formgroup/cs-radio/cs-radio.component";
7
- import * as i5 from "@angular/forms";
8
- import * as i6 from "../../ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component";
9
- export class FrequencyComponent {
10
- snackBar;
11
- animation = true;
12
- savedFrequencyTab;
13
- monthlyDate = 1;
14
- quarterlyDate = 1;
15
- savedFrequencies;
16
- selectedDate;
17
- frequencyTab = 'weekly';
18
- showFrequency = true;
19
- dayNames = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
20
- monthNames = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
21
- quarters = ['January, April, July, October', 'February, May, August, November', 'March, June, September, December'];
22
- selectedDays = [0];
23
- selectedMonths = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
24
- selectedQuarter = 0;
25
- closeFrequencyPopup = new EventEmitter();
26
- saveFrequency = new EventEmitter();
27
- footerDetails = {
28
- selectedData: [],
29
- nonRemovableList: [],
30
- displayElementKey: '',
31
- elementId: '',
32
- singularText: '',
33
- pluralText: '',
34
- showFrequency: true,
35
- frequencyText: 'You have selected a <strong>' + this.frequencyTab + '</strong> frequency.',
36
- isDisabled: false
37
- };
38
- showRadio = true;
39
- constructor(snackBar) {
40
- this.snackBar = snackBar;
41
- }
42
- ngOnChanges() {
43
- this.savedFrequencies = [...new Set(this.savedFrequencies)];
44
- }
45
- ngOnInit() {
46
- this.animation = true;
47
- setTimeout(() => {
48
- this.animation = false;
49
- }, 300);
50
- if (this.savedFrequencyTab) {
51
- this.changeTab(this.savedFrequencyTab);
52
- }
53
- if (this.selectedDate) {
54
- switch (this.savedFrequencyTab) {
55
- case 'weekly':
56
- this.selectedDays = [...new Set(this.savedFrequencies)];
57
- break;
58
- case 'monthly':
59
- this.monthlyDate = this.selectedDate;
60
- this.selectedMonths = [...new Set(this.savedFrequencies)];
61
- break;
62
- case 'quarterly':
63
- this.showRadio = false;
64
- setTimeout(() => {
65
- this.showRadio = true;
66
- }, 100);
67
- this.quarterlyDate = this.selectedDate;
68
- this.selectedQuarter = this.savedFrequencies;
69
- break;
70
- }
71
- }
72
- }
73
- closeFrequency() {
74
- this.closeFrequencyPopup.emit();
75
- }
76
- daySelectionChange(event, index) {
77
- if (event) { //checkbox was selected
78
- this.selectedDays.push(index);
79
- }
80
- else {
81
- let unselectedElementIndex = this.selectedDays.indexOf(index);
82
- this.selectedDays.splice(unselectedElementIndex, 1);
83
- }
84
- this.checkFrequencyValidity();
85
- }
86
- monthSelectionChange(event, index) {
87
- if (event) {
88
- this.selectedMonths.push(index);
89
- }
90
- else {
91
- let unselectedElementIndex = this.selectedMonths.indexOf(index);
92
- this.selectedMonths.splice(unselectedElementIndex, 1);
93
- }
94
- this.checkDateValidity(this.monthlyDate, 'monthly');
95
- this.checkFrequencyValidity();
96
- }
97
- quarterSelectionChange(event, index) {
98
- this.selectedQuarter = index;
99
- this.checkDateValidity(this.quarterlyDate, 'quarterly');
100
- this.checkFrequencyValidity();
101
- }
102
- changeTab(tabValue) {
103
- this.frequencyTab = tabValue;
104
- this.footerDetails.frequencyText = 'You have selected a <strong>' + this.frequencyTab + '</strong> frequency.';
105
- this.footerDetails.isDisabled = false;
106
- this.setToDefaultValues();
107
- if (this.frequencyTab === this.savedFrequencyTab) {
108
- switch (this.frequencyTab) {
109
- case 'weekly': {
110
- this.selectedDays = [...this.savedFrequencies];
111
- this.monthlyDate = 1;
112
- this.quarterlyDate = 1;
113
- break;
114
- }
115
- case 'monthly': {
116
- this.selectedMonths = [...this.savedFrequencies];
117
- this.monthlyDate = this.selectedDate;
118
- this.quarterlyDate = 1;
119
- this.checkDateValidity(this.monthlyDate, 'monthly');
120
- break;
121
- }
122
- case 'quarterly': {
123
- this.selectedQuarter = this.savedFrequencies;
124
- this.quarterlyDate = this.selectedDate;
125
- this.monthlyDate = 1;
126
- this.checkDateValidity(this.quarterlyDate, 'quarterly');
127
- break;
128
- }
129
- }
130
- }
131
- }
132
- setToDefaultValues() {
133
- this.selectedDays = [0];
134
- this.selectedMonths = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
135
- this.selectedQuarter = 0;
136
- }
137
- submitFrequency() {
138
- let stringVal = "Every ";
139
- let frequencies;
140
- let selectedDate = 1;
141
- switch (this.frequencyTab) {
142
- case 'weekly': {
143
- if (this.selectedDays.length > 0) {
144
- this.selectedDays.sort();
145
- frequencies = this.selectedDays;
146
- this.selectedDays.forEach((dayIndex, index) => {
147
- stringVal += index === 0 ? this.dayNames[dayIndex] : ', ' + this.dayNames[dayIndex];
148
- });
149
- }
150
- else {
151
- // nothing was selected
152
- this.closeFrequency();
153
- }
154
- break;
155
- }
156
- case 'monthly': {
157
- stringVal = " of every ";
158
- if (this.selectedMonths.length > 0) {
159
- frequencies = this.selectedMonths;
160
- this.monthNames.forEach((monthNames, monthIndex) => {
161
- if (this.selectedMonths.includes(monthIndex)) {
162
- stringVal += monthIndex === 0 ? monthNames : ', ' + monthNames;
163
- }
164
- });
165
- let monthDateName;
166
- if (this.monthlyDate == 1) {
167
- monthDateName = '1st';
168
- }
169
- else if (this.monthlyDate == 2) {
170
- monthDateName = '2nd';
171
- }
172
- else if (this.monthlyDate == 3) {
173
- monthDateName = '3rd';
174
- }
175
- else {
176
- monthDateName = this.monthlyDate + 'th';
177
- }
178
- stringVal = monthDateName + stringVal;
179
- selectedDate = this.monthlyDate;
180
- }
181
- else {
182
- // nothing was selected
183
- this.closeFrequency();
184
- }
185
- break;
186
- }
187
- case 'quarterly': {
188
- stringVal = " of every ";
189
- if (this.selectedQuarter >= 0) {
190
- frequencies = this.selectedQuarter;
191
- stringVal += this.quarters[this.selectedQuarter];
192
- selectedDate = this.quarterlyDate;
193
- let monthDateName;
194
- if (this.quarterlyDate == 1) {
195
- monthDateName = '1st';
196
- }
197
- else if (this.quarterlyDate == 2) {
198
- monthDateName = '2nd';
199
- }
200
- else if (this.quarterlyDate == 3) {
201
- monthDateName = '3rd';
202
- }
203
- else {
204
- monthDateName = this.quarterlyDate + 'th';
205
- }
206
- stringVal = monthDateName + stringVal;
207
- selectedDate = this.quarterlyDate;
208
- }
209
- else {
210
- // nothing was selected
211
- this.closeFrequency();
212
- }
213
- break;
214
- }
215
- }
216
- this.saveFrequency.emit({
217
- frequencyString: stringVal,
218
- frequencyType: this.frequencyTab,
219
- frequencies: frequencies,
220
- selectedDate
221
- });
222
- }
223
- checkDateValidity(date, type) {
224
- if (date > 31 || date < 1) {
225
- this.snackBar.show('Select valid date.', 'alert');
226
- this.footerDetails.isDisabled = true;
227
- return;
228
- }
229
- else {
230
- this.footerDetails.isDisabled = false;
231
- }
232
- const monthList = [{ name: 'January', maxDays: 31, value: 0 }, { name: 'February', maxDays: 28, value: 1 }, { name: 'March', maxDays: 31, value: 2 },
233
- { name: 'April', maxDays: 30, value: 3 }, { name: 'May', maxDays: 31, value: 4 }, { name: 'June', maxDays: 30, value: 5 },
234
- { name: 'July', maxDays: 31, value: 6 }, { name: 'August', maxDays: 31, value: 7 }, { name: 'September', maxDays: 30, value: 8 },
235
- { name: 'October', maxDays: 31, value: 9 }, { name: 'November', maxDays: 30, value: 10 }, { name: 'December', maxDays: 31, value: 11 }];
236
- switch (type) {
237
- case 'monthly':
238
- if (this.selectedMonths.length == 1) {
239
- const index = monthList.findIndex((ele) => ele.value == this.selectedMonths[0]);
240
- if (date <= monthList[index].maxDays) {
241
- this.footerDetails.isDisabled = false;
242
- }
243
- else {
244
- this.snackBar.show('Select valid date.', 'alert');
245
- this.footerDetails.isDisabled = true;
246
- }
247
- }
248
- else if (this.selectedMonths.length == 0) {
249
- this.footerDetails.isDisabled = true;
250
- }
251
- else {
252
- this.footerDetails.isDisabled = false;
253
- }
254
- break;
255
- default:
256
- this.footerDetails.isDisabled = false;
257
- return true;
258
- break;
259
- }
260
- }
261
- checkFrequencyValidity() {
262
- switch (this.frequencyTab) {
263
- case 'weekly': {
264
- if (this.selectedDays.length > 0) {
265
- this.footerDetails.isDisabled = false;
266
- }
267
- else {
268
- this.footerDetails.isDisabled = true;
269
- }
270
- break;
271
- }
272
- case 'monthly': {
273
- if (this.selectedMonths.length > 0) {
274
- this.footerDetails.isDisabled = false;
275
- }
276
- else {
277
- this.footerDetails.isDisabled = true;
278
- }
279
- break;
280
- }
281
- case 'quarterly': {
282
- if (this.selectedQuarter >= 0) {
283
- this.footerDetails.isDisabled = false;
284
- }
285
- else {
286
- this.footerDetails.isDisabled = true;
287
- }
288
- break;
289
- }
290
- }
291
- }
292
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FrequencyComponent, deps: [{ token: i1.SnackBarService }], target: i0.ɵɵFactoryTarget.Component });
293
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FrequencyComponent, selector: "app-frequency", inputs: { savedFrequencyTab: "savedFrequencyTab", savedFrequencies: "savedFrequencies", selectedDate: "selectedDate" }, outputs: { closeFrequencyPopup: "closeFrequencyPopup", saveFrequency: "saveFrequency" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"create-frequency\" [class.animate-slideInRight]=\"animation\">\r\n <div class=\"create-frequency-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4 vx-mb-4\">\r\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select a Frequency</div>\r\n </div>\r\n <div class=\"create-frequency-body vx-pl-4 vx-pr-4\">\r\n <div class=\"create-frequency-body-inner\">\r\n <div class=\"create-frequency-tab\" [ngSwitch]=\"frequencyTab\">\r\n <div class=\"create-frequency-tab-head\">\r\n <ul class=\"navigation\">\r\n <li><button [class.active]=\"frequencyTab == 'weekly'\" (click)=\"changeTab('weekly')\">Weekly</button></li>\r\n <li><button [class.active]=\"frequencyTab == 'monthly'\" (click)=\"changeTab('monthly')\">Monthly</button></li>\r\n <li><button [class.active]=\"frequencyTab == 'quarterly'\" (click)=\"changeTab('quarterly')\">Quarterly</button></li>\r\n </ul>\r\n </div>\r\n <div class=\"create-frequency-tab-body vx-pl-4 vx-pr-4\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">Email Reminder Frequency:</div>\r\n <div class=\"checkbox-list\" *ngSwitchCase=\"'weekly'\">\r\n <div class=\"frequency-checkbox vx-d-flex vx-align-center\">\r\n <div class=\"frequency-checkbox-item vx-p-3 vx-pr-4 vx-d-flex vx-align-center\" *ngFor=\"let day of dayNames; let dayIndex = index\">\r\n <app-cs-checkbox (ngValueChange)=\"daySelectionChange($event, dayIndex)\" [ngValue]=\"selectedDays.includes(dayIndex)\">{{day}}</app-cs-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkbox-list month\" *ngSwitchCase=\"'monthly'\">\r\n <div class=\"frequency-top vx-d-flex vx-align-center\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">Day</div>\r\n <input type=\"number\" (focusout)=\"checkDateValidity(monthlyDate,'monthly')\" [(ngModel)]=\"monthlyDate\" class=\"countNum\" onkeydown=\"return event.keyCode !== 190\" min=\"1\" oninput=\"this.value = Math.abs(this.value)\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">of</div>\r\n </div>\r\n <div class=\"frequency-checkbox vx-d-flex vx-align-center vx-flex-wrap\">\r\n <div class=\"frequency-checkbox-item vx-p-3 vx-pr-4 vx-d-flex vx-align-center\" *ngFor=\"let month of monthNames; let monthIndex = index\">\r\n <app-cs-checkbox (ngValueChange)=\"monthSelectionChange($event, monthIndex)\" [ngValue]=\"selectedMonths.includes(monthIndex)\">{{month}}</app-cs-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkbox-list\" *ngSwitchCase=\"'quarterly'\">\r\n <ng-container *ngIf=\"showRadio\">\r\n <div class=\"frequency-top vx-d-flex vx-align-center\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">Day</div>\r\n <input type=\"number\" (focusout)=\"checkDateValidity(quarterlyDate,'quarterly')\" [(ngModel)]=\"quarterlyDate\" class=\"countNum\" onkeydown=\"return event.keyCode !== 190\" min=\"1\" oninput=\"this.value = Math.abs(this.value)\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">of</div>\r\n </div>\r\n <div class=\"frequency-checkbox vx-d-flex vx-align-center\">\r\n <div class=\"frequency-checkbox-item vx-p-3 vx-pr-4 vx-d-flex vx-align-center vx-w-100\" *ngFor=\"let quarter of quarters, let quarterIndex = index\">\r\n <app-cs-radio (checkedEvent)=\"quarterSelectionChange($event, quarterIndex)\" [checked]=\"selectedQuarter === quarterIndex\">{{quarter}}</app-cs-radio>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"create-frequency-footer\">\r\n <app-dashboard-footer \r\n [footerDetails]=\"footerDetails\"\r\n (cancelEvent)=\"closeFrequencyPopup.emit()\"\r\n (submitEvent)=\"submitFrequency()\"\r\n ></app-dashboard-footer>\r\n </div>\r\n</div>", styles: ["@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/color/color.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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .create-frequency{background:#fff;border-right:1px solid #F1F1F1;position:fixed;inset:0 500px 0 0}::ng-deep .create-frequency-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .create-frequency-body{height:calc(100vh - 9.75rem);margin:0 auto 1rem;overflow:hidden;overflow-y:auto;width:calc(100% - 2.5rem)}::ng-deep .create-frequency-body::-webkit-scrollbar-track{background:transparent}::ng-deep .create-frequency-body-inner{width:54.5rem;margin:0 auto}@media screen and (min-width: 1366px){::ng-deep .create-frequency-body-inner{width:auto}}::ng-deep .create-frequency-tab-head{border:none!important;border-bottom:1px solid #f1f1f1!important;margin-bottom:1.5rem}::ng-deep .create-frequency-tab-head ul{padding:0;margin:0}::ng-deep .create-frequency-tab-head ul.navigation{display:flex}::ng-deep .create-frequency-tab-head ul.navigation li{list-style:none;padding:0;margin:0 1.5rem 0 0;display:flex;justify-content:center}::ng-deep .create-frequency-tab-head ul.navigation li button{background:transparent;border-radius:0;border:none;border-bottom:.125rem solid transparent;font-size:11px;font-weight:500;color:#747576;line-height:1.5rem;position:relative;text-transform:uppercase;cursor:pointer;padding:0}::ng-deep .create-frequency-tab-head ul.navigation li button.active{color:#1e5dd3;border-color:#1e5dd3}::ng-deep .create-frequency-tab-body .checkbox-list{border-radius:.25rem;border:1px solid #f1f1f1}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-top{padding:12px;border-bottom:1px solid #F1F1F1}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-top input.countNum{-webkit-appearance:textfield;-moz-appearance:textfield;border:none;border-bottom:1px solid #DBDBDB;color:#161b2f;display:inline-block;font-size:13px;text-align:center;width:2.75rem;padding:.125rem;margin:0 .5rem;outline:none}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox{background:#fff;border-radius:.25rem}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox-item{border-right:1px solid #f1f1f1;height:2.75rem}@media screen and (max-width: 1280px){::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox-item{padding:0 .5rem!important}}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox-item:last-of-type{border-right:none}::ng-deep .create-frequency-tab-body .checkbox-list app-cs-checkbox,::ng-deep .create-frequency-tab-body .checkbox-list app-cs-radio{display:flex}::ng-deep .create-frequency-tab-body .checkbox-list app-cs-checkbox label span.value,::ng-deep .create-frequency-tab-body .checkbox-list app-cs-radio label span.value{font-size:12px!important;color:#161b2f!important;font-weight:400!important}::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item{width:calc(100% / 6)}::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:first-of-type,::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(2),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(3),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(4),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(5),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(6){border-bottom:1px solid #f1f1f1}::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(6){border-right:none}::ng-deep .create-frequency-footer{padding:0 2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.CsCheckboxComponent, selector: "app-cs-checkbox", inputs: ["disabled", "ngValue", "value"], outputs: ["ngValueChange"] }, { kind: "component", type: i4.CsRadioComponent, selector: "app-cs-radio", inputs: ["disabled", "readonly", "name", "checked", "value"], outputs: ["checkedEvent"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.DashboardFooterComponent, selector: "app-dashboard-footer", inputs: ["footerDetails", "userButtonColor"], outputs: ["cancelEvent", "submitEvent", "deleteEvent"] }] });
294
- }
295
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FrequencyComponent, decorators: [{
296
- type: Component,
297
- args: [{ selector: 'app-frequency', template: "<div class=\"create-frequency\" [class.animate-slideInRight]=\"animation\">\r\n <div class=\"create-frequency-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4 vx-mb-4\">\r\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select a Frequency</div>\r\n </div>\r\n <div class=\"create-frequency-body vx-pl-4 vx-pr-4\">\r\n <div class=\"create-frequency-body-inner\">\r\n <div class=\"create-frequency-tab\" [ngSwitch]=\"frequencyTab\">\r\n <div class=\"create-frequency-tab-head\">\r\n <ul class=\"navigation\">\r\n <li><button [class.active]=\"frequencyTab == 'weekly'\" (click)=\"changeTab('weekly')\">Weekly</button></li>\r\n <li><button [class.active]=\"frequencyTab == 'monthly'\" (click)=\"changeTab('monthly')\">Monthly</button></li>\r\n <li><button [class.active]=\"frequencyTab == 'quarterly'\" (click)=\"changeTab('quarterly')\">Quarterly</button></li>\r\n </ul>\r\n </div>\r\n <div class=\"create-frequency-tab-body vx-pl-4 vx-pr-4\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">Email Reminder Frequency:</div>\r\n <div class=\"checkbox-list\" *ngSwitchCase=\"'weekly'\">\r\n <div class=\"frequency-checkbox vx-d-flex vx-align-center\">\r\n <div class=\"frequency-checkbox-item vx-p-3 vx-pr-4 vx-d-flex vx-align-center\" *ngFor=\"let day of dayNames; let dayIndex = index\">\r\n <app-cs-checkbox (ngValueChange)=\"daySelectionChange($event, dayIndex)\" [ngValue]=\"selectedDays.includes(dayIndex)\">{{day}}</app-cs-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkbox-list month\" *ngSwitchCase=\"'monthly'\">\r\n <div class=\"frequency-top vx-d-flex vx-align-center\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">Day</div>\r\n <input type=\"number\" (focusout)=\"checkDateValidity(monthlyDate,'monthly')\" [(ngModel)]=\"monthlyDate\" class=\"countNum\" onkeydown=\"return event.keyCode !== 190\" min=\"1\" oninput=\"this.value = Math.abs(this.value)\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">of</div>\r\n </div>\r\n <div class=\"frequency-checkbox vx-d-flex vx-align-center vx-flex-wrap\">\r\n <div class=\"frequency-checkbox-item vx-p-3 vx-pr-4 vx-d-flex vx-align-center\" *ngFor=\"let month of monthNames; let monthIndex = index\">\r\n <app-cs-checkbox (ngValueChange)=\"monthSelectionChange($event, monthIndex)\" [ngValue]=\"selectedMonths.includes(monthIndex)\">{{month}}</app-cs-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkbox-list\" *ngSwitchCase=\"'quarterly'\">\r\n <ng-container *ngIf=\"showRadio\">\r\n <div class=\"frequency-top vx-d-flex vx-align-center\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">Day</div>\r\n <input type=\"number\" (focusout)=\"checkDateValidity(quarterlyDate,'quarterly')\" [(ngModel)]=\"quarterlyDate\" class=\"countNum\" onkeydown=\"return event.keyCode !== 190\" min=\"1\" oninput=\"this.value = Math.abs(this.value)\">\r\n <div class=\"vx-fs-13 vx-paragraph-txt\">of</div>\r\n </div>\r\n <div class=\"frequency-checkbox vx-d-flex vx-align-center\">\r\n <div class=\"frequency-checkbox-item vx-p-3 vx-pr-4 vx-d-flex vx-align-center vx-w-100\" *ngFor=\"let quarter of quarters, let quarterIndex = index\">\r\n <app-cs-radio (checkedEvent)=\"quarterSelectionChange($event, quarterIndex)\" [checked]=\"selectedQuarter === quarterIndex\">{{quarter}}</app-cs-radio>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"create-frequency-footer\">\r\n <app-dashboard-footer \r\n [footerDetails]=\"footerDetails\"\r\n (cancelEvent)=\"closeFrequencyPopup.emit()\"\r\n (submitEvent)=\"submitFrequency()\"\r\n ></app-dashboard-footer>\r\n </div>\r\n</div>", styles: ["@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/color/color.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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .create-frequency{background:#fff;border-right:1px solid #F1F1F1;position:fixed;inset:0 500px 0 0}::ng-deep .create-frequency-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .create-frequency-body{height:calc(100vh - 9.75rem);margin:0 auto 1rem;overflow:hidden;overflow-y:auto;width:calc(100% - 2.5rem)}::ng-deep .create-frequency-body::-webkit-scrollbar-track{background:transparent}::ng-deep .create-frequency-body-inner{width:54.5rem;margin:0 auto}@media screen and (min-width: 1366px){::ng-deep .create-frequency-body-inner{width:auto}}::ng-deep .create-frequency-tab-head{border:none!important;border-bottom:1px solid #f1f1f1!important;margin-bottom:1.5rem}::ng-deep .create-frequency-tab-head ul{padding:0;margin:0}::ng-deep .create-frequency-tab-head ul.navigation{display:flex}::ng-deep .create-frequency-tab-head ul.navigation li{list-style:none;padding:0;margin:0 1.5rem 0 0;display:flex;justify-content:center}::ng-deep .create-frequency-tab-head ul.navigation li button{background:transparent;border-radius:0;border:none;border-bottom:.125rem solid transparent;font-size:11px;font-weight:500;color:#747576;line-height:1.5rem;position:relative;text-transform:uppercase;cursor:pointer;padding:0}::ng-deep .create-frequency-tab-head ul.navigation li button.active{color:#1e5dd3;border-color:#1e5dd3}::ng-deep .create-frequency-tab-body .checkbox-list{border-radius:.25rem;border:1px solid #f1f1f1}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-top{padding:12px;border-bottom:1px solid #F1F1F1}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-top input.countNum{-webkit-appearance:textfield;-moz-appearance:textfield;border:none;border-bottom:1px solid #DBDBDB;color:#161b2f;display:inline-block;font-size:13px;text-align:center;width:2.75rem;padding:.125rem;margin:0 .5rem;outline:none}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox{background:#fff;border-radius:.25rem}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox-item{border-right:1px solid #f1f1f1;height:2.75rem}@media screen and (max-width: 1280px){::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox-item{padding:0 .5rem!important}}::ng-deep .create-frequency-tab-body .checkbox-list .frequency-checkbox-item:last-of-type{border-right:none}::ng-deep .create-frequency-tab-body .checkbox-list app-cs-checkbox,::ng-deep .create-frequency-tab-body .checkbox-list app-cs-radio{display:flex}::ng-deep .create-frequency-tab-body .checkbox-list app-cs-checkbox label span.value,::ng-deep .create-frequency-tab-body .checkbox-list app-cs-radio label span.value{font-size:12px!important;color:#161b2f!important;font-weight:400!important}::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item{width:calc(100% / 6)}::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:first-of-type,::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(2),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(3),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(4),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(5),::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(6){border-bottom:1px solid #f1f1f1}::ng-deep .create-frequency-tab-body .checkbox-list.month .frequency-checkbox-item:nth-child(6){border-right:none}::ng-deep .create-frequency-footer{padding:0 2rem}\n"] }]
298
- }], ctorParameters: function () { return [{ type: i1.SnackBarService }]; }, propDecorators: { savedFrequencyTab: [{
299
- type: Input
300
- }], savedFrequencies: [{
301
- type: Input
302
- }], selectedDate: [{
303
- type: Input
304
- }], closeFrequencyPopup: [{
305
- type: Output
306
- }], saveFrequency: [{
307
- type: Output
308
- }] } });
309
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi9jcmVhdGUtZGFzaGJvYXJkLWNvbnRhaW5lci9mcmVxdWVuY3kvZnJlcXVlbmN5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi9jcmVhdGUtZGFzaGJvYXJkLWNvbnRhaW5lci9mcmVxdWVuY3kvZnJlcXVlbmN5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVUxRixNQUFNLE9BQU8sa0JBQWtCO0lBOEJUO0lBN0JwQixTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQ1IsaUJBQWlCLENBQXFCO0lBQy9DLFdBQVcsR0FBRyxDQUFDLENBQUM7SUFDaEIsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUNULGdCQUFnQixDQUFNO0lBQ3RCLFlBQVksQ0FBTTtJQUMzQixZQUFZLEdBQUcsUUFBUSxDQUFDO0lBQ3hCLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDckIsUUFBUSxHQUFHLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUYsVUFBVSxHQUFHLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN4SSxRQUFRLEdBQUcsQ0FBQywrQkFBK0IsRUFBRSxpQ0FBaUMsRUFB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Q0QsTUFBTTthQUNQO1lBQ0QsS0FBSyxTQUFTLENBQUMsQ0FBQztnQkFFWixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2lCQUV2QztxQkFBTTtvQkFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7aUJBQ3RDO2dCQUNILE1BQU07YUFDUDtZQUNELEtBQUssV0FBVyxDQUFDLENBQUM7Z0JBRWhCLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLEVBQUM7b0JBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztpQkFFdkM7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2lCQUN0QztnQkFDSCxNQUFNO2FBQ1A7U0FDRjtJQUNILENBQUM7d0dBbFNZLGtCQUFrQjs0RkFBbEIsa0JBQWtCLDJSQ1YvQiw0ckpBNERNOzs0RkRsRE8sa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWU7c0dBTWhCLGlCQUFpQjtzQkFBekIsS0FBSztnQkFHRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFTSSxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEYXNoYm9hcmRGb290ZXJDb25maWcgfSBmcm9tICcuLi8uLi91aS1raXQvZGFzaGJvYXJkLWZvb3Rlci9kYXNoYm9hcmQtZm9vdGVyLWNvbmZpZyc7XHJcbmltcG9ydCB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4uLy4uL3VpLWtpdC9zbmFjay1iYXIvc25hY2stYmFyLnNlcnZpY2UnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWZyZXF1ZW5jeScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZyZXF1ZW5jeS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZnJlcXVlbmN5LmNvbXBvbmVudC5sZXNzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCxPbkNoYW5nZXMge1xyXG4gIGFuaW1hdGlvbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2F2ZWRGcmVxdWVuY3lUYWI6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBtb250aGx5RGF0ZSA9IDE7XHJcbiAgcXVhcnRlcmx5RGF0ZSA9IDE7XHJcbiAgQElucHV0KCkgc2F2ZWRGcmVxdWVuY2llczogYW55O1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkRGF0ZTogYW55O1xyXG4gIGZyZXF1ZW5jeVRhYiA9ICd3ZWVrbHknO1xyXG4gIHNob3dGcmVxdWVuY3kgPSB0cnVlO1xyXG4gIGRheU5hbWVzID0gWydNb25kYXknLCAnVHVlc2RheScsICdXZWRuZXNkYXknLCAnVGh1cnNkYXknLCAnRnJpZGF5JywgJ1NhdHVyZGF5JywgJ1N1bmRheSddO1xyXG4gIG1vbnRoTmFtZXMgPSBbJ0phbnVhcnknLCAnRmVicnVhcnknLCAnTWFyY2gnLCAnQXByaWwnLCAnTWF5JywgJ0p1bmUnLCAnSnVseScsICdBdWd1c3QnLCAnU2VwdGVtYmVyJywgJ09jdG9iZXInLCAnTm92ZW1iZXInLCAnRGVjZW1iZXInXTtcclxuICBxdWFydGVycyA9IFsnSmFudWFyeSwgQXByaWwsIEp1bHksIE9jdG9iZXInLCAnRmVicnVhcnksIE1heSwgQXVndXN0LCBOb3ZlbWJlcicsICdNYXJjaCwgSnVuZSwgU2VwdGVtYmVyLCBEZWNlbWJlciddO1xyXG4gIHNlbGVjdGVkRGF5czogYW55W10gPSBbMF07XHJcbiAgc2VsZWN0ZWRNb250aHM6IGFueVtdID0gWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMV07XHJcbiAgc2VsZWN0ZWRRdWFydGVyID0gMDtcclxuICBAT3V0cHV0KCkgY2xvc2VGcmVxdWVuY3lQb3B1cCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBzYXZlRnJlcXVlbmN5ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgZm9vdGVyRGV0YWlsczogRGFzaGJvYXJkRm9vdGVyQ29uZmlnID0ge1xyXG4gICAgc2VsZWN0ZWREYXRhOiBbXSxcclxuICAgIG5vblJlbW92YWJsZUxpc3Q6W10sXHJcbiAgICBkaXNwbGF5RWxlbWVudEtleTogJycsXHJcbiAgICBlbGVtZW50SWQ6ICcnLFxyXG4gICAgc2luZ3VsYXJUZXh0OiAnJyxcclxuICAgIHBsdXJhbFRleHQ6ICcnLFxyXG4gICAgc2hvd0ZyZXF1ZW5jeTogdHJ1ZSxcclxuICAgIGZyZXF1ZW5jeVRleHQ6ICdZb3UgaGF2ZSBzZWxlY3RlZCBhIDxzdHJvbmc+JyArIHRoaXMuZnJlcXVlbmN5VGFiICsgJzwvc3Ryb25nPiBmcmVxdWVuY3kuJyxcclxuICAgIGlzRGlzYWJsZWQ6IGZhbHNlXHJcblxyXG4gIH07XHJcbiAgc2hvd1JhZGlvID0gdHJ1ZTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNuYWNrQmFyOlNuYWNrQmFyU2VydmljZSkgeyB9XHJcbiAgbmdPbkNoYW5nZXMoKXtcclxuICAgIHRoaXMuc2F2ZWRGcmVxdWVuY2llcyA9IFsuLi5uZXcgU2V0KHRoaXMuc2F2ZWRGcmVxdWVuY2llcyldXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uID0gdHJ1ZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xyXG4gICAgfSwgMzAwKTtcclxuICAgIGlmICh0aGlzLnNhdmVkRnJlcXVlbmN5VGFiKSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlVGFiKHRoaXMuc2F2ZWRGcmVxdWVuY3lUYWIpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWREYXRlKSB7XHJcbiAgICAgIHN3aXRjaCAodGhpcy5zYXZlZEZyZXF1ZW5jeVRhYikge1xyXG4gICAgICAgIGNhc2UgJ3dlZWtseSc6XHJcbiAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzID0gWy4uLm5ldyBTZXQodGhpcy5zYXZlZEZyZXF1ZW5jaWVzKV1cclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ21vbnRobHknOlxyXG4gICAgICAgICB0aGlzLm1vbnRobHlEYXRlID0gdGhpcy5zZWxlY3RlZERhdGU7XHJcbiAgICAgICAgIHRoaXMuc2VsZWN0ZWRNb250aHMgPSBbLi4ubmV3IFNldCh0aGlzLnNhdmVkRnJlcXVlbmNpZXMpXVxyXG5cclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3F1YXJ0ZXJseSc6XHJcbiAgICAgICAgICB0aGlzLnNob3dSYWRpbyA9IGZhbHNlO1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd1JhZGlvID0gdHJ1ZVxyXG4gICAgICAgICAgfSwgMTAwKTtcclxuICAgICAgICAgIHRoaXMucXVhcnRlcmx5RGF0ZSA9IHRoaXMuc2VsZWN0ZWREYXRlXHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkUXVhcnRlciA9IHRoaXMuc2F2ZWRGcmVxdWVuY2llcztcclxuXHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIGNsb3NlRnJlcXVlbmN5KCkge1xyXG4gICAgdGhpcy5jbG9zZUZyZXF1ZW5jeVBvcHVwLmVtaXQoKTtcclxuICB9XHJcbiAgZGF5U2VsZWN0aW9uQ2hhbmdlKGV2ZW50OiBhbnksIGluZGV4OiBhbnkpIHtcclxuICAgIGlmIChldmVudCkgeyAvL2NoZWNrYm94IHdhcyBzZWxlY3RlZFxyXG4gICAgICB0aGlzLnNlbGVjdGVkRGF5cy5wdXNoKGluZGV4KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCB1bnNlbGVjdGVkRWxlbWVudEluZGV4ID0gdGhpcy5zZWxlY3RlZERheXMuaW5kZXhPZihpbmRleCk7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXlzLnNwbGljZSh1bnNlbGVjdGVkRWxlbWVudEluZGV4LCAxKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hlY2tGcmVxdWVuY3lWYWxpZGl0eSgpO1xyXG4gIH1cclxuICBtb250aFNlbGVjdGlvbkNoYW5nZShldmVudDogYW55LCBpbmRleDogYW55KSB7XHJcbiAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZE1vbnRocy5wdXNoKGluZGV4KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCB1bnNlbGVjdGVkRWxlbWVudEluZGV4ID0gdGhpcy5zZWxlY3RlZE1vbnRocy5pbmRleE9mKGluZGV4KTtcclxuICAgICAgdGhpcy5zZWxlY3RlZE1vbnRocy5zcGxpY2UodW5zZWxlY3RlZEVsZW1lbnRJbmRleCwgMSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoZWNrRGF0ZVZhbGlkaXR5KHRoaXMubW9udGhseURhdGUsJ21vbnRobHknKVxyXG4gICAgdGhpcy5jaGVja0ZyZXF1ZW5jeVZhbGlkaXR5KCk7XHJcbiAgfVxyXG5cclxuICBxdWFydGVyU2VsZWN0aW9uQ2hhbmdlKGV2ZW50OiBhbnksIGluZGV4OiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRRdWFydGVyID0gaW5kZXg7XHJcbiAgICB0aGlzLmNoZWNrRGF0ZVZhbGlkaXR5KHRoaXMucXVhcnRlcmx5RGF0ZSwncXVhcnRlcmx5Jyk7XHJcbiAgICB0aGlzLmNoZWNrRnJlcXVlbmN5VmFsaWRpdHkoKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVRhYih0YWJWYWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmZyZXF1ZW5jeVRhYiA9IHRhYlZhbHVlO1xyXG4gICAgdGhpcy5mb290ZXJEZXRhaWxzLmZyZXF1ZW5jeVRleHQgPSAnWW91IGhhdmUgc2VsZWN0ZWQgYSA8c3Ryb25nPicgKyB0aGlzLmZyZXF1ZW5jeVRhYiArICc8L3N0cm9uZz4gZnJlcXVlbmN5Lic7XHJcbiAgICB0aGlzLmZvb3RlckRldGFpbHMuaXNEaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZXRUb0RlZmF1bHRWYWx1ZXMoKVxyXG4gICAgaWYgKHRoaXMuZnJlcXVlbmN5VGFiID09PSB0aGlzLnNhdmVkRnJlcXVlbmN5VGFiKSB7XHJcbiAgICAgIHN3aXRjaCAodGhpcy5mcmVxdWVuY3lUYWIpIHtcclxuICAgICAgICBjYXNlICd3ZWVrbHknOiB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5cyA9IFsuLi50aGlzLnNhdmVkRnJlcXVlbmNpZXNdO1xyXG4gICAgICAgICAgdGhpcy5tb250aGx5RGF0ZSA9IDE7XHJcbiAgICAgICAgICB0aGlzLnF1YXJ0ZXJseURhdGUgPSAxO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNhc2UgJ21vbnRobHknOiB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTW9udGhzID0gWy4uLnRoaXMuc2F2ZWRGcmVxdWVuY2llc107XHJcbiAgICAgICAgICB0aGlzLm1vbnRobHlEYXRlID0gdGhpcy5zZWxlY3RlZERhdGU7XHJcbiAgICAgICAgICB0aGlzLnF1YXJ0ZXJseURhdGUgPSAxO1xyXG4gICAgICAgICAgdGhpcy5jaGVja0RhdGVWYWxpZGl0eSh0aGlzLm1vbnRobHlEYXRlLCdtb250aGx5JylcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXNlICdxdWFydGVybHknOiB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkUXVhcnRlciA9IHRoaXMuc2F2ZWRGcmVxdWVuY2llcztcclxuICAgICAgICAgIHRoaXMucXVhcnRlcmx5RGF0ZSA9IHRoaXMuc2VsZWN0ZWREYXRlO1xyXG4gICAgICAgICAgdGhpcy5tb250aGx5RGF0ZSA9IDE7XHJcbiAgICAgICAgICB0aGlzLmNoZWNrRGF0ZVZhbGlkaXR5KHRoaXMucXVhcnRlcmx5RGF0ZSwncXVhcnRlcmx5JylcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0VG9EZWZhdWx0VmFsdWVzKCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZERheXMgPSBbMF07XHJcbiAgICB0aGlzLnNlbGVjdGVkTW9udGhzID0gWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMV07XHJcbiAgICB0aGlzLnNlbGVjdGVkUXVhcnRlciA9IDA7XHJcbiAgfVxyXG5cclxuICBzdWJtaXRGcmVxdWVuY3koKSB7XHJcbiAgICBsZXQgc3RyaW5nVmFsID0gXCJFdmVyeSBcIjtcclxuICAgIGxldCBmcmVxdWVuY2llcztcclxuICAgIGxldCBzZWxlY3RlZERhdGUgPSAxO1xyXG4gICAgc3dpdGNoICh0aGlzLmZyZXF1ZW5jeVRhYikge1xyXG4gICAgICBjYXNlICd3ZWVrbHknOiB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWREYXlzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzLnNvcnQoKTtcclxuICAgICAgICAgIGZyZXF1ZW5jaWVzID0gdGhpcy5zZWxlY3RlZERheXM7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5cy5mb3JFYWNoKChkYXlJbmRleCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgc3RyaW5nVmFsICs9IGluZGV4ID09PSAwID8gdGhpcy5kYXlOYW1lc1tkYXlJbmRleF0gOiAnLCAnICsgdGhpcy5kYXlOYW1lc1tkYXlJbmRleF07XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBub3RoaW5nIHdhcyBzZWxlY3RlZFxyXG4gICAgICAgICAgdGhpcy5jbG9zZUZyZXF1ZW5jeSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdtb250aGx5Jzoge1xyXG4gICAgICAgIHN0cmluZ1ZhbCA9IFwiIG9mIGV2ZXJ5IFwiO1xyXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkTW9udGhzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIGZyZXF1ZW5jaWVzID0gdGhpcy5zZWxlY3RlZE1vbnRocztcclxuICAgICAgICAgIHRoaXMubW9udGhOYW1lcy5mb3JFYWNoKChtb250aE5hbWVzOiBzdHJpbmcsIG1vbnRoSW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZE1vbnRocy5pbmNsdWRlcyhtb250aEluZGV4KSkge1xyXG4gICAgICAgICAgICAgIHN0cmluZ1ZhbCArPSBtb250aEluZGV4ICA9PT0gMCA/IG1vbnRoTmFtZXMgOiAnLCAnICsgbW9udGhOYW1lcztcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICBsZXQgbW9udGhEYXRlTmFtZTtcclxuICAgICAgICAgIGlmICh0aGlzLm1vbnRobHlEYXRlID09IDEpIHtcclxuICAgICAgICAgICAgbW9udGhEYXRlTmFtZSA9ICcxc3QnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIGlmICh0aGlzLm1vbnRobHlEYXRlID09IDIpIHtcclxuICAgICAgICAgICAgbW9udGhEYXRlTmFtZSA9ICcybmQnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIGlmICh0aGlzLm1vbnRobHlEYXRlID09IDMpIHtcclxuICAgICAgICAgICAgbW9udGhEYXRlTmFtZSA9ICczcmQnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgbW9udGhEYXRlTmFtZSA9IHRoaXMubW9udGhseURhdGUgKyAndGgnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBzdHJpbmdWYWwgPSBtb250aERhdGVOYW1lICsgc3RyaW5nVmFsO1xyXG4gICAgICAgICAgc2VsZWN0ZWREYXRlID0gdGhpcy5tb250aGx5RGF0ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gbm90aGluZyB3YXMgc2VsZWN0ZWRcclxuICAgICAgICAgIHRoaXMuY2xvc2VGcmVxdWVuY3koKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSAncXVhcnRlcmx5Jzoge1xyXG4gICAgICAgIHN0cmluZ1ZhbCA9IFwiIG9mIGV2ZXJ5IFwiO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFF1YXJ0ZXIgPj0gMCkge1xyXG4gICAgICAgICAgZnJlcXVlbmNpZXMgPSB0aGlzLnNlbGVjdGVkUXVhcnRlcjtcclxuICAgICAgICAgIHN0cmluZ1ZhbCArPSB0aGlzLnF1YXJ0ZXJzW3RoaXMuc2VsZWN0ZWRRdWFydGVyXTtcclxuICAgICAgICAgIHNlbGVjdGVkRGF0ZSA9IHRoaXMucXVhcnRlcmx5RGF0ZTtcclxuICAgICAgICAgIGxldCBtb250aERhdGVOYW1lO1xyXG4gICAgICAgICAgaWYgKHRoaXMucXVhcnRlcmx5RGF0ZSA9PSAxKSB7XHJcbiAgICAgICAgICAgIG1vbnRoRGF0ZU5hbWUgPSAnMXN0J1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSBpZiAodGhpcy5xdWFydGVybHlEYXRlID09IDIpIHtcclxuICAgICAgICAgICAgbW9udGhEYXRlTmFtZSA9ICcybmQnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIGlmICh0aGlzLnF1YXJ0ZXJseURhdGUgPT0gMykge1xyXG4gICAgICAgICAgICBtb250aERhdGVOYW1lID0gJzNyZCdcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBtb250aERhdGVOYW1lID0gdGhpcy5xdWFydGVybHlEYXRlICsgJ3RoJ1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgc3RyaW5nVmFsID0gbW9udGhEYXRlTmFtZSArIHN0cmluZ1ZhbDtcclxuICAgICAgICAgIHNlbGVjdGVkRGF0ZSA9IHRoaXMucXVhcnRlcmx5RGF0ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gbm90aGluZyB3YXMgc2VsZWN0ZWRcclxuICAgICAgICAgIHRoaXMuY2xvc2VGcmVxdWVuY3koKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuc2F2ZUZyZXF1ZW5jeS5lbWl0KHtcclxuICAgICAgZnJlcXVlbmN5U3RyaW5nOiBzdHJpbmdWYWwsXHJcbiAgICAgIGZyZXF1ZW5jeVR5cGU6IHRoaXMuZnJlcXVlbmN5VGFiLFxyXG4gICAgICBmcmVxdWVuY2llczogZnJlcXVlbmNpZXMsXHJcbiAgICAgIHNlbGVjdGVkRGF0ZVxyXG4gICAgfSlcclxuICB9XHJcbiAgXHJcbiAgY2hlY2tEYXRlVmFsaWRpdHkoZGF0ZTpudW1iZXIsIHR5cGU6c3RyaW5nKXtcclxuICAgIGlmKGRhdGU+MzEgfHwgZGF0ZTwxKXtcclxuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdTZWxlY3QgdmFsaWQgZGF0ZS4nLCdhbGVydCcpO1xyXG4gICAgICB0aGlzLmZvb3RlckRldGFpbHMuaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgcmV0dXJuXHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5mb290ZXJEZXRhaWxzLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgY29uc3QgIG1vbnRoTGlzdD1be25hbWU6J0phbnVhcnknLG1heERheXM6MzEsdmFsdWU6MH0se25hbWU6J0ZlYnJ1YXJ5JyxtYXhEYXlzOjI4LHZhbHVlOjF9LHtuYW1lOidNYXJjaCcsbWF4RGF5czozMSx2YWx1ZToyfSxcclxuICAge25hbWU6J0FwcmlsJyxtYXhEYXlzOjMwLHZhbHVlOjN9LHtuYW1lOidNYXknLG1heERheXM6MzEsdmFsdWU6NH0se25hbWU6J0p1bmUnLG1heERheXM6MzAsdmFsdWU6NX0sXHJcbiAgIHtuYW1lOidKdWx5JyxtYXhEYXlzOjMxLHZhbHVlOjZ9LHtuYW1lOidBdWd1c3QnLG1heERheXM6MzEsdmFsdWU6N30se25hbWU6J1NlcHRlbWJlcicsbWF4RGF5czozMCx2YWx1ZTo4fSxcclxuICAge25hbWU6J09jdG9iZXInLG1heERheXM6MzEsdmFsdWU6OX0se25hbWU6J05vdmVtYmVyJyxtYXhEYXlzOjMwLHZhbHVlOjEwfSx7bmFtZTonRGVjZW1iZXInLG1heERheXM6MzEsdmFsdWU6MTF9XVxyXG4gIHN3aXRjaCAodHlwZSkge1xyXG4gICAgY2FzZSAnbW9udGhseSc6XHJcbiAgICAgIGlmKHRoaXMuc2VsZWN0ZWRNb250aHMubGVuZ3RoPT0xKXtcclxuICAgICAgICBjb25zdCBpbmRleCA9IG1vbnRoTGlzdC5maW5kSW5kZXgoKGVsZTphbnkpPT5lbGUudmFsdWU9PXRoaXMuc2VsZWN0ZWRNb250aHNbMF0pO1xyXG4gICAgICAgIGlmKGRhdGU8PW1vbnRoTGlzdFtpbmRleF0ubWF4RGF5cyl7XHJcbiAgICAgICAgICB0aGlzLmZvb3RlckRldGFpbHMuaXNEaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdTZWxlY3QgdmFsaWQgZGF0ZS4nLCdhbGVydCcpO1xyXG4gICAgICAgICAgdGhpcy5mb290ZXJEZXRhaWxzLmlzRGlzYWJsZWQgPSB0cnVlOyBcclxuICAgICAgICB9XHJcbiAgICAgIH1lbHNlIGlmKHRoaXMuc2VsZWN0ZWRNb250aHMubGVuZ3RoPT0wKXtcclxuICAgICAgICB0aGlzLmZvb3RlckRldGFpbHMuaXNEaXNhYmxlZCA9IHRydWU7IFxyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLmZvb3RlckRldGFpbHMuaXNEaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLmZvb3RlckRldGFpbHMuaXNEaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG5jaGVja0ZyZXF1ZW5jeVZhbGlkaXR5KCl7XHJcbiAgc3dpdGNoICh0aGlzLmZyZXF1ZW5jeVRhYikge1xyXG4gICAgY2FzZSAnd2Vla2x5Jzoge1xyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZERheXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHRoaXMuZm9vdGVyRGV0YWlscy5pc0Rpc2FibGVkID0gZmFsc2U7XHJcblxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZm9vdGVyRGV0YWlscy5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBicmVhaztcclxuICAgIH1cclxuICAgIGNhc2UgJ21vbnRobHknOiB7XHJcbiAgIFxyXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkTW9udGhzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuZm9vdGVyRGV0YWlscy5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZm9vdGVyRGV0YWlscy5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgY2FzZSAncXVhcnRlcmx5Jzoge1xyXG5cclxuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRRdWFydGVyID49IDApe1xyXG4gICAgICAgICAgdGhpcy5mb290ZXJEZXRhaWxzLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICBcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5mb290ZXJEZXRhaWxzLmlzRGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfSBcclxufVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY3JlYXRlLWZyZXF1ZW5jeVwiIFtjbGFzcy5hbmltYXRlLXNsaWRlSW5SaWdodF09XCJhbmltYXRpb25cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjcmVhdGUtZnJlcXVlbmN5LWhlYWQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcGwtNCB2eC1wci00IHZ4LW1iLTRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dFwiPlNlbGVjdCBhIEZyZXF1ZW5jeTwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY3JlYXRlLWZyZXF1ZW5jeS1ib2R5IHZ4LXBsLTQgdngtcHItNFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjcmVhdGUtZnJlcXVlbmN5LWJvZHktaW5uZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNyZWF0ZS1mcmVxdWVuY3ktdGFiXCIgW25nU3dpdGNoXT1cImZyZXF1ZW5jeVRhYlwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNyZWF0ZS1mcmVxdWVuY3ktdGFiLWhlYWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJuYXZpZ2F0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YnV0dG9uIFtjbGFzcy5hY3RpdmVdPVwiZnJlcXVlbmN5VGFiID09ICd3ZWVrbHknXCIgKGNsaWNrKT1cImNoYW5nZVRhYignd2Vla2x5JylcIj5XZWVrbHk8L2J1dHRvbj48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGJ1dHRvbiBbY2xhc3MuYWN0aXZlXT1cImZyZXF1ZW5jeVRhYiA9PSAnbW9udGhseSdcIiAoY2xpY2spPVwiY2hhbmdlVGFiKCdtb250aGx5JylcIj5Nb250aGx5PC9idXR0b24+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxidXR0b24gW2NsYXNzLmFjdGl2ZV09XCJmcmVxdWVuY3lUYWIgPT0gJ3F1YXJ0ZXJseSdcIiAoY2xpY2spPVwiY2hhbmdlVGFiKCdxdWFydGVybHknKVwiPlF1YXJ0ZXJseTwvYnV0dG9uPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNyZWF0ZS1mcmVxdWVuY3ktdGFiLWJvZHkgdngtcGwtNCB2eC1wci00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtdHQtdXBwZXJjYXNlIHZ4LW1iLTFcIj5FbWFpbCBSZW1pbmRlciBGcmVxdWVuY3k6PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrYm94LWxpc3RcIiAqbmdTd2l0Y2hDYXNlPVwiJ3dlZWtseSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1jaGVja2JveCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWNoZWNrYm94LWl0ZW0gdngtcC0zIHZ4LXByLTQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiICpuZ0Zvcj1cImxldCBkYXkgb2YgZGF5TmFtZXM7IGxldCBkYXlJbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1jaGVja2JveCAobmdWYWx1ZUNoYW5nZSk9XCJkYXlTZWxlY3Rpb25DaGFuZ2UoJGV2ZW50LCBkYXlJbmRleClcIiBbbmdWYWx1ZV09XCJzZWxlY3RlZERheXMuaW5jbHVkZXMoZGF5SW5kZXgpXCI+e3tkYXl9fTwvYXBwLWNzLWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGVja2JveC1saXN0IG1vbnRoXCIgKm5nU3dpdGNoQ2FzZT1cIidtb250aGx5J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LXRvcCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTMgdngtcGFyYWdyYXBoLXR4dFwiPkRheTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiAoZm9jdXNvdXQpPVwiY2hlY2tEYXRlVmFsaWRpdHkobW9udGhseURhdGUsJ21vbnRobHknKVwiIFsobmdNb2RlbCldPVwibW9udGhseURhdGVcIiBjbGFzcz1cImNvdW50TnVtXCIgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjFcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTMgdngtcGFyYWdyYXBoLXR4dFwiPm9mPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWNoZWNrYm94IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtZmxleC13cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LWNoZWNrYm94LWl0ZW0gdngtcC0zIHZ4LXByLTQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiICpuZ0Zvcj1cImxldCBtb250aCBvZiBtb250aE5hbWVzOyBsZXQgbW9udGhJbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1jaGVja2JveCAobmdWYWx1ZUNoYW5nZSk9XCJtb250aFNlbGVjdGlvbkNoYW5nZSgkZXZlbnQsIG1vbnRoSW5kZXgpXCIgW25nVmFsdWVdPVwic2VsZWN0ZWRNb250aHMuaW5jbHVkZXMobW9udGhJbmRleClcIj57e21vbnRofX08L2FwcC1jcy1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2tib3gtbGlzdFwiICpuZ1N3aXRjaENhc2U9XCIncXVhcnRlcmx5J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd1JhZGlvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LXRvcCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTEzIHZ4LXBhcmFncmFwaC10eHRcIj5EYXk8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIChmb2N1c291dCk9XCJjaGVja0RhdGVWYWxpZGl0eShxdWFydGVybHlEYXRlLCdxdWFydGVybHknKVwiIFsobmdNb2RlbCldPVwicXVhcnRlcmx5RGF0ZVwiIGNsYXNzPVwiY291bnROdW1cIiBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMVwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTMgdngtcGFyYWdyYXBoLXR4dFwiPm9mPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktY2hlY2tib3ggdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktY2hlY2tib3gtaXRlbSB2eC1wLTMgdngtcHItNCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LXctMTAwXCIgKm5nRm9yPVwibGV0IHF1YXJ0ZXIgb2YgcXVhcnRlcnMsIGxldCBxdWFydGVySW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIChjaGVja2VkRXZlbnQpPVwicXVhcnRlclNlbGVjdGlvbkNoYW5nZSgkZXZlbnQsIHF1YXJ0ZXJJbmRleClcIiBbY2hlY2tlZF09XCJzZWxlY3RlZFF1YXJ0ZXIgPT09IHF1YXJ0ZXJJbmRleFwiPnt7cXVhcnRlcn19PC9hcHAtY3MtcmFkaW8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+ICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNyZWF0ZS1mcmVxdWVuY3ktZm9vdGVyXCI+XHJcbiAgICAgICAgPGFwcC1kYXNoYm9hcmQtZm9vdGVyIFxyXG4gICAgICAgIFtmb290ZXJEZXRhaWxzXT1cImZvb3RlckRldGFpbHNcIlxyXG4gICAgICAgIChjYW5jZWxFdmVudCk9XCJjbG9zZUZyZXF1ZW5jeVBvcHVwLmVtaXQoKVwiXHJcbiAgICAgICAgKHN1Ym1pdEV2ZW50KT1cInN1Ym1pdEZyZXF1ZW5jeSgpXCJcclxuICAgICAgICA+PC9hcHAtZGFzaGJvYXJkLWZvb3Rlcj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWRhdGEtbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvaW50ZXJmYWNlcy93aWRnZXQtZGF0YS1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSB3aWRnZXREYXRhTW9kZWwge1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGlkPzogc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgICB3aWRnZXRJbWFnZT86IHN0cmluZztcclxuICAgIHZhbHVlOiBudW1iZXI7XHJcbiAgICBzdWJXaWRnZXRzOiBbXTtcclxufSJdfQ==
@@ -1,30 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class FilterPipe {
4
- transform(items, searchText) {
5
- if (!items) {
6
- return [];
7
- }
8
- if (!searchText) {
9
- return items;
10
- }
11
- searchText = searchText.toLowerCase();
12
- if (items?.length) {
13
- return items.filter((it) => {
14
- return JSON.stringify(it).toLowerCase().includes(searchText);
15
- });
16
- }
17
- else {
18
- return [];
19
- }
20
- }
21
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
22
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: FilterPipe, name: "filter" });
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterPipe, decorators: [{
25
- type: Pipe,
26
- args: [{
27
- name: 'filter'
28
- }]
29
- }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvcGlwZXMvZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxVQUFVO0lBRXJCLFNBQVMsQ0FBQyxLQUFZLEVBQUUsVUFBa0I7UUFDeEMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELFVBQVUsR0FBRyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEMsSUFBRyxLQUFLLEVBQUUsTUFBTSxFQUFDO1lBQ2pCLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQU8sRUFBRSxFQUFFO2dCQUM5QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9ELENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBSTtZQUNGLE9BQU8sRUFBRSxDQUFDO1NBQ1o7SUFDRCxDQUFDO3dHQWpCVSxVQUFVO3NHQUFWLFVBQVU7OzRGQUFWLFVBQVU7a0JBSHRCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFFBQVE7aUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2ZpbHRlcidcclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbHRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgdHJhbnNmb3JtKGl0ZW1zOiBhbnlbXSwgc2VhcmNoVGV4dDogc3RyaW5nKTogYW55W10ge1xyXG4gICAgaWYgKCFpdGVtcykge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBpZiAoIXNlYXJjaFRleHQpIHtcclxuICAgICAgcmV0dXJuIGl0ZW1zO1xyXG4gICAgfVxyXG4gICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKTtcclxuICAgIGlmKGl0ZW1zPy5sZW5ndGgpe1xyXG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXQ6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoaXQpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGV4dCk7XHJcbiAgICB9KTtcclxuICB9ZWxzZXtcclxuICAgICByZXR1cm4gW107XHJcbiAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -1,37 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class SearchProgramPipe {
4
- transform(items, ...args) {
5
- let searchText = args[0];
6
- const searchKey = args[1];
7
- if (!items) {
8
- return [];
9
- }
10
- if (!searchText) {
11
- return items;
12
- }
13
- searchText = searchText?.toLowerCase();
14
- if (items?.length) {
15
- return items.filter((it) => {
16
- if (!searchKey) {
17
- return JSON.stringify(it)?.toLowerCase()?.includes(searchText);
18
- }
19
- else if (searchKey) {
20
- return (it[searchKey]?.toString()?.toLowerCase()?.indexOf(searchText) > -1);
21
- }
22
- });
23
- }
24
- else {
25
- return [];
26
- }
27
- }
28
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SearchProgramPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
29
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SearchProgramPipe, name: "searchProgram" });
30
- }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SearchProgramPipe, decorators: [{
32
- type: Pipe,
33
- args: [{
34
- name: 'searchProgram',
35
- }]
36
- }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXByb2dyYW0ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi9jcmVhdGUtZGFzaGJvYXJkLWNvbnRhaW5lci9waXBlcy9zZWFyY2gtcHJvZ3JhbS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUtwRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFNBQVMsQ0FBQyxLQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3BDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELFVBQVUsR0FBRyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDdkMsSUFBSSxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ2pCLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQU8sRUFBRSxFQUFFO2dCQUM5QixJQUFJLENBQUMsU0FBUyxFQUFFO29CQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQ2hFO3FCQUFNLElBQUksU0FBUyxFQUFFO29CQUNwQixPQUFPLENBQ0wsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDbkUsQ0FBQztpQkFDSDtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDO3dHQXhCVSxpQkFBaUI7c0dBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFIN0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsZUFBZTtpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NlYXJjaFByb2dyYW0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VhcmNoUHJvZ3JhbVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0oaXRlbXM6IGFueVtdLCAuLi5hcmdzOiBhbnlbXSk6IGFueVtdIHtcclxuICAgIGxldCBzZWFyY2hUZXh0ID0gYXJnc1swXTtcclxuICAgIGNvbnN0IHNlYXJjaEtleSA9IGFyZ3NbMV07XHJcbiAgICBpZiAoIWl0ZW1zKSB7XHJcbiAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuICAgIGlmICghc2VhcmNoVGV4dCkge1xyXG4gICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICB9XHJcbiAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dD8udG9Mb3dlckNhc2UoKTtcclxuICAgIGlmIChpdGVtcz8ubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKGl0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoIXNlYXJjaEtleSkge1xyXG4gICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGl0KT8udG9Mb3dlckNhc2UoKT8uaW5jbHVkZXMoc2VhcmNoVGV4dCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChzZWFyY2hLZXkpIHtcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIGl0W3NlYXJjaEtleV0/LnRvU3RyaW5nKCk/LnRvTG93ZXJDYXNlKCk/LmluZGV4T2Yoc2VhcmNoVGV4dCkgPiAtMVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,25 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class SearchPipe {
4
- transform(value, args) {
5
- if (!value) {
6
- return null;
7
- }
8
- if (!args) {
9
- return value;
10
- }
11
- args = args.toLowerCase();
12
- return value.filter((item) => {
13
- return JSON.stringify(item).toLowerCase().includes(args);
14
- });
15
- }
16
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SearchPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
17
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SearchPipe, name: "search" });
18
- }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SearchPipe, decorators: [{
20
- type: Pipe,
21
- args: [{
22
- name: 'search'
23
- }]
24
- }] });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvcGlwZXMvc2VhcmNoLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxVQUFVO0lBRXJCLFNBQVMsQ0FBQyxLQUFVLEVBQUUsSUFBVTtRQUM5QixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUUxQixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUNoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FmVSxVQUFVO3NHQUFWLFVBQVU7OzRGQUFWLFVBQVU7a0JBSHRCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFFBQVE7aUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NlYXJjaCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlYXJjaFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGFyZ3M/OiBhbnkpOiBhbnkge1xyXG4gICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmICghYXJncykge1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgYXJncyA9IGFyZ3MudG9Mb3dlckNhc2UoKTtcclxuXHJcbiAgICByZXR1cm4gdmFsdWUuZmlsdGVyKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGl0ZW0pLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoYXJncyk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class TextCountPipe {
4
- transform(value, ...args) {
5
- const span = document.createElement('span');
6
- span.innerHTML = value;
7
- return span.textContent?.length || span.innerText.length;
8
- }
9
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TextCountPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TextCountPipe, name: "textCount" });
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TextCountPipe, decorators: [{
13
- type: Pipe,
14
- args: [{
15
- name: 'textCount'
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1jb3VudC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL2NyZWF0ZS1kYXNoYm9hcmQtY29udGFpbmVyL3BpcGVzL3RleHQtY291bnQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGFBQWE7SUFFeEIsU0FBUyxDQUFDLEtBQVUsRUFBRSxHQUFHLElBQVc7UUFDbEMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDO0lBQzNELENBQUM7d0dBTlUsYUFBYTtzR0FBYixhQUFhOzs0RkFBYixhQUFhO2tCQUh6QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxXQUFXO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAndGV4dENvdW50J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGV4dENvdW50UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICB0cmFuc2Zvcm0odmFsdWU6IGFueSwgLi4uYXJnczogYW55W10pOiBhbnkge1xyXG4gICAgY29uc3Qgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcclxuICAgIHNwYW4uaW5uZXJIVE1MID0gdmFsdWU7XHJcbiAgICByZXR1cm4gc3Bhbi50ZXh0Q29udGVudD8ubGVuZ3RoIHx8IHNwYW4uaW5uZXJUZXh0Lmxlbmd0aDtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,31 +0,0 @@
1
- // constants.ts
2
- export const PROGRAM_TABLE_HEADERS = [
3
- 'Program Name',
4
- 'Program Categories'
5
- ];
6
- export const PAGINATION_OPTIONS = {
7
- PAGE_SIZE: 30,
8
- DEFAULT_CURRENT_PAGE: 1
9
- };
10
- export const PROGRAM_TYPE_LIST = [
11
- { name: 'Regulations', id: 'regulations' },
12
- { name: 'Standards', id: 'standards' },
13
- { name: 'Internal Controls', id: 'internal_controls' },
14
- { name: 'Others', id: 'others' },
15
- ];
16
- export const PROGRAM_OBJECT = {
17
- regulations: 1,
18
- standards: 2,
19
- internal_controls: 3,
20
- others: 0,
21
- };
22
- export const PROGRAM_NO_DATA = {
23
- programList: 'No data to display.',
24
- categoryList: 'Select a Program to view </br> the associated sub-categories.',
25
- search: 'No results matched your search criteria.',
26
- };
27
- export const PROGRAM_LIST_API = {
28
- programList: 'sailsProgramList',
29
- categoryList: 'sailsProgramCategories',
30
- };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvcHJvZ3JhbS1saXN0L2NvbnN0YW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQWU7QUFDZixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUNqQyxjQUFjO0lBQ2Qsb0JBQW9CO0NBQ3JCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNoQyxTQUFTLEVBQUUsRUFBRTtJQUNiLG9CQUFvQixFQUFFLENBQUM7Q0FDeEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0lBQy9CLEVBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFDO0lBQ3hDLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFDO0lBQ3BDLEVBQUMsSUFBSSxFQUFFLG1CQUFtQixFQUFFLEVBQUUsRUFBRSxtQkFBbUIsRUFBQztJQUNwRCxFQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBQztDQUMvQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLFdBQVcsRUFBRSxDQUFDO0lBQ2QsU0FBUyxFQUFFLENBQUM7SUFDWixpQkFBaUIsRUFBRSxDQUFDO0lBQ3BCLE1BQU0sRUFBRSxDQUFDO0NBQ1YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixXQUFXLEVBQUUscUJBQXFCO0lBQ2xDLFlBQVksRUFBRSwrREFBK0Q7SUFDN0UsTUFBTSxFQUFFLDBDQUEwQztDQUNuRCxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsV0FBVyxFQUFFLGtCQUFrQjtJQUMvQixZQUFZLEVBQUUsd0JBQXdCO0NBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBjb25zdGFudHMudHNcclxuZXhwb3J0IGNvbnN0IFBST0dSQU1fVEFCTEVfSEVBREVSUyA9IFtcclxuICAgICdQcm9ncmFtIE5hbWUnLFxyXG4gICAgJ1Byb2dyYW0gQ2F0ZWdvcmllcydcclxuICBdO1xyXG4gIFxyXG4gIGV4cG9ydCBjb25zdCBQQUdJTkFUSU9OX09QVElPTlMgPSB7XHJcbiAgICBQQUdFX1NJWkU6IDMwLFxyXG4gICAgREVGQVVMVF9DVVJSRU5UX1BBR0U6IDFcclxuICB9O1xyXG5cclxuICBleHBvcnQgY29uc3QgUFJPR1JBTV9UWVBFX0xJU1QgPSBbXHJcbiAgICB7bmFtZTogJ1JlZ3VsYXRpb25zJywgaWQ6ICdyZWd1bGF0aW9ucyd9LFxyXG4gICAge25hbWU6ICdTdGFuZGFyZHMnLCBpZDogJ3N0YW5kYXJkcyd9LFxyXG4gICAge25hbWU6ICdJbnRlcm5hbCBDb250cm9scycsIGlkOiAnaW50ZXJuYWxfY29udHJvbHMnfSxcclxuICAgIHtuYW1lOiAnT3RoZXJzJywgaWQ6ICdvdGhlcnMnfSxcclxuICBdO1xyXG5cclxuICBleHBvcnQgY29uc3QgUFJPR1JBTV9PQkpFQ1QgPSB7XHJcbiAgICByZWd1bGF0aW9uczogMSxcclxuICAgIHN0YW5kYXJkczogMixcclxuICAgIGludGVybmFsX2NvbnRyb2xzOiAzLFxyXG4gICAgb3RoZXJzOiAwLFxyXG4gIH07XHJcblxyXG4gIGV4cG9ydCBjb25zdCBQUk9HUkFNX05PX0RBVEEgPSB7XHJcbiAgICBwcm9ncmFtTGlzdDogJ05vIGRhdGEgdG8gZGlzcGxheS4nLFxyXG4gICAgY2F0ZWdvcnlMaXN0OiAnU2VsZWN0IGEgUHJvZ3JhbSB0byB2aWV3IDwvYnI+IHRoZSBhc3NvY2lhdGVkIHN1Yi1jYXRlZ29yaWVzLicsXHJcbiAgICBzZWFyY2g6ICdObyByZXN1bHRzIG1hdGNoZWQgeW91ciBzZWFyY2ggY3JpdGVyaWEuJyxcclxuICB9XHJcblxyXG4gIGV4cG9ydCBjb25zdCBQUk9HUkFNX0xJU1RfQVBJID0ge1xyXG4gICAgcHJvZ3JhbUxpc3Q6ICdzYWlsc1Byb2dyYW1MaXN0JyxcclxuICAgIGNhdGVnb3J5TGlzdDogJ3NhaWxzUHJvZ3JhbUNhdGVnb3JpZXMnLFxyXG4gIH07XHJcbiAgXHJcbiJdfQ==
@@ -1,13 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class InformationBlockComponent {
4
- constructor() {
5
- }
6
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InformationBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InformationBlockComponent, selector: "app-information-block", ngImport: i0, template: "<div class=\"information-block vx-mb-3\">\r\n <div class=\"vx-d-flex\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-2\">\r\n This dashboard will display those items that have been assigned to both the selected Responsibility Center(s) and\r\n the Program(s)\r\n </div>\r\n\r\n </div>\r\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.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/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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .information-block{background:#f2f2f5;margin:-9px -18px 0;padding:1.5rem 2.5rem 1.25rem}::ng-deep .information-block.warning{background:#fcf2cf}::ng-deep .information-block .info{cursor:pointer;height:.75rem;margin:.125rem 0 0 1.5rem}::ng-deep .information-block-chip{background:#fff;border-radius:.125rem;border:1px solid #f4f8ff;box-shadow:0 0 2px #1e5dd326;height:1.5rem}::ng-deep .information-block-chip .value{color:#000;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .information-block-chip .preview-text{color:#000;position:relative}::ng-deep .information-block-chip .preview-text:before{background:#000;content:\"\";position:absolute;top:3px;left:0;width:1px;height:10px}\n"] });
8
- }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InformationBlockComponent, decorators: [{
10
- type: Component,
11
- args: [{ selector: 'app-information-block', template: "<div class=\"information-block vx-mb-3\">\r\n <div class=\"vx-d-flex\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-2\">\r\n This dashboard will display those items that have been assigned to both the selected Responsibility Center(s) and\r\n the Program(s)\r\n </div>\r\n\r\n </div>\r\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.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/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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.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-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .information-block{background:#f2f2f5;margin:-9px -18px 0;padding:1.5rem 2.5rem 1.25rem}::ng-deep .information-block.warning{background:#fcf2cf}::ng-deep .information-block .info{cursor:pointer;height:.75rem;margin:.125rem 0 0 1.5rem}::ng-deep .information-block-chip{background:#fff;border-radius:.125rem;border:1px solid #f4f8ff;box-shadow:0 0 2px #1e5dd326;height:1.5rem}::ng-deep .information-block-chip .value{color:#000;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .information-block-chip .preview-text{color:#000;position:relative}::ng-deep .information-block-chip .preview-text:before{background:#000;content:\"\";position:absolute;top:3px;left:0;width:1px;height:10px}\n"] }]
12
- }], ctorParameters: function () { return []; } });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mb3JtYXRpb24tYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL2NyZWF0ZS1kYXNoYm9hcmQtY29udGFpbmVyL3Byb2dyYW0tbGlzdC9pbmZvcm1hdGlvbi1ibG9jay9pbmZvcm1hdGlvbi1ibG9jay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvcHJvZ3JhbS1saXN0L2luZm9ybWF0aW9uLWJsb2NrL2luZm9ybWF0aW9uLWJsb2NrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTFDLE1BQU0sT0FBTyx5QkFBeUI7SUFFcEM7SUFDQSxDQUFDO3dHQUhVLHlCQUF5Qjs0RkFBekIseUJBQXlCLDZEQ1J0QyxvVkFRTTs7NEZEQU8seUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWluZm9ybWF0aW9uLWJsb2NrJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5mb3JtYXRpb24tYmxvY2suY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2luZm9ybWF0aW9uLWJsb2NrLmNvbXBvbmVudC5sZXNzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmZvcm1hdGlvbkJsb2NrQ29tcG9uZW50IHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImluZm9ybWF0aW9uLWJsb2NrIHZ4LW1iLTNcIj5cclxuICA8ZGl2IGNsYXNzPVwidngtZC1mbGV4XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC10dC11cHBlcmNhc2UgdngtbWItMlwiPlxyXG4gICAgICBUaGlzIGRhc2hib2FyZCB3aWxsIGRpc3BsYXkgdGhvc2UgaXRlbXMgdGhhdCBoYXZlIGJlZW4gYXNzaWduZWQgdG8gYm90aCB0aGUgc2VsZWN0ZWQgUmVzcG9uc2liaWxpdHkgQ2VudGVyKHMpIGFuZFxyXG4gICAgICB0aGUgUHJvZ3JhbShzKVxyXG4gICAgPC9kaXY+XHJcblxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi9jcmVhdGUtZGFzaGJvYXJkLWNvbnRhaW5lci9wcm9ncmFtLWxpc3QvaW50ZXJmYWNlcy9saXN0LWl0ZW0uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBsaXN0LWl0ZW0uaW50ZXJmYWNlLnRzXHJcbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEl0ZW0ge1xyXG4gICAgICBpZDogc3RyaW5nO1xyXG4gICAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICAgIHR5cGU6IFwicmVndWxhdGlvbnNcIiB8IFwic3RhbmRhcmRzXCIgfCBcImludGVybmFsX2NvbnRyb2xzXCIgfCBcIm90aGVyc1wiO1xyXG4gICAgICBcclxuICB9XHJcbiAgIl19