vc-create-dashboard 3.0.73 → 4.0.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 (153) hide show
  1. package/fesm2022/vc-create-dashboard.mjs +565 -580
  2. package/fesm2022/vc-create-dashboard.mjs.map +1 -1
  3. package/index.d.ts +1441 -3
  4. package/package.json +3 -5
  5. package/esm2022/lib/configurations.mjs +0 -7
  6. package/esm2022/lib/create-dashboard-container/categories/categories-config.mjs +0 -2
  7. package/esm2022/lib/create-dashboard-container/categories/categories.component.mjs +0 -212
  8. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.mjs +0 -560
  9. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.mjs +0 -2
  10. package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets.module.mjs +0 -47
  11. package/esm2022/lib/create-dashboard-container/constants/assets.constant.mjs +0 -36
  12. package/esm2022/lib/create-dashboard-container/create-dashboard-config.mjs +0 -2
  13. package/esm2022/lib/create-dashboard-container/create-dashboard.component.mjs +0 -1139
  14. package/esm2022/lib/create-dashboard-container/create-dashboard.module.mjs +0 -123
  15. package/esm2022/lib/create-dashboard-container/directives/directives.module.mjs +0 -24
  16. package/esm2022/lib/create-dashboard-container/directives/scroll-in-view.directive.mjs +0 -36
  17. package/esm2022/lib/create-dashboard-container/form-group/form-group.component.mjs +0 -153
  18. package/esm2022/lib/create-dashboard-container/frequency/frequency.component.mjs +0 -309
  19. package/esm2022/lib/create-dashboard-container/interfaces/widget-data-model.mjs +0 -2
  20. package/esm2022/lib/create-dashboard-container/pipes/filter.pipe.mjs +0 -30
  21. package/esm2022/lib/create-dashboard-container/pipes/search.pipe.mjs +0 -25
  22. package/esm2022/lib/create-dashboard-container/pipes/text-count.pipe.mjs +0 -19
  23. package/esm2022/lib/create-dashboard-container/responsibility-center/responsibility-center.component.mjs +0 -149
  24. package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories-config.mjs +0 -2
  25. package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories.component.mjs +0 -206
  26. package/esm2022/lib/create-dashboard-container/services/auth.service.mjs +0 -31
  27. package/esm2022/lib/create-dashboard-container/services/configure-widgets.service.mjs +0 -238
  28. package/esm2022/lib/create-dashboard-container/services/create-dashboard.service.mjs +0 -160
  29. package/esm2022/lib/create-dashboard-container/services/pagination.service.mjs +0 -28
  30. package/esm2022/lib/create-dashboard-container/services/urlConfig.service.mjs +0 -29
  31. package/esm2022/lib/create-dashboard-container/user-list/user-list.component.mjs +0 -440
  32. package/esm2022/lib/create-dashboard-container/user-list/user-list.config.mjs +0 -2
  33. package/esm2022/lib/create-dashboard.service.mjs +0 -14
  34. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.mjs +0 -52
  35. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer-config.mjs +0 -2
  36. package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer.module.mjs +0 -32
  37. package/esm2022/lib/ui-kit/dialog/dialog-config.mjs +0 -7
  38. package/esm2022/lib/ui-kit/dialog/dialog-injector.mjs +0 -17
  39. package/esm2022/lib/ui-kit/dialog/dialog-ref.mjs +0 -11
  40. package/esm2022/lib/ui-kit/dialog/dialog.component.mjs +0 -99
  41. package/esm2022/lib/ui-kit/dialog/dialog.module.mjs +0 -20
  42. package/esm2022/lib/ui-kit/dialog/dialog.service.mjs +0 -56
  43. package/esm2022/lib/ui-kit/dialog/insertion.directive.mjs +0 -17
  44. package/esm2022/lib/ui-kit/floating-bar/floating-bar.component.mjs +0 -57
  45. package/esm2022/lib/ui-kit/floating-bar/floating-bar.module.mjs +0 -32
  46. package/esm2022/lib/ui-kit/formgroup/click-outside.directive.mjs +0 -30
  47. package/esm2022/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +0 -29
  48. package/esm2022/lib/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +0 -34
  49. package/esm2022/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +0 -14
  50. package/esm2022/lib/ui-kit/formgroup/cs-select/cs-select.component.mjs +0 -119
  51. package/esm2022/lib/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +0 -39
  52. package/esm2022/lib/ui-kit/formgroup/formgroup.module.mjs +0 -55
  53. package/esm2022/lib/ui-kit/formgroup/pipes/pascal.pipe.mjs +0 -19
  54. package/esm2022/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +0 -24
  55. package/esm2022/lib/ui-kit/no-data/no-data.component.mjs +0 -47
  56. package/esm2022/lib/ui-kit/no-data/no-data.module.mjs +0 -18
  57. package/esm2022/lib/ui-kit/pagination/pagination.component.mjs +0 -130
  58. package/esm2022/lib/ui-kit/pagination/pagination.module.mjs +0 -18
  59. package/esm2022/lib/ui-kit/popover/popover.component.mjs +0 -129
  60. package/esm2022/lib/ui-kit/popover/popover.directive.mjs +0 -93
  61. package/esm2022/lib/ui-kit/popover/popover.module.mjs +0 -21
  62. package/esm2022/lib/ui-kit/popover/popover.service.mjs +0 -23
  63. package/esm2022/lib/ui-kit/select/cs-option/cs-option.component.mjs +0 -41
  64. package/esm2022/lib/ui-kit/select/cs-select/cs-select.component.mjs +0 -107
  65. package/esm2022/lib/ui-kit/select/safe-html.pipe.mjs +0 -21
  66. package/esm2022/lib/ui-kit/select/select.module.mjs +0 -21
  67. package/esm2022/lib/ui-kit/services/cs-select.service.mjs +0 -16
  68. package/esm2022/lib/ui-kit/smiley-dialog/smiley-dialog.component.mjs +0 -52
  69. package/esm2022/lib/ui-kit/smiley-dialog/smiley-dialog.module.mjs +0 -18
  70. package/esm2022/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.mjs +0 -46
  71. package/esm2022/lib/ui-kit/snack-bar/snack-bar.module.mjs +0 -18
  72. package/esm2022/lib/ui-kit/snack-bar/snack-bar.service.mjs +0 -23
  73. package/esm2022/lib/ui-kit/tooltip/tooltip.directive.mjs +0 -168
  74. package/esm2022/lib/ui-kit/tooltip/tooltip.module.mjs +0 -18
  75. package/esm2022/lib/ui-kit/v-loader/loader/loader.component.mjs +0 -24
  76. package/esm2022/lib/ui-kit/v-loader/loader-inline/loader-inline.component.mjs +0 -24
  77. package/esm2022/lib/ui-kit/v-loader/v-loader.module.mjs +0 -19
  78. package/esm2022/public-api.mjs +0 -10
  79. package/esm2022/vc-create-dashboard.mjs +0 -5
  80. package/lib/configurations.d.ts +0 -4
  81. package/lib/create-dashboard-container/categories/categories-config.d.ts +0 -18
  82. package/lib/create-dashboard-container/categories/categories.component.d.ts +0 -65
  83. package/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.d.ts +0 -96
  84. package/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.d.ts +0 -9
  85. package/lib/create-dashboard-container/configure-widgets/configure-widgets.module.d.ts +0 -14
  86. package/lib/create-dashboard-container/constants/assets.constant.d.ts +0 -34
  87. package/lib/create-dashboard-container/create-dashboard-config.d.ts +0 -18
  88. package/lib/create-dashboard-container/create-dashboard.component.d.ts +0 -180
  89. package/lib/create-dashboard-container/create-dashboard.module.d.ts +0 -36
  90. package/lib/create-dashboard-container/directives/directives.module.d.ts +0 -8
  91. package/lib/create-dashboard-container/directives/scroll-in-view.directive.d.ts +0 -12
  92. package/lib/create-dashboard-container/form-group/form-group.component.d.ts +0 -48
  93. package/lib/create-dashboard-container/frequency/frequency.component.d.ts +0 -39
  94. package/lib/create-dashboard-container/interfaces/widget-data-model.d.ts +0 -8
  95. package/lib/create-dashboard-container/pipes/filter.pipe.d.ts +0 -7
  96. package/lib/create-dashboard-container/pipes/search.pipe.d.ts +0 -7
  97. package/lib/create-dashboard-container/pipes/text-count.pipe.d.ts +0 -7
  98. package/lib/create-dashboard-container/responsibility-center/responsibility-center.component.d.ts +0 -61
  99. package/lib/create-dashboard-container/risk-categories/risk-categories-config.d.ts +0 -18
  100. package/lib/create-dashboard-container/risk-categories/risk-categories.component.d.ts +0 -65
  101. package/lib/create-dashboard-container/services/auth.service.d.ts +0 -11
  102. package/lib/create-dashboard-container/services/configure-widgets.service.d.ts +0 -23
  103. package/lib/create-dashboard-container/services/create-dashboard.service.d.ts +0 -45
  104. package/lib/create-dashboard-container/services/pagination.service.d.ts +0 -12
  105. package/lib/create-dashboard-container/services/urlConfig.service.d.ts +0 -10
  106. package/lib/create-dashboard-container/user-list/user-list.component.d.ts +0 -122
  107. package/lib/create-dashboard-container/user-list/user-list.config.d.ts +0 -13
  108. package/lib/create-dashboard.service.d.ts +0 -6
  109. package/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.d.ts +0 -17
  110. package/lib/ui-kit/dashboard-footer/dashboard-footer-config.d.ts +0 -11
  111. package/lib/ui-kit/dashboard-footer/dashboard-footer.module.d.ts +0 -10
  112. package/lib/ui-kit/dialog/dialog-config.d.ts +0 -6
  113. package/lib/ui-kit/dialog/dialog-injector.d.ts +0 -7
  114. package/lib/ui-kit/dialog/dialog-ref.d.ts +0 -7
  115. package/lib/ui-kit/dialog/dialog.component.d.ts +0 -33
  116. package/lib/ui-kit/dialog/dialog.module.d.ts +0 -9
  117. package/lib/ui-kit/dialog/dialog.service.d.ts +0 -17
  118. package/lib/ui-kit/dialog/insertion.directive.d.ts +0 -8
  119. package/lib/ui-kit/floating-bar/floating-bar.component.d.ts +0 -20
  120. package/lib/ui-kit/floating-bar/floating-bar.module.d.ts +0 -10
  121. package/lib/ui-kit/formgroup/click-outside.directive.d.ts +0 -10
  122. package/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.d.ts +0 -13
  123. package/lib/ui-kit/formgroup/cs-radio/cs-radio.component.d.ts +0 -15
  124. package/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.d.ts +0 -8
  125. package/lib/ui-kit/formgroup/cs-select/cs-select.component.d.ts +0 -36
  126. package/lib/ui-kit/formgroup/cs-switch/cs-switch.component.d.ts +0 -15
  127. package/lib/ui-kit/formgroup/formgroup.module.d.ts +0 -17
  128. package/lib/ui-kit/formgroup/pipes/pascal.pipe.d.ts +0 -7
  129. package/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.d.ts +0 -7
  130. package/lib/ui-kit/no-data/no-data.component.d.ts +0 -19
  131. package/lib/ui-kit/no-data/no-data.module.d.ts +0 -8
  132. package/lib/ui-kit/pagination/pagination.component.d.ts +0 -21
  133. package/lib/ui-kit/pagination/pagination.module.d.ts +0 -8
  134. package/lib/ui-kit/popover/popover.component.d.ts +0 -28
  135. package/lib/ui-kit/popover/popover.directive.d.ts +0 -17
  136. package/lib/ui-kit/popover/popover.module.d.ts +0 -9
  137. package/lib/ui-kit/popover/popover.service.d.ts +0 -13
  138. package/lib/ui-kit/select/cs-option/cs-option.component.d.ts +0 -16
  139. package/lib/ui-kit/select/cs-select/cs-select.component.d.ts +0 -32
  140. package/lib/ui-kit/select/safe-html.pipe.d.ts +0 -10
  141. package/lib/ui-kit/select/select.module.d.ts +0 -11
  142. package/lib/ui-kit/services/cs-select.service.d.ts +0 -7
  143. package/lib/ui-kit/smiley-dialog/smiley-dialog.component.d.ts +0 -17
  144. package/lib/ui-kit/smiley-dialog/smiley-dialog.module.d.ts +0 -8
  145. package/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.d.ts +0 -17
  146. package/lib/ui-kit/snack-bar/snack-bar.module.d.ts +0 -8
  147. package/lib/ui-kit/snack-bar/snack-bar.service.d.ts +0 -9
  148. package/lib/ui-kit/tooltip/tooltip.directive.d.ts +0 -28
  149. package/lib/ui-kit/tooltip/tooltip.module.d.ts +0 -8
  150. package/lib/ui-kit/v-loader/loader/loader.component.d.ts +0 -11
  151. package/lib/ui-kit/v-loader/loader-inline/loader-inline.component.d.ts +0 -11
  152. package/lib/ui-kit/v-loader/v-loader.module.d.ts +0 -9
  153. package/public-api.d.ts +0 -3
@@ -1,238 +0,0 @@
1
- import { Injectable, Optional } from '@angular/core';
2
- import { HttpHeaders, } from '@angular/common/http';
3
- import { retry } from 'rxjs/operators';
4
- import { ASSETS } from '../constants/assets.constant';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common/http";
7
- import * as i2 from "./auth.service";
8
- import * as i3 from "../../configurations";
9
- export class ConfigureWidgetsService {
10
- http;
11
- authService;
12
- env;
13
- constructor(http, authService, config) {
14
- this.http = http;
15
- this.authService = authService;
16
- if (config) {
17
- this.env = config.envConfig;
18
- }
19
- }
20
- // complianceWidgetsData = [
21
- // {
22
- // title: 'Overview',
23
- // id: 'overview_flag',
24
- // description:
25
- // 'Displays all responsibilities that have been assigned to you.',
26
- // widgetImage: ASSETS.overviewWidget,
27
- // value: 0,
28
- // },
29
- // {
30
- // title: 'Responsibility Calendar',
31
- // id: 'compliance_calendar_flag',
32
- // description:
33
- // 'Displays all responsibilities that are due on a particular day.',
34
- // widgetImage: ASSETS.responsibilityCalenderWidget,
35
- // value: 0,
36
- // },
37
- // {
38
- // title: 'Responsibility Center Overview',
39
- // id: 'responsibility_center_overview_flag',
40
- // description:
41
- // 'Displays all responsibilities that have been assigned to you.',
42
- // widgetImage: ASSETS.overviewWidget,
43
- // value: 0,
44
- // },
45
- // {
46
- // title: 'My Responsibilities',
47
- // id: 'my_responsibilities',
48
- // description:
49
- // 'Displays all responsibilities that have been assigned to you.',
50
- // widgetImage: ASSETS.myResponsibilitiesWidget,
51
- // tabOption: true,
52
- // value: 0,
53
- // },
54
- // {
55
- // title: 'Key Responsibilities',
56
- // id: 'key_responsibilities',
57
- // description:
58
- // 'Displays all responsibilities that are due on a particular day.',
59
- // widgetImage: ASSETS.keyResponsibilitiesWidget,
60
- // tabOption: true,
61
- // value: 0,
62
- // },
63
- // {
64
- // title: 'Trend Analysis',
65
- // id: 'trend_analysis_flag',
66
- // description:
67
- // 'Displays all responsibilities that have been assigned to you.',
68
- // widgetImage: ASSETS.trendAnalysisWidget,
69
- // value: 0,
70
- // },
71
- // {
72
- // title: 'Workroom Updates',
73
- // id: 'workroom_alert_flag',
74
- // description:
75
- // 'Displays all responsibilities that have been assigned to you.',
76
- // widgetImage: ASSETS.workroomUpdatesWidget,
77
- // value: 0,
78
- // },
79
- // {
80
- // title: 'Recent Activities',
81
- // id: 'recent_activity_flag',
82
- // description:
83
- // 'Displays all responsibilities that have been assigned to you.',
84
- // widgetImage: ASSETS.recentActivitiesWidget,
85
- // value: 0,
86
- // },
87
- // {
88
- // title: 'Exception Summary',
89
- // id: 'exception_summary_flag',
90
- // description:
91
- // 'Displays all responsibilities that have been assigned to you.',
92
- // widgetImage: ASSETS.exceptionSummaryWidget,
93
- // value: 0,
94
- // },
95
- // ];
96
- riskWidgetsData = [
97
- {
98
- title: 'Risk Overview',
99
- id: 'risk_overview',
100
- description: 'description',
101
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/risk-overview.png',
102
- widgetImage: ASSETS.riskOverviewWidget,
103
- value: 0,
104
- },
105
- {
106
- title: 'Risk Appetite & Tolerance',
107
- id: 'risk_appetite_tolerance',
108
- description: 'description',
109
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/appetite-tolerance.png',
110
- widgetImage: ASSETS.appetiteToleranceWidget,
111
- value: 0,
112
- },
113
- {
114
- title: 'Risk Ratings',
115
- id: 'risk_ratings',
116
- description: 'Description.',
117
- widgetImage: ASSETS.appetite_tolerance,
118
- value: 0,
119
- },
120
- {
121
- title: 'Risks Without Controls',
122
- id: 'risks_without_controls',
123
- description: 'Description',
124
- widgetImage: ASSETS.appetite_tolerance,
125
- value: 0,
126
- },
127
- {
128
- title: 'Risks Exceeding Risk Tolerance',
129
- id: 'exceeds_risk_tolerance',
130
- description: 'description',
131
- widgetImage: ASSETS.appetite_tolerance,
132
- value: 0,
133
- },
134
- {
135
- title: 'Inherent Risk Rating by Responsibility Centers ',
136
- id: 'inherent_risk_rating_by_responsibility_centers',
137
- description: 'Description.',
138
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/inherent-RC.png',
139
- widgetImage: ASSETS.inherentRCWidget,
140
- value: 0,
141
- },
142
- {
143
- title: 'Residual Risk Rating by Responsibility Centers ',
144
- id: 'residual_risk_rating_by_responsibility_centers',
145
- description: 'Description.',
146
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/residual-RC.png',
147
- widgetImage: ASSETS.residualRCWidget,
148
- value: 0,
149
- },
150
- {
151
- title: 'Risk Category Overview',
152
- id: 'risk_category_overview',
153
- description: 'description',
154
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/risk-category-overview.png',
155
- widgetImage: ASSETS.riskCategoryOverviewWidget,
156
- value: 0,
157
- },
158
- {
159
- title: 'Risk Heatmap',
160
- id: 'risk_heatmap',
161
- description: 'Description.',
162
- widgetImage: ASSETS.riskHeatmapWidget,
163
- value: 0,
164
- },
165
- {
166
- title: 'Inherent Risk Rating by Categories',
167
- id: 'inherent_risk_rating_by_categories',
168
- description: 'Description.',
169
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/inherent-categories.png',
170
- widgetImage: ASSETS.inherentCategoriesWidget,
171
- value: 0,
172
- },
173
- {
174
- title: 'Residual Risk Rating by Categories',
175
- id: 'residual_risk_rating_by_categories',
176
- description: 'description',
177
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/residual-categories.png',
178
- widgetImage: ASSETS.residualCategoriesWidget,
179
- value: 0,
180
- },
181
- {
182
- title: 'Inherent Risk Rating Trend by Responsibility Centers',
183
- id: 'inherent_risk_rating_trend_by_responsibility_centers',
184
- description: 'Description.',
185
- widgetImage: ASSETS.inherent_trend,
186
- value: 0,
187
- },
188
- {
189
- title: 'Residual Risk Rating Trend by Responsibility Centers',
190
- id: 'residual_risk_rating_trend_by_responsibility_centers',
191
- description: 'Description.',
192
- widgetImage: ASSETS.residual_trend,
193
- value: 0,
194
- },
195
- {
196
- title: 'Risk Rating Trend by Categories',
197
- id: 'risk_rating_trend_by_categories',
198
- description: 'Description.',
199
- widgetImage: ASSETS.risk_trend,
200
- value: 0,
201
- },
202
- {
203
- title: 'Top 5 Risk Ratings',
204
- id: 'top_5_residual_risk_ratings',
205
- description: 'Description.',
206
- // widgetImage: 'https://cdn.v-comply.com/libraries/configure-widget/assets/images/5-risk-ratings.png',
207
- widgetImage: ASSETS.tenRiskRatingsWidget,
208
- value: 0,
209
- },
210
- ];
211
- auditWidgetsData = [];
212
- policyWidgetsData = [];
213
- // For dashboard view
214
- dashBoardWidgetUpdate(widGetJson) {
215
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
216
- return this.http
217
- .put(this.env.OrganizationPut + 'dashboardWidgets', widGetJson)
218
- .pipe(retry(2));
219
- }
220
- moduleType(identifier) {
221
- if (JSON.stringify(this.riskWidgetsData).includes(identifier)) {
222
- return 'RISK';
223
- // } else if (JSON.stringify(this.complianceWidgetsData).includes(identifier)) {
224
- // return 'COMPLIANCE';
225
- }
226
- }
227
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfigureWidgetsService, deps: [{ token: i1.HttpClient }, { token: i2.AuthService }, { token: i3.Configurations, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
228
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfigureWidgetsService, providedIn: 'root' });
229
- }
230
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfigureWidgetsService, decorators: [{
231
- type: Injectable,
232
- args: [{
233
- providedIn: 'root',
234
- }]
235
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.AuthService }, { type: i3.Configurations, decorators: [{
236
- type: Optional
237
- }] }]; } });
238
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlLXdpZGdldHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi9jcmVhdGUtZGFzaGJvYXJkLWNvbnRhaW5lci9zZXJ2aWNlcy9jb25maWd1cmUtd2lkZ2V0cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFFTCxXQUFXLEdBRVosTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQW1CLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBS3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7QUFLdEQsTUFBTSxPQUFPLHVCQUF1QjtJQUl4QjtJQUNBO0lBSkgsR0FBRyxDQUFPO0lBRWpCLFlBQ1UsSUFBZ0IsRUFDaEIsV0FBd0IsRUFDcEIsTUFBdUI7UUFGM0IsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUdoQyxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRCw0QkFBNEI7SUFDNUIsTUFBTTtJQUNOLHlCQUF5QjtJQUN6QiwyQkFBMkI7SUFDM0IsbUJBQW1CO0lBQ25CLHlFQUF5RTtJQUN6RSwwQ0FBMEM7SUFDMUMsZ0JBQWdCO0lBQ2hCLE9BQU87SUFDUCxNQUFNO0lBQ04sd0NBQXdDO0lBQ3hDLHNDQUFzQztJQUN0QyxtQkFBbUI7SUFDbkIsMkVBQTJFO0lBQzNFLHdEQUF3RDtJQUN4RCxnQkFBZ0I7SUFDaEIsT0FBTztJQUNQLE1BQU07SUFDTiwrQ0FBK0M7SUFDL0MsaURBQWlEO0lBQ2pELG1CQUFtQjtJQUNuQix5RUFBeUU7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QUUsQ0FBQztTQUNUO0tBQ0YsQ0FBQztJQUNGLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUN0QixpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFFdkIscUJBQXFCO0lBQ3JCLHFCQUFxQixDQUFDLFVBQWU7UUFDbkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQ25DLE9BQU8sRUFDUCxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQ3pDLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxHQUFHLGtCQUFrQixFQUFFLFVBQVUsQ0FBQzthQUM5RCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxVQUFrQjtRQUMzQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM3RCxPQUFPLE1BQU0sQ0FBQztZQUNoQixnRkFBZ0Y7WUFDaEYseUJBQXlCO1NBQ3hCO0lBQ0gsQ0FBQzt3R0FsT1UsdUJBQXVCOzRHQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTs7NEZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT0ksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB3aWRnZXREYXRhTW9kZWwgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3dpZGdldC1kYXRhLW1vZGVsJztcbmltcG9ydCB7XG4gIEh0dHBDbGllbnQsXG4gIEh0dHBIZWFkZXJzLFxuICBKc29ucENsaWVudEJhY2tlbmQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgcmV0cnkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBKd3RIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQGF1dGgwL2FuZ3VsYXItand0JztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMnO1xuaW1wb3J0IHsgQVNTRVRTIH0gZnJvbSAnLi4vY29uc3RhbnRzL2Fzc2V0cy5jb25zdGFudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBDb25maWd1cmVXaWRnZXRzU2VydmljZSB7XG4gIHB1YmxpYyBlbnYhOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIGNvbmZpZz86IENvbmZpZ3VyYXRpb25zXG4gICkge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMuZW52ID0gY29uZmlnLmVudkNvbmZpZztcbiAgICB9XG4gIH1cblxuICAvLyBjb21wbGlhbmNlV2lkZ2V0c0RhdGEgPSBbXG4gIC8vICAge1xuICAvLyAgICAgdGl0bGU6ICdPdmVydmlldycsXG4gIC8vICAgICBpZDogJ292ZXJ2aWV3X2ZsYWcnLFxuICAvLyAgICAgZGVzY3JpcHRpb246XG4gIC8vICAgICAgICdEaXNwbGF5cyBhbGwgcmVzcG9uc2liaWxpdGllcyB0aGF0IGhhdmUgYmVlbiBhc3NpZ25lZCB0byB5b3UuJyxcbiAgLy8gICAgIHdpZGdldEltYWdlOiBBU1NFVFMub3ZlcnZpZXdXaWRnZXQsXG4gIC8vICAgICB2YWx1ZTogMCxcbiAgLy8gICB9LFxuICAvLyAgIHtcbiAgLy8gICAgIHRpdGxlOiAnUmVzcG9uc2liaWxpdHkgQ2FsZW5kYXInLFxuICAvLyAgICAgaWQ6ICdjb21wbGlhbmNlX2NhbGVuZGFyX2ZsYWcnLFxuICAvLyAgICAgZGVzY3JpcHRpb246XG4gIC8vICAgICAgICdEaXNwbGF5cyBhbGwgcmVzcG9uc2liaWxpdGllcyB0aGF0IGFyZSBkdWUgb24gYSBwYXJ0aWN1bGFyIGRheS4nLFxuICAvLyAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5yZXNwb25zaWJpbGl0eUNhbGVuZGVyV2lkZ2V0LFxuICAvLyAgICAgdmFsdWU6IDAsXG4gIC8vICAgfSxcbiAgLy8gICB7XG4gIC8vICAgICB0aXRsZTogJ1Jlc3BvbnNpYmlsaXR5IENlbnRlciBPdmVydmlldycsXG4gIC8vICAgICBpZDogJ3Jlc3BvbnNpYmlsaXR5X2NlbnRlcl9vdmVydmlld19mbGFnJyxcbiAgLy8gICAgIGRlc2NyaXB0aW9uOlxuICAvLyAgICAgICAnRGlzcGxheXMgYWxsIHJlc3BvbnNpYmlsaXRpZXMgdGhhdCBoYXZlIGJlZW4gYXNzaWduZWQgdG8geW91LicsXG4gIC8vICAgICB3aWRnZXRJbWFnZTogQVNTRVRTLm92ZXJ2aWV3V2lkZ2V0LFxuICAvLyAgICAgdmFsdWU6IDAsXG4gIC8vICAgfSxcbiAgLy8gICB7XG4gIC8vICAgICB0aXRsZTogJ015IFJlc3BvbnNpYmlsaXRpZXMnLFxuICAvLyAgICAgaWQ6ICdteV9yZXNwb25zaWJpbGl0aWVzJyxcbiAgLy8gICAgIGRlc2NyaXB0aW9uOlxuICAvLyAgICAgICAnRGlzcGxheXMgYWxsIHJlc3BvbnNpYmlsaXRpZXMgdGhhdCBoYXZlIGJlZW4gYXNzaWduZWQgdG8geW91LicsXG4gIC8vICAgICB3aWRnZXRJbWFnZTogQVNTRVRTLm15UmVzcG9uc2liaWxpdGllc1dpZGdldCxcbiAgLy8gICAgIHRhYk9wdGlvbjogdHJ1ZSxcbiAgLy8gICAgIHZhbHVlOiAwLFxuICAvLyAgIH0sXG4gIC8vICAge1xuICAvLyAgICAgdGl0bGU6ICdLZXkgUmVzcG9uc2liaWxpdGllcycsXG4gIC8vICAgICBpZDogJ2tleV9yZXNwb25zaWJpbGl0aWVzJyxcbiAgLy8gICAgIGRlc2NyaXB0aW9uOlxuICAvLyAgICAgICAnRGlzcGxheXMgYWxsIHJlc3BvbnNpYmlsaXRpZXMgdGhhdCBhcmUgZHVlIG9uIGEgcGFydGljdWxhciBkYXkuJyxcbiAgLy8gICAgIHdpZGdldEltYWdlOiBBU1NFVFMua2V5UmVzcG9uc2liaWxpdGllc1dpZGdldCxcbiAgLy8gICAgIHRhYk9wdGlvbjogdHJ1ZSxcbiAgLy8gICAgIHZhbHVlOiAwLFxuICAvLyAgIH0sXG4gIC8vICAge1xuICAvLyAgICAgdGl0bGU6ICdUcmVuZCBBbmFseXNpcycsXG4gIC8vICAgICBpZDogJ3RyZW5kX2FuYWx5c2lzX2ZsYWcnLFxuICAvLyAgICAgZGVzY3JpcHRpb246XG4gIC8vICAgICAgICdEaXNwbGF5cyBhbGwgcmVzcG9uc2liaWxpdGllcyB0aGF0IGhhdmUgYmVlbiBhc3NpZ25lZCB0byB5b3UuJyxcbiAgLy8gICAgIHdpZGdldEltYWdlOiBBU1NFVFMudHJlbmRBbmFseXNpc1dpZGdldCxcbiAgLy8gICAgIHZhbHVlOiAwLFxuICAvLyAgIH0sXG4gIC8vICAge1xuICAvLyAgICAgdGl0bGU6ICdXb3Jrcm9vbSBVcGRhdGVzJyxcbiAgLy8gICAgIGlkOiAnd29ya3Jvb21fYWxlcnRfZmxhZycsXG4gIC8vICAgICBkZXNjcmlwdGlvbjpcbiAgLy8gICAgICAgJ0Rpc3BsYXlzIGFsbCByZXNwb25zaWJpbGl0aWVzIHRoYXQgaGF2ZSBiZWVuIGFzc2lnbmVkIHRvIHlvdS4nLFxuICAvLyAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy53b3Jrcm9vbVVwZGF0ZXNXaWRnZXQsXG4gIC8vICAgICB2YWx1ZTogMCxcbiAgLy8gICB9LFxuICAvLyAgIHtcbiAgLy8gICAgIHRpdGxlOiAnUmVjZW50IEFjdGl2aXRpZXMnLFxuICAvLyAgICAgaWQ6ICdyZWNlbnRfYWN0aXZpdHlfZmxhZycsXG4gIC8vICAgICBkZXNjcmlwdGlvbjpcbiAgLy8gICAgICAgJ0Rpc3BsYXlzIGFsbCByZXNwb25zaWJpbGl0aWVzIHRoYXQgaGF2ZSBiZWVuIGFzc2lnbmVkIHRvIHlvdS4nLFxuICAvLyAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5yZWNlbnRBY3Rpdml0aWVzV2lkZ2V0LFxuICAvLyAgICAgdmFsdWU6IDAsXG4gIC8vICAgfSxcbiAgLy8gICB7XG4gIC8vICAgICB0aXRsZTogJ0V4Y2VwdGlvbiBTdW1tYXJ5JyxcbiAgLy8gICAgIGlkOiAnZXhjZXB0aW9uX3N1bW1hcnlfZmxhZycsXG4gIC8vICAgICBkZXNjcmlwdGlvbjpcbiAgLy8gICAgICAgJ0Rpc3BsYXlzIGFsbCByZXNwb25zaWJpbGl0aWVzIHRoYXQgaGF2ZSBiZWVuIGFzc2lnbmVkIHRvIHlvdS4nLFxuICAvLyAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5leGNlcHRpb25TdW1tYXJ5V2lkZ2V0LFxuICAvLyAgICAgdmFsdWU6IDAsXG4gIC8vICAgfSxcbiAgLy8gXTtcblxuICByaXNrV2lkZ2V0c0RhdGEgPSBbXG4gICAge1xuICAgICAgdGl0bGU6ICdSaXNrIE92ZXJ2aWV3JyxcbiAgICAgIGlkOiAncmlza19vdmVydmlldycsXG4gICAgICBkZXNjcmlwdGlvbjogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgIC8vIHdpZGdldEltYWdlOiAnaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy9jb25maWd1cmUtd2lkZ2V0L2Fzc2V0cy9pbWFnZXMvcmlzay1vdmVydmlldy5wbmcnLFxuICAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5yaXNrT3ZlcnZpZXdXaWRnZXQsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiAnUmlzayBBcHBldGl0ZSAmIFRvbGVyYW5jZScsXG4gICAgICBpZDogJ3Jpc2tfYXBwZXRpdGVfdG9sZXJhbmNlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnZGVzY3JpcHRpb24nLFxuICAgICAgLy8gd2lkZ2V0SW1hZ2U6ICdodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL2NvbmZpZ3VyZS13aWRnZXQvYXNzZXRzL2ltYWdlcy9hcHBldGl0ZS10b2xlcmFuY2UucG5nJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMuYXBwZXRpdGVUb2xlcmFuY2VXaWRnZXQsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiAnUmlzayBSYXRpbmdzJyxcbiAgICAgIGlkOiAncmlza19yYXRpbmdzJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24uJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMuYXBwZXRpdGVfdG9sZXJhbmNlLFxuICAgICAgdmFsdWU6IDAsXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogJ1Jpc2tzIFdpdGhvdXQgQ29udHJvbHMnLFxuICAgICAgaWQ6ICdyaXNrc193aXRob3V0X2NvbnRyb2xzJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5hcHBldGl0ZV90b2xlcmFuY2UsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiAnUmlza3MgRXhjZWVkaW5nIFJpc2sgVG9sZXJhbmNlJyxcbiAgICAgIGlkOiAnZXhjZWVkc19yaXNrX3RvbGVyYW5jZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMuYXBwZXRpdGVfdG9sZXJhbmNlLFxuICAgICAgdmFsdWU6IDAsXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogJ0luaGVyZW50IFJpc2sgUmF0aW5nIGJ5IFJlc3BvbnNpYmlsaXR5IENlbnRlcnMgJyxcbiAgICAgIGlkOiAnaW5oZXJlbnRfcmlza19yYXRpbmdfYnlfcmVzcG9uc2liaWxpdHlfY2VudGVycycsXG4gICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uLicsXG4gICAgICAvLyB3aWRnZXRJbWFnZTogJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvY29uZmlndXJlLXdpZGdldC9hc3NldHMvaW1hZ2VzL2luaGVyZW50LVJDLnBuZycsXG4gICAgICB3aWRnZXRJbWFnZTogQVNTRVRTLmluaGVyZW50UkNXaWRnZXQsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiAnUmVzaWR1YWwgUmlzayBSYXRpbmcgYnkgUmVzcG9uc2liaWxpdHkgQ2VudGVycyAnLFxuICAgICAgaWQ6ICdyZXNpZHVhbF9yaXNrX3JhdGluZ19ieV9yZXNwb25zaWJpbGl0eV9jZW50ZXJzJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24uJyxcbiAgICAgIC8vIHdpZGdldEltYWdlOiAnaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy9jb25maWd1cmUtd2lkZ2V0L2Fzc2V0cy9pbWFnZXMvcmVzaWR1YWwtUkMucG5nJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMucmVzaWR1YWxSQ1dpZGdldCxcbiAgICAgIHZhbHVlOiAwLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6ICdSaXNrIENhdGVnb3J5IE92ZXJ2aWV3JyxcbiAgICAgIGlkOiAncmlza19jYXRlZ29yeV9vdmVydmlldycsXG4gICAgICBkZXNjcmlwdGlvbjogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgIC8vIHdpZGdldEltYWdlOiAnaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy9jb25maWd1cmUtd2lkZ2V0L2Fzc2V0cy9pbWFnZXMvcmlzay1jYXRlZ29yeS1vdmVydmlldy5wbmcnLFxuICAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5yaXNrQ2F0ZWdvcnlPdmVydmlld1dpZGdldCxcbiAgICAgIHZhbHVlOiAwLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6ICdSaXNrIEhlYXRtYXAnLFxuICAgICAgaWQ6ICdyaXNrX2hlYXRtYXAnLFxuICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbi4nLFxuICAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5yaXNrSGVhdG1hcFdpZGdldCxcbiAgICAgIHZhbHVlOiAwLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6ICdJbmhlcmVudCBSaXNrIFJhdGluZyBieSBDYXRlZ29yaWVzJyxcbiAgICAgIGlkOiAnaW5oZXJlbnRfcmlza19yYXRpbmdfYnlfY2F0ZWdvcmllcycsXG4gICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uLicsXG4gICAgICAvLyB3aWRnZXRJbWFnZTogJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvY29uZmlndXJlLXdpZGdldC9hc3NldHMvaW1hZ2VzL2luaGVyZW50LWNhdGVnb3JpZXMucG5nJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMuaW5oZXJlbnRDYXRlZ29yaWVzV2lkZ2V0LFxuICAgICAgdmFsdWU6IDAsXG4gICAgfSxcblxuICAgIHtcbiAgICAgIHRpdGxlOiAnUmVzaWR1YWwgUmlzayBSYXRpbmcgYnkgQ2F0ZWdvcmllcycsXG4gICAgICBpZDogJ3Jlc2lkdWFsX3Jpc2tfcmF0aW5nX2J5X2NhdGVnb3JpZXMnLFxuICAgICAgZGVzY3JpcHRpb246ICdkZXNjcmlwdGlvbicsXG4gICAgICAvLyB3aWRnZXRJbWFnZTogJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvY29uZmlndXJlLXdpZGdldC9hc3NldHMvaW1hZ2VzL3Jlc2lkdWFsLWNhdGVnb3JpZXMucG5nJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMucmVzaWR1YWxDYXRlZ29yaWVzV2lkZ2V0LFxuICAgICAgdmFsdWU6IDAsXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogJ0luaGVyZW50IFJpc2sgUmF0aW5nIFRyZW5kIGJ5IFJlc3BvbnNpYmlsaXR5IENlbnRlcnMnLFxuICAgICAgaWQ6ICdpbmhlcmVudF9yaXNrX3JhdGluZ190cmVuZF9ieV9yZXNwb25zaWJpbGl0eV9jZW50ZXJzJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24uJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMuaW5oZXJlbnRfdHJlbmQsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiAnUmVzaWR1YWwgUmlzayBSYXRpbmcgVHJlbmQgYnkgUmVzcG9uc2liaWxpdHkgQ2VudGVycycsXG4gICAgICBpZDogJ3Jlc2lkdWFsX3Jpc2tfcmF0aW5nX3RyZW5kX2J5X3Jlc3BvbnNpYmlsaXR5X2NlbnRlcnMnLFxuICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbi4nLFxuICAgICAgd2lkZ2V0SW1hZ2U6IEFTU0VUUy5yZXNpZHVhbF90cmVuZCxcbiAgICAgIHZhbHVlOiAwLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6ICdSaXNrIFJhdGluZyBUcmVuZCBieSBDYXRlZ29yaWVzJyxcbiAgICAgIGlkOiAncmlza19yYXRpbmdfdHJlbmRfYnlfY2F0ZWdvcmllcycsXG4gICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uLicsXG4gICAgICB3aWRnZXRJbWFnZTogQVNTRVRTLnJpc2tfdHJlbmQsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiAnVG9wIDUgUmlzayBSYXRpbmdzJyxcbiAgICAgIGlkOiAndG9wXzVfcmVzaWR1YWxfcmlza19yYXRpbmdzJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24uJyxcbiAgICAgIC8vIHdpZGdldEltYWdlOiAnaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy9jb25maWd1cmUtd2lkZ2V0L2Fzc2V0cy9pbWFnZXMvNS1yaXNrLXJhdGluZ3MucG5nJyxcbiAgICAgIHdpZGdldEltYWdlOiBBU1NFVFMudGVuUmlza1JhdGluZ3NXaWRnZXQsXG4gICAgICB2YWx1ZTogMCxcbiAgICB9LFxuICBdO1xuICBhdWRpdFdpZGdldHNEYXRhID0gW107XG4gIHBvbGljeVdpZGdldHNEYXRhID0gW107XG5cbiAgLy8gRm9yIGRhc2hib2FyZCB2aWV3XG4gIGRhc2hCb2FyZFdpZGdldFVwZGF0ZSh3aWRHZXRKc29uOiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wdXQodGhpcy5lbnYuT3JnYW5pemF0aW9uUHV0ICsgJ2Rhc2hib2FyZFdpZGdldHMnLCB3aWRHZXRKc29uKVxuICAgICAgLnBpcGUocmV0cnkoMikpO1xuICB9XG5cbiAgbW9kdWxlVHlwZShpZGVudGlmaWVyOiBzdHJpbmcpIHtcbiAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy5yaXNrV2lkZ2V0c0RhdGEpLmluY2x1ZGVzKGlkZW50aWZpZXIpKSB7XG4gICAgICByZXR1cm4gJ1JJU0snO1xuICAgIC8vIH0gZWxzZSBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy5jb21wbGlhbmNlV2lkZ2V0c0RhdGEpLmluY2x1ZGVzKGlkZW50aWZpZXIpKSB7XG4gICAgLy8gICByZXR1cm4gJ0NPTVBMSUFOQ0UnO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,160 +0,0 @@
1
- import { HttpHeaders } from '@angular/common/http';
2
- import { Injectable, Optional } from '@angular/core';
3
- import { JwtHelperService } from '@auth0/angular-jwt';
4
- import { of } from 'rxjs';
5
- import { catchError, map, retry } from 'rxjs/operators';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common/http";
8
- import * as i2 from "./auth.service";
9
- import * as i3 from "../../configurations";
10
- export class CreateDashboardService {
11
- http;
12
- authService;
13
- env;
14
- httpOptions;
15
- constructor(http, authService, config) {
16
- this.http = http;
17
- this.authService = authService;
18
- if (config) {
19
- this.env = config.envConfig;
20
- }
21
- this.httpOptions = {
22
- headers: new HttpHeaders({
23
- 'Content-Type': 'application/json',
24
- token: this.authService.getAuthorizationToken(),
25
- }),
26
- };
27
- }
28
- /*
29
- * Fetches the Organization Users List by making an API call
30
- */
31
- getOrganizationUsers(url) {
32
- return this.http
33
- .get(this.env?.organizationGet +
34
- 'organisationUsersList&paginationType=small' +
35
- (url.p ? '&p=' + url.p : '') +
36
- (url.type ? '&type=' + url.type : '') +
37
- (url.q ? '&q=' + url.q : ''), this.httpOptions)
38
- .pipe(map((res) => {
39
- return res;
40
- }), retry(2), catchError((err) => of(err)));
41
- }
42
- /**
43
- * Fetches the OrganizationUsers details of users List to set pagination details including number of
44
- * pages and records limit per page,
45
- * @param url contains info about type & search query
46
- */
47
- getOrganizationUsersCount(url) {
48
- return this.http
49
- .get(this.env?.organizationGet +
50
- 'organisationUsersCount&paginationType=small' +
51
- (url.type ? '&type=' + url.type : '') +
52
- (url.q ? '&q=' + url.q : ''), this.httpOptions)
53
- .pipe(map((res) => {
54
- return res;
55
- }), catchError((err) => of(err)));
56
- }
57
- getCategoryList() {
58
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
59
- return this.http
60
- .get(this.env?.riskGet + 'category/list', { headers })
61
- .pipe(retry(2));
62
- }
63
- /**
64
- * Fetches all users by making an API call
65
- */
66
- getAllUsers() {
67
- return this.http
68
- .get(this.env?.organizationGet + 'selectAllUsers&type=all', this.httpOptions)
69
- .pipe(retry(2));
70
- }
71
- /**
72
- * Fetches all groups by making an API call
73
- * */
74
- getAllGroups(params) {
75
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
76
- return this.http
77
- .get(this.env?.organizationGet +
78
- 'groupsList&permType=dashboard&memberExists=1', { params, headers })
79
- .pipe(retry(2));
80
- }
81
- /**
82
- * Fetches responsibilityCentersList by making an API call
83
- */
84
- getResponsibilityCenterList() {
85
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
86
- return this.http
87
- .get(this.env?.complianceGet + 'responsibilityCenterTree', {
88
- headers,
89
- })
90
- .pipe(retry(2));
91
- }
92
- getComplianceCategoriesList() {
93
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
94
- return this.http
95
- .get(this.env.complianceGet + 'complianceCategory/CategoryListTree', {
96
- headers,
97
- })
98
- .pipe(retry(2));
99
- }
100
- getComplianceCategoriesListFromGlobal() {
101
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
102
- return this.http
103
- .get(this.env?.complianceGet +
104
- 'complianceCategory/CategoryListTree&program=1&isDashboard=true', {
105
- headers,
106
- })
107
- .pipe(retry(2));
108
- }
109
- submitDashboard(payload) {
110
- const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
111
- return this.http
112
- .post(this.env.dashboard + 'CreateDashboard', payload, { headers })
113
- .pipe(retry(2));
114
- }
115
- /**
116
- * Fetches the Dashboard details for data population to Edit the dashboard
117
- * @param id
118
- */
119
- fetchDashboard(id) {
120
- return this.http
121
- .get(this.env.dashboard + id + '?mode=edit', this.httpOptions)
122
- .pipe(retry(2));
123
- }
124
- updateDashboard(id, payload) {
125
- return this.http
126
- .put(this.env.dashboard + 'UpdateDashboard/' + id, payload, this.httpOptions)
127
- .pipe(retry(2));
128
- }
129
- getUserInformation() {
130
- return this.http
131
- .get(this.env?.organizationGet + 'users&id=' + this?._ID(), this.httpOptions)
132
- .pipe(retry(2));
133
- }
134
- _ID() {
135
- const helper = new JwtHelperService();
136
- const myRawToken = localStorage.getItem('currentUser') || '{}';
137
- const isExpired = helper?.isTokenExpired(myRawToken);
138
- if (isExpired === false) {
139
- const tokenInfo = helper?.decodeToken(myRawToken);
140
- return tokenInfo._id;
141
- }
142
- return '';
143
- }
144
- checkDuplicateDashboardName(payload) {
145
- return this.http
146
- .post(this.env.dashboard + 'DuplicateDashboard', payload, this.httpOptions)
147
- .pipe(retry(2));
148
- }
149
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateDashboardService, deps: [{ token: i1.HttpClient }, { token: i2.AuthService }, { token: i3.Configurations, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
150
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateDashboardService, providedIn: 'root' });
151
- }
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateDashboardService, decorators: [{
153
- type: Injectable,
154
- args: [{
155
- providedIn: 'root',
156
- }]
157
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.AuthService }, { type: i3.Configurations, decorators: [{
158
- type: Optional
159
- }] }]; } });
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRhc2hib2FyZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL2NyZWF0ZS1kYXNoYm9hcmQtY29udGFpbmVyL3NlcnZpY2VzL2NyZWF0ZS1kYXNoYm9hcmQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFPeEQsTUFBTSxPQUFPLHNCQUFzQjtJQUt2QjtJQUNBO0lBTEgsR0FBRyxDQUFPO0lBRWpCLFdBQVcsQ0FBTTtJQUNqQixZQUNVLElBQWdCLEVBQ2hCLFdBQXdCLEVBQ3BCLE1BQXVCO1FBRjNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFHaEMsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7U0FDN0I7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2pCLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQztnQkFDdkIsY0FBYyxFQUFFLGtCQUFrQjtnQkFDbEMsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUU7YUFDaEQsQ0FBQztTQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0IsQ0FBQyxHQUFTO1FBQzVCLE9BQU8s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O1FBQ3RDLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDO1FBQy9ELE1BQU0sU0FBUyxHQUFHLE1BQU0sRUFBRSxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDckQsSUFBSSxTQUFTLEtBQUssS0FBSyxFQUFFO1lBQ3ZCLE1BQU0sU0FBUyxHQUFHLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDbEQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDO1NBQ3RCO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsMkJBQTJCLENBQUMsT0FBWTtRQUN0QyxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsSUFBSSxDQUNILElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxHQUFHLG9CQUFvQixFQUN6QyxPQUFPLEVBQ1AsSUFBSSxDQUFDLFdBQVcsQ0FDakI7YUFDQSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQzt3R0EvTVUsc0JBQXNCOzRHQUF0QixzQkFBc0IsY0FGckIsTUFBTTs7NEZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEp3dEhlbHBlclNlcnZpY2UgfSBmcm9tICdAYXV0aDAvYW5ndWxhci1qd3QnO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgcmV0cnkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9ucyB9IGZyb20gJy4uLy4uL2NvbmZpZ3VyYXRpb25zJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ3JlYXRlRGFzaGJvYXJkU2VydmljZSB7XG4gIHB1YmxpYyBlbnYhOiBhbnk7XG5cbiAgaHR0cE9wdGlvbnM6IGFueTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIGNvbmZpZz86IENvbmZpZ3VyYXRpb25zXG4gICkge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMuZW52ID0gY29uZmlnLmVudkNvbmZpZztcbiAgICB9XG5cbiAgICB0aGlzLmh0dHBPcHRpb25zID0ge1xuICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgdG9rZW46IHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCksXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgLypcbiAgICogRmV0Y2hlcyB0aGUgT3JnYW5pemF0aW9uIFVzZXJzIExpc3QgYnkgbWFraW5nIGFuIEFQSSBjYWxsXG4gICAqL1xuICBnZXRPcmdhbml6YXRpb25Vc2Vycyh1cmw/OiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0KFxuICAgICAgICB0aGlzLmVudj8ub3JnYW5pemF0aW9uR2V0ICtcbiAgICAgICAgICAnb3JnYW5pc2F0aW9uVXNlcnNMaXN0JnBhZ2luYXRpb25UeXBlPXNtYWxsJyArXG4gICAgICAgICAgKHVybC5wID8gJyZwPScgKyB1cmwucCA6ICcnKSArXG4gICAgICAgICAgKHVybC50eXBlID8gJyZ0eXBlPScgKyB1cmwudHlwZSA6ICcnKSArXG4gICAgICAgICAgKHVybC5xID8gJyZxPScgKyB1cmwucSA6ICcnKSxcbiAgICAgICAgdGhpcy5odHRwT3B0aW9uc1xuICAgICAgKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9KSxcbiAgICAgICAgcmV0cnkoMiksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4gb2YoZXJyKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyB0aGUgT3JnYW5pemF0aW9uVXNlcnMgZGV0YWlscyBvZiB1c2VycyBMaXN0IHRvIHNldCBwYWdpbmF0aW9uIGRldGFpbHMgaW5jbHVkaW5nIG51bWJlciBvZlxuICAgKiBwYWdlcyBhbmQgcmVjb3JkcyBsaW1pdCBwZXIgcGFnZSxcbiAgICogQHBhcmFtIHVybCAgY29udGFpbnMgaW5mbyBhYm91dCB0eXBlICYgc2VhcmNoIHF1ZXJ5XG4gICAqL1xuICBnZXRPcmdhbml6YXRpb25Vc2Vyc0NvdW50KHVybD86IGFueSkge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQoXG4gICAgICAgIHRoaXMuZW52Py5vcmdhbml6YXRpb25HZXQgK1xuICAgICAgICAgICdvcmdhbmlzYXRpb25Vc2Vyc0NvdW50JnBhZ2luYXRpb25UeXBlPXNtYWxsJyArXG4gICAgICAgICAgKHVybC50eXBlID8gJyZ0eXBlPScgKyB1cmwudHlwZSA6ICcnKSArXG4gICAgICAgICAgKHVybC5xID8gJyZxPScgKyB1cmwucSA6ICcnKSxcbiAgICAgICAgdGhpcy5odHRwT3B0aW9uc1xuICAgICAgKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4gb2YoZXJyKSlcbiAgICAgICk7XG4gIH1cblxuICBnZXRDYXRlZ29yeUxpc3QoKSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICd0b2tlbicsXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PGFueVtdPih0aGlzLmVudj8ucmlza0dldCArICdjYXRlZ29yeS9saXN0JywgeyBoZWFkZXJzIH0pXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyBhbGwgdXNlcnMgYnkgbWFraW5nIGFuIEFQSSBjYWxsXG4gICAqL1xuICBnZXRBbGxVc2VycygpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0KFxuICAgICAgICB0aGlzLmVudj8ub3JnYW5pemF0aW9uR2V0ICsgJ3NlbGVjdEFsbFVzZXJzJnR5cGU9YWxsJyxcbiAgICAgICAgdGhpcy5odHRwT3B0aW9uc1xuICAgICAgKVxuICAgICAgLnBpcGUocmV0cnkoMikpO1xuICB9XG5cbiAgLyoqXG4gICAqICBGZXRjaGVzIGFsbCBncm91cHMgYnkgbWFraW5nIGFuIEFQSSBjYWxsXG4gICAqICovXG4gIGdldEFsbEdyb3VwcyhwYXJhbXM/OiBIdHRwUGFyYW1zKSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICd0b2tlbicsXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0KFxuICAgICAgICB0aGlzLmVudj8ub3JnYW5pemF0aW9uR2V0ICtcbiAgICAgICAgICAnZ3JvdXBzTGlzdCZwZXJtVHlwZT1kYXNoYm9hcmQmbWVtYmVyRXhpc3RzPTEnLFxuICAgICAgICB7IHBhcmFtcywgaGVhZGVycyB9XG4gICAgICApXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyByZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0IGJ5IG1ha2luZyBhbiBBUEkgY2FsbFxuICAgKi9cbiAgZ2V0UmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0KCkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXG4gICAgICAndG9rZW4nLFxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnY/LmNvbXBsaWFuY2VHZXQgKyAncmVzcG9uc2liaWxpdHlDZW50ZXJUcmVlJywge1xuICAgICAgICBoZWFkZXJzLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcbiAgfVxuXG4gIGdldENvbXBsaWFuY2VDYXRlZ29yaWVzTGlzdCgpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8YW55W10+KFxuICAgICAgICB0aGlzLmVudi5jb21wbGlhbmNlR2V0ICsgJ2NvbXBsaWFuY2VDYXRlZ29yeS9DYXRlZ29yeUxpc3RUcmVlJyxcbiAgICAgICAge1xuICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcbiAgfVxuXG4gIGdldENvbXBsaWFuY2VDYXRlZ29yaWVzTGlzdEZyb21HbG9iYWwoKSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICd0b2tlbicsXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PGFueVtdPihcbiAgICAgICAgdGhpcy5lbnY/LmNvbXBsaWFuY2VHZXQgK1xuICAgICAgICAgICdjb21wbGlhbmNlQ2F0ZWdvcnkvQ2F0ZWdvcnlMaXN0VHJlZSZwcm9ncmFtPTEmaXNEYXNoYm9hcmQ9dHJ1ZScsXG4gICAgICAgIHtcbiAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cblxuICBzdWJtaXREYXNoYm9hcmQocGF5bG9hZDogYW55KSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICd0b2tlbicsXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdCh0aGlzLmVudi5kYXNoYm9hcmQgKyAnQ3JlYXRlRGFzaGJvYXJkJywgcGF5bG9hZCwgeyBoZWFkZXJzIH0pXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyB0aGUgRGFzaGJvYXJkIGRldGFpbHMgZm9yIGRhdGEgcG9wdWxhdGlvbiB0byBFZGl0IHRoZSBkYXNoYm9hcmRcbiAgICogQHBhcmFtIGlkXG4gICAqL1xuICBmZXRjaERhc2hib2FyZChpZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldCh0aGlzLmVudi5kYXNoYm9hcmQgKyBpZCArICc/bW9kZT1lZGl0JywgdGhpcy5odHRwT3B0aW9ucylcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcbiAgfVxuXG4gIHVwZGF0ZURhc2hib2FyZChpZDogYW55LCBwYXlsb2FkOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucHV0KFxuICAgICAgICB0aGlzLmVudi5kYXNoYm9hcmQgKyAnVXBkYXRlRGFzaGJvYXJkLycgKyBpZCxcbiAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgdGhpcy5odHRwT3B0aW9uc1xuICAgICAgKVxuICAgICAgLnBpcGUocmV0cnkoMikpO1xuICB9XG5cbiAgZ2V0VXNlckluZm9ybWF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQoXG4gICAgICAgIHRoaXMuZW52Py5vcmdhbml6YXRpb25HZXQgKyAndXNlcnMmaWQ9JyArIHRoaXM/Ll9JRCgpLFxuICAgICAgICB0aGlzLmh0dHBPcHRpb25zXG4gICAgICApXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cbiAgX0lEKCkge1xuICAgIGNvbnN0IGhlbHBlciA9IG5ldyBKd3RIZWxwZXJTZXJ2aWNlKCk7XG4gICAgY29uc3QgbXlSYXdUb2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjdXJyZW50VXNlcicpIHx8ICd7fSc7XG4gICAgY29uc3QgaXNFeHBpcmVkID0gaGVscGVyPy5pc1Rva2VuRXhwaXJlZChteVJhd1Rva2VuKTtcbiAgICBpZiAoaXNFeHBpcmVkID09PSBmYWxzZSkge1xuICAgICAgY29uc3QgdG9rZW5JbmZvID0gaGVscGVyPy5kZWNvZGVUb2tlbihteVJhd1Rva2VuKTtcbiAgICAgIHJldHVybiB0b2tlbkluZm8uX2lkO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBjaGVja0R1cGxpY2F0ZURhc2hib2FyZE5hbWUocGF5bG9hZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnBvc3QoXG4gICAgICAgIHRoaXMuZW52LmRhc2hib2FyZCArICdEdXBsaWNhdGVEYXNoYm9hcmQnLFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgICB0aGlzLmh0dHBPcHRpb25zXG4gICAgICApXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,28 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Service to implement pagination for users while creating an app
6
- */
7
- export class PaginationService {
8
- currentPage = 1;
9
- searchValue = '';
10
- currentValues = new BehaviorSubject({});
11
- constructor() { }
12
- setCurrentState() {
13
- this.currentValues.next(true);
14
- }
15
- reset() {
16
- this.currentPage = 1;
17
- this.searchValue = '';
18
- }
19
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PaginationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
20
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PaginationService, providedIn: 'root' });
21
- }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PaginationService, decorators: [{
23
- type: Injectable,
24
- args: [{
25
- providedIn: 'root'
26
- }]
27
- }], ctorParameters: function () { return []; } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL2NyZWF0ZS1kYXNoYm9hcmQtY29udGFpbmVyL3NlcnZpY2VzL3BhZ2luYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBTXZDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLFdBQVcsR0FBRyxFQUFFLENBQUM7SUFDakIsYUFBYSxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXhDLGdCQUFnQixDQUFDO0lBRWpCLGVBQWU7UUFDYixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsS0FBSztRQUNILElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7d0dBYlUsaUJBQWlCOzRHQUFqQixpQkFBaUIsY0FOaEIsTUFBTTs7NEZBTVAsaUJBQWlCO2tCQVA3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGltcGxlbWVudCBwYWdpbmF0aW9uIGZvciB1c2VycyB3aGlsZSBjcmVhdGluZyBhbiBhcHBcbiAqL1xuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25TZXJ2aWNlIHtcbiAgY3VycmVudFBhZ2UgPSAxO1xuICBzZWFyY2hWYWx1ZSA9ICcnO1xuICBjdXJyZW50VmFsdWVzID0gbmV3IEJlaGF2aW9yU3ViamVjdCh7fSk7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBzZXRDdXJyZW50U3RhdGUoKSB7XG4gICAgdGhpcy5jdXJyZW50VmFsdWVzLm5leHQodHJ1ZSk7XG4gIH1cbiAgcmVzZXQoKXtcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcbiAgICB0aGlzLnNlYXJjaFZhbHVlID0gJyc7XG4gIH1cbn1cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { Injectable, Optional } from '@angular/core';
2
- import { ASSETS } from '../constants/assets.constant';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../configurations";
5
- export class ConfigureBaseUrlService {
6
- ASSETS = ASSETS;
7
- env;
8
- constructor(config) {
9
- if (config) {
10
- this.env = config?.envConfig;
11
- }
12
- }
13
- updateBaseUrl() {
14
- Object.keys(this.ASSETS).forEach((key) => {
15
- this.ASSETS[key] = `${this.env?.cdnUrl}${this.ASSETS[key]}`;
16
- });
17
- }
18
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfigureBaseUrlService, deps: [{ token: i1.Configurations, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
19
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfigureBaseUrlService, providedIn: 'root' });
20
- }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfigureBaseUrlService, decorators: [{
22
- type: Injectable,
23
- args: [{
24
- providedIn: 'root',
25
- }]
26
- }], ctorParameters: function () { return [{ type: i1.Configurations, decorators: [{
27
- type: Optional
28
- }] }]; } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsQ29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvY3JlYXRlLWRhc2hib2FyZC1jb250YWluZXIvc2VydmljZXMvdXJsQ29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFLdEQsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxNQUFNLEdBQVEsTUFBTSxDQUFDO0lBQ2QsR0FBRyxDQUFPO0lBQ2pCLFlBQXdCLE1BQXVCO1FBQzdDLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLEdBQUcsR0FBRyxNQUFNLEVBQUUsU0FBUyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUNELGFBQWE7UUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FaVSx1QkFBdUI7NEdBQXZCLHVCQUF1QixjQUZ0QixNQUFNOzs0RkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFJYyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMnO1xuaW1wb3J0IHsgQVNTRVRTIH0gZnJvbSAnLi4vY29uc3RhbnRzL2Fzc2V0cy5jb25zdGFudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBDb25maWd1cmVCYXNlVXJsU2VydmljZSB7XG4gIEFTU0VUUzogYW55ID0gQVNTRVRTO1xuICBwdWJsaWMgZW52ITogYW55O1xuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBjb25maWc/OiBDb25maWd1cmF0aW9ucykge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMuZW52ID0gY29uZmlnPy5lbnZDb25maWc7XG4gICAgfVxuICB9XG4gIHVwZGF0ZUJhc2VVcmwoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5BU1NFVFMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgdGhpcy5BU1NFVFNba2V5XSA9IGAke3RoaXMuZW52Py5jZG5Vcmx9JHt0aGlzLkFTU0VUU1trZXldfWA7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==