@seniorsistemas/exclusion-process-component 0.0.1-40efacd8-8a6c-4d38-8102-8c977c14410a

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 (85) hide show
  1. package/bundles/seniorsistemas-exclusion-process-component.umd.js +1205 -0
  2. package/bundles/seniorsistemas-exclusion-process-component.umd.js.map +1 -0
  3. package/bundles/seniorsistemas-exclusion-process-component.umd.min.js +16 -0
  4. package/bundles/seniorsistemas-exclusion-process-component.umd.min.js.map +1 -0
  5. package/enums/enum-exclusion-process-status.d.ts +6 -0
  6. package/esm2015/enums/enum-exclusion-process-status.js +8 -0
  7. package/esm2015/exclusion-details/exclusion-details.component.js +216 -0
  8. package/esm2015/exclusion-details/exclusion-details.module.js +28 -0
  9. package/esm2015/exclusion-details/index.js +3 -0
  10. package/esm2015/exclusion-details/protocols/exclusion-details.js +1 -0
  11. package/esm2015/exclusion-details/protocols/index.js +2 -0
  12. package/esm2015/exclusion-details/protocols/show-details-information.js +3 -0
  13. package/esm2015/exclusions-list/exclusions-list.component.js +299 -0
  14. package/esm2015/exclusions-list/exclusions-list.module.js +47 -0
  15. package/esm2015/exclusions-list/exclusions-list.routing.js +115 -0
  16. package/esm2015/exclusions-list/index.js +4 -0
  17. package/esm2015/logical-delete.module.js +27 -0
  18. package/esm2015/models/exclusion-process-step-group.js +1 -0
  19. package/esm2015/models/exclusion-process-step.js +1 -0
  20. package/esm2015/models/exclusion-process.js +1 -0
  21. package/esm2015/models/index.js +1 -0
  22. package/esm2015/models/list-params.js +1 -0
  23. package/esm2015/models/list-result.js +1 -0
  24. package/esm2015/models/project-config.js +3 -0
  25. package/esm2015/public-api.js +4 -0
  26. package/esm2015/seniorsistemas-exclusion-process-component.js +11 -0
  27. package/esm2015/services/filter.service.js +104 -0
  28. package/esm2015/services/index.js +2 -0
  29. package/esm2015/services/logical-delete-config.service.js +29 -0
  30. package/esm2015/services/logical-delete.service.js +109 -0
  31. package/esm5/enums/enum-exclusion-process-status.js +8 -0
  32. package/esm5/exclusion-details/exclusion-details.component.js +235 -0
  33. package/esm5/exclusion-details/exclusion-details.module.js +31 -0
  34. package/esm5/exclusion-details/index.js +3 -0
  35. package/esm5/exclusion-details/protocols/exclusion-details.js +1 -0
  36. package/esm5/exclusion-details/protocols/index.js +2 -0
  37. package/esm5/exclusion-details/protocols/show-details-information.js +7 -0
  38. package/esm5/exclusions-list/exclusions-list.component.js +313 -0
  39. package/esm5/exclusions-list/exclusions-list.module.js +50 -0
  40. package/esm5/exclusions-list/exclusions-list.routing.js +127 -0
  41. package/esm5/exclusions-list/index.js +4 -0
  42. package/esm5/logical-delete.module.js +31 -0
  43. package/esm5/models/exclusion-process-step-group.js +1 -0
  44. package/esm5/models/exclusion-process-step.js +1 -0
  45. package/esm5/models/exclusion-process.js +1 -0
  46. package/esm5/models/index.js +1 -0
  47. package/esm5/models/list-params.js +1 -0
  48. package/esm5/models/list-result.js +1 -0
  49. package/esm5/models/project-config.js +3 -0
  50. package/esm5/public-api.js +4 -0
  51. package/esm5/seniorsistemas-exclusion-process-component.js +11 -0
  52. package/esm5/services/filter.service.js +109 -0
  53. package/esm5/services/index.js +2 -0
  54. package/esm5/services/logical-delete-config.service.js +30 -0
  55. package/esm5/services/logical-delete.service.js +112 -0
  56. package/exclusion-details/exclusion-details.component.d.ts +49 -0
  57. package/exclusion-details/exclusion-details.module.d.ts +2 -0
  58. package/exclusion-details/index.d.ts +2 -0
  59. package/exclusion-details/protocols/exclusion-details.d.ts +6 -0
  60. package/exclusion-details/protocols/index.d.ts +2 -0
  61. package/exclusion-details/protocols/show-details-information.d.ts +5 -0
  62. package/exclusions-list/exclusions-list.component.d.ts +59 -0
  63. package/exclusions-list/exclusions-list.module.d.ts +2 -0
  64. package/exclusions-list/exclusions-list.routing.d.ts +29 -0
  65. package/exclusions-list/index.d.ts +3 -0
  66. package/fesm2015/seniorsistemas-exclusion-process-component.js +917 -0
  67. package/fesm2015/seniorsistemas-exclusion-process-component.js.map +1 -0
  68. package/fesm5/seniorsistemas-exclusion-process-component.js +981 -0
  69. package/fesm5/seniorsistemas-exclusion-process-component.js.map +1 -0
  70. package/logical-delete.module.d.ts +5 -0
  71. package/models/exclusion-process-step-group.d.ts +13 -0
  72. package/models/exclusion-process-step.d.ts +9 -0
  73. package/models/exclusion-process.d.ts +13 -0
  74. package/models/index.d.ts +4 -0
  75. package/models/list-params.d.ts +9 -0
  76. package/models/list-result.d.ts +5 -0
  77. package/models/project-config.d.ts +7 -0
  78. package/package.json +63 -0
  79. package/public-api.d.ts +4 -0
  80. package/seniorsistemas-exclusion-process-component.d.ts +10 -0
  81. package/seniorsistemas-exclusion-process-component.metadata.json +1 -0
  82. package/services/filter.service.d.ts +19 -0
  83. package/services/index.d.ts +1 -0
  84. package/services/logical-delete-config.service.d.ts +8 -0
  85. package/services/logical-delete.service.d.ts +20 -0
@@ -0,0 +1,299 @@
1
+ import { __decorate } from "tslib";
2
+ import * as moment from 'moment';
3
+ import { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild } from '@angular/core';
4
+ import { FormBuilder, FormGroup, Validators } from '@angular/forms';
5
+ import { TranslateService } from '@ngx-translate/core';
6
+ import { Subject } from 'rxjs';
7
+ import { catchError, finalize, takeUntil } from 'rxjs/operators';
8
+ import { EnumBadgeColors, EnumColumnFieldType, FieldType, FormField } from '@seniorsistemas/angular-components';
9
+ import { EnumExclusionProcessStatus } from '../enums/enum-exclusion-process-status';
10
+ import { LogicalDeleteService } from '../services';
11
+ import { ActivatedRoute } from '@angular/router';
12
+ import { LogicalDeleteConfigService } from '../services/logical-delete-config.service';
13
+ import { ExclusionDetailsComponent } from '../exclusion-details';
14
+ import { FilterService } from '../services/filter.service';
15
+ let ExclusionsListComponent = class ExclusionsListComponent {
16
+ constructor(route, translate, formBuilder, changeDetectorRef, logicalDeleteService, filterService, projectConfigs) {
17
+ this.route = route;
18
+ this.translate = translate;
19
+ this.formBuilder = formBuilder;
20
+ this.changeDetectorRef = changeDetectorRef;
21
+ this.logicalDeleteService = logicalDeleteService;
22
+ this.filterService = filterService;
23
+ this.projectConfigs = projectConfigs;
24
+ this.currentListParams = { page: 0, size: 10, sort: [], filterData: {} };
25
+ this.showLoader = false;
26
+ this.totalRecords = 0;
27
+ this.filtersPanelCollapsed = true;
28
+ this.searchTokens = [];
29
+ this.serverError = false;
30
+ this.ngUnsubscribe = new Subject();
31
+ }
32
+ ngOnInit() {
33
+ this.filterFormGroup = this.getFormBuilder();
34
+ this.filterFields = this.getFilterFields();
35
+ this.gridColumns = this.getGridColumns();
36
+ this.route.data
37
+ .pipe(takeUntil(this.ngUnsubscribe))
38
+ .subscribe((data) => {
39
+ this.locale = data.localeConfig;
40
+ });
41
+ this.route.params
42
+ .pipe(takeUntil(this.ngUnsubscribe))
43
+ .subscribe((params) => {
44
+ this.entityName = params.entityName;
45
+ });
46
+ this.route.queryParams
47
+ .pipe(takeUntil(this.ngUnsubscribe))
48
+ .subscribe((queryParams) => {
49
+ this.entityDescription = queryParams.entityDescription;
50
+ });
51
+ }
52
+ ngOnDestroy() {
53
+ this.ngUnsubscribe.next();
54
+ this.ngUnsubscribe.complete();
55
+ }
56
+ getFormBuilder() {
57
+ return this.formBuilder.group({
58
+ description: [undefined, Validators.compose([])],
59
+ state: [undefined, Validators.compose([])],
60
+ startDate: [{ value: undefined, disabled: false }, Validators.compose([])],
61
+ endDate: [{ value: undefined, disabled: false }, Validators.compose([])]
62
+ });
63
+ }
64
+ getGridColumns() {
65
+ return [
66
+ {
67
+ field: "description",
68
+ attributes: ['description'],
69
+ header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),
70
+ type: EnumColumnFieldType.STRING,
71
+ style: {
72
+ width: '300px'
73
+ }
74
+ },
75
+ {
76
+ field: "status",
77
+ attributes: ['status'],
78
+ header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),
79
+ type: EnumColumnFieldType.ENUM,
80
+ enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,
81
+ style: {
82
+ width: '100px'
83
+ },
84
+ badgeConfigs: [
85
+ {
86
+ enumValue: EnumExclusionProcessStatus.ERROR,
87
+ color: EnumBadgeColors.RED
88
+ },
89
+ {
90
+ enumValue: EnumExclusionProcessStatus.PENDING,
91
+ color: EnumBadgeColors.YELLOW
92
+ },
93
+ {
94
+ enumValue: EnumExclusionProcessStatus.PROCESSING,
95
+ color: EnumBadgeColors.BLUE
96
+ },
97
+ {
98
+ enumValue: EnumExclusionProcessStatus.SUCCESS,
99
+ color: EnumBadgeColors.GREEN
100
+ }
101
+ ]
102
+ },
103
+ {
104
+ field: "startDate",
105
+ attributes: ['startDate'],
106
+ header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`),
107
+ type: EnumColumnFieldType.DATE,
108
+ dateFormat: "DD/MM/YYYY HH:mm",
109
+ style: {
110
+ width: '100px'
111
+ }
112
+ },
113
+ {
114
+ field: "finishDate",
115
+ attributes: ['finishDate'],
116
+ header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`),
117
+ type: EnumColumnFieldType.DATE,
118
+ dateFormat: "DD/MM/YYYY HH:mm",
119
+ style: {
120
+ width: '100px'
121
+ }
122
+ }
123
+ ];
124
+ }
125
+ getFilterFields() {
126
+ return [
127
+ new FormField({
128
+ type: FieldType.String,
129
+ name: "description",
130
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`)
131
+ }),
132
+ new FormField({
133
+ type: FieldType.Enum,
134
+ name: "state",
135
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),
136
+ placeholder: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),
137
+ multiple: true,
138
+ options: [
139
+ {
140
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_error`),
141
+ value: EnumExclusionProcessStatus.ERROR
142
+ },
143
+ {
144
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_pending`),
145
+ value: EnumExclusionProcessStatus.PENDING
146
+ },
147
+ {
148
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_processing`),
149
+ value: EnumExclusionProcessStatus.PROCESSING
150
+ },
151
+ {
152
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_success`),
153
+ value: EnumExclusionProcessStatus.SUCCESS
154
+ }
155
+ ]
156
+ }),
157
+ new FormField({
158
+ type: FieldType.Date,
159
+ name: "startDate",
160
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`)
161
+ }),
162
+ new FormField({
163
+ type: FieldType.Date,
164
+ name: "endDate",
165
+ label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`)
166
+ })
167
+ ];
168
+ }
169
+ getEmptyStateTitle() {
170
+ return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);
171
+ }
172
+ getEmptyStateDescription() {
173
+ return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);
174
+ }
175
+ getTitle() {
176
+ return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);
177
+ }
178
+ getDetailsButtonTitle() {
179
+ return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details`);
180
+ }
181
+ onSearch() {
182
+ const filterData = this.filterFormGroup.getRawValue();
183
+ this.filtersPanelCollapsed = true;
184
+ this.resetGrid({ filterData });
185
+ }
186
+ onClear() {
187
+ this.filterFormGroup.reset();
188
+ const filterData = this.filterFormGroup.getRawValue();
189
+ this.resetGrid({ filterData });
190
+ }
191
+ onRemoveToken(token) {
192
+ this.filterFormGroup.get(token.id).setValue(undefined);
193
+ const filterData = this.filterFormGroup.getRawValue();
194
+ this.resetGrid({ filterData });
195
+ }
196
+ onGridChange(event) {
197
+ const size = event.rows;
198
+ const page = event.first / size;
199
+ const sort = event.multiSortMeta ? event.multiSortMeta : [];
200
+ return this.updateGrid({ page, size, sort });
201
+ }
202
+ getFilterTokens() {
203
+ const filterData = this.filterFormGroup.value;
204
+ return this.filterFields
205
+ .filter(({ name }) => filterData[name] != undefined && filterData[name] !== "")
206
+ .map(formField => this.filterService.createFilterTokens(formField, filterData[formField.name]));
207
+ }
208
+ getFilterQuery() {
209
+ const { filterData } = this.currentListParams;
210
+ const dateFields = ['startDate', 'endDate'];
211
+ let filterQuery = this.filterFields
212
+ .filter(({ name }) => !dateFields.includes(name))
213
+ .filter(({ name }) => filterData[name] != undefined)
214
+ .map(formField => this.filterService.createFilterString(formField, filterData[formField.name]))
215
+ .join(" and ");
216
+ if (filterData.startDate && filterData.endDate) {
217
+ const startDate = moment(filterData.startDate).format('YYYY-MM-DD');
218
+ const endDate = moment(filterData.endDate).format('YYYY-MM-DD');
219
+ const dateQuery = `startDate between '${startDate}' and '${endDate}'`;
220
+ if (filterQuery) {
221
+ filterQuery += ` and ${dateQuery}`;
222
+ }
223
+ else {
224
+ filterQuery = dateQuery;
225
+ }
226
+ }
227
+ return filterQuery;
228
+ }
229
+ updateGrid(listParams = {}) {
230
+ this.currentListParams = Object.assign(Object.assign({}, this.currentListParams), listParams);
231
+ const { page, size, sort } = this.currentListParams;
232
+ this.searchTokens = this.getFilterTokens();
233
+ const filterQuery = this.getFilterQuery();
234
+ const displayFields = [
235
+ 'recordId',
236
+ ...this.gridColumns.map(column => column.field)
237
+ ];
238
+ this.listExclusions({ page, size, sort, filterQuery, displayFields });
239
+ }
240
+ listExclusions(params) {
241
+ this.showLoader = true;
242
+ this.serverError = false;
243
+ this.changeDetectorRef.detectChanges();
244
+ this.logicalDeleteService
245
+ .listExclusions(this.entityName, params)
246
+ .pipe(takeUntil(this.ngUnsubscribe), catchError((err) => {
247
+ if (err.status >= 500 && err.status < 600) {
248
+ this.serverError = true;
249
+ }
250
+ throw err;
251
+ }), finalize(() => this.showLoader = false))
252
+ .subscribe((list) => {
253
+ this.gridData = list.contents;
254
+ this.totalRecords = list.totalElements;
255
+ });
256
+ }
257
+ focusInput(elementId) {
258
+ const element = document.getElementById(`${elementId}`);
259
+ if (element) {
260
+ element.focus();
261
+ }
262
+ }
263
+ resetGrid(listParams) {
264
+ if (listParams)
265
+ this.currentListParams = Object.assign(Object.assign({}, this.currentListParams), listParams);
266
+ this.currentListParams = Object.assign(Object.assign({}, this.currentListParams), { page: 0, sort: [] });
267
+ this.table.reset();
268
+ }
269
+ onClickDetails(rowData) {
270
+ this.exclusionDetailsComponent.showDetails({
271
+ recordId: rowData.recordId,
272
+ entityDescription: this.entityDescription,
273
+ entityName: this.entityName
274
+ });
275
+ }
276
+ };
277
+ ExclusionsListComponent.ctorParameters = () => [
278
+ { type: ActivatedRoute },
279
+ { type: TranslateService },
280
+ { type: FormBuilder },
281
+ { type: ChangeDetectorRef },
282
+ { type: LogicalDeleteService },
283
+ { type: FilterService },
284
+ { type: LogicalDeleteConfigService }
285
+ ];
286
+ __decorate([
287
+ ViewChild("exclusionsTable")
288
+ ], ExclusionsListComponent.prototype, "table", void 0);
289
+ __decorate([
290
+ ViewChild(ExclusionDetailsComponent)
291
+ ], ExclusionsListComponent.prototype, "exclusionDetailsComponent", void 0);
292
+ ExclusionsListComponent = __decorate([
293
+ Component({
294
+ template: "<div>\n <form [formGroup]=\"filterFormGroup\" autocomplete=\"off\">\n <p-panel\n *sLoadingState=\"showLoader\"\n styleClass=\"form-group\"\n [toggleable]=\"true\"\n [(collapsed)]=\"filtersPanelCollapsed\"\n (onAfterToggle)=\"focusInput('description')\"\n >\n <p-header>\n {{ 'filters' | translate }}\n <s-token-list\n [tokens]=\"searchTokens\"\n (tokenRemoved)=\"onRemoveToken($event)\"\n [removableTokens]=\"true\"\n ></s-token-list>\n </p-header>\n <div>\n <s-dynamic-form\n [fields]=\"filterFields\"\n [form]=\"filterFormGroup\"\n [errorMessages]=\"{ pattern: 'error_invalid' | translate }\"\n ></s-dynamic-form>\n </div>\n <p-footer>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <button\n id=\"filter-button\"\n class=\"ui-button\"\n type=\"submit\"\n pButton\n [label]=\"'filter' | translate\"\n (click)=\"onSearch()\"\n ></button>\n <button\n id=\"clear-button\"\n class=\"ui-button ui-button-link\"\n type=\"button\"\n pButton\n [label]=\"'clear' | translate\"\n (click)=\"onClear()\"\n ></button>\n </div>\n </div>\n </p-footer>\n </p-panel>\n </form>\n <p-panel *sLoadingState=\"showLoader\">\n <p-header>\n {{ getTitle() }}\n </p-header>\n <ng-container>\n <s-empty-state\n *ngIf=\"serverError && !showLoader\"\n iconClass=\"fa fa-exclamation-triangle\"\n title=\"{{ 'error_server_title' | translate }}\"\n primaryActionLabel=\"{{ 'error_server_try_again' | translate }}\"\n (primaryAction)=\"resetGrid()\"\n description=\"{{ 'error_server_description' | translate }}\"\n ></s-empty-state>\n\n <s-empty-state\n *ngIf=\"!showLoader && !serverError && totalRecords === 0\"\n [title]=\"getEmptyStateTitle()\"\n [showPrimaryAction]=\"false\"\n [description]=\"getEmptyStateDescription()\"\n ></s-empty-state>\n\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <p-table\n #exclusionsTable\n id=\"exclusionsTable\"\n [hidden]=\"totalRecords === 0 || serverError\"\n [value]=\"gridData\"\n [columns]=\"gridColumns\"\n dataKey=\"id\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [resizableColumns]=\"true\"\n sortMode=\"multiple\"\n [paginator]=\"true\"\n [totalRecords]=\"totalRecords\"\n [rows]=\"10\"\n rows=\"10\"\n [rowsPerPageOptions]=\"[10, 20, 50, 100]\"\n (onLazyLoad)=\"onGridChange($event)\"\n >\n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col\n *ngFor=\"let col of columns\"\n [style.width]=\"col.width\"\n />\n </colgroup>\n </ng-template>\n\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n <th *ngFor=\"let col of columns\"\n [id]=\"col.field\"\n [pSortableColumn]=\"col.field\"\n [ngStyle]=\"col.style\"\n pResizableColumn\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">\n {{ col.header }}\n </span>\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\n </div>\n </th>\n <th id=\"action-column\" style=\"width: 100px\">\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{'A\u00E7\u00F5es'}}</span>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\">\n <tr [pSelectableRow]=\"rowData\">\n <s-table-columns\n [columns]=\"columns\"\n [rowValue]=\"rowData\"\n [locale]=\"locale\">\n </s-table-columns>\n <td style=\"width: 100px\">\n <s-button\n id=\"details-button\"\n priority=\"default\"\n [label]=\"getDetailsButtonTitle()\"\n [auxiliary]=\"true\"\n (onClick)=\"onClickDetails(rowData)\">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"paginatorright\">\n <s-table-paging\n [table]=\"exclusionsTable\"\n [totalRecords]=\"totalRecords\"\n ></s-table-paging>\n </ng-template>\n </p-table>\n </div>\n </div>\n </ng-container>\n </p-panel>\n</div>\n\n<s-exclusion-details></s-exclusion-details>",
295
+ providers: []
296
+ })
297
+ ], ExclusionsListComponent);
298
+ export { ExclusionsListComponent };
299
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9ucy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9leGNsdXNpb24tcHJvY2Vzcy1jb21wb25lbnQvIiwic291cmNlcyI6WyJleGNsdXNpb25zLWxpc3QvZXhjbHVzaW9ucy1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBb0MsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsSixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUdwRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQU8zRCxJQUFhLHVCQUF1QixHQUFwQyxNQUFhLHVC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QztJQUNQLENBQUM7Q0FDSixDQUFBOztZQTdSK0IsY0FBYztZQUNWLGdCQUFnQjtZQUNkLFdBQVc7WUFDTCxpQkFBaUI7WUFDZCxvQkFBb0I7WUFDM0IsYUFBYTtZQUNaLDBCQUEwQjs7QUFkL0Q7SUFEQyxTQUFTLENBQUMsaUJBQWlCLENBQUM7c0RBQ1Q7QUFHcEI7SUFEQyxTQUFTLENBQUMseUJBQXlCLENBQUM7MEVBQ3VCO0FBckJuRCx1QkFBdUI7SUFMbkMsU0FBUyxDQUFDO1FBQ1AsKzNOQUErQztRQUUvQyxTQUFTLEVBQUUsRUFBRTtLQUNoQixDQUFDO0dBQ1csdUJBQXVCLENBdVRuQztTQXZUWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50IH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVudW1CYWRnZUNvbG9ycywgRW51bUNvbHVtbkZpZWxkVHlwZSwgRmllbGRUeXBlLCBGb3JtRmllbGQsIElUb2tlbiwgVGFibGVDb2x1bW5Mb2NhbGVPcHRpb25zIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cyc7XG5pbXBvcnQgeyBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cyB9IGZyb20gJy4uL2VudW1zL2VudW0tZXhjbHVzaW9uLXByb2Nlc3Mtc3RhdHVzJztcbmltcG9ydCB7IEV4Y2x1c2lvblByb2Nlc3MgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGFibGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcbmltcG9ydCB7IExvZ2ljYWxEZWxldGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTGlzdFBhcmFtcyB9IGZyb20gJy4uL21vZGVscy9saXN0LXBhcmFtcyc7XG5pbXBvcnQgeyBMb2dpY2FsRGVsZXRlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2xvZ2ljYWwtZGVsZXRlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IEV4Y2x1c2lvbkRldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi9leGNsdXNpb24tZGV0YWlscyc7XG5pbXBvcnQgeyBGaWx0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmlsdGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2V4Y2x1c2lvbnMtbGlzdC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW10sXG4gICAgcHJvdmlkZXJzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBFeGNsdXNpb25zTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95ICB7XG4gICAgcHVibGljIGxvY2FsZSE6IFRhYmxlQ29sdW1uTG9jYWxlT3B0aW9ucztcbiAgICBwdWJsaWMgZW50aXR5TmFtZTogc3RyaW5nO1xuICAgIHB1YmxpYyBlbnRpdHlEZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gICAgcHVibGljIGN1cnJlbnRMaXN0UGFyYW1zOiBMaXN0UGFyYW1zID0geyBwYWdlOiAwLCBzaXplOiAxMCwgc29ydDogW10sIGZpbHRlckRhdGE6IHt9IH07XG4gICAgcHVibGljIGdyaWREYXRhOiBFeGNsdXNpb25Qcm9jZXNzW107XG4gICAgcHVibGljIGdyaWRDb2x1bW5zOiBhbnlbXTtcbiAgICBwdWJsaWMgc2hvd0xvYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyB0b3RhbFJlY29yZHMgPSAwO1xuXG4gICAgcHVibGljIGZpbHRlckZpZWxkczogRm9ybUZpZWxkW107XG4gICAgcHVibGljIGZpbHRlckZvcm1Hcm91cDogRm9ybUdyb3VwO1xuICAgIHB1YmxpYyBmaWx0ZXJzUGFuZWxDb2xsYXBzZWQgPSB0cnVlO1xuICAgIHB1YmxpYyBzZWFyY2hUb2tlbnM6IElUb2tlbltdID0gW107XG4gICAgcHVibGljIHNlcnZlckVycm9yOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAVmlld0NoaWxkKFwiZXhjbHVzaW9uc1RhYmxlXCIpXG4gICAgcHVibGljIHRhYmxlOiBUYWJsZTtcblxuICAgIEBWaWV3Q2hpbGQoRXhjbHVzaW9uRGV0YWlsc0NvbXBvbmVudClcbiAgICBwdWJsaWMgZXhjbHVzaW9uRGV0YWlsc0NvbXBvbmVudDogRXhjbHVzaW9uRGV0YWlsc0NvbXBvbmVudDtcblxuICAgIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbG9naWNhbERlbGV0ZVNlcnZpY2U6IExvZ2ljYWxEZWxldGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGZpbHRlclNlcnZpY2U6IEZpbHRlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvamVjdENvbmZpZ3M6IExvZ2ljYWxEZWxldGVDb25maWdTZXJ2aWNlXG4gICAgKSB7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmZpbHRlckZvcm1Hcm91cCA9IHRoaXMuZ2V0Rm9ybUJ1aWxkZXIoKTtcbiAgICAgICAgdGhpcy5maWx0ZXJGaWVsZHMgPSB0aGlzLmdldEZpbHRlckZpZWxkcygpO1xuICAgICAgICB0aGlzLmdyaWRDb2x1bW5zID0gdGhpcy5nZXRHcmlkQ29sdW1ucygpO1xuXG4gICAgICAgIHRoaXMucm91dGUuZGF0YVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhOiB7IFtjb25maWdzOiBzdHJpbmddOiBhbnksIGxvY2FsZUNvbmZpZzogVGFibGVDb2x1bW5Mb2NhbGVPcHRpb25zIH0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvY2FsZSA9IGRhdGEubG9jYWxlQ29uZmlnO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucm91dGUucGFyYW1zXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHBhcmFtczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpdHlOYW1lID0gcGFyYW1zLmVudGl0eU5hbWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtc1xuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChxdWVyeVBhcmFtczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpdHlEZXNjcmlwdGlvbiA9IHF1ZXJ5UGFyYW1zLmVudGl0eURlc2NyaXB0aW9uO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZvcm1CdWlsZGVyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtdKV0sXG4gICAgICAgICAgICBzdGF0ZTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtdKV0sXG4gICAgICAgICAgICBzdGFydERhdGU6IFt7IHZhbHVlOiB1bmRlZmluZWQsIGRpc2FibGVkOiBmYWxzZSB9LCBWYWxpZGF0b3JzLmNvbXBvc2UoW10pXSxcbiAgICAgICAgICAgIGVuZERhdGU6IFt7IHZhbHVlOiB1bmRlZmluZWQsIGRpc2FibGVkOiBmYWxzZSB9LCBWYWxpZGF0b3JzLmNvbXBvc2UoW10pXVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEdyaWRDb2x1bW5zKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZpZWxkOiBcImRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlczogWydkZXNjcmlwdGlvbiddLFxuICAgICAgICAgICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2Rlc2NyaXB0aW9uYCksXG4gICAgICAgICAgICAgICAgdHlwZTogRW51bUNvbHVtbkZpZWxkVHlwZS5TVFJJTkcsXG4gICAgICAgICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICczMDBweCdcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZpZWxkOiBcInN0YXR1c1wiLFxuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IFsnc3RhdHVzJ10sXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfc3RhdHVzYCksXG4gICAgICAgICAgICAgICAgdHlwZTogRW51bUNvbHVtbkZpZWxkVHlwZS5FTlVNLFxuICAgICAgICAgICAgICAgIGVudW1QcmVmaXg6IGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZW51bV9leGNsdXNpb25fcHJvY2Vzc19zdGF0dXNfYCxcbiAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzEwMHB4J1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgYmFkZ2VDb25maWdzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudW1WYWx1ZTogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMuRVJST1IsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLlJFRFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtVmFsdWU6IEVudW1FeGNsdXNpb25Qcm9jZXNzU3RhdHVzLlBFTkRJTkcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLllFTExPV1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtVmFsdWU6IEVudW1FeGNsdXNpb25Qcm9jZXNzU3RhdHVzLlBST0NFU1NJTkcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLkJMVUVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZW51bVZhbHVlOiBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cy5TVUNDRVNTLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IEVudW1CYWRnZUNvbG9ycy5HUkVFTlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmaWVsZDogXCJzdGFydERhdGVcIixcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBbJ3N0YXJ0RGF0ZSddLFxuICAgICAgICAgICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX3N0YXJ0YCksXG4gICAgICAgICAgICAgICAgdHlwZTogRW51bUNvbHVtbkZpZWxkVHlwZS5EQVRFLFxuICAgICAgICAgICAgICAgIGRhdGVGb3JtYXQ6IFwiREQvTU0vWVlZWSBISDptbVwiLFxuICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwcHgnXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmaWVsZDogXCJmaW5pc2hEYXRlXCIsXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlczogWydmaW5pc2hEYXRlJ10sXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZmluaXNoYCksXG4gICAgICAgICAgICAgICAgdHlwZTogRW51bUNvbHVtbkZpZWxkVHlwZS5EQVRFLFxuICAgICAgICAgICAgICAgIGRhdGVGb3JtYXQ6IFwiREQvTU0vWVlZWSBISDptbVwiLFxuICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwcHgnXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmlsdGVyRmllbGRzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBuYW1lOiBcImRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9kZXNjcmlwdGlvbmApXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5FbnVtLFxuICAgICAgICAgICAgICAgIG5hbWU6IFwic3RhdGVcIixcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX3N0YXR1c2ApLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfc3RhdHVzYCksXG4gICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2VudW1fZXhjbHVzaW9uX3Byb2Nlc3Nfc3RhdHVzX2Vycm9yYCksXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMuRVJST1JcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9lbnVtX2V4Y2x1c2lvbl9wcm9jZXNzX3N0YXR1c19wZW5kaW5nYCksXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMuUEVORElOR1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2VudW1fZXhjbHVzaW9uX3Byb2Nlc3Nfc3RhdHVzX3Byb2Nlc3NpbmdgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cy5QUk9DRVNTSU5HXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZW51bV9leGNsdXNpb25fcHJvY2Vzc19zdGF0dXNfc3VjY2Vzc2ApLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IEVudW1FeGNsdXNpb25Qcm9jZXNzU3RhdHVzLlNVQ0NFU1NcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLkRhdGUsXG4gICAgICAgICAgICAgICAgbmFtZTogXCJzdGFydERhdGVcIixcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX3N0YXJ0YClcbiAgICAgICAgICAgIH0pLFxuXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuRGF0ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiBcImVuZERhdGVcIixcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2ZpbmlzaGApXG4gICAgICAgICAgICB9KVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRFbXB0eVN0YXRlVGl0bGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZW1wdHlfc3RhdGVfdGl0bGVgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RW1wdHlTdGF0ZURlc2NyaXB0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2VtcHR5X3N0YXRlX2Rlc2NyaXB0aW9uYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRpdGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2xpc3RfdGl0bGVgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGV0YWlsc0J1dHRvblRpdGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2RldGFpbHNgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25TZWFyY2goKSB7XG4gICAgICAgIGNvbnN0IGZpbHRlckRhdGEgPSB0aGlzLmZpbHRlckZvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpO1xuICAgICAgICB0aGlzLmZpbHRlcnNQYW5lbENvbGxhcHNlZCA9IHRydWU7XG4gICAgICAgIHRoaXMucmVzZXRHcmlkKHsgZmlsdGVyRGF0YSB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DbGVhcigpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJGb3JtR3JvdXAucmVzZXQoKTtcbiAgICAgICAgY29uc3QgZmlsdGVyRGF0YSA9IHRoaXMuZmlsdGVyRm9ybUdyb3VwLmdldFJhd1ZhbHVlKCk7XG4gICAgICAgIHRoaXMucmVzZXRHcmlkKHsgZmlsdGVyRGF0YSB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25SZW1vdmVUb2tlbih0b2tlbjogSVRva2VuKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyRm9ybUdyb3VwLmdldCh0b2tlbi5pZCkuc2V0VmFsdWUodW5kZWZpbmVkKTtcbiAgICAgICAgY29uc3QgZmlsdGVyRGF0YSA9IHRoaXMuZmlsdGVyRm9ybUdyb3VwLmdldFJhd1ZhbHVlKCk7XG4gICAgICAgIHRoaXMucmVzZXRHcmlkKHsgZmlsdGVyRGF0YSB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25HcmlkQ2hhbmdlKGV2ZW50OiBMYXp5TG9hZEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IHNpemUgPSBldmVudC5yb3dzO1xuICAgICAgICBjb25zdCBwYWdlID0gZXZlbnQuZmlyc3QgLyBzaXplO1xuICAgICAgICBjb25zdCBzb3J0ID0gZXZlbnQubXVsdGlTb3J0TWV0YSA/IGV2ZW50Lm11bHRpU29ydE1ldGEgOiBbXTtcbiAgICAgICAgcmV0dXJuIHRoaXMudXBkYXRlR3JpZCh7IHBhZ2UsIHNpemUsIHNvcnQgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaWx0ZXJUb2tlbnMoKSB7XG4gICAgICAgIGNvbnN0IGZpbHRlckRhdGEgPSB0aGlzLmZpbHRlckZvcm1Hcm91cC52YWx1ZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJGaWVsZHNcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgbmFtZSB9KSA9PiBmaWx0ZXJEYXRhW25hbWVdICE9IHVuZGVmaW5lZCAmJiBmaWx0ZXJEYXRhW25hbWVdICE9PSBcIlwiKVxuICAgICAgICAgICAgLm1hcChmb3JtRmllbGQgPT4gdGhpcy5maWx0ZXJTZXJ2aWNlLmNyZWF0ZUZpbHRlclRva2Vucyhmb3JtRmllbGQsIGZpbHRlckRhdGFbZm9ybUZpZWxkLm5hbWVdKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaWx0ZXJRdWVyeSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCB7IGZpbHRlckRhdGEgfSA9IHRoaXMuY3VycmVudExpc3RQYXJhbXM7XG4gICAgICAgIGNvbnN0IGRhdGVGaWVsZHMgPSBbJ3N0YXJ0RGF0ZScsICdlbmREYXRlJ107XG5cbiAgICAgICAgbGV0IGZpbHRlclF1ZXJ5ID0gdGhpcy5maWx0ZXJGaWVsZHNcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgbmFtZSB9KSA9PiAhZGF0ZUZpZWxkcy5pbmNsdWRlcyhuYW1lKSlcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgbmFtZSB9KSA9PiBmaWx0ZXJEYXRhW25hbWVdICE9IHVuZGVmaW5lZClcbiAgICAgICAgICAgIC5tYXAoZm9ybUZpZWxkID0+IHRoaXMuZmlsdGVyU2VydmljZS5jcmVhdGVGaWx0ZXJTdHJpbmcoZm9ybUZpZWxkLCBmaWx0ZXJEYXRhW2Zvcm1GaWVsZC5uYW1lXSkpXG4gICAgICAgICAgICAuam9pbihcIiBhbmQgXCIpO1xuXG4gICAgICAgIGlmIChmaWx0ZXJEYXRhLnN0YXJ0RGF0ZSAmJiBmaWx0ZXJEYXRhLmVuZERhdGUpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IG1vbWVudChmaWx0ZXJEYXRhLnN0YXJ0RGF0ZSkuZm9ybWF0KCdZWVlZLU1NLUREJyk7XG4gICAgICAgICAgICBjb25zdCBlbmREYXRlID0gbW9tZW50KGZpbHRlckRhdGEuZW5kRGF0ZSkuZm9ybWF0KCdZWVlZLU1NLUREJyk7XG4gICAgICAgICAgICBjb25zdCBkYXRlUXVlcnkgPSBgc3RhcnREYXRlIGJldHdlZW4gJyR7c3RhcnREYXRlfScgYW5kICcke2VuZERhdGV9J2A7XG4gICAgICAgICAgICBpZiAoZmlsdGVyUXVlcnkpIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJRdWVyeSArPSBgIGFuZCAke2RhdGVRdWVyeX1gO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJRdWVyeSA9IGRhdGVRdWVyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaWx0ZXJRdWVyeTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUdyaWQobGlzdFBhcmFtczogTGlzdFBhcmFtcyA9IHt9KSB7XG4gICAgICAgIHRoaXMuY3VycmVudExpc3RQYXJhbXMgPSB7IC4uLnRoaXMuY3VycmVudExpc3RQYXJhbXMsIC4uLmxpc3RQYXJhbXMgfTtcbiAgICAgICAgY29uc3QgeyBwYWdlLCBzaXplLCBzb3J0IH0gPSB0aGlzLmN1cnJlbnRMaXN0UGFyYW1zO1xuXG4gICAgICAgIHRoaXMuc2VhcmNoVG9rZW5zID0gdGhpcy5nZXRGaWx0ZXJUb2tlbnMoKTtcbiAgICAgICAgY29uc3QgZmlsdGVyUXVlcnkgPSB0aGlzLmdldEZpbHRlclF1ZXJ5KCk7XG4gICAgICAgIGNvbnN0IGRpc3BsYXlGaWVsZHMgPSBbXG4gICAgICAgICAgICAncmVjb3JkSWQnLFxuICAgICAgICAgICAgLi4udGhpcy5ncmlkQ29sdW1ucy5tYXAoY29sdW1uID0+IGNvbHVtbi5maWVsZClcbiAgICAgICAgXTtcblxuICAgICAgICB0aGlzLmxpc3RFeGNsdXNpb25zKHsgcGFnZSwgc2l6ZSwgc29ydCwgZmlsdGVyUXVlcnksIGRpc3BsYXlGaWVsZHMgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGxpc3RFeGNsdXNpb25zKHBhcmFtczogYW55KSB7XG4gICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IHRydWU7XG4gICAgICAgIHRoaXMuc2VydmVyRXJyb3IgPSBmYWxzZTtcblxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgICB0aGlzLmxvZ2ljYWxEZWxldGVTZXJ2aWNlXG4gICAgICAgICAgICAubGlzdEV4Y2x1c2lvbnModGhpcy5lbnRpdHlOYW1lLCBwYXJhbXMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyLnN0YXR1cyA+PSA1MDAgJiYgZXJyLnN0YXR1cyA8IDYwMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2ZXJFcnJvciA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobGlzdDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5ncmlkRGF0YSA9IGxpc3QuY29udGVudHM7XG4gICAgICAgICAgICAgICAgdGhpcy50b3RhbFJlY29yZHMgPSBsaXN0LnRvdGFsRWxlbWVudHM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZm9jdXNJbnB1dChlbGVtZW50SWQ6IHN0cmluZykge1xuICAgICAgICBjb25zdCBlbGVtZW50OiBhbnkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHtlbGVtZW50SWR9YCk7XG4gICAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgICAgICBlbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRHcmlkKGxpc3RQYXJhbXM/OiBMaXN0UGFyYW1zKSB7XG4gICAgICAgIGlmIChsaXN0UGFyYW1zKSB0aGlzLmN1cnJlbnRMaXN0UGFyYW1zID0geyAuLi50aGlzLmN1cnJlbnRMaXN0UGFyYW1zLCAuLi5saXN0UGFyYW1zIH07XG4gICAgICAgIHRoaXMuY3VycmVudExpc3RQYXJhbXMgPSB7IC4uLnRoaXMuY3VycmVudExpc3RQYXJhbXMsIHBhZ2U6IDAsIHNvcnQ6IFtdIH07XG4gICAgICAgIHRoaXMudGFibGUucmVzZXQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DbGlja0RldGFpbHMocm93RGF0YTogRXhjbHVzaW9uUHJvY2Vzcykge1xuICAgICAgICB0aGlzLmV4Y2x1c2lvbkRldGFpbHNDb21wb25lbnQuc2hvd0RldGFpbHMoe1xuICAgICAgICAgICAgcmVjb3JkSWQ6IHJvd0RhdGEucmVjb3JkSWQsXG4gICAgICAgICAgICBlbnRpdHlEZXNjcmlwdGlvbjogdGhpcy5lbnRpdHlEZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGVudGl0eU5hbWU6IHRoaXMuZW50aXR5TmFtZVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,47 @@
1
+ import { __decorate } from "tslib";
2
+ import { CommonModule } from "@angular/common";
3
+ import { NgModule } from "@angular/core";
4
+ import { PanelModule } from "primeng/panel";
5
+ import { TableModule as PrimeTableModule } from "primeng/table";
6
+ import { ButtonModule, LoadingStateModule, TableModule, LocaleModule, TokenListModule, DynamicFormModule, EmptyStateModule, ControlErrorsModule, InfoSignModule } from "@seniorsistemas/angular-components";
7
+ import { ExclusionsListComponent } from "./exclusions-list.component";
8
+ import { TranslateModule } from "@ngx-translate/core";
9
+ import { FormsModule, ReactiveFormsModule } from "@angular/forms";
10
+ import { DialogModule } from "primeng/dialog";
11
+ import { ConfirmDialogModule } from "primeng/confirmdialog";
12
+ import { InputTextModule } from "primeng/inputtext";
13
+ import { ExclusionDetailsModule } from "../exclusion-details";
14
+ import { ExclusionsListFeatureRouting } from "./exclusions-list.routing";
15
+ let ExclusionsListModule = class ExclusionsListModule {
16
+ };
17
+ ExclusionsListModule = __decorate([
18
+ NgModule({
19
+ imports: [
20
+ FormsModule,
21
+ ReactiveFormsModule,
22
+ TranslateModule,
23
+ CommonModule,
24
+ ControlErrorsModule,
25
+ ButtonModule,
26
+ PanelModule,
27
+ InputTextModule,
28
+ InfoSignModule,
29
+ ConfirmDialogModule,
30
+ DialogModule,
31
+ PrimeTableModule,
32
+ TableModule,
33
+ LoadingStateModule,
34
+ EmptyStateModule,
35
+ DynamicFormModule,
36
+ TokenListModule,
37
+ LocaleModule.forChild(),
38
+ ExclusionDetailsModule,
39
+ ExclusionsListFeatureRouting
40
+ ],
41
+ declarations: [ExclusionsListComponent],
42
+ exports: [ExclusionsListComponent],
43
+ entryComponents: [ExclusionsListComponent]
44
+ })
45
+ ], ExclusionsListModule);
46
+ export { ExclusionsListModule };
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9ucy1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9leGNsdXNpb24tcHJvY2Vzcy1jb21wb25lbnQvIiwic291cmNlcyI6WyJleGNsdXNpb25zLWxpc3QvZXhjbHVzaW9ucy1saXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsV0FBVyxJQUFJLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFDSCxZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLFdBQVcsRUFDWCxZQUFZLEVBQ1osZUFBZSxFQUNmLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLGNBQWMsRUFDakIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUE2QnpFLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0NBQUcsQ0FBQTtBQUF2QixvQkFBb0I7SUEzQmhDLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRTtZQUNMLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsWUFBWTtZQUNaLFdBQVc7WUFDWCxlQUFlO1lBQ2YsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQixlQUFlO1lBQ2YsWUFBWSxDQUFDLFFBQVEsRUFBRTtZQUN2QixzQkFBc0I7WUFDdEIsNEJBQTRCO1NBQy9CO1FBQ0QsWUFBWSxFQUFFLENBQUMsdUJBQXVCLENBQUM7UUFDdkMsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7UUFDbEMsZUFBZSxFQUFFLENBQUMsdUJBQXVCLENBQUM7S0FDN0MsQ0FBQztHQUNXLG9CQUFvQixDQUFHO1NBQXZCLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFBhbmVsTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvcGFuZWxcIjtcbmltcG9ydCB7IFRhYmxlTW9kdWxlIGFzIFByaW1lVGFibGVNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy90YWJsZVwiO1xuaW1wb3J0IHtcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgTG9hZGluZ1N0YXRlTW9kdWxlLFxuICAgIFRhYmxlTW9kdWxlLFxuICAgIExvY2FsZU1vZHVsZSxcbiAgICBUb2tlbkxpc3RNb2R1bGUsXG4gICAgRHluYW1pY0Zvcm1Nb2R1bGUsXG4gICAgRW1wdHlTdGF0ZU1vZHVsZSxcbiAgICBDb250cm9sRXJyb3JzTW9kdWxlLFxuICAgIEluZm9TaWduTW9kdWxlXG59IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzXCI7XG5pbXBvcnQgeyBFeGNsdXNpb25zTGlzdENvbXBvbmVudCB9IGZyb20gXCIuL2V4Y2x1c2lvbnMtbGlzdC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvZGlhbG9nXCI7XG5pbXBvcnQgeyBDb25maXJtRGlhbG9nTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvY29uZmlybWRpYWxvZ1wiO1xuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSBcInByaW1lbmcvaW5wdXR0ZXh0XCI7XG5pbXBvcnQgeyBFeGNsdXNpb25EZXRhaWxzTW9kdWxlIH0gZnJvbSBcIi4uL2V4Y2x1c2lvbi1kZXRhaWxzXCI7XG5pbXBvcnQgeyBFeGNsdXNpb25zTGlzdEZlYXR1cmVSb3V0aW5nIH0gZnJvbSBcIi4vZXhjbHVzaW9ucy1saXN0LnJvdXRpbmdcIjtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgQ29udHJvbEVycm9yc01vZHVsZSxcbiAgICAgICAgQnV0dG9uTW9kdWxlLFxuICAgICAgICBQYW5lbE1vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgICAgICBJbmZvU2lnbk1vZHVsZSxcbiAgICAgICAgQ29uZmlybURpYWxvZ01vZHVsZSxcbiAgICAgICAgRGlhbG9nTW9kdWxlLFxuICAgICAgICBQcmltZVRhYmxlTW9kdWxlLFxuICAgICAgICBUYWJsZU1vZHVsZSxcbiAgICAgICAgTG9hZGluZ1N0YXRlTW9kdWxlLFxuICAgICAgICBFbXB0eVN0YXRlTW9kdWxlLFxuICAgICAgICBEeW5hbWljRm9ybU1vZHVsZSxcbiAgICAgICAgVG9rZW5MaXN0TW9kdWxlLFxuICAgICAgICBMb2NhbGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICAgICAgRXhjbHVzaW9uRGV0YWlsc01vZHVsZSxcbiAgICAgICAgRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ1xuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbRXhjbHVzaW9uc0xpc3RDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtFeGNsdXNpb25zTGlzdENvbXBvbmVudF0sXG4gICAgZW50cnlDb21wb25lbnRzOiBbRXhjbHVzaW9uc0xpc3RDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEV4Y2x1c2lvbnNMaXN0TW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,115 @@
1
+ import { __decorate } from "tslib";
2
+ import { NgModule, Injectable, Component } from "@angular/core";
3
+ import { RouterModule } from "@angular/router";
4
+ import { TranslateService } from "@ngx-translate/core";
5
+ import { PermissionsService } from "@seniorsistemas/platform-components";
6
+ import { LocaleService } from "@seniorsistemas/angular-components";
7
+ import { ExclusionsListComponent } from "./exclusions-list.component";
8
+ import { LogicalDeleteConfigService } from "../services/logical-delete-config.service";
9
+ let ExclusionsListFeatureRoutingGuard = class ExclusionsListFeatureRoutingGuard {
10
+ canActivate() {
11
+ return true;
12
+ }
13
+ };
14
+ ExclusionsListFeatureRoutingGuard = __decorate([
15
+ Injectable()
16
+ ], ExclusionsListFeatureRoutingGuard);
17
+ export { ExclusionsListFeatureRoutingGuard };
18
+ let ExclusionsListFeatureRoutingListTitleResolver = class ExclusionsListFeatureRoutingListTitleResolver {
19
+ constructor(translate, projectConfigs) {
20
+ this.translate = translate;
21
+ this.projectConfigs = projectConfigs;
22
+ }
23
+ resolve() {
24
+ return this.translate.get(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);
25
+ }
26
+ };
27
+ ExclusionsListFeatureRoutingListTitleResolver.ctorParameters = () => [
28
+ { type: TranslateService },
29
+ { type: LogicalDeleteConfigService }
30
+ ];
31
+ ExclusionsListFeatureRoutingListTitleResolver = __decorate([
32
+ Injectable()
33
+ ], ExclusionsListFeatureRoutingListTitleResolver);
34
+ export { ExclusionsListFeatureRoutingListTitleResolver };
35
+ let ExclusionsListFeatureRoutingPermissionResolver = class ExclusionsListFeatureRoutingPermissionResolver {
36
+ constructor(permissionsService) {
37
+ this.permissionsService = permissionsService;
38
+ }
39
+ resolve() {
40
+ return this.permissionsService.get();
41
+ }
42
+ };
43
+ ExclusionsListFeatureRoutingPermissionResolver.ctorParameters = () => [
44
+ { type: PermissionsService }
45
+ ];
46
+ ExclusionsListFeatureRoutingPermissionResolver = __decorate([
47
+ Injectable()
48
+ ], ExclusionsListFeatureRoutingPermissionResolver);
49
+ export { ExclusionsListFeatureRoutingPermissionResolver };
50
+ let ExclusionsListFeatureRoutingLocaleResolver = class ExclusionsListFeatureRoutingLocaleResolver {
51
+ constructor(localeService) {
52
+ this.localeService = localeService;
53
+ }
54
+ resolve() {
55
+ return this.localeService.get();
56
+ }
57
+ };
58
+ ExclusionsListFeatureRoutingLocaleResolver.ctorParameters = () => [
59
+ { type: LocaleService }
60
+ ];
61
+ ExclusionsListFeatureRoutingLocaleResolver = __decorate([
62
+ Injectable()
63
+ ], ExclusionsListFeatureRoutingLocaleResolver);
64
+ export { ExclusionsListFeatureRoutingLocaleResolver };
65
+ let EmptyComponent = class EmptyComponent {
66
+ };
67
+ EmptyComponent = __decorate([
68
+ Component({
69
+ template: `<router-outlet></router-outlet>`
70
+ })
71
+ ], EmptyComponent);
72
+ export { EmptyComponent };
73
+ export const routes = [
74
+ {
75
+ path: "exclusions-list",
76
+ component: EmptyComponent,
77
+ canActivate: [
78
+ ExclusionsListFeatureRoutingGuard
79
+ ],
80
+ resolve: {
81
+ allPermissions: ExclusionsListFeatureRoutingPermissionResolver,
82
+ localeConfig: ExclusionsListFeatureRoutingLocaleResolver,
83
+ routeTitle: ExclusionsListFeatureRoutingListTitleResolver
84
+ },
85
+ children: [
86
+ {
87
+ path: ":entityName",
88
+ component: ExclusionsListComponent
89
+ }
90
+ ]
91
+ }
92
+ ];
93
+ let ExclusionsListFeatureRouting = class ExclusionsListFeatureRouting {
94
+ };
95
+ ExclusionsListFeatureRouting = __decorate([
96
+ NgModule({
97
+ imports: [
98
+ RouterModule.forChild(routes)
99
+ ],
100
+ exports: [
101
+ RouterModule
102
+ ],
103
+ providers: [
104
+ ExclusionsListFeatureRoutingGuard,
105
+ ExclusionsListFeatureRoutingPermissionResolver,
106
+ ExclusionsListFeatureRoutingLocaleResolver,
107
+ ExclusionsListFeatureRoutingListTitleResolver
108
+ ],
109
+ declarations: [
110
+ EmptyComponent
111
+ ]
112
+ })
113
+ ], ExclusionsListFeatureRouting);
114
+ export { ExclusionsListFeatureRouting };
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9ucy1saXN0LnJvdXRpbmcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsiZXhjbHVzaW9ucy1saXN0L2V4Y2x1c2lvbnMtbGlzdC5yb3V0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBdUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFHdkYsSUFBYSxpQ0FBaUMsR0FBOUMsTUFBYSxpQ0FBaUM7SUFDbkMsV0FBVztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7Q0FDSixDQUFBO0FBSlksaUNBQWlDO0lBRDdDLFVBQVUsRUFBRTtHQUNBLGlDQUFpQyxDQUk3QztTQUpZLGlDQUFpQztBQU85QyxJQUFhLDZDQUE2QyxHQUExRCxNQUFhLDZDQUE2QztJQUN0RCxZQUNxQixTQUEyQixFQUMzQixjQUEwQztRQUQxQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixtQkFBYyxHQUFkLGNBQWMsQ0FBNEI7SUFDNUQsQ0FBQztJQUVHLE9BQU87UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO0lBQ3pHLENBQUM7Q0FDSixDQUFBOztZQVBtQyxnQkFBZ0I7WUFDWCwwQkFBMEI7O0FBSHRELDZDQUE2QztJQUR6RCxVQUFVLEVBQUU7R0FDQSw2Q0FBNkMsQ0FTekQ7U0FUWSw2Q0FBNkM7QUFZMUQsSUFBYSw4Q0FBOEMsR0FBM0QsTUFBYSw4Q0FBOEM7SUFDdkQsWUFBNkIsa0JBQXNDO1FBQXRDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7SUFBRyxDQUFDO0lBRWhFLE9BQU87UUFDVixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0NBQ0osQ0FBQTs7WUFMb0Qsa0JBQWtCOztBQUQxRCw4Q0FBOEM7SUFEMUQsVUFBVSxFQUFFO0dBQ0EsOENBQThDLENBTTFEO1NBTlksOENBQThDO0FBUzNELElBQWEsMENBQTBDLEdBQXZELE1BQWEsMENBQTBDO0lBQ25ELFlBQTZCLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUV0RCxPQUFPO1FBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7Q0FDSixDQUFBOztZQUwrQyxhQUFhOztBQURoRCwwQ0FBMEM7SUFEdEQsVUFBVSxFQUFFO0dBQ0EsMENBQTBDLENBTXREO1NBTlksMENBQTBDO0FBV3ZELElBQWEsY0FBYyxHQUEzQixNQUFhLGNBQWM7Q0FBRyxDQUFBO0FBQWpCLGNBQWM7SUFIMUIsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGlDQUFpQztLQUM5QyxDQUFDO0dBQ1csY0FBYyxDQUFHO1NBQWpCLGNBQWM7QUFFM0IsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFXO0lBQzFCO1FBQ0ksSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixTQUFTLEVBQUUsY0FBYztRQUN6QixXQUFXLEVBQUU7WUFDVCxpQ0FBaUM7U0FDcEM7UUFDRCxPQUFPLEVBQUU7WUFDTCxjQUFjLEVBQUUsOENBQThDO1lBQzlELFlBQVksRUFBRSwwQ0FBMEM7WUFDeEQsVUFBVSxFQUFFLDZDQUE2QztTQUM1RDtRQUNELFFBQVEsRUFBRTtZQUNOO2dCQUNJLElBQUksRUFBRSxhQUFhO2dCQUNuQixTQUFTLEVBQUUsdUJBQXVCO2FBQ3JDO1NBQ0o7S0FDSjtDQUNKLENBQUM7QUFtQkYsSUFBYSw0QkFBNEIsR0FBekMsTUFBYSw0QkFBNEI7Q0FBRyxDQUFBO0FBQS9CLDRCQUE0QjtJQWpCeEMsUUFBUSxDQUFDO1FBQ04sT0FBTyxFQUFFO1lBQ0wsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7U0FDaEM7UUFDRCxPQUFPLEVBQUU7WUFDTCxZQUFZO1NBQ2Y7UUFDRCxTQUFTLEVBQUU7WUFDUCxpQ0FBaUM7WUFDakMsOENBQThDO1lBQzlDLDBDQUEwQztZQUMxQyw2Q0FBNkM7U0FDaEQ7UUFDRCxZQUFZLEVBQUU7WUFDVixjQUFjO1NBQ2pCO0tBQ0osQ0FBQztHQUNXLDRCQUE0QixDQUFHO1NBQS9CLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBJbmplY3RhYmxlLCBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlLCBSb3V0ZXMsIENhbkFjdGl2YXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBQZXJtaXNzaW9uc1NlcnZpY2UgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbmltcG9ydCB7IExvY2FsZVNlcnZpY2UgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgRXhjbHVzaW9uc0xpc3RDb21wb25lbnQgfSBmcm9tIFwiLi9leGNsdXNpb25zLWxpc3QuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBMb2dpY2FsRGVsZXRlQ29uZmlnU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9sb2dpY2FsLWRlbGV0ZS1jb25maWcuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ0d1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xuICAgIHB1YmxpYyBjYW5BY3RpdmF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ0xpc3RUaXRsZVJlc29sdmVyIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvamVjdENvbmZpZ3M6IExvZ2ljYWxEZWxldGVDb25maWdTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIHJlc29sdmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5nZXQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9saXN0X3RpdGxlYCk7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ1Blcm1pc3Npb25SZXNvbHZlciB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwZXJtaXNzaW9uc1NlcnZpY2U6IFBlcm1pc3Npb25zU2VydmljZSkge31cblxuICAgIHB1YmxpYyByZXNvbHZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wZXJtaXNzaW9uc1NlcnZpY2UuZ2V0KCk7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ0xvY2FsZVJlc29sdmVyIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UpIHt9XG5cbiAgICBwdWJsaWMgcmVzb2x2ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxlU2VydmljZS5nZXQoKTtcbiAgICB9XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlOiBgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PmBcbn0pXG5leHBvcnQgY2xhc3MgRW1wdHlDb21wb25lbnQge31cblxuZXhwb3J0IGNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICAgIHtcbiAgICAgICAgcGF0aDogXCJleGNsdXNpb25zLWxpc3RcIixcbiAgICAgICAgY29tcG9uZW50OiBFbXB0eUNvbXBvbmVudCxcbiAgICAgICAgY2FuQWN0aXZhdGU6IFtcbiAgICAgICAgICAgIEV4Y2x1c2lvbnNMaXN0RmVhdHVyZVJvdXRpbmdHdWFyZFxuICAgICAgICBdLFxuICAgICAgICByZXNvbHZlOiB7XG4gICAgICAgICAgICBhbGxQZXJtaXNzaW9uczogRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ1Blcm1pc3Npb25SZXNvbHZlcixcbiAgICAgICAgICAgIGxvY2FsZUNvbmZpZzogRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ0xvY2FsZVJlc29sdmVyLFxuICAgICAgICAgICAgcm91dGVUaXRsZTogRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ0xpc3RUaXRsZVJlc29sdmVyXG4gICAgICAgIH0sXG4gICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcGF0aDogXCI6ZW50aXR5TmFtZVwiLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogRXhjbHVzaW9uc0xpc3RDb21wb25lbnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgIH1cbl07XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBSb3V0ZXJNb2R1bGVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBFeGNsdXNpb25zTGlzdEZlYXR1cmVSb3V0aW5nR3VhcmQsXG4gICAgICAgIEV4Y2x1c2lvbnNMaXN0RmVhdHVyZVJvdXRpbmdQZXJtaXNzaW9uUmVzb2x2ZXIsXG4gICAgICAgIEV4Y2x1c2lvbnNMaXN0RmVhdHVyZVJvdXRpbmdMb2NhbGVSZXNvbHZlcixcbiAgICAgICAgRXhjbHVzaW9uc0xpc3RGZWF0dXJlUm91dGluZ0xpc3RUaXRsZVJlc29sdmVyXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgRW1wdHlDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEV4Y2x1c2lvbnNMaXN0RmVhdHVyZVJvdXRpbmcge31cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from "./exclusions-list.module";
2
+ export * from "./exclusions-list.component";
3
+ export * from "./exclusions-list.routing";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsiZXhjbHVzaW9ucy1saXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vZXhjbHVzaW9ucy1saXN0Lm1vZHVsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhjbHVzaW9ucy1saXN0LmNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhjbHVzaW9ucy1saXN0LnJvdXRpbmdcIjtcbiJdfQ==
@@ -0,0 +1,27 @@
1
+ var LogicalDeleteModule_1;
2
+ import { __decorate } from "tslib";
3
+ import { NgModule } from "@angular/core";
4
+ import { ProjectConfigsInjectionToken } from "./models/project-config";
5
+ import { FilterService } from "./services/filter.service";
6
+ import { LogicalDeleteConfigService } from "./services/logical-delete-config.service";
7
+ import { LogicalDeleteService } from "./services/logical-delete.service";
8
+ let LogicalDeleteModule = LogicalDeleteModule_1 = class LogicalDeleteModule {
9
+ static forRoot(config) {
10
+ return {
11
+ ngModule: LogicalDeleteModule_1,
12
+ providers: [
13
+ {
14
+ provide: ProjectConfigsInjectionToken,
15
+ useValue: config
16
+ }
17
+ ]
18
+ };
19
+ }
20
+ };
21
+ LogicalDeleteModule = LogicalDeleteModule_1 = __decorate([
22
+ NgModule({
23
+ providers: [LogicalDeleteService, LogicalDeleteConfigService, FilterService]
24
+ })
25
+ ], LogicalDeleteModule);
26
+ export { LogicalDeleteModule };
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naWNhbC1kZWxldGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2V4Y2x1c2lvbi1wcm9jZXNzLWNvbXBvbmVudC8iLCJzb3VyY2VzIjpbImxvZ2ljYWwtZGVsZXRlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBa0IsNEJBQTRCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDdEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFLekUsSUFBYSxtQkFBbUIsMkJBQWhDLE1BQWEsbUJBQW1CO0lBQzVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBc0I7UUFDakMsT0FBTztZQUNILFFBQVEsRUFBRSxxQkFBbUI7WUFDN0IsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSw0QkFBNEI7b0JBQ3JDLFFBQVEsRUFBRSxNQUFNO2lCQUNuQjthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7Q0FDSixDQUFBO0FBWlksbUJBQW1CO0lBSC9CLFFBQVEsQ0FBQztRQUNOLFNBQVMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLDBCQUEwQixFQUFFLGFBQWEsQ0FBQztLQUMvRSxDQUFDO0dBQ1csbUJBQW1CLENBWS9CO1NBWlksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUHJvamVjdENvbmZpZ3MsIFByb2plY3RDb25maWdzSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiLi9tb2RlbHMvcHJvamVjdC1jb25maWdcIjtcbmltcG9ydCB7IEZpbHRlclNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9maWx0ZXIuc2VydmljZVwiO1xuaW1wb3J0IHsgTG9naWNhbERlbGV0ZUNvbmZpZ1NlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9sb2dpY2FsLWRlbGV0ZS1jb25maWcuc2VydmljZVwiO1xuaW1wb3J0IHsgTG9naWNhbERlbGV0ZVNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9sb2dpY2FsLWRlbGV0ZS5zZXJ2aWNlXCI7XG5cbkBOZ01vZHVsZSh7XG4gICAgcHJvdmlkZXJzOiBbTG9naWNhbERlbGV0ZVNlcnZpY2UsIExvZ2ljYWxEZWxldGVDb25maWdTZXJ2aWNlLCBGaWx0ZXJTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpY2FsRGVsZXRlTW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yUm9vdChjb25maWc6IFByb2plY3RDb25maWdzKTogTW9kdWxlV2l0aFByb3ZpZGVyczxMb2dpY2FsRGVsZXRlTW9kdWxlPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogTG9naWNhbERlbGV0ZU1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogUHJvamVjdENvbmZpZ3NJbmplY3Rpb25Ub2tlbixcbiAgICAgICAgICAgICAgICAgICAgdXNlVmFsdWU6IGNvbmZpZ1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9uLXByb2Nlc3Mtc3RlcC1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9leGNsdXNpb24tcHJvY2Vzcy1jb21wb25lbnQvIiwic291cmNlcyI6WyJtb2RlbHMvZXhjbHVzaW9uLXByb2Nlc3Mtc3RlcC1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMgfSBmcm9tIFwiLi4vZW51bXMvZW51bS1leGNsdXNpb24tcHJvY2Vzcy1zdGF0dXNcIjtcbmltcG9ydCB7IEV4Y2x1c2lvblByb2Nlc3MgfSBmcm9tIFwiLi9leGNsdXNpb24tcHJvY2Vzc1wiO1xuaW1wb3J0IHsgRXhjbHVzaW9uUHJvY2Vzc1N0ZXAgfSBmcm9tIFwiLi9leGNsdXNpb24tcHJvY2Vzcy1zdGVwXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhjbHVzaW9uUHJvY2Vzc1N0ZXBHcm91cCB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIHN0YXR1czogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXM7XG4gICAgZXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuICAgIHN0YXJ0RGF0ZT86IERhdGU7XG4gICAgZmluaXNoRGF0ZT86IERhdGU7XG4gICAgZXhjbHVzaW9uUHJvY2VzczogRXhjbHVzaW9uUHJvY2VzcztcbiAgICBzdGVwczogRXhjbHVzaW9uUHJvY2Vzc1N0ZXBbXTtcbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9uLXByb2Nlc3Mtc3RlcC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9leGNsdXNpb24tcHJvY2Vzcy1jb21wb25lbnQvIiwic291cmNlcyI6WyJtb2RlbHMvZXhjbHVzaW9uLXByb2Nlc3Mtc3RlcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMgfSBmcm9tIFwiLi4vZW51bXMvZW51bS1leGNsdXNpb24tcHJvY2Vzcy1zdGF0dXNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBFeGNsdXNpb25Qcm9jZXNzU3RlcCB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIHN0YXR1czogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXM7XG4gICAgc3RhcnREYXRlPzogRGF0ZTtcbiAgICBmaW5pc2hEYXRlPzogRGF0ZTtcbiAgICBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9uLXByb2Nlc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsibW9kZWxzL2V4Y2x1c2lvbi1wcm9jZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cyB9IGZyb20gXCIuLi9lbnVtcy9lbnVtLWV4Y2x1c2lvbi1wcm9jZXNzLXN0YXR1c1wiO1xuaW1wb3J0IHsgRXhjbHVzaW9uUHJvY2Vzc1N0ZXBHcm91cCB9IGZyb20gXCIuL2V4Y2x1c2lvbi1wcm9jZXNzLXN0ZXAtZ3JvdXBcIjtcblxuZXhwb3J0IGludGVyZmFjZSBFeGNsdXNpb25Qcm9jZXNzIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGVudGl0eU5hbWU6IHN0cmluZztcbiAgICByZWNvcmRJZDogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgc3RhdHVzOiBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cztcbiAgICBzdGFydERhdGU/OiBEYXRlO1xuICAgIGZpbmlzaERhdGU/OiBEYXRlO1xuICAgIGVycm9yTWVzc2FnZT86IHN0cmluZztcbiAgICBncm91cHM6IEV4Y2x1c2lvblByb2Nlc3NTdGVwR3JvdXBbXTtcbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsibW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2V4Y2x1c2lvbi1wcm9jZXNzJztcbmV4cG9ydCAqIGZyb20gJy4vZXhjbHVzaW9uLXByb2Nlc3Mtc3RlcCc7XG5leHBvcnQgKiBmcm9tICcuL2V4Y2x1c2lvbi1wcm9jZXNzLXN0ZXAtZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LXJlc3VsdCc7XG4iXX0=
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYXJhbXMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsibW9kZWxzL2xpc3QtcGFyYW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTb3J0TWV0YSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RQYXJhbXMge1xuICAgIHBhZ2U/OiBudW1iZXI7XG4gICAgc2l6ZT86IG51bWJlcjtcbiAgICBzb3J0PzogU29ydE1ldGFbXTtcbiAgICBmaWx0ZXJEYXRhPzogYW55O1xuICAgIGZpbHRlclF1ZXJ5Pzogc3RyaW5nO1xuICAgIGRpc3BsYXlGaWVsZHM/OiBzdHJpbmdbXTtcbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1yZXN1bHQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsibW9kZWxzL2xpc3QtcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIExpc3RSZXN1bHQ8VD4ge1xuICAgIGNvbnRlbnRzOiBUW107XG4gICAgdG90YWxFbGVtZW50czogbnVtYmVyO1xuICAgIHRvdGFsUGFnZXM6IG51bWJlcjtcbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ export const ProjectConfigsInjectionToken = new InjectionToken("projectConfigs");
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvZXhjbHVzaW9uLXByb2Nlc3MtY29tcG9uZW50LyIsInNvdXJjZXMiOlsibW9kZWxzL3Byb2plY3QtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxjQUFjLENBQWlCLGdCQUFnQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmV4cG9ydCBjb25zdCBQcm9qZWN0Q29uZmlnc0luamVjdGlvblRva2VuID0gbmV3IEluamVjdGlvblRva2VuPFByb2plY3RDb25maWdzPihcInByb2plY3RDb25maWdzXCIpO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3RDb25maWdzIHtcbiAgICBkb21haW46IHN0cmluZztcbiAgICBzZXJ2aWNlOiBzdHJpbmc7XG4gICAgdHJhbnNsYXRpb25QcmVmaXg/OiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from "./exclusion-details/index";
2
+ export * from "./exclusions-list/index";
3
+ export * from "./logical-delete.module";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9leGNsdXNpb24tcHJvY2Vzcy1jb21wb25lbnQvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vZXhjbHVzaW9uLWRldGFpbHMvaW5kZXhcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V4Y2x1c2lvbnMtbGlzdC9pbmRleFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbW9kZWxzL2luZGV4XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sb2dpY2FsLWRlbGV0ZS5tb2R1bGVcIjtcbiJdfQ==