@valtimo/dossier 11.3.2 → 12.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 (123) hide show
  1. package/esm2022/lib/components/dossier-assign-user/dossier-assign-user.component.mjs +7 -7
  2. package/esm2022/lib/components/dossier-bulk-assign-modal/dossier-bulk-assign-modal.component.mjs +7 -7
  3. package/esm2022/lib/components/dossier-detail/dossier-detail.component.mjs +47 -12
  4. package/esm2022/lib/components/dossier-detail/tab/audit/audit.component.mjs +7 -7
  5. package/esm2022/lib/components/dossier-detail/tab/documents/documents.component.mjs +52 -16
  6. package/esm2022/lib/components/dossier-detail/tab/formio/formio.component.mjs +7 -7
  7. package/esm2022/lib/components/dossier-detail/tab/not-found/not-found.component.mjs +28 -0
  8. package/esm2022/lib/components/dossier-detail/tab/notes/notes.component.mjs +14 -9
  9. package/esm2022/lib/components/dossier-detail/tab/progress/progress.component.mjs +8 -12
  10. package/esm2022/lib/components/dossier-detail/tab/s3-documents/s3-documents.component.mjs +8 -9
  11. package/esm2022/lib/components/dossier-detail/tab/summary/summary.component.mjs +7 -7
  12. package/esm2022/lib/components/dossier-list/dossier-list.component.mjs +78 -53
  13. package/esm2022/lib/components/dossier-list-actions/dossier-list-actions.component.mjs +7 -7
  14. package/esm2022/lib/components/dossier-process-start-modal/dossier-process-start-modal.component.mjs +18 -16
  15. package/esm2022/lib/components/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.mjs +9 -9
  16. package/esm2022/lib/components/dossier-update/dossier-update.component.mjs +7 -7
  17. package/esm2022/lib/components/note-modal/note-modal.component.mjs +7 -7
  18. package/esm2022/lib/constants/case-status.constants.mjs +26 -0
  19. package/esm2022/lib/constants/case-tab-token.mjs +2 -2
  20. package/esm2022/lib/constants/dossier-list.constants.mjs +39 -0
  21. package/esm2022/lib/constants/index.mjs +18 -1
  22. package/esm2022/lib/constants/tab.mjs +2 -6
  23. package/esm2022/lib/dossier-routing.module.mjs +6 -6
  24. package/esm2022/lib/dossier.module.mjs +32 -29
  25. package/esm2022/lib/models/candidate-user.model.mjs +2 -2
  26. package/esm2022/lib/models/dossier-detail-tab.model.mjs +2 -4
  27. package/esm2022/lib/models/dossier-parameters.model.mjs +2 -2
  28. package/esm2022/lib/models/index.mjs +2 -3
  29. package/esm2022/lib/models/notes.model.mjs +2 -2
  30. package/esm2022/lib/models/search.model.mjs +2 -2
  31. package/esm2022/lib/models/tab-api.model.mjs +2 -2
  32. package/esm2022/lib/models/tabs.model.mjs +2 -2
  33. package/esm2022/lib/permissions/dossier-detail.permissions.mjs +2 -2
  34. package/esm2022/lib/permissions/index.mjs +2 -2
  35. package/esm2022/lib/pipes/index.mjs +2 -2
  36. package/esm2022/lib/pipes/tab-translate/index.mjs +2 -2
  37. package/esm2022/lib/pipes/tab-translate/tab-translate-pipe.module.mjs +6 -6
  38. package/esm2022/lib/pipes/tab-translate/tab-translate.pipe.mjs +6 -6
  39. package/esm2022/lib/services/dossier-bulk-assign.service.mjs +5 -5
  40. package/esm2022/lib/services/dossier-column.service.mjs +7 -7
  41. package/esm2022/lib/services/dossier-list-assignee.service.mjs +6 -6
  42. package/esm2022/lib/services/dossier-list-pagination.service.mjs +6 -6
  43. package/esm2022/lib/services/dossier-list-search.service.mjs +6 -6
  44. package/esm2022/lib/services/dossier-list-status.service.mjs +62 -0
  45. package/esm2022/lib/services/dossier-list.service.mjs +6 -6
  46. package/esm2022/lib/services/dossier-parameter.service.mjs +44 -18
  47. package/esm2022/lib/services/dossier-tab-api.service.mjs +20 -5
  48. package/esm2022/lib/services/dossier-tab.service.mjs +19 -11
  49. package/esm2022/lib/services/dossier.service.mjs +6 -6
  50. package/esm2022/lib/services/index.mjs +4 -3
  51. package/esm2022/lib/services/notes.service.mjs +6 -6
  52. package/esm2022/lib/services/start-modal.service.mjs +23 -8
  53. package/esm2022/public_api.mjs +2 -4
  54. package/fesm2022/valtimo-dossier.mjs +603 -797
  55. package/fesm2022/valtimo-dossier.mjs.map +1 -1
  56. package/lib/components/dossier-detail/dossier-detail.component.d.ts +13 -3
  57. package/lib/components/dossier-detail/dossier-detail.component.d.ts.map +1 -1
  58. package/lib/components/dossier-detail/tab/documents/documents.component.d.ts +16 -6
  59. package/lib/components/dossier-detail/tab/documents/documents.component.d.ts.map +1 -1
  60. package/lib/components/dossier-detail/tab/not-found/not-found.component.d.ts +6 -0
  61. package/lib/components/dossier-detail/tab/not-found/not-found.component.d.ts.map +1 -0
  62. package/lib/components/dossier-detail/tab/notes/notes.component.d.ts +2 -1
  63. package/lib/components/dossier-detail/tab/notes/notes.component.d.ts.map +1 -1
  64. package/lib/components/dossier-detail/tab/progress/progress.component.d.ts.map +1 -1
  65. package/lib/components/dossier-detail/tab/s3-documents/s3-documents.component.d.ts +1 -2
  66. package/lib/components/dossier-detail/tab/s3-documents/s3-documents.component.d.ts.map +1 -1
  67. package/lib/components/dossier-list/dossier-list.component.d.ts +14 -15
  68. package/lib/components/dossier-list/dossier-list.component.d.ts.map +1 -1
  69. package/lib/components/dossier-process-start-modal/dossier-process-start-modal.component.d.ts +2 -3
  70. package/lib/components/dossier-process-start-modal/dossier-process-start-modal.component.d.ts.map +1 -1
  71. package/lib/components/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.d.ts +1 -1
  72. package/lib/components/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.d.ts.map +1 -1
  73. package/lib/constants/case-status.constants.d.ts +5 -0
  74. package/lib/constants/case-status.constants.d.ts.map +1 -0
  75. package/lib/constants/dossier-list.constants.d.ts +7 -0
  76. package/lib/constants/dossier-list.constants.d.ts.map +1 -0
  77. package/lib/constants/index.d.ts +2 -0
  78. package/lib/constants/index.d.ts.map +1 -1
  79. package/lib/constants/tab.d.ts.map +1 -1
  80. package/lib/dossier.module.d.ts +23 -26
  81. package/lib/dossier.module.d.ts.map +1 -1
  82. package/lib/models/dossier-detail-tab.model.d.ts +0 -2
  83. package/lib/models/dossier-detail-tab.model.d.ts.map +1 -1
  84. package/lib/models/dossier-parameters.model.d.ts +1 -0
  85. package/lib/models/dossier-parameters.model.d.ts.map +1 -1
  86. package/lib/models/index.d.ts +0 -1
  87. package/lib/models/index.d.ts.map +1 -1
  88. package/lib/services/dossier-list-status.service.d.ts +21 -0
  89. package/lib/services/dossier-list-status.service.d.ts.map +1 -0
  90. package/lib/services/dossier-list.service.d.ts +1 -1
  91. package/lib/services/dossier-list.service.d.ts.map +1 -1
  92. package/lib/services/dossier-parameter.service.d.ts +4 -2
  93. package/lib/services/dossier-parameter.service.d.ts.map +1 -1
  94. package/lib/services/dossier-tab-api.service.d.ts.map +1 -1
  95. package/lib/services/dossier-tab.service.d.ts +4 -3
  96. package/lib/services/dossier-tab.service.d.ts.map +1 -1
  97. package/lib/services/index.d.ts +2 -1
  98. package/lib/services/index.d.ts.map +1 -1
  99. package/lib/services/start-modal.service.d.ts.map +1 -1
  100. package/package.json +5 -5
  101. package/public_api.d.ts +0 -2
  102. package/public_api.d.ts.map +1 -1
  103. package/esm2022/lib/components/dossier-detail/tab/contact-moments/contact-moments.component.mjs +0 -86
  104. package/esm2022/lib/components/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.mjs +0 -144
  105. package/esm2022/lib/components/dossier-detail/tab/object-type/object-type.component.mjs +0 -121
  106. package/esm2022/lib/components/dossier-detail/tab/zaakobjecten/zaakobjecten.component.mjs +0 -112
  107. package/esm2022/lib/models/zaakobjecten.model.mjs +0 -17
  108. package/esm2022/lib/services/file-sort.service.mjs +0 -39
  109. package/esm2022/lib/services/zaakobjecten.service.mjs +0 -44
  110. package/lib/components/dossier-detail/tab/contact-moments/contact-moments.component.d.ts +0 -30
  111. package/lib/components/dossier-detail/tab/contact-moments/contact-moments.component.d.ts.map +0 -1
  112. package/lib/components/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.d.ts +0 -55
  113. package/lib/components/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.d.ts.map +0 -1
  114. package/lib/components/dossier-detail/tab/object-type/object-type.component.d.ts +0 -32
  115. package/lib/components/dossier-detail/tab/object-type/object-type.component.d.ts.map +0 -1
  116. package/lib/components/dossier-detail/tab/zaakobjecten/zaakobjecten.component.d.ts +0 -32
  117. package/lib/components/dossier-detail/tab/zaakobjecten/zaakobjecten.component.d.ts.map +0 -1
  118. package/lib/models/zaakobjecten.model.d.ts +0 -26
  119. package/lib/models/zaakobjecten.model.d.ts.map +0 -1
  120. package/lib/services/file-sort.service.d.ts +0 -11
  121. package/lib/services/file-sort.service.d.ts.map +0 -1
  122. package/lib/services/zaakobjecten.service.d.ts +0 -17
  123. package/lib/services/zaakobjecten.service.d.ts.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { OnDestroy } from '@angular/core';
2
2
  import { DossierParameters } from '../models';
3
- import { Observable, Subscription } from 'rxjs';
3
+ import { Observable } from 'rxjs';
4
4
  import { ActivatedRoute, Router } from '@angular/router';
5
5
  import { AssigneeFilter, SearchFieldValues } from '@valtimo/config';
6
6
  import { Pagination } from '@valtimo/components';
@@ -15,13 +15,15 @@ export declare class DossierParameterService implements OnDestroy {
15
15
  get querySearchParams$(): Observable<SearchFieldValues>;
16
16
  get queryPaginationParams$(): Observable<Pagination | null>;
17
17
  get queryAssigneeParam$(): Observable<AssigneeFilter>;
18
- dossierParametersSubscription: Subscription;
18
+ get queryStatusParams$(): Observable<string[] | null>;
19
+ private _dossierParametersSubscription;
19
20
  constructor(router: Router, route: ActivatedRoute);
20
21
  ngOnDestroy(): void;
21
22
  setSearchFieldValues(searchFieldValues: SearchFieldValues): void;
22
23
  setSearchParameters(searchParameters: SearchFieldValues): void;
23
24
  setPaginationParameters(pagination: Pagination): void;
24
25
  setAssigneeParameter(assigneeFilter: AssigneeFilter): void;
26
+ setStatusParameter(statusKeyParameters: string[]): void;
25
27
  clearSearchFieldValues(): void;
26
28
  clearParameters(): void;
27
29
  private openDossierParametersSubscription;
@@ -1 +1 @@
1
- {"version":3,"file":"dossier-parameter.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/dossier-parameter.service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAa,SAAS,EAAC,MAAM,eAAe,CAAC;AACpD,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAKL,UAAU,EACV,YAAY,EAEb,MAAM,MAAM,CAAC;AACd,OAAO,EAAC,cAAc,EAAE,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAa,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;;AAE/C,qBACa,uBAAwB,YAAW,SAAS;IAyErD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAzExB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqD;IACzF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8C;IAElF,IAAI,kBAAkB,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAEtD;IAED,IAAI,kBAAkB,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAEtD;IAED,IAAI,kBAAkB,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAYtD;IAED,IAAI,sBAAsB,IAAI,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,CA8B1D;IAED,IAAI,mBAAmB,IAAI,UAAU,CAAC,cAAc,CAAC,CAUpD;IAED,6BAA6B,EAAG,YAAY,CAAC;gBAG1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,cAAc;IAKxC,WAAW,IAAI,IAAI;IAInB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI;IAIhE,mBAAmB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,IAAI;IAgB9D,uBAAuB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAkBrD,oBAAoB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAS1D,sBAAsB,IAAI,IAAI;IAI9B,eAAe,IAAI,IAAI;IAKvB,OAAO,CAAC,iCAAiC;IAMzC,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,oBAAoB;yCA5JjB,uBAAuB;6CAAvB,uBAAuB;CA8KnC"}
1
+ {"version":3,"file":"dossier-parameter.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/dossier-parameter.service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAa,SAAS,EAAC,MAAM,eAAe,CAAC;AACpD,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAKL,UAAU,EAGX,MAAM,MAAM,CAAC;AACd,OAAO,EAAC,cAAc,EAAE,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAa,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;;AAE/C,qBACa,uBAAwB,YAAW,SAAS;IAmFrD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAnFxB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqD;IACzF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8C;IAElF,IAAW,kBAAkB,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAE7D;IAED,IAAW,kBAAkB,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAE7D;IAED,IAAW,kBAAkB,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAY7D;IAED,IAAW,sBAAsB,IAAI,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,CA0BjE;IAED,IAAW,mBAAmB,IAAI,UAAU,CAAC,cAAc,CAAC,CAU3D;IAED,IAAW,kBAAkB,IAAI,UAAU,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAY3D;IAED,OAAO,CAAC,8BAA8B,CAAgB;gBAGnC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,cAAc;IAKjC,WAAW,IAAI,IAAI;IAInB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI;IAIhE,mBAAmB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,IAAI;IAgB9D,uBAAuB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAkBrD,oBAAoB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAS1D,kBAAkB,CAAC,mBAAmB,EAAE,MAAM,EAAE,GAAG,IAAI;IAgBvD,sBAAsB,IAAI,IAAI;IAI9B,eAAe,IAAI,IAAI;IAK9B,OAAO,CAAC,iCAAiC;IAMzC,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,oBAAoB;yCAtLjB,uBAAuB;6CAAvB,uBAAuB;CA0MnC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dossier-tab-api.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/dossier-tab-api.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,aAAa,EAAO,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAEhC,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;;AAErC,qBAGa,oBAAoB;IAI7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJvB,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAoD;gBAG1E,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,UAAU;IAG5B,cAAc,CAAC,sBAAsB,KAAA,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;yCARjE,oBAAoB;6CAApB,oBAAoB;CAahC"}
1
+ {"version":3,"file":"dossier-tab-api.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/dossier-tab-api.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,aAAa,EAAO,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAEhC,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;;AAErC,qBAGa,oBAAoB;IAI7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJvB,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAoD;gBAG1E,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,UAAU;IAG5B,cAAc,CAAC,sBAAsB,KAAA,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;yCARjE,oBAAoB;6CAApB,oBAAoB;CAahC"}
@@ -1,4 +1,4 @@
1
- import { OnDestroy } from '@angular/core';
1
+ import { OnDestroy, Type } from '@angular/core';
2
2
  import { CaseTabConfig, TabImpl } from '../models';
3
3
  import { ConfigService } from '@valtimo/config';
4
4
  import { ActivatedRoute } from '@angular/router';
@@ -8,6 +8,7 @@ import * as i0 from "@angular/core";
8
8
  export declare class DossierTabService implements OnDestroy {
9
9
  private readonly tabMap;
10
10
  private readonly caseTabConfig;
11
+ private readonly zgwObjectTypeComponent;
11
12
  private readonly configService;
12
13
  private readonly route;
13
14
  private readonly dossierTabApiService;
@@ -16,7 +17,7 @@ export declare class DossierTabService implements OnDestroy {
16
17
  private readonly _tabs$;
17
18
  private readonly _subscriptions;
18
19
  get tabs$(): Observable<Array<TabImpl>>;
19
- constructor(tabMap: Map<string, object>, caseTabConfig: CaseTabConfig, configService: ConfigService, route: ActivatedRoute, dossierTabApiService: DossierTabApiService);
20
+ constructor(tabMap: Map<string, object>, caseTabConfig: CaseTabConfig, zgwObjectTypeComponent: Type<any>, configService: ConfigService, route: ActivatedRoute, dossierTabApiService: DossierTabApiService);
20
21
  ngOnDestroy(): void;
21
22
  private getConfigurableTabs;
22
23
  private getAllEnvironmentTabs;
@@ -25,7 +26,7 @@ export declare class DossierTabService implements OnDestroy {
25
26
  private setApiTabs;
26
27
  private filterTab;
27
28
  private mapTab;
28
- static ɵfac: i0.ɵɵFactoryDeclaration<DossierTabService, [null, { optional: true; }, null, null, null]>;
29
+ static ɵfac: i0.ɵɵFactoryDeclaration<DossierTabService, [null, { optional: true; }, { optional: true; }, null, null, null]>;
29
30
  static ɵprov: i0.ɵɵInjectableDeclaration<DossierTabService>;
30
31
  }
31
32
  //# sourceMappingURL=dossier-tab.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dossier-tab.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/dossier-tab.service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAqB,SAAS,EAAW,MAAM,eAAe,CAAC;AACtE,OAAO,EAAyB,aAAa,EAAE,OAAO,EAAC,MAAM,WAAW,CAAC;AAEzE,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAA+B,UAAU,EAAe,MAAM,MAAM,CAAC;;AAG5E,qBACa,iBAAkB,YAAW,SAAS;IAc9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACJ,OAAO,CAAC,QAAQ,CAAC,aAAa;IAClE,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAjBvC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAW;IACjD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAGvC;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;IAC3E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD,IAAW,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAE7C;gBAGmC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAgB,EACvB,aAAa,EAAE,aAAa,EAChE,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,cAAc,EACrB,oBAAoB,EAAE,oBAAoB;IAMtD,WAAW;IAIlB,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,sCAAsC;IAY9C,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,MAAM;yCAnGH,iBAAiB;6CAAjB,iBAAiB;CAiI7B"}
1
+ {"version":3,"file":"dossier-tab.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/dossier-tab.service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAqB,SAAS,EAAY,IAAI,EAAC,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAyB,aAAa,EAAE,OAAO,EAAC,MAAM,WAAW,CAAC;AAEzE,OAAO,EAAC,aAAa,EAAkC,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAA+B,UAAU,EAAe,MAAM,MAAM,CAAC;;AAI5E,qBACa,iBAAkB,YAAW,SAAS;IAc9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACJ,OAAO,CAAC,QAAQ,CAAC,aAAa;IAGlE,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IApBvC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAW;IACjD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAGvC;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;IAC3E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD,IAAW,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAE7C;gBAGmC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAgB,EACvB,aAAa,EAAE,aAAa,EAGhE,sBAAsB,EAAE,IAAI,CAAC,GAAG,CAAC,EACjC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,cAAc,EACrB,oBAAoB,EAAE,oBAAoB;IAOtD,WAAW;IAIlB,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,sCAAsC;IAY9C,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,MAAM;yCAvGH,iBAAiB;6CAAjB,iBAAiB;CAqI7B"}
@@ -1,6 +1,5 @@
1
1
  export * from './dossier-bulk-assign.service';
2
2
  export * from './dossier-column.service';
3
- export * from './zaakobjecten.service';
4
3
  export * from './dossier-parameter.service';
5
4
  export * from './dossier-list.service';
6
5
  export * from './dossier-list-assignee.service';
@@ -9,4 +8,6 @@ export * from './dossier-list-search.service';
9
8
  export * from './dossier-tab.service';
10
9
  export * from './dossier.service';
11
10
  export * from './dossier-tab-api.service';
11
+ export * from './dossier-list-status.service';
12
+ export * from './start-modal.service';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/index.ts"],"names":[],"mappings":"AAgBA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/index.ts"],"names":[],"mappings":"AAgBA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"start-modal.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/start-modal.service.ts"],"names":[],"mappings":";AAEA,qBAGa,iBAAiB;IAE5B,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;yCAF/C,iBAAiB;6CAAjB,iBAAiB;CAuB7B"}
1
+ {"version":3,"file":"start-modal.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/dossier/src/lib/services/start-modal.service.ts"],"names":[],"mappings":";AAkBA,qBAGa,iBAAiB;IAC5B,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;yCAD/C,iBAAiB;6CAAjB,iBAAiB;CAuB7B"}
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@valtimo/dossier",
3
3
  "license": "EUPL-1.2",
4
- "version": "11.3.2",
4
+ "version": "12.0.0",
5
5
  "peerDependencies": {
6
- "@angular/common": "^16.2.0",
7
- "@angular/core": "^16.2.0"
6
+ "@angular/common": "^17.2.2",
7
+ "@angular/core": "^17.2.2"
8
8
  },
9
9
  "dependencies": {
10
10
  "ngx-csv": "0.3.2",
11
- "ngx-toastr": "17.0.2",
12
- "moment": "2.29.4",
11
+ "ngx-toastr": "18.0.0",
12
+ "moment": "2.30.1",
13
13
  "@ngx-translate/core": "15.0.0",
14
14
  "@ngx-translate/http-loader": "8.0.0",
15
15
  "tslib": "2.6.2"
package/public_api.d.ts CHANGED
@@ -1,12 +1,10 @@
1
1
  export * from './lib/components/dossier-bulk-assign-modal/dossier-bulk-assign-modal.component';
2
2
  export * from './lib/components/dossier-detail/dossier-detail.component';
3
3
  export * from './lib/components/dossier-detail/tab/audit/audit.component';
4
- export * from './lib/components/dossier-detail/tab/contact-moments/contact-moments.component';
5
4
  export * from './lib/components/dossier-detail/tab/documents/documents.component';
6
5
  export * from './lib/components/dossier-detail/tab/notes/notes.component';
7
6
  export * from './lib/components/dossier-detail/tab/progress/progress.component';
8
7
  export * from './lib/components/dossier-detail/tab/summary/summary.component';
9
- export * from './lib/components/dossier-detail/tab/zaakobjecten/zaakobjecten.component';
10
8
  export * from './lib/components/dossier-list/dossier-list.component';
11
9
  export * from './lib/constants';
12
10
  export * from './lib/dossier.module';
@@ -1 +1 @@
1
- {"version":3,"file":"public_api.d.ts","sourceRoot":"","sources":["../../../projects/valtimo/dossier/src/public_api.ts"],"names":[],"mappings":"AAoBA,cAAc,gFAAgF,CAAC;AAC/F,cAAc,0DAA0D,CAAC;AACzE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,+EAA+E,CAAC;AAC9F,cAAc,mEAAmE,CAAC;AAClF,cAAc,2DAA2D,CAAC;AAC1E,cAAc,iEAAiE,CAAC;AAChF,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yEAAyE,CAAC;AACxF,cAAc,sDAAsD,CAAC;AACrE,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"public_api.d.ts","sourceRoot":"","sources":["../../../projects/valtimo/dossier/src/public_api.ts"],"names":[],"mappings":"AAoBA,cAAc,gFAAgF,CAAC;AAC/F,cAAc,0DAA0D,CAAC;AACzE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,mEAAmE,CAAC;AAClF,cAAc,2DAA2D,CAAC;AAC1E,cAAc,iEAAiE,CAAC;AAChF,cAAc,+DAA+D,CAAC;AAC9E,cAAc,sDAAsD,CAAC;AACrE,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
@@ -1,86 +0,0 @@
1
- /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, ViewChild } from '@angular/core';
17
- import moment from 'moment';
18
- import { BehaviorSubject, combineLatest } from 'rxjs';
19
- import { TimelineItemImpl } from '@valtimo/components';
20
- import { map, switchMap, take } from 'rxjs/operators';
21
- import * as i0 from "@angular/core";
22
- import * as i1 from "@valtimo/contact-moment";
23
- import * as i2 from "@valtimo/components";
24
- import * as i3 from "@ngx-translate/core";
25
- import * as i4 from "@angular/common";
26
- import * as i5 from "@angular/forms";
27
- moment.locale(localStorage.getItem('langKey') || '');
28
- export class DossierDetailTabContactMomentsComponent {
29
- constructor(contactMomentService, alertService, translateService) {
30
- this.contactMomentService = contactMomentService;
31
- this.alertService = alertService;
32
- this.translateService = translateService;
33
- this.refetchContactMoments$ = new BehaviorSubject('');
34
- this.contactMoments$ = this.refetchContactMoments$.pipe(switchMap(() => this.contactMomentService.getContactMoments()), map(contactMoments => contactMoments.map(contactMoment => {
35
- const registratieDatum = moment(contactMoment.registratiedatum);
36
- return new TimelineItemImpl(registratieDatum.format('DD MMM YYYY'), registratieDatum.format('HH:mm'), contactMoment.medewerkerIdentificatie.achternaam, contactMoment.kanaal, contactMoment.tekst, null);
37
- })));
38
- this.text$ = new BehaviorSubject('');
39
- this.channel$ = new BehaviorSubject('MAIL');
40
- this.requestData$ = combineLatest([this.text$, this.channel$]);
41
- this.valid$ = this.requestData$.pipe(map(([text, channel]) => !!(text && channel)));
42
- this.disabled$ = new BehaviorSubject(false);
43
- }
44
- textChange(text) {
45
- this.text$.next(text);
46
- }
47
- buttonClick() {
48
- this.modal.show();
49
- }
50
- saveNote() {
51
- this.disable();
52
- this.requestData$.pipe(take(1)).subscribe(([text, channel]) => {
53
- this.contactMomentService.saveContactMoment({ kanaal: channel, tekst: text }).subscribe(() => {
54
- this.alertService.success(this.translateService.instant('dossier.contactMoments.saveSuccess'));
55
- this.enable();
56
- this.clear();
57
- this.modal.hide();
58
- this.refetchContactMoments();
59
- }, () => {
60
- this.enable();
61
- });
62
- });
63
- }
64
- disable() {
65
- this.disabled$.next(true);
66
- }
67
- enable() {
68
- this.disabled$.next(false);
69
- }
70
- clear() {
71
- this.text$.next('');
72
- }
73
- refetchContactMoments() {
74
- this.refetchContactMoments$.next('');
75
- }
76
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, deps: [{ token: i1.ContactMomentService }, { token: i2.AlertService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
77
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DossierDetailTabContactMomentsComponent, selector: "valtimo-dossier-detail-tab-contact-moments", viewQueries: [{ propertyName: "modal", first: true, predicate: ["contactMomentsNoteModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"contact-moments-container\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n <ng-container *ngTemplateOutlet=\"moments\"></ng-container>\n</div>\n\n<valtimo-modal\n #contactMomentsNoteModal\n [title]=\"'dossier.contactMoments.popupTitle' | translate\"\n [showFooter]=\"true\"\n [elementId]=\"'contact-moments-modal'\"\n>\n <div class=\"mt-2\" body>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n </div>\n <div footer>\n <ng-container *ngTemplateOutlet=\"footer\"></ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #body>\n <form>\n <div class=\"form-group row\">\n <label class=\"col-12 col-sm-3 col-form-label text-sm-right\" for=\"body\">\n {{ 'dossier.contactMoments.noteText' | translate }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <textarea\n [disabled]=\"disabled$ | async\"\n class=\"form-control\"\n id=\"body\"\n name=\"body\"\n [ngModel]=\"text$ | async\"\n (ngModelChange)=\"textChange($event)\"\n ></textarea>\n </div>\n </div>\n </form>\n</ng-template>\n\n<ng-template #footer>\n <button\n *ngIf=\"(disabled$ | async) === false; else loading\"\n class=\"btn btn-primary\"\n [disabled]=\"(valid$ | async) === false || (disabled$ | async)\"\n (click)=\"saveNote()\"\n >\n {{ 'dossier.contactMoments.saveButtonText' | translate }}\n </button>\n</ng-template>\n\n<ng-template #loading>\n <valtimo-spinner [noMarginTop]=\"true\"></valtimo-spinner>\n</ng-template>\n\n<ng-template #buttons>\n <div class=\"btn-group mt-m3px mb-3 button-container\">\n <button class=\"btn btn-primary btn-space\" (click)=\"buttonClick()\">\n <i class=\"icon mdi mdi-note-plus\"></i>\n &nbsp;{{ 'dossier.contactMoments.makeNoteButton' | translate }}\n </button>\n </div>\n</ng-template>\n\n<ng-template #moments>\n <div *ngIf=\"contactMoments$ | async as contactMoments; else loading\">\n <valtimo-timeline [items]=\"contactMoments\"></valtimo-timeline>\n </div>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.TimelineComponent, selector: "valtimo-timeline", inputs: ["items", "actions"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i2.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "component", type: i2.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
78
- }
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, decorators: [{
80
- type: Component,
81
- args: [{ selector: 'valtimo-dossier-detail-tab-contact-moments', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"contact-moments-container\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n <ng-container *ngTemplateOutlet=\"moments\"></ng-container>\n</div>\n\n<valtimo-modal\n #contactMomentsNoteModal\n [title]=\"'dossier.contactMoments.popupTitle' | translate\"\n [showFooter]=\"true\"\n [elementId]=\"'contact-moments-modal'\"\n>\n <div class=\"mt-2\" body>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n </div>\n <div footer>\n <ng-container *ngTemplateOutlet=\"footer\"></ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #body>\n <form>\n <div class=\"form-group row\">\n <label class=\"col-12 col-sm-3 col-form-label text-sm-right\" for=\"body\">\n {{ 'dossier.contactMoments.noteText' | translate }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <textarea\n [disabled]=\"disabled$ | async\"\n class=\"form-control\"\n id=\"body\"\n name=\"body\"\n [ngModel]=\"text$ | async\"\n (ngModelChange)=\"textChange($event)\"\n ></textarea>\n </div>\n </div>\n </form>\n</ng-template>\n\n<ng-template #footer>\n <button\n *ngIf=\"(disabled$ | async) === false; else loading\"\n class=\"btn btn-primary\"\n [disabled]=\"(valid$ | async) === false || (disabled$ | async)\"\n (click)=\"saveNote()\"\n >\n {{ 'dossier.contactMoments.saveButtonText' | translate }}\n </button>\n</ng-template>\n\n<ng-template #loading>\n <valtimo-spinner [noMarginTop]=\"true\"></valtimo-spinner>\n</ng-template>\n\n<ng-template #buttons>\n <div class=\"btn-group mt-m3px mb-3 button-container\">\n <button class=\"btn btn-primary btn-space\" (click)=\"buttonClick()\">\n <i class=\"icon mdi mdi-note-plus\"></i>\n &nbsp;{{ 'dossier.contactMoments.makeNoteButton' | translate }}\n </button>\n </div>\n</ng-template>\n\n<ng-template #moments>\n <div *ngIf=\"contactMoments$ | async as contactMoments; else loading\">\n <valtimo-timeline [items]=\"contactMoments\"></valtimo-timeline>\n </div>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n"] }]
82
- }], ctorParameters: function () { return [{ type: i1.ContactMomentService }, { type: i2.AlertService }, { type: i3.TranslateService }]; }, propDecorators: { modal: [{
83
- type: ViewChild,
84
- args: ['contactMomentsNoteModal']
85
- }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2NvbXBvbmVudHMvZG9zc2llci1kZXRhaWwvdGFiL2NvbnRhY3QtbW9tZW50cy9jb250YWN0LW1vbWVudHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLWRldGFpbC90YWIvY29udGFjdC1tb21lbnRzL2NvbnRhY3QtbW9tZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBc0IsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUErQixnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25GLE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBSXBELE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQU9yRCxNQUFNLE9BQU8sdUNBQXVDO0lBNkJsRCxZQUNtQixvQkFBMEMsRUFDMUMsWUFBMEIsRUFDMUIsZ0JBQWtDO1FBRmxDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTdCNUMsMkJBQXNCLEdB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SSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7K0dBOUVVLHVDQUF1QzttR0FBdkMsdUNBQXVDLG9NQ2hDcEQsaXNGQW9GQTs7NEZEcERhLHVDQUF1QztrQkFMbkQsU0FBUzsrQkFDRSw0Q0FBNEM7cUtBS2hCLEtBQUs7c0JBQTFDLFNBQVM7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbnRhY3RNb21lbnRTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9jb250YWN0LW1vbWVudCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge01vZGFsQ29tcG9uZW50LCBUaW1lbGluZUl0ZW0sIFRpbWVsaW5lSXRlbUltcGx9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcCwgdGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtBbGVydFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxubW9tZW50LmxvY2FsZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ0tleScpIHx8ICcnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItY29udGFjdC1tb21lbnRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRhY3QtbW9tZW50cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnRhY3QtbW9tZW50cy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyRGV0YWlsVGFiQ29udGFjdE1vbWVudHNDb21wb25lbnQge1xuICBAVmlld0NoaWxkKCdjb250YWN0TW9tZW50c05vdGVNb2RhbCcpIG1vZGFsOiBNb2RhbENvbXBvbmVudDtcblxuICByZWFkb25seSByZWZldGNoQ29udGFjdE1vbWVudHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJyk7XG4gIHJlYWRvbmx5IGNvbnRhY3RNb21lbnRzJDogT2JzZXJ2YWJsZTxBcnJheTxUaW1lbGluZUl0ZW0+PiA9IHRoaXMucmVmZXRjaENvbnRhY3RNb21lbnRzJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmNvbnRhY3RNb21lbnRTZXJ2aWNlLmdldENvbnRhY3RNb21lbnRzKCkpLFxuICAgIG1hcChjb250YWN0TW9tZW50cyA9PlxuICAgICAgY29udGFjdE1vbWVudHMubWFwKGNvbnRhY3RNb21lbnQgPT4ge1xuICAgICAgICBjb25zdCByZWdpc3RyYXRpZURhdHVtID0gbW9tZW50KGNvbnRhY3RNb21lbnQucmVnaXN0cmF0aWVkYXR1bSk7XG4gICAgICAgIHJldHVybiBuZXcgVGltZWxpbmVJdGVtSW1wbChcbiAgICAgICAgICByZWdpc3RyYXRpZURhdHVtLmZvcm1hdCgnREQgTU1NIFlZWVknKSxcbiAgICAgICAgICByZWdpc3RyYXRpZURhdHVtLmZvcm1hdCgnSEg6bW0nKSxcbiAgICAgICAgICBjb250YWN0TW9tZW50Lm1lZGV3ZXJrZXJJZGVudGlmaWNhdGllLmFjaHRlcm5hYW0sXG4gICAgICAgICAgY29udGFjdE1vbWVudC5rYW5hYWwsXG4gICAgICAgICAgY29udGFjdE1vbWVudC50ZWtzdCxcbiAgICAgICAgICBudWxsXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICByZWFkb25seSB0ZXh0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGNoYW5uZWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCdNQUlMJyk7XG4gIHJlYWRvbmx5IHJlcXVlc3REYXRhJDogT2JzZXJ2YWJsZTxBcnJheTxzdHJpbmc+PiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMudGV4dCQsIHRoaXMuY2hhbm5lbCRdKTtcbiAgcmVhZG9ubHkgdmFsaWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5yZXF1ZXN0RGF0YSQucGlwZShcbiAgICBtYXAoKFt0ZXh0LCBjaGFubmVsXSkgPT4gISEodGV4dCAmJiBjaGFubmVsKSlcbiAgKTtcbiAgcmVhZG9ubHkgZGlzYWJsZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250YWN0TW9tZW50U2VydmljZTogQ29udGFjdE1vbWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIHRleHRDaGFuZ2UodGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0JC5uZXh0KHRleHQpO1xuICB9XG5cbiAgYnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbC5zaG93KCk7XG4gIH1cblxuICBzYXZlTm90ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGUoKTtcblxuICAgIHRoaXMucmVxdWVzdERhdGEkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKChbdGV4dCwgY2hhbm5lbF0pID0+IHtcbiAgICAgIHRoaXMuY29udGFjdE1vbWVudFNlcnZpY2Uuc2F2ZUNvbnRhY3RNb21lbnQoe2thbmFhbDogY2hhbm5lbCwgdGVrc3Q6IHRleHR9KS5zdWJzY3JpYmUoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5zdWNjZXNzKFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2Rvc3NpZXIuY29udGFjdE1vbWVudHMuc2F2ZVN1Y2Nlc3MnKVxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5lbmFibGUoKTtcbiAgICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgICAgdGhpcy5tb2RhbC5oaWRlKCk7XG4gICAgICAgICAgdGhpcy5yZWZldGNoQ29udGFjdE1vbWVudHMoKTtcbiAgICAgICAgfSxcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZW5hYmxlKCk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGRpc2FibGUoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgZW5hYmxlKCk6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQkLm5leHQoZmFsc2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLnRleHQkLm5leHQoJycpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWZldGNoQ29udGFjdE1vbWVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5yZWZldGNoQ29udGFjdE1vbWVudHMkLm5leHQoJycpO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXYgY2xhc3M9XCJjb250YWN0LW1vbWVudHMtY29udGFpbmVyXCI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJidXR0b25zXCI+PC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJtb21lbnRzXCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPHZhbHRpbW8tbW9kYWxcbiAgI2NvbnRhY3RNb21lbnRzTm90ZU1vZGFsXG4gIFt0aXRsZV09XCInZG9zc2llci5jb250YWN0TW9tZW50cy5wb3B1cFRpdGxlJyB8IHRyYW5zbGF0ZVwiXG4gIFtzaG93Rm9vdGVyXT1cInRydWVcIlxuICBbZWxlbWVudElkXT1cIidjb250YWN0LW1vbWVudHMtbW9kYWwnXCJcbj5cbiAgPGRpdiBjbGFzcz1cIm10LTJcIiBib2R5PlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJib2R5XCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8ZGl2IGZvb3Rlcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9vdGVyXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC92YWx0aW1vLW1vZGFsPlxuXG48bmctdGVtcGxhdGUgI2JvZHk+XG4gIDxmb3JtPlxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHJvd1wiPlxuICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLTEyIGNvbC1zbS0zIGNvbC1mb3JtLWxhYmVsIHRleHQtc20tcmlnaHRcIiBmb3I9XCJib2R5XCI+XG4gICAgICAgIHt7ICdkb3NzaWVyLmNvbnRhY3RNb21lbnRzLm5vdGVUZXh0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLTggY29sLWxnLTZcIj5cbiAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkJCB8IGFzeW5jXCJcbiAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgaWQ9XCJib2R5XCJcbiAgICAgICAgICBuYW1lPVwiYm9keVwiXG4gICAgICAgICAgW25nTW9kZWxdPVwidGV4dCQgfCBhc3luY1wiXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidGV4dENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9mb3JtPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNmb290ZXI+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cIihkaXNhYmxlZCQgfCBhc3luYykgPT09IGZhbHNlOyBlbHNlIGxvYWRpbmdcIlxuICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICBbZGlzYWJsZWRdPVwiKHZhbGlkJCB8IGFzeW5jKSA9PT0gZmFsc2UgfHwgKGRpc2FibGVkJCB8IGFzeW5jKVwiXG4gICAgKGNsaWNrKT1cInNhdmVOb3RlKClcIlxuICA+XG4gICAge3sgJ2Rvc3NpZXIuY29udGFjdE1vbWVudHMuc2F2ZUJ1dHRvblRleHQnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNsb2FkaW5nPlxuICA8dmFsdGltby1zcGlubmVyIFtub01hcmdpblRvcF09XCJ0cnVlXCI+PC92YWx0aW1vLXNwaW5uZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2J1dHRvbnM+XG4gIDxkaXYgY2xhc3M9XCJidG4tZ3JvdXAgbXQtbTNweCBtYi0zIGJ1dHRvbi1jb250YWluZXJcIj5cbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zcGFjZVwiIChjbGljayk9XCJidXR0b25DbGljaygpXCI+XG4gICAgICA8aSBjbGFzcz1cImljb24gbWRpIG1kaS1ub3RlLXBsdXNcIj48L2k+XG4gICAgICAmbmJzcDt7eyAnZG9zc2llci5jb250YWN0TW9tZW50cy5tYWtlTm90ZUJ1dHRvbicgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21vbWVudHM+XG4gIDxkaXYgKm5nSWY9XCJjb250YWN0TW9tZW50cyQgfCBhc3luYyBhcyBjb250YWN0TW9tZW50czsgZWxzZSBsb2FkaW5nXCI+XG4gICAgPHZhbHRpbW8tdGltZWxpbmUgW2l0ZW1zXT1cImNvbnRhY3RNb21lbnRzXCI+PC92YWx0aW1vLXRpbWVsaW5lPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,144 +0,0 @@
1
- /*
2
- * Copyright 2015-2023 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component } from '@angular/core';
17
- import { catchError, map, switchMap, take, tap } from 'rxjs/operators';
18
- import { BehaviorSubject, combineLatest, of, Subject } from 'rxjs';
19
- import moment from 'moment';
20
- import * as i0 from "@angular/core";
21
- import * as i1 from "@angular/router";
22
- import * as i2 from "@valtimo/document";
23
- import * as i3 from "@valtimo/resource";
24
- import * as i4 from "@ngx-translate/core";
25
- import * as i5 from "@valtimo/config";
26
- import * as i6 from "@valtimo/security";
27
- import * as i7 from "../../../../services/file-sort.service";
28
- import * as i8 from "@angular/common";
29
- import * as i9 from "@valtimo/components";
30
- import * as i10 from "carbon-components-angular";
31
- export class DossierDetailTabDocumentenApiDocumentsComponent {
32
- constructor(route, documentService, uploadProviderService, downloadService, translateService, configService, userProviderService, fileSortService) {
33
- this.route = route;
34
- this.documentService = documentService;
35
- this.uploadProviderService = uploadProviderService;
36
- this.downloadService = downloadService;
37
- this.translateService = translateService;
38
- this.configService = configService;
39
- this.userProviderService = userProviderService;
40
- this.fileSortService = fileSortService;
41
- this.maxFileSize = this.configService?.config?.caseFileSizeUploadLimitMB || 5;
42
- this.acceptedFiles = this.configService?.config?.caseFileUploadAcceptedFiles || null;
43
- this.fields = [
44
- { key: 'fileName', label: 'File name' },
45
- { key: 'sizeInBytes', label: 'Size in bytes' },
46
- { key: 'createdOn', label: 'Created on' },
47
- { key: 'createdBy', label: 'Created by' },
48
- ];
49
- this.uploadProcessLinkedSet = false;
50
- this.uploading$ = new BehaviorSubject(false);
51
- this.showModal$ = new Subject();
52
- this.hideModal$ = new Subject();
53
- this.modalDisabled$ = new BehaviorSubject(false);
54
- this.fileToBeUploaded$ = new BehaviorSubject(null);
55
- this.loading$ = new BehaviorSubject(true);
56
- this.refetch$ = new BehaviorSubject(null);
57
- this.relatedFiles$ = this.refetch$.pipe(switchMap(() => combineLatest([
58
- this.documentService.getZakenApiDocuments(this.documentId),
59
- this.translateService.stream('key'),
60
- ])), map(([relatedFiles]) => {
61
- const translatedFiles = relatedFiles?.map(file => ({
62
- ...file,
63
- createdBy: file.createdBy || this.translateService.instant('list.automaticallyGenerated'),
64
- }));
65
- return translatedFiles || [];
66
- }), map(relatedFiles => this.fileSortService.sortRelatedFilesByDateDescending(relatedFiles)), map(relatedFiles => {
67
- moment.locale(this.translateService.currentLang);
68
- return relatedFiles.map(file => ({
69
- ...file,
70
- createdOn: moment(new Date(file.createdOn)).format('L'),
71
- }));
72
- }), tap(() => this.loading$.next(false)), catchError(() => {
73
- this.showZaakLinkWarning = true;
74
- return of([]);
75
- }));
76
- this.downloadingFileIndexes$ = new BehaviorSubject([]);
77
- const snapshot = this.route.snapshot.paramMap;
78
- this.documentId = snapshot.get('documentId') || '';
79
- this.documentDefinitionName = snapshot.get('documentDefinitionName') || '';
80
- this.valtimoEndpointUri = configService.config.valtimoApi.endpointUri;
81
- }
82
- ngOnInit() {
83
- this.refetchDocuments();
84
- this.setUploadProcessLinked();
85
- this.isUserAdmin();
86
- }
87
- fileSelected(file) {
88
- this.fileToBeUploaded$.next(file);
89
- this.showModal$.next(null);
90
- }
91
- downloadDocument(relatedFile, index) {
92
- this.downloadingFileIndexes$.pipe(take(1)).subscribe(indexes => {
93
- this.downloadingFileIndexes$.next([...indexes, index]);
94
- const finished$ = this.downloadService.downloadFile(`${this.valtimoEndpointUri}v1/documenten-api/${relatedFile.pluginConfigurationId}/files/${relatedFile.fileId}/download`, relatedFile.fileName);
95
- finished$.pipe(take(1)).subscribe(() => {
96
- this.downloadingFileIndexes$.next(this.downloadingFileIndexes$.getValue().filter(downloadIndex => downloadIndex !== index));
97
- });
98
- });
99
- }
100
- metadataSet(metadata) {
101
- this.uploading$.next(true);
102
- this.hideModal$.next(null);
103
- this.fileToBeUploaded$
104
- .pipe(take(1))
105
- .pipe(tap(file => {
106
- this.uploadProviderService
107
- .uploadFileWithMetadata(file, this.documentId, metadata)
108
- .subscribe(() => {
109
- this.refetchDocuments();
110
- this.uploading$.next(false);
111
- this.fileToBeUploaded$.next(null);
112
- });
113
- }))
114
- .subscribe();
115
- }
116
- indexesIncludeIndex(indexes, index) {
117
- return indexes.includes(index);
118
- }
119
- isUserAdmin() {
120
- this.userProviderService.getUserSubject().subscribe(userIdentity => {
121
- this.isAdmin = userIdentity.roles.includes('ROLE_ADMIN');
122
- }, () => {
123
- this.isAdmin = false;
124
- });
125
- }
126
- refetchDocuments() {
127
- this.refetch$.next(null);
128
- }
129
- setUploadProcessLinked() {
130
- this.uploadProviderService.checkUploadProcessLink(this.documentDefinitionName).subscribe(linked => {
131
- this.uploadProcessLinked = linked;
132
- this.uploadProcessLinkedSet = true;
133
- }, () => {
134
- this.uploadProcessLinkedSet = true;
135
- });
136
- }
137
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.DocumentService }, { token: i3.UploadProviderService }, { token: i3.DownloadService }, { token: i4.TranslateService }, { token: i5.ConfigService }, { token: i6.UserProviderService }, { token: i7.FileSortService }], target: i0.ɵɵFactoryTarget.Component }); }
138
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DossierDetailTabDocumentenApiDocumentsComponent, selector: "valtimo-dossier-detail-tab-documenten-api-documents", ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"{loading: loading$ | async} as obs\">\n <div *ngIf=\"uploadProcessLinkedSet && !uploadProcessLinked\">\n <div\n *ngIf=\"isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.adminRole'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n <div\n *ngIf=\"!isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n <div *ngIf=\"showZaakLinkWarning\">\n <div\n [translate]=\"'dossier.documenten.noZaakFound'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n\n <valtimo-dropzone\n *ngIf=\"!obs.loading\"\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"acceptedFiles\"\n [camera]=\"false\"\n [disabled]=\"\n !uploadProcessLinkedSet || !uploadProcessLinked || obs.loading || showZaakLinkWarning\n \"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"true\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"true\"\n [uploading]=\"uploading$ | async\"\n ></valtimo-dropzone>\n\n <valtimo-widget>\n <valtimo-list\n [ngClass]=\"{hidden: obs.loading}\"\n [fields]=\"fields\"\n [header]=\"true\"\n [isSearchable]=\"true\"\n [items]=\"relatedFiles$ | async\"\n [viewMode]=\"true\"\n [lastColumnTemplate]=\"downloadButton\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'Related documents' | translate }}</h3>\n <h5 class=\"list-header-description\">\n {{ 'Overview of all documents in this dossier' | translate }}\n </h5>\n </div>\n </valtimo-list>\n <ng-container *ngTemplateOutlet=\"loading; context: {loading: obs.loading}\"></ng-container>\n </valtimo-widget>\n</ng-container>\n\n<valtimo-documenten-api-metadata-modal\n (metadata)=\"metadataSet($event)\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hide$]=\"hideModal$\"\n [show$]=\"showModal$\"\n></valtimo-documenten-api-metadata-modal>\n\n<ng-template #loading let-loading=\"loading\">\n <div *ngIf=\"loading\" class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #downloadButton let-index=\"index\" let-item=\"item\">\n <div\n class=\"download-button-container\"\n *ngIf=\"{isDownloading: indexesIncludeIndex(downloadingFileIndexes$ | async, index)} as vars\"\n >\n <button\n *ngIf=\"!vars.isDownloading\"\n cdsButton=\"primary\"\n size=\"sm\"\n (click)=\"downloadDocument(item, index)\"\n >\n {{ 'interface.download' | translate\n }}<svg class=\"cds--btn__icon\" cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n <cds-loading size=\"sm\" *ngIf=\"vars.isDownloading\"></cds-loading>\n </div>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.download-button-container{display:flex;width:100%;flex-direction:row;justify-content:flex-end;align-items:center;min-height:32px}\n"], dependencies: [{ kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i9.ListComponent, selector: "valtimo-list", inputs: ["items", "fields", "pagination", "viewMode", "isSearchable", "header", "actions", "paginationIdentifier", "initialSortState", "lastColumnTemplate"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged"] }, { kind: "component", type: i9.WidgetComponent, selector: "valtimo-widget", inputs: ["type", "name", "icon", "contrast", "divider", "title", "subtitle", "collapseAble", "collapse", "additionalClasses"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i9.DropzoneComponent, selector: "valtimo-dropzone", inputs: ["title", "hideTitle", "subtitle", "externalError$", "maxFileSize", "showMaxFileSize", "acceptedFiles", "clear$", "disabled", "hideFilePreview", "uploading", "camera", "maxFiles"], outputs: ["fileSelected"] }, { kind: "component", type: i9.DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["show$", "hide$", "disabled$", "file$", "documentTitle", "disableDocumentTitle", "filename", "disableFilename", "author", "disableAuthor", "status", "disableStatus", "language", "disableLanguage", "documentType", "disableDocumentType", "description", "disableDescription", "confidentialityLevel", "disableConfidentialityLevel"], outputs: ["metadata"] }, { kind: "component", type: i10.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "directive", type: i10.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i10.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "pipe", type: i8.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
139
- }
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, decorators: [{
141
- type: Component,
142
- args: [{ selector: 'valtimo-dossier-detail-tab-documenten-api-documents', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"{loading: loading$ | async} as obs\">\n <div *ngIf=\"uploadProcessLinkedSet && !uploadProcessLinked\">\n <div\n *ngIf=\"isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.adminRole'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n <div\n *ngIf=\"!isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n <div *ngIf=\"showZaakLinkWarning\">\n <div\n [translate]=\"'dossier.documenten.noZaakFound'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n\n <valtimo-dropzone\n *ngIf=\"!obs.loading\"\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"acceptedFiles\"\n [camera]=\"false\"\n [disabled]=\"\n !uploadProcessLinkedSet || !uploadProcessLinked || obs.loading || showZaakLinkWarning\n \"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"true\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"true\"\n [uploading]=\"uploading$ | async\"\n ></valtimo-dropzone>\n\n <valtimo-widget>\n <valtimo-list\n [ngClass]=\"{hidden: obs.loading}\"\n [fields]=\"fields\"\n [header]=\"true\"\n [isSearchable]=\"true\"\n [items]=\"relatedFiles$ | async\"\n [viewMode]=\"true\"\n [lastColumnTemplate]=\"downloadButton\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'Related documents' | translate }}</h3>\n <h5 class=\"list-header-description\">\n {{ 'Overview of all documents in this dossier' | translate }}\n </h5>\n </div>\n </valtimo-list>\n <ng-container *ngTemplateOutlet=\"loading; context: {loading: obs.loading}\"></ng-container>\n </valtimo-widget>\n</ng-container>\n\n<valtimo-documenten-api-metadata-modal\n (metadata)=\"metadataSet($event)\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hide$]=\"hideModal$\"\n [show$]=\"showModal$\"\n></valtimo-documenten-api-metadata-modal>\n\n<ng-template #loading let-loading=\"loading\">\n <div *ngIf=\"loading\" class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #downloadButton let-index=\"index\" let-item=\"item\">\n <div\n class=\"download-button-container\"\n *ngIf=\"{isDownloading: indexesIncludeIndex(downloadingFileIndexes$ | async, index)} as vars\"\n >\n <button\n *ngIf=\"!vars.isDownloading\"\n cdsButton=\"primary\"\n size=\"sm\"\n (click)=\"downloadDocument(item, index)\"\n >\n {{ 'interface.download' | translate\n }}<svg class=\"cds--btn__icon\" cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n <cds-loading size=\"sm\" *ngIf=\"vars.isDownloading\"></cds-loading>\n </div>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.download-button-container{display:flex;width:100%;flex-direction:row;justify-content:flex-end;align-items:center;min-height:32px}\n"] }]
143
- }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.DocumentService }, { type: i3.UploadProviderService }, { type: i3.DownloadService }, { type: i4.TranslateService }, { type: i5.ConfigService }, { type: i6.UserProviderService }, { type: i7.FileSortService }]; } });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2NvbXBvbmVudHMvZG9zc2llci1kZXRhaWwvdGFiL2RvY3VtZW50ZW4tYXBpLWRvY3VtZW50cy9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLWRldGFpbC90YWIvZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzL2RvY3VtZW50ZW4tYXBpLWRvY3VtZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFJaEQsT0FBTyxFQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBTTdFLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQzs7Ozs7Ozs7Ozs7O0FBTzVCLE1BQU0sT0FBTywrQ0FBK0M7SUEyRDFELFlBQ21CLEtBQXFCLEVBQ3JCLGVBQWdDLEVBQ2hDLHFCQUE0QyxFQUM1QyxlQUFnQyxFQUNoQyxnQkFBa0MsRUFDbEMsYUFBNEIsRUFDNUIsbUJBQXdDLEVBQ3hDLGVBQWdDO1FBUGhDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FB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QyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsT0FBc0IsRUFBRSxLQUFhO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUNqRCxZQUFZLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU8sc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxTQUFTLENBQ3RGLE1BQU0sQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE1BQU0sQ0FBQztZQUNsQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO1FBQ3JDLENBQUMsRUFDRCxHQUFHLEVBQUU7WUFDSCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO1FBQ3JDLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQzsrR0F4SlUsK0NBQStDO21HQUEvQywrQ0FBK0MsMkZDbEM1RCxrK0dBd0dBOzs0RkR0RWEsK0NBQStDO2tCQUwzRCxTQUFTOytCQUNFLHFEQUFxRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7RG9jdW1lbnRTZXJ2aWNlLCBSZWxhdGVkRmlsZSwgUmVsYXRlZEZpbGVMaXN0SXRlbX0gZnJvbSAnQHZhbHRpbW8vZG9jdW1lbnQnO1xuaW1wb3J0IHtEb3dubG9hZFNlcnZpY2UsIFVwbG9hZFByb3ZpZGVyU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vcmVzb3VyY2UnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCwgdGFrZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Q29uZmlnU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7RG9jdW1lbnRlbkFwaU1ldGFkYXRhfSBmcm9tICdAdmFsdGltby9jb21wb25lbnRzJztcbmltcG9ydCB7VXNlclByb3ZpZGVyU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vc2VjdXJpdHknO1xuaW1wb3J0IHtGaWxlU29ydFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2ZpbGUtc29ydC5zZXJ2aWNlJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RvY3VtZW50ZW4tYXBpLWRvY3VtZW50cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY3VtZW50ZW4tYXBpLWRvY3VtZW50cy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyRGV0YWlsVGFiRG9jdW1lbnRlbkFwaURvY3VtZW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSBkb2N1bWVudElkOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBkb2N1bWVudERlZmluaXRpb25OYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtYXhGaWxlU2l6ZTogbnVtYmVyID0gdGhpcy5jb25maWdTZXJ2aWNlPy5jb25maWc/LmNhc2VGaWxlU2l6ZVVwbG9hZExpbWl0TUIgfHwgNTtcbiAgcHVibGljIHJlYWRvbmx5IGFjY2VwdGVkRmlsZXM6IHN0cmluZyA9XG4gICAgdGhpcy5jb25maWdTZXJ2aWNlPy5jb25maWc/LmNhc2VGaWxlVXBsb2FkQWNjZXB0ZWRGaWxlcyB8fCBudWxsO1xuICBwdWJsaWMgZmllbGRzID0gW1xuICAgIHtrZXk6ICdmaWxlTmFtZScsIGxhYmVsOiAnRmlsZSBuYW1lJ30sXG4gICAge2tleTogJ3NpemVJbkJ5dGVzJywgbGFiZWw6ICdTaXplIGluIGJ5dGVzJ30sXG4gICAge2tleTogJ2NyZWF0ZWRPbicsIGxhYmVsOiAnQ3JlYXRlZCBvbid9LFxuICAgIHtrZXk6ICdjcmVhdGVkQnknLCBsYWJlbDogJ0NyZWF0ZWQgYnknfSxcbiAgXTtcbiAgcHJpdmF0ZSByZWFkb25seSB2YWx0aW1vRW5kcG9pbnRVcmkhOiBzdHJpbmc7XG5cbiAgcHVibGljIHNob3daYWFrTGlua1dhcm5pbmc6IGJvb2xlYW47XG4gIHB1YmxpYyBpc0FkbWluOiBib29sZWFuO1xuICBwdWJsaWMgdXBsb2FkUHJvY2Vzc0xpbmtlZFNldCA9IGZhbHNlO1xuICBwdWJsaWMgdXBsb2FkUHJvY2Vzc0xpbmtlZCE6IGJvb2xlYW47XG4gIHJlYWRvbmx5IHVwbG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgc2hvd01vZGFsJCA9IG5ldyBTdWJqZWN0PG51bGw+KCk7XG4gIHJlYWRvbmx5IGhpZGVNb2RhbCQgPSBuZXcgU3ViamVjdDxudWxsPigpO1xuICByZWFkb25seSBtb2RhbERpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBmaWxlVG9CZVVwbG9hZGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RmlsZSB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBsb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVmZXRjaCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bGw+KG51bGwpO1xuXG4gIHB1YmxpYyByZWxhdGVkRmlsZXMkOiBPYnNlcnZhYmxlPEFycmF5PFJlbGF0ZWRGaWxlTGlzdEl0ZW0+PiA9IHRoaXMucmVmZXRjaCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRaYWtlbkFwaURvY3VtZW50cyh0aGlzLmRvY3VtZW50SWQpLFxuICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdrZXknKSxcbiAgICAgIF0pXG4gICAgKSxcbiAgICBtYXAoKFtyZWxhdGVkRmlsZXNdKSA9PiB7XG4gICAgICBjb25zdCB0cmFuc2xhdGVkRmlsZXMgPSByZWxhdGVkRmlsZXM/Lm1hcChmaWxlID0+ICh7XG4gICAgICAgIC4uLmZpbGUsXG4gICAgICAgIGNyZWF0ZWRCeTogZmlsZS5jcmVhdGVkQnkgfHwgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2xpc3QuYXV0b21hdGljYWxseUdlbmVyYXRlZCcpLFxuICAgICAgfSkpO1xuXG4gICAgICByZXR1cm4gdHJhbnNsYXRlZEZpbGVzIHx8IFtdO1xuICAgIH0pLFxuICAgIG1hcChyZWxhdGVkRmlsZXMgPT4gdGhpcy5maWxlU29ydFNlcnZpY2Uuc29ydFJlbGF0ZWRGaWxlc0J5RGF0ZURlc2NlbmRpbmcocmVsYXRlZEZpbGVzKSksXG4gICAgbWFwKHJlbGF0ZWRGaWxlcyA9PiB7XG4gICAgICBtb21lbnQubG9jYWxlKHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyk7XG5cbiAgICAgIHJldHVybiByZWxhdGVkRmlsZXMubWFwKGZpbGUgPT4gKHtcbiAgICAgICAgLi4uZmlsZSxcbiAgICAgICAgY3JlYXRlZE9uOiBtb21lbnQobmV3IERhdGUoZmlsZS5jcmVhdGVkT24pKS5mb3JtYXQoJ0wnKSxcbiAgICAgIH0pKTtcbiAgICB9KSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nJC5uZXh0KGZhbHNlKSksXG4gICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICB0aGlzLnNob3daYWFrTGlua1dhcm5pbmcgPSB0cnVlO1xuICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICB9KVxuICApO1xuXG4gIHJlYWRvbmx5IGRvd25sb2FkaW5nRmlsZUluZGV4ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxudW1iZXI+PihbXSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudFNlcnZpY2U6IERvY3VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVwbG9hZFByb3ZpZGVyU2VydmljZTogVXBsb2FkUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG93bmxvYWRTZXJ2aWNlOiBEb3dubG9hZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJQcm92aWRlclNlcnZpY2U6IFVzZXJQcm92aWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaWxlU29ydFNlcnZpY2U6IEZpbGVTb3J0U2VydmljZVxuICApIHtcbiAgICBjb25zdCBzbmFwc2hvdCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1NYXA7XG4gICAgdGhpcy5kb2N1bWVudElkID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudElkJykgfHwgJyc7XG4gICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudERlZmluaXRpb25OYW1lJykgfHwgJyc7XG4gICAgdGhpcy52YWx0aW1vRW5kcG9pbnRVcmkgPSBjb25maWdTZXJ2aWNlLmNvbmZpZy52YWx0aW1vQXBpLmVuZHBvaW50VXJpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWZldGNoRG9jdW1lbnRzKCk7XG4gICAgdGhpcy5zZXRVcGxvYWRQcm9jZXNzTGlua2VkKCk7XG4gICAgdGhpcy5pc1VzZXJBZG1pbigpO1xuICB9XG5cbiAgZmlsZVNlbGVjdGVkKGZpbGU6IEZpbGUpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVUb0JlVXBsb2FkZWQkLm5leHQoZmlsZSk7XG4gICAgdGhpcy5zaG93TW9kYWwkLm5leHQobnVsbCk7XG4gIH1cblxuICBkb3dubG9hZERvY3VtZW50KHJlbGF0ZWRGaWxlOiBSZWxhdGVkRmlsZSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuZG93bmxvYWRpbmdGaWxlSW5kZXhlcyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoaW5kZXhlcyA9PiB7XG4gICAgICB0aGlzLmRvd25sb2FkaW5nRmlsZUluZGV4ZXMkLm5leHQoWy4uLmluZGV4ZXMsIGluZGV4XSk7XG5cbiAgICAgIGNvbnN0IGZpbmlzaGVkJDogT2JzZXJ2YWJsZTxudWxsPiA9IHRoaXMuZG93bmxvYWRTZXJ2aWNlLmRvd25sb2FkRmlsZShcbiAgICAgICAgYCR7dGhpcy52YWx0aW1vRW5kcG9pbnRVcml9djEvZG9jdW1lbnRlbi1hcGkvJHtyZWxhdGVkRmlsZS5wbHVnaW5Db25maWd1cmF0aW9uSWR9L2ZpbGVzLyR7cmVsYXRlZEZpbGUuZmlsZUlkfS9kb3dubG9hZGAsXG4gICAgICAgIHJlbGF0ZWRGaWxlLmZpbGVOYW1lXG4gICAgICApO1xuXG4gICAgICBmaW5pc2hlZCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmRvd25sb2FkaW5nRmlsZUluZGV4ZXMkLm5leHQoXG4gICAgICAgICAgdGhpcy5kb3dubG9hZGluZ0ZpbGVJbmRleGVzJC5nZXRWYWx1ZSgpLmZpbHRlcihkb3dubG9hZEluZGV4ID0+IGRvd25sb2FkSW5kZXggIT09IGluZGV4KVxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBtZXRhZGF0YVNldChtZXRhZGF0YTogRG9jdW1lbnRlbkFwaU1ldGFkYXRhKTogdm9pZCB7XG4gICAgdGhpcy51cGxvYWRpbmckLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5oaWRlTW9kYWwkLm5leHQobnVsbCk7XG5cbiAgICB0aGlzLmZpbGVUb0JlVXBsb2FkZWQkXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChmaWxlID0+IHtcbiAgICAgICAgICB0aGlzLnVwbG9hZFByb3ZpZGVyU2VydmljZVxuICAgICAgICAgICAgLnVwbG9hZEZpbGVXaXRoTWV0YWRhdGEoZmlsZSwgdGhpcy5kb2N1bWVudElkLCBtZXRhZGF0YSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnJlZmV0Y2hEb2N1bWVudHMoKTtcbiAgICAgICAgICAgICAgdGhpcy51cGxvYWRpbmckLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgICB0aGlzLmZpbGVUb0JlVXBsb2FkZWQkLm5leHQobnVsbCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGluZGV4ZXNJbmNsdWRlSW5kZXgoaW5kZXhlczogQXJyYXk8bnVtYmVyPiwgaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpbmRleGVzLmluY2x1ZGVzKGluZGV4KTtcbiAgfVxuXG4gIHB1YmxpYyBpc1VzZXJBZG1pbigpIHtcbiAgICB0aGlzLnVzZXJQcm92aWRlclNlcnZpY2UuZ2V0VXNlclN1YmplY3QoKS5zdWJzY3JpYmUoXG4gICAgICB1c2VySWRlbnRpdHkgPT4ge1xuICAgICAgICB0aGlzLmlzQWRtaW4gPSB1c2VySWRlbnRpdHkucm9sZXMuaW5jbHVkZXMoJ1JPTEVfQURNSU4nKTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNBZG1pbiA9IGZhbHNlO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlZmV0Y2hEb2N1bWVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5yZWZldGNoJC5uZXh0KG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRVcGxvYWRQcm9jZXNzTGlua2VkKCk6IHZvaWQge1xuICAgIHRoaXMudXBsb2FkUHJvdmlkZXJTZXJ2aWNlLmNoZWNrVXBsb2FkUHJvY2Vzc0xpbmsodGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lKS5zdWJzY3JpYmUoXG4gICAgICBsaW5rZWQgPT4ge1xuICAgICAgICB0aGlzLnVwbG9hZFByb2Nlc3NMaW5rZWQgPSBsaW5rZWQ7XG4gICAgICAgIHRoaXMudXBsb2FkUHJvY2Vzc0xpbmtlZFNldCA9IHRydWU7XG4gICAgICB9LFxuICAgICAgKCkgPT4ge1xuICAgICAgICB0aGlzLnVwbG9hZFByb2Nlc3NMaW5rZWRTZXQgPSB0cnVlO1xuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIntsb2FkaW5nOiBsb2FkaW5nJCB8IGFzeW5jfSBhcyBvYnNcIj5cbiAgPGRpdiAqbmdJZj1cInVwbG9hZFByb2Nlc3NMaW5rZWRTZXQgJiYgIXVwbG9hZFByb2Nlc3NMaW5rZWRcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cImlzQWRtaW5cIlxuICAgICAgW3RyYW5zbGF0ZV09XCInZG9zc2llci5kb2N1bWVudGVuLm5vUHJvY2Vzc0xpbmtlZC5hZG1pblJvbGUnXCJcbiAgICAgIGNsYXNzPVwiYmctd2FybmluZyB0ZXh0LWJsYWNrIG1iLTIgcC0zIHRleHQtY2VudGVyXCJcbiAgICA+PC9kaXY+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCIhaXNBZG1pblwiXG4gICAgICBbdHJhbnNsYXRlXT1cIidkb3NzaWVyLmRvY3VtZW50ZW4ubm9Qcm9jZXNzTGlua2VkLnJlZ3VsYXJVc2VyJ1wiXG4gICAgICBjbGFzcz1cImJnLXdhcm5pbmcgdGV4dC1ibGFjayBtYi0yIHAtMyB0ZXh0LWNlbnRlclwiXG4gICAgPjwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInNob3daYWFrTGlua1dhcm5pbmdcIj5cbiAgICA8ZGl2XG4gICAgICBbdHJhbnNsYXRlXT1cIidkb3NzaWVyLmRvY3VtZW50ZW4ubm9aYWFrRm91bmQnXCJcbiAgICAgIGNsYXNzPVwiYmctd2FybmluZyB0ZXh0LWJsYWNrIG1iLTIgcC0zIHRleHQtY2VudGVyXCJcbiAgICA+PC9kaXY+XG4gIDwvZGl2PlxuXG4gIDx2YWx0aW1vLWRyb3B6b25lXG4gICAgKm5nSWY9XCIhb2JzLmxvYWRpbmdcIlxuICAgIChmaWxlU2VsZWN0ZWQpPVwiZmlsZVNlbGVjdGVkKCRldmVudClcIlxuICAgIFthY2NlcHRlZEZpbGVzXT1cImFjY2VwdGVkRmlsZXNcIlxuICAgIFtjYW1lcmFdPVwiZmFsc2VcIlxuICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICF1cGxvYWRQcm9jZXNzTGlua2VkU2V0IHx8ICF1cGxvYWRQcm9jZXNzTGlua2VkIHx8IG9icy5sb2FkaW5nIHx8IHNob3daYWFrTGlua1dhcm5pbmdcbiAgICBcIlxuICAgIFtoaWRlRmlsZVByZXZpZXddPVwidHJ1ZVwiXG4gICAgW2hpZGVUaXRsZV09XCJ0cnVlXCJcbiAgICBbbWF4RmlsZVNpemVdPVwibWF4RmlsZVNpemVcIlxuICAgIFttYXhGaWxlc109XCIxXCJcbiAgICBbc2hvd01heEZpbGVTaXplXT1cInRydWVcIlxuICAgIFt1cGxvYWRpbmddPVwidXBsb2FkaW5nJCB8IGFzeW5jXCJcbiAgPjwvdmFsdGltby1kcm9wem9uZT5cblxuICA8dmFsdGltby13aWRnZXQ+XG4gICAgPHZhbHRpbW8tbGlzdFxuICAgICAgW25nQ2xhc3NdPVwie2hpZGRlbjogb2JzLmxvYWRpbmd9XCJcbiAgICAgIFtmaWVsZHNdPVwiZmllbGRzXCJcbiAgICAgIFtoZWFkZXJdPVwidHJ1ZVwiXG4gICAgICBbaXNTZWFyY2hhYmxlXT1cInRydWVcIlxuICAgICAgW2l0ZW1zXT1cInJlbGF0ZWRGaWxlcyQgfCBhc3luY1wiXG4gICAgICBbdmlld01vZGVdPVwidHJ1ZVwiXG4gICAgICBbbGFzdENvbHVtblRlbXBsYXRlXT1cImRvd25sb2FkQnV0dG9uXCJcbiAgICA+XG4gICAgICA8ZGl2IGhlYWRlcj5cbiAgICAgICAgPGgzIGNsYXNzPVwibGlzdC1oZWFkZXItdGl0bGVcIj57eyAnUmVsYXRlZCBkb2N1bWVudHMnIHwgdHJhbnNsYXRlIH19PC9oMz5cbiAgICAgICAgPGg1IGNsYXNzPVwibGlzdC1oZWFkZXItZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICB7eyAnT3ZlcnZpZXcgb2YgYWxsIGRvY3VtZW50cyBpbiB0aGlzIGRvc3NpZXInIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvaDU+XG4gICAgICA8L2Rpdj5cbiAgICA8L3ZhbHRpbW8tbGlzdD5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9hZGluZzsgY29udGV4dDoge2xvYWRpbmc6IG9icy5sb2FkaW5nfVwiPjwvbmctY29udGFpbmVyPlxuICA8L3ZhbHRpbW8td2lkZ2V0PlxuPC9uZy1jb250YWluZXI+XG5cbjx2YWx0aW1vLWRvY3VtZW50ZW4tYXBpLW1ldGFkYXRhLW1vZGFsXG4gIChtZXRhZGF0YSk9XCJtZXRhZGF0YVNldCgkZXZlbnQpXCJcbiAgW2Rpc2FibGVkJF09XCJtb2RhbERpc2FibGVkJFwiXG4gIFtmaWxlJF09XCJmaWxlVG9CZVVwbG9hZGVkJFwiXG4gIFtoaWRlJF09XCJoaWRlTW9kYWwkXCJcbiAgW3Nob3ckXT1cInNob3dNb2RhbCRcIlxuPjwvdmFsdGltby1kb2N1bWVudGVuLWFwaS1tZXRhZGF0YS1tb2RhbD5cblxuPG5nLXRlbXBsYXRlICNsb2FkaW5nIGxldC1sb2FkaW5nPVwibG9hZGluZ1wiPlxuICA8ZGl2ICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwibG9hZGluZy1jb250YWluZXJcIj5cbiAgICA8Y2RzLWxvYWRpbmc+PC9jZHMtbG9hZGluZz5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2Rvd25sb2FkQnV0dG9uIGxldC1pbmRleD1cImluZGV4XCIgbGV0LWl0ZW09XCJpdGVtXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImRvd25sb2FkLWJ1dHRvbi1jb250YWluZXJcIlxuICAgICpuZ0lmPVwie2lzRG93bmxvYWRpbmc6IGluZGV4ZXNJbmNsdWRlSW5kZXgoZG93bmxvYWRpbmdGaWxlSW5kZXhlcyQgfCBhc3luYywgaW5kZXgpfSBhcyB2YXJzXCJcbiAgPlxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwiIXZhcnMuaXNEb3dubG9hZGluZ1wiXG4gICAgICBjZHNCdXR0b249XCJwcmltYXJ5XCJcbiAgICAgIHNpemU9XCJzbVwiXG4gICAgICAoY2xpY2spPVwiZG93bmxvYWREb2N1bWVudChpdGVtLCBpbmRleClcIlxuICAgID5cbiAgICAgIHt7ICdpbnRlcmZhY2UuZG93bmxvYWQnIHwgdHJhbnNsYXRlXG4gICAgICB9fTxzdmcgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiIGNkc0ljb249XCJkb3dubG9hZFwiIHNpemU9XCIxNlwiPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICAgIDxjZHMtbG9hZGluZyBzaXplPVwic21cIiAqbmdJZj1cInZhcnMuaXNEb3dubG9hZGluZ1wiPjwvY2RzLWxvYWRpbmc+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==