@loxia/mst-viewer 8.1.3-202511131950 → 8.1.3-202511132206

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 (172) hide show
  1. package/esm2022/lib/atomic-components/message/message.component.mjs +3 -3
  2. package/esm2022/lib/components/ritdelen-lijst/ritdelen-lijst.component.mjs +7 -17
  3. package/esm2022/lib/components/svg-visualisatie/svg-visualisatie.component.mjs +4 -6
  4. package/esm2022/lib/components/viewer-controls/viewer-controls.component.mjs +1 -2
  5. package/esm2022/lib/model/ritdeel.mjs +4 -4
  6. package/esm2022/lib/mst-viewer.module.mjs +1 -2
  7. package/esm2022/lib/resources/mstlogging.resource.mjs +145 -12
  8. package/esm2022/lib/resources/signaleringsbeeldinfo.resource.mjs +1 -2
  9. package/esm2022/lib/services/editor.service.mjs +1 -3
  10. package/esm2022/lib/services/rit-lezer.service.mjs +4 -4
  11. package/esm2022/lib/services/viewer-control.service.mjs +4 -3
  12. package/esm2022/lib/state/actions/actions.mjs +1 -1
  13. package/esm2022/lib/state/effect/bepaal-ongeplande-acties.effect.mjs +2 -2
  14. package/esm2022/lib/state/effect/bepaal-sb-infos.effect.mjs +2 -2
  15. package/esm2022/lib/state/effect/beweging-invoegen.effect.mjs +1 -1
  16. package/esm2022/lib/state/effect/delete-ongeplande-actie.effect.mjs +1 -1
  17. package/esm2022/lib/state/effect/laad-route-files.effect.mjs +2 -2
  18. package/esm2022/lib/state/effect/laad-signaleringsbeelden.effect.mjs +10 -10
  19. package/esm2022/lib/state/effect/ritdelen.effect.mjs +22 -22
  20. package/esm2022/lib/state/mst-editor-state.mjs +12 -9
  21. package/esm2022/lib/state/reducer/rit-delen.reducer.mjs +1 -1
  22. package/esm2022/lib/util/actie-helper.mjs +6 -6
  23. package/esm2022/lib/util/actie-popover-bepaler.mjs +2 -2
  24. package/esm2022/lib/util/logging-helper.mjs +12 -9
  25. package/esm2022/lib/util/multi-map.mjs +3 -2
  26. package/esm2022/lib/util/utils.mjs +5 -2
  27. package/esm2022/lib/util/zone-util.mjs +1 -2
  28. package/fesm2022/loxia-mst-viewer.mjs +438 -1649
  29. package/fesm2022/loxia-mst-viewer.mjs.map +1 -1
  30. package/lib/atomic-components/message/message.component.d.ts +2 -2
  31. package/lib/components/ritdelen-lijst/ritdelen-lijst.component.d.ts +2 -2
  32. package/lib/components/svg-visualisatie/svg-visualisatie.component.d.ts +1 -1
  33. package/lib/model/ritdeel.d.ts +6 -7
  34. package/lib/resources/mstlogging.resource.d.ts +95 -6
  35. package/lib/state/actions/actions.d.ts +4 -4
  36. package/lib/state/effect/delete-ongeplande-actie.effect.d.ts +1 -1
  37. package/lib/state/effect/laad-route-files.effect.d.ts +1 -2
  38. package/lib/state/effect/laad-signaleringsbeelden.effect.d.ts +9 -9
  39. package/lib/state/effect/ritdelen.effect.d.ts +6 -7
  40. package/lib/state/mst-editor-state.d.ts +72 -11
  41. package/lib/util/actie-helper.d.ts +2 -2
  42. package/lib/util/logging-helper.d.ts +6 -4
  43. package/lib/util/utils.d.ts +1 -0
  44. package/package.json +1 -7
  45. package/esm2022/generated/openapi/api/api.mjs +0 -23
  46. package/esm2022/generated/openapi/api/appConfigController.service.mjs +0 -140
  47. package/esm2022/generated/openapi/api/appConfigController.serviceInterface.mjs +0 -2
  48. package/esm2022/generated/openapi/api/bewegingController.service.mjs +0 -155
  49. package/esm2022/generated/openapi/api/bewegingController.serviceInterface.mjs +0 -2
  50. package/esm2022/generated/openapi/api/class0BuildProperties.service.mjs +0 -140
  51. package/esm2022/generated/openapi/api/class0BuildProperties.serviceInterface.mjs +0 -2
  52. package/esm2022/generated/openapi/api/connectorController.service.mjs +0 -146
  53. package/esm2022/generated/openapi/api/connectorController.serviceInterface.mjs +0 -2
  54. package/esm2022/generated/openapi/api/logController.service.mjs +0 -150
  55. package/esm2022/generated/openapi/api/logController.serviceInterface.mjs +0 -2
  56. package/esm2022/generated/openapi/api/p21Controller.service.mjs +0 -236
  57. package/esm2022/generated/openapi/api/p21Controller.serviceInterface.mjs +0 -2
  58. package/esm2022/generated/openapi/api/sbController.service.mjs +0 -202
  59. package/esm2022/generated/openapi/api/sbController.serviceInterface.mjs +0 -2
  60. package/esm2022/generated/openapi/api.module.mjs +0 -40
  61. package/esm2022/generated/openapi/configuration.mjs +0 -99
  62. package/esm2022/generated/openapi/encoder.mjs +0 -19
  63. package/esm2022/generated/openapi/index.mjs +0 -7
  64. package/esm2022/generated/openapi/model/actieDto.mjs +0 -13
  65. package/esm2022/generated/openapi/model/algemeneRitDto.mjs +0 -13
  66. package/esm2022/generated/openapi/model/bewegingDto.mjs +0 -2
  67. package/esm2022/generated/openapi/model/frontendKeycloakConfig.mjs +0 -13
  68. package/esm2022/generated/openapi/model/frontendProperties.mjs +0 -2
  69. package/esm2022/generated/openapi/model/logDto.mjs +0 -2
  70. package/esm2022/generated/openapi/model/models.mjs +0 -10
  71. package/esm2022/generated/openapi/model/ritRequestDto.mjs +0 -2
  72. package/esm2022/generated/openapi/model/signaleringsbeeldDto.mjs +0 -13
  73. package/esm2022/generated/openapi/model/signaleringsbeeldRequestDto.mjs +0 -13
  74. package/esm2022/generated/openapi/param.mjs +0 -2
  75. package/esm2022/generated/openapi/variables.mjs +0 -9
  76. package/esm2022/src/generated/openapi/api/api.mjs +0 -23
  77. package/esm2022/src/generated/openapi/api/appConfigController.service.mjs +0 -140
  78. package/esm2022/src/generated/openapi/api/appConfigController.serviceInterface.mjs +0 -2
  79. package/esm2022/src/generated/openapi/api/bewegingController.service.mjs +0 -155
  80. package/esm2022/src/generated/openapi/api/bewegingController.serviceInterface.mjs +0 -2
  81. package/esm2022/src/generated/openapi/api/class0BuildProperties.service.mjs +0 -140
  82. package/esm2022/src/generated/openapi/api/class0BuildProperties.serviceInterface.mjs +0 -2
  83. package/esm2022/src/generated/openapi/api/connectorController.service.mjs +0 -146
  84. package/esm2022/src/generated/openapi/api/connectorController.serviceInterface.mjs +0 -2
  85. package/esm2022/src/generated/openapi/api/logController.service.mjs +0 -150
  86. package/esm2022/src/generated/openapi/api/logController.serviceInterface.mjs +0 -2
  87. package/esm2022/src/generated/openapi/api/p21Controller.service.mjs +0 -236
  88. package/esm2022/src/generated/openapi/api/p21Controller.serviceInterface.mjs +0 -2
  89. package/esm2022/src/generated/openapi/api/sbController.service.mjs +0 -202
  90. package/esm2022/src/generated/openapi/api/sbController.serviceInterface.mjs +0 -2
  91. package/esm2022/src/generated/openapi/api.module.mjs +0 -40
  92. package/esm2022/src/generated/openapi/configuration.mjs +0 -99
  93. package/esm2022/src/generated/openapi/encoder.mjs +0 -19
  94. package/esm2022/src/generated/openapi/index.mjs +0 -7
  95. package/esm2022/src/generated/openapi/loxia-mst-viewer-src-generated-openapi.mjs +0 -5
  96. package/esm2022/src/generated/openapi/model/actieDto.mjs +0 -13
  97. package/esm2022/src/generated/openapi/model/algemeneRitDto.mjs +0 -13
  98. package/esm2022/src/generated/openapi/model/bewegingDto.mjs +0 -2
  99. package/esm2022/src/generated/openapi/model/frontendKeycloakConfig.mjs +0 -13
  100. package/esm2022/src/generated/openapi/model/frontendProperties.mjs +0 -2
  101. package/esm2022/src/generated/openapi/model/logDto.mjs +0 -2
  102. package/esm2022/src/generated/openapi/model/models.mjs +0 -10
  103. package/esm2022/src/generated/openapi/model/ritRequestDto.mjs +0 -2
  104. package/esm2022/src/generated/openapi/model/signaleringsbeeldDto.mjs +0 -13
  105. package/esm2022/src/generated/openapi/model/signaleringsbeeldRequestDto.mjs +0 -13
  106. package/esm2022/src/generated/openapi/param.mjs +0 -2
  107. package/esm2022/src/generated/openapi/variables.mjs +0 -9
  108. package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs +0 -1341
  109. package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs.map +0 -1
  110. package/generated/openapi/api/api.d.ts +0 -22
  111. package/generated/openapi/api/appConfigController.service.d.ts +0 -38
  112. package/generated/openapi/api/appConfigController.serviceInterface.d.ts +0 -24
  113. package/generated/openapi/api/bewegingController.service.d.ts +0 -40
  114. package/generated/openapi/api/bewegingController.serviceInterface.d.ts +0 -27
  115. package/generated/openapi/api/class0BuildProperties.service.d.ts +0 -36
  116. package/generated/openapi/api/class0BuildProperties.serviceInterface.d.ts +0 -23
  117. package/generated/openapi/api/connectorController.service.d.ts +0 -38
  118. package/generated/openapi/api/connectorController.serviceInterface.d.ts +0 -25
  119. package/generated/openapi/api/logController.service.d.ts +0 -38
  120. package/generated/openapi/api/logController.serviceInterface.d.ts +0 -25
  121. package/generated/openapi/api/p21Controller.service.d.ts +0 -62
  122. package/generated/openapi/api/p21Controller.serviceInterface.d.ts +0 -30
  123. package/generated/openapi/api/sbController.service.d.ts +0 -60
  124. package/generated/openapi/api/sbController.serviceInterface.d.ts +0 -32
  125. package/generated/openapi/api.module.d.ts +0 -11
  126. package/generated/openapi/configuration.d.ts +0 -104
  127. package/generated/openapi/encoder.d.ts +0 -11
  128. package/generated/openapi/index.d.ts +0 -6
  129. package/generated/openapi/model/actieDto.d.ts +0 -35
  130. package/generated/openapi/model/algemeneRitDto.d.ts +0 -28
  131. package/generated/openapi/model/bewegingDto.d.ts +0 -37
  132. package/generated/openapi/model/frontendKeycloakConfig.d.ts +0 -16
  133. package/generated/openapi/model/frontendProperties.d.ts +0 -15
  134. package/generated/openapi/model/logDto.d.ts +0 -22
  135. package/generated/openapi/model/models.d.ts +0 -9
  136. package/generated/openapi/model/ritRequestDto.d.ts +0 -17
  137. package/generated/openapi/model/signaleringsbeeldDto.d.ts +0 -16
  138. package/generated/openapi/model/signaleringsbeeldRequestDto.d.ts +0 -16
  139. package/generated/openapi/param.d.ts +0 -37
  140. package/generated/openapi/variables.d.ts +0 -8
  141. package/src/generated/openapi/README.md +0 -226
  142. package/src/generated/openapi/api/api.d.ts +0 -22
  143. package/src/generated/openapi/api/appConfigController.service.d.ts +0 -38
  144. package/src/generated/openapi/api/appConfigController.serviceInterface.d.ts +0 -24
  145. package/src/generated/openapi/api/bewegingController.service.d.ts +0 -40
  146. package/src/generated/openapi/api/bewegingController.serviceInterface.d.ts +0 -27
  147. package/src/generated/openapi/api/class0BuildProperties.service.d.ts +0 -36
  148. package/src/generated/openapi/api/class0BuildProperties.serviceInterface.d.ts +0 -23
  149. package/src/generated/openapi/api/connectorController.service.d.ts +0 -38
  150. package/src/generated/openapi/api/connectorController.serviceInterface.d.ts +0 -25
  151. package/src/generated/openapi/api/logController.service.d.ts +0 -38
  152. package/src/generated/openapi/api/logController.serviceInterface.d.ts +0 -25
  153. package/src/generated/openapi/api/p21Controller.service.d.ts +0 -62
  154. package/src/generated/openapi/api/p21Controller.serviceInterface.d.ts +0 -30
  155. package/src/generated/openapi/api/sbController.service.d.ts +0 -60
  156. package/src/generated/openapi/api/sbController.serviceInterface.d.ts +0 -32
  157. package/src/generated/openapi/api.module.d.ts +0 -11
  158. package/src/generated/openapi/configuration.d.ts +0 -104
  159. package/src/generated/openapi/encoder.d.ts +0 -11
  160. package/src/generated/openapi/index.d.ts +0 -6
  161. package/src/generated/openapi/model/actieDto.d.ts +0 -35
  162. package/src/generated/openapi/model/algemeneRitDto.d.ts +0 -28
  163. package/src/generated/openapi/model/bewegingDto.d.ts +0 -37
  164. package/src/generated/openapi/model/frontendKeycloakConfig.d.ts +0 -16
  165. package/src/generated/openapi/model/frontendProperties.d.ts +0 -15
  166. package/src/generated/openapi/model/logDto.d.ts +0 -22
  167. package/src/generated/openapi/model/models.d.ts +0 -9
  168. package/src/generated/openapi/model/ritRequestDto.d.ts +0 -17
  169. package/src/generated/openapi/model/signaleringsbeeldDto.d.ts +0 -16
  170. package/src/generated/openapi/model/signaleringsbeeldRequestDto.d.ts +0 -16
  171. package/src/generated/openapi/param.d.ts +0 -37
  172. package/src/generated/openapi/variables.d.ts +0 -8
@@ -1,9 +1,12 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { take } from 'rxjs/operators';
3
+ import { ActieDto, MstLoggingDto } from '../resources/mstlogging.resource';
3
4
  import * as i0 from "@angular/core";
4
- import * as i1 from "@ngrx/store";
5
+ import * as i1 from "../services/signalerings-beeld-manager.service";
6
+ import * as i2 from "@ngrx/store";
5
7
  export class LoggingHelper {
6
- constructor(store) {
8
+ constructor(sbmService, store) {
9
+ this.sbmService = sbmService;
7
10
  this.store = store;
8
11
  }
9
12
  maakLogDTO(melding, actie) {
@@ -17,7 +20,7 @@ export class LoggingHelper {
17
20
  iaVersie = ia.versie;
18
21
  });
19
22
  if (actie) {
20
- actieDto = {
23
+ actieDto = new ActieDto({
21
24
  pplgNaam: actie.pplgNaam,
22
25
  ritActieTypeOmschrijving: actie.ritActieTypeOmschrijving,
23
26
  ritActieStatus: actie.ritActieStatus,
@@ -29,16 +32,16 @@ export class LoggingHelper {
29
32
  vanKilometrering: actie.vanKilometrering,
30
33
  totKilometerlint: actie.totKilometerlint,
31
34
  totKilometrering: actie.totKilometrering
32
- };
35
+ });
33
36
  }
34
- return {
37
+ return new MstLoggingDto({
35
38
  iaVersie,
36
39
  meldingLevel: melding.meldingLevel,
37
40
  meldingMessage: melding.meldingMessage,
38
41
  actieDto,
39
42
  algemeneRitInfoDto,
40
43
  sbinfoDtos: this.getSbInfoDtos()
41
- };
44
+ });
42
45
  }
43
46
  getSbInfoDtos() {
44
47
  const sbInfoDtos = [];
@@ -49,10 +52,10 @@ export class LoggingHelper {
49
52
  });
50
53
  return sbInfoDtos;
51
54
  }
52
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
55
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, deps: [{ token: i1.SignaleringsBeeldManagerService }, { token: i2.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
53
56
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper }); }
54
57
  }
55
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, decorators: [{
56
59
  type: Injectable
57
- }], ctorParameters: () => [{ type: i1.Store }] });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvdXRpbC9sb2dnaW5nLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBUXRDLE1BQU0sT0FBTyxhQUFhO0lBRXRCLFlBQTZCLEtBQTRCO1FBQTVCLFVBQUssR0FBTCxLQUFLLENBQXVCO0lBQ3pELENBQUM7SUFFTSxVQUFVLENBQUMsT0FBcUIsRUFBRSxLQUFZO1FBQ2pELElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLGtCQUFrQixHQUFtQixJQUFJLENBQUM7UUFDOUMsSUFBSSxRQUFRLEdBQWEsSUFBSSxDQUFDO1FBRTlCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsRSxrQkFBa0IsR0FBRyxHQUFHLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ3ZELFFBQVEsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNSLFFBQVEsR0FBRztnQkFDUCxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7Z0JBQ3hCLHdCQUF3QixFQUFFLEtBQUssQ0FBQyx3QkFBd0I7Z0JBQ3hELGNBQWMsRUFBRSxLQUFLLENBQUMsY0FBYztnQkFDcEMsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUM1QixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtnQkFDNUIsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO2dCQUNwQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO2dCQUN4QyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO2dCQUN4QyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO2dCQUN4QyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO2FBQy9CLENBQUM7UUFDbEIsQ0FBQztRQUNELE9BQU87WUFDSCxRQUFRO1lBQ1IsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO1lBQ2xDLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztZQUN0QyxRQUFRO1lBQ1Isa0JBQWtCO1lBQ2xCLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFO1NBQ3pCLENBQUM7SUFDaEIsQ0FBQztJQUVNLGFBQWE7UUFDaEIsTUFBTSxVQUFVLEdBQStCLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDYixVQUFVLENBQUMsSUFBSSxDQUFDLENBQTZCLENBQUMsQ0FBQztZQUNuRCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQzs4R0FsRFEsYUFBYTtrSEFBYixhQUFhOzsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWN0aWVEdG8sIEFsZ2VtZW5lUml0RHRvLCBMb2dEdG8gfSBmcm9tICcuLi8uLi9nZW5lcmF0ZWQvb3BlbmFwaSc7XG5pbXBvcnQgeyBNZWxkaW5nRXZlbnQgfSBmcm9tICcuLi9tb2RlbC9tZWxkaW5nLWV2ZW50JztcbmltcG9ydCB7IEFjdGllIH0gZnJvbSAnLi4vb3B0aW1vJztcbmltcG9ydCB7IFNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0byB9IGZyb20gJy4uL3Jlc291cmNlcy9zaWduYWxlcmluZ3NiZWVsZGluZm8ucmVzb3VyY2UnO1xuaW1wb3J0IHsgTXN0RWRpdG9yU3RhdGUgfSBmcm9tICcuLi9zdGF0ZS9tc3QtZWRpdG9yLXN0YXRlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvZ2dpbmdIZWxwZXIge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdG9yZTogU3RvcmU8TXN0RWRpdG9yU3RhdGU+KSB7XG4gICAgfVxuXG4gICAgcHVibGljIG1hYWtMb2dEVE8obWVsZGluZzogTWVsZGluZ0V2ZW50LCBhY3RpZTogQWN0aWUpOiBMb2dEdG8ge1xuICAgICAgICBsZXQgaWFWZXJzaWUgPSAnJztcbiAgICAgICAgbGV0IGFsZ2VtZW5lUml0SW5mb0R0bzogQWxnZW1lbmVSaXREdG8gPSBudWxsO1xuICAgICAgICBsZXQgYWN0aWVEdG86IEFjdGllRHRvID0gbnVsbDtcblxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgnYWxnZW1lbmVSaXRJbmZvRHRvJykucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoZHRvID0+IHtcbiAgICAgICAgICAgIGFsZ2VtZW5lUml0SW5mb0R0byA9IGR0bztcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCdpYVZlcnNpZScpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGlhID0+IHtcbiAgICAgICAgICAgIGlhVmVyc2llID0gaWEudmVyc2llO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoYWN0aWUpIHtcbiAgICAgICAgICAgIGFjdGllRHRvID0ge1xuICAgICAgICAgICAgICAgIHBwbGdOYWFtOiBhY3RpZS5wcGxnTmFhbSxcbiAgICAgICAgICAgICAgICByaXRBY3RpZVR5cGVPbXNjaHJpanZpbmc6IGFjdGllLnJpdEFjdGllVHlwZU9tc2NocmlqdmluZyxcbiAgICAgICAgICAgICAgICByaXRBY3RpZVN0YXR1czogYWN0aWUucml0QWN0aWVTdGF0dXMsXG4gICAgICAgICAgICAgICAgYmV3ZWdpbmdJZDogYWN0aWUuYmV3ZWdpbmdJZCxcbiAgICAgICAgICAgICAgICB3aXNzZWxUeXBlOiBhY3RpZS53aXNzZWxUeXBlLFxuICAgICAgICAgICAgICAgIHdpc3NlbE5hYW06IGFjdGllLndpc3NlbE5hYW0sXG4gICAgICAgICAgICAgICAgd2lzc2VsS2FudENvZGU6IGFjdGllLndpc3NlbEthbnRDb2RlLFxuICAgICAgICAgICAgICAgIHZhbktpbG9tZXRlcmxpbnQ6IGFjdGllLnZhbktpbG9tZXRlcmxpbnQsXG4gICAgICAgICAgICAgICAgdmFuS2lsb21ldHJlcmluZzogYWN0aWUudmFuS2lsb21ldHJlcmluZyxcbiAgICAgICAgICAgICAgICB0b3RLaWxvbWV0ZXJsaW50OiBhY3RpZS50b3RLaWxvbWV0ZXJsaW50LFxuICAgICAgICAgICAgICAgIHRvdEtpbG9tZXRyZXJpbmc6IGFjdGllLnRvdEtpbG9tZXRyZXJpbmdcbiAgICAgICAgICAgIH0gYXMgQWN0aWVEdG87XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlhVmVyc2llLFxuICAgICAgICAgICAgbWVsZGluZ0xldmVsOiBtZWxkaW5nLm1lbGRpbmdMZXZlbCxcbiAgICAgICAgICAgIG1lbGRpbmdNZXNzYWdlOiBtZWxkaW5nLm1lbGRpbmdNZXNzYWdlLFxuICAgICAgICAgICAgYWN0aWVEdG8sXG4gICAgICAgICAgICBhbGdlbWVuZVJpdEluZm9EdG8sXG4gICAgICAgICAgICBzYmluZm9EdG9zOiB0aGlzLmdldFNiSW5mb0R0b3MoKVxuICAgICAgICB9IGFzIExvZ0R0bztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U2JJbmZvRHRvcygpOiBTaWduYWxlcmluZ3NiZWVsZEluZm9EdG9bXSB7XG4gICAgICAgIGNvbnN0IHNiSW5mb0R0b3M6IFNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b1tdID0gW107XG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCd2aXNpYmxlU2JJbmZvRHRvcycpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGR0b3MgPT4ge1xuICAgICAgICAgICAgZHRvcy5mb3JFYWNoKGQgPT4ge1xuICAgICAgICAgICAgICAgIHNiSW5mb0R0b3MucHVzaChkIGFzIFNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0byk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBzYkluZm9EdG9zO1xuICAgIH1cbn1cblxuXG4iXX0=
60
+ }], ctorParameters: () => [{ type: i1.SignaleringsBeeldManagerService }, { type: i2.Store }] });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvdXRpbC9sb2dnaW5nLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd0QyxPQUFPLEVBQUUsUUFBUSxFQUFzQixhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7OztBQU0vRixNQUFNLE9BQU8sYUFBYTtJQUV0QixZQUFvQixVQUEyQyxFQUMzQyxLQUE0QjtRQUQ1QixlQUFVLEdBQVYsVUFBVSxDQUFpQztRQUMzQyxVQUFLLEdBQUwsS0FBSyxDQUF1QjtJQUNoRCxDQUFDO0lBRU0sVUFBVSxDQUFDLE9BQXFCLEVBQUUsS0FBWTtRQUNqRCxJQUFJLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxrQkFBa0IsR0FBdUIsSUFBSSxDQUFDO1FBQ2xELElBQUksUUFBUSxHQUFhLElBQUksQ0FBQztRQUU5QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbEUsa0JBQWtCLEdBQUcsR0FBRyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUN2RCxRQUFRLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUM7Z0JBQ3BCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDeEIsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLHdCQUF3QjtnQkFDeEQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO2dCQUNwQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtnQkFDNUIsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUM1QixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7Z0JBQ3BDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7Z0JBQ3hDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7Z0JBQ3hDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7Z0JBQ3hDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7YUFDM0MsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELE9BQU8sSUFBSSxhQUFhLENBQUM7WUFDckIsUUFBUTtZQUNSLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtZQUNsQyxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7WUFDdEMsUUFBUTtZQUNSLGtCQUFrQjtZQUNsQixVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRTtTQUNuQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sYUFBYTtRQUNoQixNQUFNLFVBQVUsR0FBK0IsRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNsRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNiLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBNkIsQ0FBQyxDQUFDO1lBQ25ELENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDOzhHQW5EUSxhQUFhO2tIQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNZWxkaW5nRXZlbnQgfSBmcm9tICcuLi9tb2RlbC9tZWxkaW5nLWV2ZW50JztcbmltcG9ydCB7IEFjdGllIH0gZnJvbSAnLi4vb3B0aW1vJztcbmltcG9ydCB7IEFjdGllRHRvLCBBbGdlbWVuZVJpdEluZm9EdG8sIE1zdExvZ2dpbmdEdG8gfSBmcm9tICcuLi9yZXNvdXJjZXMvbXN0bG9nZ2luZy5yZXNvdXJjZSc7XG5pbXBvcnQgeyBTaWduYWxlcmluZ3NiZWVsZEluZm9EdG8gfSBmcm9tICcuLi9yZXNvdXJjZXMvc2lnbmFsZXJpbmdzYmVlbGRpbmZvLnJlc291cmNlJztcbmltcG9ydCB7IFNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zaWduYWxlcmluZ3MtYmVlbGQtbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IE1zdEVkaXRvclN0YXRlIH0gZnJvbSAnLi4vc3RhdGUvbXN0LWVkaXRvci1zdGF0ZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBMb2dnaW5nSGVscGVyIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2JtU2VydmljZTogU2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxNc3RFZGl0b3JTdGF0ZT4pIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgbWFha0xvZ0RUTyhtZWxkaW5nOiBNZWxkaW5nRXZlbnQsIGFjdGllOiBBY3RpZSk6IE1zdExvZ2dpbmdEdG8ge1xuICAgICAgICBsZXQgaWFWZXJzaWUgPSAnJztcbiAgICAgICAgbGV0IGFsZ2VtZW5lUml0SW5mb0R0bzogQWxnZW1lbmVSaXRJbmZvRHRvID0gbnVsbDtcbiAgICAgICAgbGV0IGFjdGllRHRvOiBBY3RpZUR0byA9IG51bGw7XG5cbiAgICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoJ2FsZ2VtZW5lUml0SW5mb0R0bycpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGR0byA9PiB7XG4gICAgICAgICAgICBhbGdlbWVuZVJpdEluZm9EdG8gPSBkdG87XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgnaWFWZXJzaWUnKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZShpYSA9PiB7XG4gICAgICAgICAgICBpYVZlcnNpZSA9IGlhLnZlcnNpZTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKGFjdGllKSB7XG4gICAgICAgICAgICBhY3RpZUR0byA9IG5ldyBBY3RpZUR0byh7XG4gICAgICAgICAgICAgICAgcHBsZ05hYW06IGFjdGllLnBwbGdOYWFtLFxuICAgICAgICAgICAgICAgIHJpdEFjdGllVHlwZU9tc2NocmlqdmluZzogYWN0aWUucml0QWN0aWVUeXBlT21zY2hyaWp2aW5nLFxuICAgICAgICAgICAgICAgIHJpdEFjdGllU3RhdHVzOiBhY3RpZS5yaXRBY3RpZVN0YXR1cyxcbiAgICAgICAgICAgICAgICBiZXdlZ2luZ0lkOiBhY3RpZS5iZXdlZ2luZ0lkLFxuICAgICAgICAgICAgICAgIHdpc3NlbFR5cGU6IGFjdGllLndpc3NlbFR5cGUsXG4gICAgICAgICAgICAgICAgd2lzc2VsTmFhbTogYWN0aWUud2lzc2VsTmFhbSxcbiAgICAgICAgICAgICAgICB3aXNzZWxLYW50Q29kZTogYWN0aWUud2lzc2VsS2FudENvZGUsXG4gICAgICAgICAgICAgICAgdmFuS2lsb21ldGVybGludDogYWN0aWUudmFuS2lsb21ldGVybGludCxcbiAgICAgICAgICAgICAgICB2YW5LaWxvbWV0cmVyaW5nOiBhY3RpZS52YW5LaWxvbWV0cmVyaW5nLFxuICAgICAgICAgICAgICAgIHRvdEtpbG9tZXRlcmxpbnQ6IGFjdGllLnRvdEtpbG9tZXRlcmxpbnQsXG4gICAgICAgICAgICAgICAgdG90S2lsb21ldHJlcmluZzogYWN0aWUudG90S2lsb21ldHJlcmluZ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBNc3RMb2dnaW5nRHRvKHtcbiAgICAgICAgICAgIGlhVmVyc2llLFxuICAgICAgICAgICAgbWVsZGluZ0xldmVsOiBtZWxkaW5nLm1lbGRpbmdMZXZlbCxcbiAgICAgICAgICAgIG1lbGRpbmdNZXNzYWdlOiBtZWxkaW5nLm1lbGRpbmdNZXNzYWdlLFxuICAgICAgICAgICAgYWN0aWVEdG8sXG4gICAgICAgICAgICBhbGdlbWVuZVJpdEluZm9EdG8sXG4gICAgICAgICAgICBzYmluZm9EdG9zOiB0aGlzLmdldFNiSW5mb0R0b3MoKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U2JJbmZvRHRvcygpOiBTaWduYWxlcmluZ3NiZWVsZEluZm9EdG9bXSB7XG4gICAgICAgIGNvbnN0IHNiSW5mb0R0b3M6IFNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b1tdID0gW107XG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCd2aXNpYmxlU2JJbmZvRHRvcycpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGR0b3MgPT4ge1xuICAgICAgICAgICAgZHRvcy5mb3JFYWNoKGQgPT4ge1xuICAgICAgICAgICAgICAgIHNiSW5mb0R0b3MucHVzaChkIGFzIFNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0byk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBzYkluZm9EdG9zO1xuICAgIH1cbn1cblxuXG4iXX0=
@@ -1,3 +1,4 @@
1
+ import Utils from './utils';
1
2
  /**
2
3
  * https://gist.github.com/jordanluyke/609a4fffb69d1ebafdadd313ee2ee804
3
4
  *
@@ -61,7 +62,7 @@ export class ArrayMultimap {
61
62
  return Array.from(new Set(this._entries.map(entry => entry.key)));
62
63
  }
63
64
  values() {
64
- return this._entries.reduce((acc, x) => acc.concat(x.value), []);
65
+ return Utils.flatMap(this._entries, x => x.value);
65
66
  }
66
67
  put(key, value) {
67
68
  this._entries.push(new MultimapEntry(key, value));
@@ -72,4 +73,4 @@ export class ArrayMultimap {
72
73
  return this._entries;
73
74
  }
74
75
  }
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktbWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3V0aWwvbXVsdGktbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUFxQixHQUFNLEVBQVcsS0FBUTtRQUF6QixRQUFHLEdBQUgsR0FBRyxDQUFHO1FBQVcsVUFBSyxHQUFMLEtBQUssQ0FBRztJQUM5QyxDQUFDO0NBQ0o7QUEwQkQsTUFBTSxPQUFPLGFBQWE7SUFJdEIsWUFBWSxHQUFvQjtRQUZ4QixhQUFRLEdBQTBCLEVBQUUsQ0FBQztRQUd6QyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hDLENBQUM7SUFDTCxDQUFDO0lBRU0sSUFBSTtRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRU0sS0FBSztRQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxXQUFXLENBQUMsR0FBTTtRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ1IsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUM7YUFDekMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQVE7UUFDekIsT0FBTyxJQUFJLENBQUMsUUFBUTthQUNSLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDO2FBQzdDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxHQUFNLEVBQUUsS0FBUTtRQUNqQyxPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ1IsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUM7YUFDbEUsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU0sTUFBTSxDQUFDLEdBQU0sRUFBRSxLQUFTO1FBQzNCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUTthQUNSLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNaLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1IsT0FBTyxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQztZQUN0RCxDQUFDO1lBQ0QsT0FBTyxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRU0sR0FBRyxDQUFDLEdBQU07UUFDYixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUTthQUNSLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDO2FBQ2xDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxPQUFPLFFBQVEsSUFBSSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLElBQUk7UUFDUCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxNQUFNO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQVMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBTSxFQUFFLEtBQVE7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbEQsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBTSxFQUFFLE1BQVc7UUFDN0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0UsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIlxuLyoqXG4gKiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9qb3JkYW5sdXlrZS82MDlhNGZmZmI2OWQxZWJhZmRhZGQzMTNlZTJlZTgwNFxuICpcbiAqIEBhdXRob3IgSm9yZGFuIEx1eWtlIDxqb3JkYW5sdXlrZUBnbWFpbC5jb20+XG4gKi9cblxuZXhwb3J0IGNsYXNzIE11bHRpbWFwRW50cnk8SywgVj4ge1xuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGtleTogSywgcmVhZG9ubHkgdmFsdWU6IFYpIHtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGltYXA8SywgVj4ge1xuICAgIGVudHJpZXM6IE11bHRpbWFwRW50cnk8SywgVj5bXTtcblxuICAgIGNsZWFyKCk6IHZvaWQ7XG5cbiAgICBjb250YWluc0tleShrZXk6IEspOiBib29sZWFuO1xuXG4gICAgY29udGFpbnNWYWx1ZSh2YWx1ZTogVik6IGJvb2xlYW47XG5cbiAgICBjb250YWluc0VudHJ5KGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuO1xuXG4gICAgZGVsZXRlKGtleTogSywgdmFsdWU/OiBWKTogYm9vbGVhbjtcblxuICAgIGdldChrZXk6IEspOiBWW107XG5cbiAgICBrZXlzKCk6IEtbXTtcblxuICAgIHZhbHVlcygpOiBWW107XG5cbiAgICBwdXQoa2V5OiBLLCB2YWx1ZTogVik6IE11bHRpbWFwRW50cnk8SywgVj5bXTtcblxuICAgIHNpemUoKTogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgQXJyYXlNdWx0aW1hcDxLLCBWPiBpbXBsZW1lbnRzIE11bHRpbWFwPEssIFY+IHtcblxuICAgIHByaXZhdGUgX2VudHJpZXM6IE11bHRpbWFwRW50cnk8SywgVj5bXSA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IobWFwPzogTXVsdGltYXA8SywgVj4pIHtcbiAgICAgICAgaWYgKG1hcCkge1xuICAgICAgICAgICAgdGhpcy5fZW50cmllcyA9IG1hcC5lbnRyaWVzLnNsaWNlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2l6ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5rZXlzKCkubGVuZ3RoO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZW50cmllcyA9IFtdO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb250YWluc0tleShrZXk6IEspOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXNcbiAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LmtleSA9PT0ga2V5KVxuICAgICAgICAgICAgLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnRhaW5zVmFsdWUodmFsdWU6IFYpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXNcbiAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LnZhbHVlID09PSB2YWx1ZSlcbiAgICAgICAgICAgIC5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb250YWluc0VudHJ5KGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXNcbiAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LmtleSA9PT0ga2V5ICYmIGVudHJ5LnZhbHVlID09PSB2YWx1ZSlcbiAgICAgICAgICAgIC5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGUoa2V5OiBLLCB2YWx1ZT86IFYpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdGVtcCA9IHRoaXMuX2VudHJpZXM7XG4gICAgICAgIHRoaXMuX2VudHJpZXMgPSB0aGlzLl9lbnRyaWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihlbnRyeSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGVudHJ5LmtleSAhPT0ga2V5IHx8IGVudHJ5LnZhbHVlICE9PSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZW50cnkua2V5ICE9PSBrZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0ZW1wLmxlbmd0aCAhPT0gdGhpcy5fZW50cmllcy5sZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBlbnRyaWVzKCk6IE11bHRpbWFwRW50cnk8SywgVj5bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbnRyaWVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQoa2V5OiBLKTogVltdIHtcbiAgICAgICAgY29uc3QgdmFsdWVNYXAgPSB0aGlzLl9lbnRyaWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoZW50cnkgPT4gZW50cnkua2V5ID09PSBrZXkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZW50cnkgPT4gZW50cnkudmFsdWUpO1xuICAgICAgICByZXR1cm4gdmFsdWVNYXAgfHwgW107XG4gICAgfVxuXG4gICAgcHVibGljIGtleXMoKTogS1tdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20obmV3IFNldCh0aGlzLl9lbnRyaWVzLm1hcChlbnRyeSA9PiBlbnRyeS5rZXkpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHZhbHVlcygpOiBWW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZW50cmllcy5yZWR1Y2UoKGFjYywgeCkgPT4gYWNjLmNvbmNhdCh4LnZhbHVlKSwgW10gYXMgVltdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHV0KGtleTogSywgdmFsdWU6IFYpOiBNdWx0aW1hcEVudHJ5PEssIFY+W10ge1xuICAgICAgICB0aGlzLl9lbnRyaWVzLnB1c2gobmV3IE11bHRpbWFwRW50cnkoa2V5LCB2YWx1ZSkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fZW50cmllcztcbiAgICB9XG5cbiAgICBwdWJsaWMgcHV0QWxsKGtleTogSywgdmFsdWVzOiBWW10pOiBNdWx0aW1hcEVudHJ5PEssIFY+W10ge1xuICAgICAgICB2YWx1ZXMuZm9yRWFjaCh2YWx1ZSA9PiB0aGlzLl9lbnRyaWVzLnB1c2gobmV3IE11bHRpbWFwRW50cnkoa2V5LCB2YWx1ZSkpKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXM7XG4gICAgfVxufVxuIl19
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktbWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3V0aWwvbXVsdGktbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLFNBQVMsQ0FBQztBQUU1Qjs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLGFBQWE7SUFDdEIsWUFBcUIsR0FBTSxFQUFXLEtBQVE7UUFBekIsUUFBRyxHQUFILEdBQUcsQ0FBRztRQUFXLFVBQUssR0FBTCxLQUFLLENBQUc7SUFDOUMsQ0FBQztDQUNKO0FBMEJELE1BQU0sT0FBTyxhQUFhO0lBSXRCLFlBQVksR0FBb0I7UUFGeEIsYUFBUSxHQUEwQixFQUFFLENBQUM7UUFHekMsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNOLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN4QyxDQUFDO0lBQ0wsQ0FBQztJQUVNLElBQUk7UUFDUCxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVNLEtBQUs7UUFDUixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sV0FBVyxDQUFDLEdBQU07UUFDckIsT0FBTyxJQUFJLENBQUMsUUFBUTthQUNSLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDO2FBQ3pDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFRO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFFBQVE7YUFDUixNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQzthQUM3QyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxhQUFhLENBQUMsR0FBTSxFQUFFLEtBQVE7UUFDakMsT0FBTyxJQUFJLENBQUMsUUFBUTthQUNSLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDO2FBQ2xFLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUFNLEVBQUUsS0FBUztRQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDUixNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDWixJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNSLE9BQU8sS0FBSyxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUM7WUFDdEQsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVNLEdBQUcsQ0FBQyxHQUFNO1FBQ2IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDUixNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQzthQUNsQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxRQUFRLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSxJQUFJO1FBQ1AsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRU0sTUFBTTtRQUNULE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTSxHQUFHLENBQUMsR0FBTSxFQUFFLEtBQVE7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbEQsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBTSxFQUFFLE1BQVc7UUFDN0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0UsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9qb3JkYW5sdXlrZS82MDlhNGZmZmI2OWQxZWJhZmRhZGQzMTNlZTJlZTgwNFxuICpcbiAqIEBhdXRob3IgSm9yZGFuIEx1eWtlIDxqb3JkYW5sdXlrZUBnbWFpbC5jb20+XG4gKi9cblxuZXhwb3J0IGNsYXNzIE11bHRpbWFwRW50cnk8SywgVj4ge1xuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGtleTogSywgcmVhZG9ubHkgdmFsdWU6IFYpIHtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGltYXA8SywgVj4ge1xuICAgIGVudHJpZXM6IE11bHRpbWFwRW50cnk8SywgVj5bXTtcblxuICAgIGNsZWFyKCk6IHZvaWQ7XG5cbiAgICBjb250YWluc0tleShrZXk6IEspOiBib29sZWFuO1xuXG4gICAgY29udGFpbnNWYWx1ZSh2YWx1ZTogVik6IGJvb2xlYW47XG5cbiAgICBjb250YWluc0VudHJ5KGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuO1xuXG4gICAgZGVsZXRlKGtleTogSywgdmFsdWU/OiBWKTogYm9vbGVhbjtcblxuICAgIGdldChrZXk6IEspOiBWW107XG5cbiAgICBrZXlzKCk6IEtbXTtcblxuICAgIHZhbHVlcygpOiBWW107XG5cbiAgICBwdXQoa2V5OiBLLCB2YWx1ZTogVik6IE11bHRpbWFwRW50cnk8SywgVj5bXTtcblxuICAgIHNpemUoKTogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgQXJyYXlNdWx0aW1hcDxLLCBWPiBpbXBsZW1lbnRzIE11bHRpbWFwPEssIFY+IHtcblxuICAgIHByaXZhdGUgX2VudHJpZXM6IE11bHRpbWFwRW50cnk8SywgVj5bXSA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IobWFwPzogTXVsdGltYXA8SywgVj4pIHtcbiAgICAgICAgaWYgKG1hcCkge1xuICAgICAgICAgICAgdGhpcy5fZW50cmllcyA9IG1hcC5lbnRyaWVzLnNsaWNlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2l6ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5rZXlzKCkubGVuZ3RoO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZW50cmllcyA9IFtdO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb250YWluc0tleShrZXk6IEspOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXNcbiAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LmtleSA9PT0ga2V5KVxuICAgICAgICAgICAgLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnRhaW5zVmFsdWUodmFsdWU6IFYpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXNcbiAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LnZhbHVlID09PSB2YWx1ZSlcbiAgICAgICAgICAgIC5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb250YWluc0VudHJ5KGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VudHJpZXNcbiAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LmtleSA9PT0ga2V5ICYmIGVudHJ5LnZhbHVlID09PSB2YWx1ZSlcbiAgICAgICAgICAgIC5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGUoa2V5OiBLLCB2YWx1ZT86IFYpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdGVtcCA9IHRoaXMuX2VudHJpZXM7XG4gICAgICAgIHRoaXMuX2VudHJpZXMgPSB0aGlzLl9lbnRyaWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihlbnRyeSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGVudHJ5LmtleSAhPT0ga2V5IHx8IGVudHJ5LnZhbHVlICE9PSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZW50cnkua2V5ICE9PSBrZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0ZW1wLmxlbmd0aCAhPT0gdGhpcy5fZW50cmllcy5sZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBlbnRyaWVzKCk6IE11bHRpbWFwRW50cnk8SywgVj5bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbnRyaWVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQoa2V5OiBLKTogVltdIHtcbiAgICAgICAgY29uc3QgdmFsdWVNYXAgPSB0aGlzLl9lbnRyaWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoZW50cnkgPT4gZW50cnkua2V5ID09PSBrZXkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZW50cnkgPT4gZW50cnkudmFsdWUpO1xuICAgICAgICByZXR1cm4gdmFsdWVNYXAgfHwgW107XG4gICAgfVxuXG4gICAgcHVibGljIGtleXMoKTogS1tdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20obmV3IFNldCh0aGlzLl9lbnRyaWVzLm1hcChlbnRyeSA9PiBlbnRyeS5rZXkpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHZhbHVlcygpOiBWW10ge1xuICAgICAgICByZXR1cm4gVXRpbHMuZmxhdE1hcCh0aGlzLl9lbnRyaWVzLCB4ID0+IHgudmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwdXQoa2V5OiBLLCB2YWx1ZTogVik6IE11bHRpbWFwRW50cnk8SywgVj5bXSB7XG4gICAgICAgIHRoaXMuX2VudHJpZXMucHVzaChuZXcgTXVsdGltYXBFbnRyeShrZXksIHZhbHVlKSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbnRyaWVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBwdXRBbGwoa2V5OiBLLCB2YWx1ZXM6IFZbXSk6IE11bHRpbWFwRW50cnk8SywgVj5bXSB7XG4gICAgICAgIHZhbHVlcy5mb3JFYWNoKHZhbHVlID0+IHRoaXMuX2VudHJpZXMucHVzaChuZXcgTXVsdGltYXBFbnRyeShrZXksIHZhbHVlKSkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fZW50cmllcztcbiAgICB9XG59XG4iXX0=
@@ -1,11 +1,14 @@
1
1
  export default class Utils {
2
+ static flatMap(xs, f) {
3
+ return xs.reduce((acc, x) => acc.concat(f(x)), []);
4
+ }
2
5
  static getValidErorrMessage(err) {
3
6
  let errorMsg = '';
4
7
  if (err.msg) {
5
8
  errorMsg += err.msg;
6
9
  }
7
10
  if (Array.isArray(err.body)) {
8
- err.body.forEach((x) => errorMsg += x);
11
+ err.body.forEach(x => errorMsg += x);
9
12
  }
10
13
  else if (err.body) {
11
14
  if (err.body instanceof ProgressEvent) {
@@ -29,4 +32,4 @@ export default class Utils {
29
32
  }
30
33
  }
31
34
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvdXRpbC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsT0FBTyxPQUFPLEtBQUs7SUFFZixNQUFNLENBQUMsb0JBQW9CLENBQUMsR0FBUTtRQUN2QyxJQUFJLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDVixRQUFRLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQztRQUN4QixDQUFDO1FBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzFCLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbkQsQ0FBQzthQUFNLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUksR0FBRyxDQUFDLElBQUksWUFBWSxhQUFhLEVBQUUsQ0FBQztnQkFDcEMsUUFBUSxHQUFHLHlDQUF5QyxDQUFDO1lBQ3pELENBQUM7aUJBQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN2QixRQUFRLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDOUIsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLFFBQVEsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ3pCLENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDZCxRQUFRLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUM1QixDQUFDO1FBQ0QsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksR0FBRyxZQUFZLE1BQU0sRUFBRSxDQUFDO1lBQ25ELFFBQVEsSUFBSSxHQUFHLENBQUM7UUFDcEIsQ0FBQztRQUNELElBQUksUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sUUFBUSxDQUFDO1FBQ3BCLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBVdGlscyB7XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldFZhbGlkRXJvcnJNZXNzYWdlKGVycjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGVycm9yTXNnID0gJyc7XG4gICAgICAgIGlmIChlcnIubXNnKSB7XG4gICAgICAgICAgICBlcnJvck1zZyArPSBlcnIubXNnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZXJyLmJvZHkpKSB7XG4gICAgICAgICAgICBlcnIuYm9keS5mb3JFYWNoKCh4OiBzdHJpbmcpID0+IGVycm9yTXNnICs9IHgpO1xuICAgICAgICB9IGVsc2UgaWYgKGVyci5ib2R5KSB7XG4gICAgICAgICAgICBpZiAoZXJyLmJvZHkgaW5zdGFuY2VvZiBQcm9ncmVzc0V2ZW50KSB7XG4gICAgICAgICAgICAgICAgZXJyb3JNc2cgPSAnS29uIGdlZW4gdmVyYmluZGluZyBtYWtlbiBtZXQgZGUgc2VydmVyJztcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZXJyLmJvZHkudGV4dCkge1xuICAgICAgICAgICAgICAgIGVycm9yTXNnICs9IGVyci5ib2R5LnRleHQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGVycm9yTXNnICs9IGVyci5ib2R5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChlcnIubWVzc2FnZSkge1xuICAgICAgICAgICAgZXJyb3JNc2cgKz0gZXJyLm1lc3NhZ2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBlcnIgPT09ICdzdHJpbmcnIHx8IGVyciBpbnN0YW5jZW9mIFN0cmluZykge1xuICAgICAgICAgICAgZXJyb3JNc2cgKz0gZXJyO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlcnJvck1zZyAhPT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiBlcnJvck1zZztcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvdXRpbC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsT0FBTyxPQUFPLEtBQUs7SUFFZixNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxHQUFRO1FBQ3ZDLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNWLFFBQVEsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDO1FBQ3hCLENBQUM7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDMUIsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDekMsQ0FBQzthQUFNLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUksR0FBRyxDQUFDLElBQUksWUFBWSxhQUFhLEVBQUUsQ0FBQztnQkFDcEMsUUFBUSxHQUFHLHlDQUF5QyxDQUFDO1lBQ3pELENBQUM7aUJBQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN2QixRQUFRLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDOUIsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLFFBQVEsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ3pCLENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDZCxRQUFRLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUM1QixDQUFDO1FBQ0QsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksR0FBRyxZQUFZLE1BQU0sRUFBRSxDQUFDO1lBQ25ELFFBQVEsSUFBSSxHQUFHLENBQUM7UUFDcEIsQ0FBQztRQUNELElBQUksUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sUUFBUSxDQUFDO1FBQ3BCLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBVdGlscyB7XG5cbiAgICBwdWJsaWMgc3RhdGljIGZsYXRNYXAoeHMsIGYpOiBhbnkge1xuICAgICAgICByZXR1cm4geHMucmVkdWNlKChhY2MsIHgpID0+IGFjYy5jb25jYXQoZih4KSksIFtdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldFZhbGlkRXJvcnJNZXNzYWdlKGVycjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGVycm9yTXNnID0gJyc7XG4gICAgICAgIGlmIChlcnIubXNnKSB7XG4gICAgICAgICAgICBlcnJvck1zZyArPSBlcnIubXNnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZXJyLmJvZHkpKSB7XG4gICAgICAgICAgICBlcnIuYm9keS5mb3JFYWNoKHggPT4gZXJyb3JNc2cgKz0geCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXJyLmJvZHkpIHtcbiAgICAgICAgICAgIGlmIChlcnIuYm9keSBpbnN0YW5jZW9mIFByb2dyZXNzRXZlbnQpIHtcbiAgICAgICAgICAgICAgICBlcnJvck1zZyA9ICdLb24gZ2VlbiB2ZXJiaW5kaW5nIG1ha2VuIG1ldCBkZSBzZXJ2ZXInO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChlcnIuYm9keS50ZXh0KSB7XG4gICAgICAgICAgICAgICAgZXJyb3JNc2cgKz0gZXJyLmJvZHkudGV4dDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZXJyb3JNc2cgKz0gZXJyLmJvZHk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVyci5tZXNzYWdlKSB7XG4gICAgICAgICAgICBlcnJvck1zZyArPSBlcnIubWVzc2FnZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGVyciA9PT0gJ3N0cmluZycgfHwgZXJyIGluc3RhbmNlb2YgU3RyaW5nKSB7XG4gICAgICAgICAgICBlcnJvck1zZyArPSBlcnI7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVycm9yTXNnICE9PSAnJykge1xuICAgICAgICAgICAgcmV0dXJuIGVycm9yTXNnO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -1,4 +1,3 @@
1
- // @ts-nocheck
2
1
  import { Injectable } from '@angular/core';
3
2
  import * as i0 from "@angular/core";
4
3
  export class ZoneUtil {
@@ -30,4 +29,4 @@ export class ZoneUtil {
30
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZoneUtil, decorators: [{
31
30
  type: Injectable
32
31
  }], ctorParameters: () => [{ type: i0.NgZone }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9uZS11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3V0aWwvem9uZS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWM7QUFDZCxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQUduRCxNQUFNLE9BQU8sUUFBUTtJQUdqQixZQUE2QixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUV2QyxJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2YsR0FBRyxFQUFFLENBQUMsTUFBVyxFQUFFLElBQVksRUFBYSxFQUFFO2dCQUMxQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUM7Z0JBQzFCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDOUIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQzVCLE9BQU8sVUFBUyxHQUFHLElBQUk7d0JBQ25CLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQzt3QkFDbEIsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUNyRSxDQUFDLENBQUM7Z0JBQ04sQ0FBQztnQkFDRCxPQUFPLFFBQVEsQ0FBQztZQUNwQixDQUFDO1NBQ0osQ0FBQztJQUNOLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBRztRQUNWLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFdBQVcsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQVc7UUFDYixPQUFPLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs4R0ExQlEsUUFBUTtrSEFBUixRQUFROzsyRkFBUixRQUFRO2tCQURwQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLW5vY2hlY2tcbmltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgWm9uZVV0aWwge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgem9uZUhhbmRsZXI7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lKSB7XG5cbiAgICAgICAgdGhpcy56b25lSGFuZGxlciA9IHtcbiAgICAgICAgICAgIGdldDogKHRhcmdldDogYW55LCBuYW1lOiBzdHJpbmcpOiAoKSA9PiBhbnkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IF9ab25lSGFuZGxlciA9IHRoaXM7XG4gICAgICAgICAgICAgICAgY29uc3QgZGVsZWdhdGUgPSB0YXJnZXRbbmFtZV07XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNGdW5jdGlvbihkZWxlZ2F0ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9ab25lSGFuZGxlci5uZ1pvbmUucnVuKCgpID0+IGRlbGVnYXRlLmFwcGx5KHRoYXQsIGFyZ3MpKTtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlbGVnYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGlzRnVuY3Rpb24ob2JqKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIShvYmo/LmNvbnN0cnVjdG9yICYmIG9iai5jYWxsICYmIG9iai5hcHBseSk7XG4gICAgfVxuXG4gICAgcHJveHkodGFyZ2V0OiBhbnkpOiBhbnkge1xuICAgICAgICByZXR1cm4gbmV3IFByb3h5KHRhcmdldCwgdGhpcy56b25lSGFuZGxlcik7XG4gICAgfVxufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9uZS11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3V0aWwvem9uZS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBR25ELE1BQU0sT0FBTyxRQUFRO0lBR2pCLFlBQTZCLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBRXZDLElBQUksQ0FBQyxXQUFXLEdBQUc7WUFDZixHQUFHLEVBQUUsQ0FBQyxNQUFXLEVBQUUsSUFBWSxFQUFhLEVBQUU7Z0JBQzFDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQztnQkFDMUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM5QixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztvQkFDNUIsT0FBTyxVQUFTLEdBQUcsSUFBSTt3QkFDbkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO3dCQUNsQixPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQ3JFLENBQUMsQ0FBQztnQkFDTixDQUFDO2dCQUNELE9BQU8sUUFBUSxDQUFDO1lBQ3BCLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFHO1FBQ1YsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxLQUFLLENBQUMsTUFBVztRQUNiLE9BQU8sSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMvQyxDQUFDOzhHQTFCUSxRQUFRO2tIQUFSLFFBQVE7OzJGQUFSLFFBQVE7a0JBRHBCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFpvbmVVdGlsIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHpvbmVIYW5kbGVyO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSkge1xuXG4gICAgICAgIHRoaXMuem9uZUhhbmRsZXIgPSB7XG4gICAgICAgICAgICBnZXQ6ICh0YXJnZXQ6IGFueSwgbmFtZTogc3RyaW5nKTogKCkgPT4gYW55ID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBfWm9uZUhhbmRsZXIgPSB0aGlzO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRlbGVnYXRlID0gdGFyZ2V0W25hbWVdO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzRnVuY3Rpb24oZGVsZWdhdGUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbiguLi5hcmdzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfWm9uZUhhbmRsZXIubmdab25lLnJ1bigoKSA9PiBkZWxlZ2F0ZS5hcHBseSh0aGF0LCBhcmdzKSk7XG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBpc0Z1bmN0aW9uKG9iaik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISEob2JqPy5jb25zdHJ1Y3RvciAmJiBvYmouY2FsbCAmJiBvYmouYXBwbHkpO1xuICAgIH1cblxuICAgIHByb3h5KHRhcmdldDogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm94eSh0YXJnZXQsIHRoaXMuem9uZUhhbmRsZXIpO1xuICAgIH1cbn1cbiJdfQ==