@loxia/mst-viewer 8.1.3-202511240252 → 8.1.3-202511240820

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 (196) hide show
  1. package/esm2022/generated/openapi/api/api.mjs +23 -0
  2. package/esm2022/generated/openapi/api/appConfigController.service.mjs +140 -0
  3. package/esm2022/generated/openapi/api/appConfigController.serviceInterface.mjs +2 -0
  4. package/esm2022/generated/openapi/api/bewegingController.service.mjs +155 -0
  5. package/esm2022/generated/openapi/api/bewegingController.serviceInterface.mjs +2 -0
  6. package/esm2022/generated/openapi/api/class0BuildProperties.service.mjs +140 -0
  7. package/esm2022/generated/openapi/api/class0BuildProperties.serviceInterface.mjs +2 -0
  8. package/esm2022/generated/openapi/api/connectorController.service.mjs +146 -0
  9. package/esm2022/generated/openapi/api/connectorController.serviceInterface.mjs +2 -0
  10. package/esm2022/generated/openapi/api/logController.service.mjs +150 -0
  11. package/esm2022/generated/openapi/api/logController.serviceInterface.mjs +2 -0
  12. package/esm2022/generated/openapi/api/p21Controller.service.mjs +236 -0
  13. package/esm2022/generated/openapi/api/p21Controller.serviceInterface.mjs +2 -0
  14. package/esm2022/generated/openapi/api/sbController.service.mjs +203 -0
  15. package/esm2022/generated/openapi/api/sbController.serviceInterface.mjs +2 -0
  16. package/esm2022/generated/openapi/api.module.mjs +40 -0
  17. package/esm2022/generated/openapi/configuration.mjs +99 -0
  18. package/esm2022/generated/openapi/encoder.mjs +19 -0
  19. package/esm2022/generated/openapi/index.mjs +7 -0
  20. package/esm2022/generated/openapi/model/actieDto.mjs +13 -0
  21. package/esm2022/generated/openapi/model/algemeneRitDto.mjs +13 -0
  22. package/esm2022/generated/openapi/model/bewegingDto.mjs +2 -0
  23. package/esm2022/generated/openapi/model/frontendKeycloakConfig.mjs +13 -0
  24. package/esm2022/generated/openapi/model/frontendProperties.mjs +2 -0
  25. package/esm2022/generated/openapi/model/logDto.mjs +2 -0
  26. package/esm2022/generated/openapi/model/models.mjs +9 -0
  27. package/esm2022/generated/openapi/model/ritRequestDto.mjs +2 -0
  28. package/esm2022/generated/openapi/model/signaleringsbeeldDto.mjs +13 -0
  29. package/esm2022/generated/openapi/param.mjs +2 -0
  30. package/esm2022/generated/openapi/variables.mjs +9 -0
  31. package/esm2022/lib/atomic-components/message/message.component.mjs +3 -3
  32. package/esm2022/lib/atomic-components/progress-indicator/progress-indicator.entity.mjs +7 -4
  33. package/esm2022/lib/components/carousel-controls/carousel-controls.component.mjs +5 -6
  34. package/esm2022/lib/components/mstviewer/mstviewer.component.mjs +13 -7
  35. package/esm2022/lib/components/ritdelen-lijst/ritdelen-lijst.component.mjs +18 -12
  36. package/esm2022/lib/components/rpe/rpe.component.mjs +6 -2
  37. package/esm2022/lib/components/svg-visualisatie/svg-visualisatie.component.mjs +8 -7
  38. package/esm2022/lib/components/viewer-controls/viewer-controls.component.mjs +16 -13
  39. package/esm2022/lib/model/km-range.mjs +2 -2
  40. package/esm2022/lib/model/nieuwe-route.mjs +2 -2
  41. package/esm2022/lib/model/ritdeel.mjs +10 -10
  42. package/esm2022/lib/mst-viewer.module.mjs +6 -5
  43. package/esm2022/lib/resources/mstlogging.resource.mjs +12 -145
  44. package/esm2022/lib/resources/signaleringsbeeldinfo.resource.mjs +16 -33
  45. package/esm2022/lib/services/base-rest.service.mjs +3 -1
  46. package/esm2022/lib/services/beweging-utils.service.mjs +6 -6
  47. package/esm2022/lib/services/debug.service.mjs +3 -3
  48. package/esm2022/lib/services/editor.service.mjs +3 -1
  49. package/esm2022/lib/services/print-beweging.service.mjs +23 -20
  50. package/esm2022/lib/services/rit-lezer.service.mjs +4 -4
  51. package/esm2022/lib/services/signalerings-beeld-manager.service.mjs +1 -1
  52. package/esm2022/lib/services/viewer-control.service.mjs +10 -9
  53. package/esm2022/lib/state/actions/actions.mjs +2 -5
  54. package/esm2022/lib/state/actions/ritdelen.actions.mjs +4 -4
  55. package/esm2022/lib/state/effect/bepaal-ongeplande-acties.effect.mjs +8 -7
  56. package/esm2022/lib/state/effect/bepaal-sb-infos.effect.mjs +2 -2
  57. package/esm2022/lib/state/effect/beweging-invoegen.effect.mjs +1 -1
  58. package/esm2022/lib/state/effect/delete-ongeplande-actie.effect.mjs +1 -1
  59. package/esm2022/lib/state/effect/focus-effect.mjs +2 -2
  60. package/esm2022/lib/state/effect/laad-route-files.effect.mjs +8 -8
  61. package/esm2022/lib/state/effect/laad-signaleringsbeelden.effect.mjs +25 -27
  62. package/esm2022/lib/state/effect/ritdelen.effect.mjs +26 -25
  63. package/esm2022/lib/state/mst-editor-state.mjs +11 -15
  64. package/esm2022/lib/state/reducer/rit-delen.reducer.mjs +1 -1
  65. package/esm2022/lib/util/actie-helper.mjs +29 -25
  66. package/esm2022/lib/util/actie-popover-bepaler.mjs +2 -2
  67. package/esm2022/lib/util/logging-helper.mjs +36 -41
  68. package/esm2022/lib/util/multi-map.mjs +2 -3
  69. package/esm2022/lib/util/utils.mjs +5 -5
  70. package/esm2022/lib/util/zone-util.mjs +2 -1
  71. package/esm2022/src/generated/openapi/api/api.mjs +23 -0
  72. package/esm2022/src/generated/openapi/api/appConfigController.service.mjs +140 -0
  73. package/esm2022/src/generated/openapi/api/appConfigController.serviceInterface.mjs +2 -0
  74. package/esm2022/src/generated/openapi/api/bewegingController.service.mjs +155 -0
  75. package/esm2022/src/generated/openapi/api/bewegingController.serviceInterface.mjs +2 -0
  76. package/esm2022/src/generated/openapi/api/class0BuildProperties.service.mjs +140 -0
  77. package/esm2022/src/generated/openapi/api/class0BuildProperties.serviceInterface.mjs +2 -0
  78. package/esm2022/src/generated/openapi/api/connectorController.service.mjs +146 -0
  79. package/esm2022/src/generated/openapi/api/connectorController.serviceInterface.mjs +2 -0
  80. package/esm2022/src/generated/openapi/api/logController.service.mjs +150 -0
  81. package/esm2022/src/generated/openapi/api/logController.serviceInterface.mjs +2 -0
  82. package/esm2022/src/generated/openapi/api/p21Controller.service.mjs +236 -0
  83. package/esm2022/src/generated/openapi/api/p21Controller.serviceInterface.mjs +2 -0
  84. package/esm2022/src/generated/openapi/api/sbController.service.mjs +203 -0
  85. package/esm2022/src/generated/openapi/api/sbController.serviceInterface.mjs +2 -0
  86. package/esm2022/src/generated/openapi/api.module.mjs +40 -0
  87. package/esm2022/src/generated/openapi/configuration.mjs +99 -0
  88. package/esm2022/src/generated/openapi/encoder.mjs +19 -0
  89. package/esm2022/src/generated/openapi/index.mjs +7 -0
  90. package/esm2022/src/generated/openapi/loxia-mst-viewer-src-generated-openapi.mjs +5 -0
  91. package/esm2022/src/generated/openapi/model/actieDto.mjs +13 -0
  92. package/esm2022/src/generated/openapi/model/algemeneRitDto.mjs +13 -0
  93. package/esm2022/src/generated/openapi/model/bewegingDto.mjs +2 -0
  94. package/esm2022/src/generated/openapi/model/frontendKeycloakConfig.mjs +13 -0
  95. package/esm2022/src/generated/openapi/model/frontendProperties.mjs +2 -0
  96. package/esm2022/src/generated/openapi/model/logDto.mjs +2 -0
  97. package/esm2022/src/generated/openapi/model/models.mjs +9 -0
  98. package/esm2022/src/generated/openapi/model/ritRequestDto.mjs +2 -0
  99. package/esm2022/src/generated/openapi/model/signaleringsbeeldDto.mjs +13 -0
  100. package/esm2022/src/generated/openapi/param.mjs +2 -0
  101. package/esm2022/src/generated/openapi/variables.mjs +9 -0
  102. package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs +1330 -0
  103. package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs.map +1 -0
  104. package/fesm2022/loxia-mst-viewer.mjs +1867 -667
  105. package/fesm2022/loxia-mst-viewer.mjs.map +1 -1
  106. package/generated/openapi/api/api.d.ts +22 -0
  107. package/generated/openapi/api/appConfigController.service.d.ts +38 -0
  108. package/generated/openapi/api/appConfigController.serviceInterface.d.ts +24 -0
  109. package/generated/openapi/api/bewegingController.service.d.ts +40 -0
  110. package/generated/openapi/api/bewegingController.serviceInterface.d.ts +27 -0
  111. package/generated/openapi/api/class0BuildProperties.service.d.ts +36 -0
  112. package/generated/openapi/api/class0BuildProperties.serviceInterface.d.ts +23 -0
  113. package/generated/openapi/api/connectorController.service.d.ts +38 -0
  114. package/generated/openapi/api/connectorController.serviceInterface.d.ts +25 -0
  115. package/generated/openapi/api/logController.service.d.ts +38 -0
  116. package/generated/openapi/api/logController.serviceInterface.d.ts +25 -0
  117. package/generated/openapi/api/p21Controller.service.d.ts +62 -0
  118. package/generated/openapi/api/p21Controller.serviceInterface.d.ts +30 -0
  119. package/generated/openapi/api/sbController.service.d.ts +60 -0
  120. package/generated/openapi/api/sbController.serviceInterface.d.ts +32 -0
  121. package/generated/openapi/api.module.d.ts +11 -0
  122. package/generated/openapi/configuration.d.ts +104 -0
  123. package/generated/openapi/encoder.d.ts +11 -0
  124. package/generated/openapi/index.d.ts +6 -0
  125. package/generated/openapi/model/actieDto.d.ts +35 -0
  126. package/generated/openapi/model/algemeneRitDto.d.ts +20 -0
  127. package/generated/openapi/model/bewegingDto.d.ts +37 -0
  128. package/generated/openapi/model/frontendKeycloakConfig.d.ts +16 -0
  129. package/generated/openapi/model/frontendProperties.d.ts +15 -0
  130. package/generated/openapi/model/logDto.d.ts +22 -0
  131. package/generated/openapi/model/models.d.ts +8 -0
  132. package/generated/openapi/model/ritRequestDto.d.ts +17 -0
  133. package/generated/openapi/model/signaleringsbeeldDto.d.ts +16 -0
  134. package/generated/openapi/param.d.ts +37 -0
  135. package/generated/openapi/variables.d.ts +8 -0
  136. package/lib/atomic-components/message/message.component.d.ts +2 -2
  137. package/lib/atomic-components/progress-indicator/progress-indicator.entity.d.ts +1 -1
  138. package/lib/components/carousel-controls/carousel-controls.component.d.ts +1 -3
  139. package/lib/components/mstviewer/mstviewer.component.d.ts +2 -2
  140. package/lib/components/ritdelen-lijst/ritdelen-lijst.component.d.ts +2 -2
  141. package/lib/components/rpe/rpe.component.d.ts +1 -1
  142. package/lib/components/svg-visualisatie/svg-visualisatie.component.d.ts +1 -1
  143. package/lib/components/viewer-controls/viewer-controls.component.d.ts +3 -4
  144. package/lib/model/km-range.d.ts +1 -1
  145. package/lib/model/nieuwe-route.d.ts +2 -2
  146. package/lib/model/ritdeel.d.ts +11 -10
  147. package/lib/resources/mstlogging.resource.d.ts +6 -95
  148. package/lib/resources/signaleringsbeeldinfo.resource.d.ts +8 -23
  149. package/lib/services/editor.service.d.ts +2 -2
  150. package/lib/services/print-beweging.service.d.ts +4 -6
  151. package/lib/services/rit-lezer.service.d.ts +1 -1
  152. package/lib/services/signalerings-beeld-manager.service.d.ts +2 -2
  153. package/lib/services/viewer-control.service.d.ts +0 -2
  154. package/lib/state/actions/actions.d.ts +17 -24
  155. package/lib/state/actions/ritdelen.actions.d.ts +3 -7
  156. package/lib/state/effect/bepaal-ongeplande-acties.effect.d.ts +2 -1
  157. package/lib/state/effect/delete-ongeplande-actie.effect.d.ts +1 -1
  158. package/lib/state/effect/laad-route-files.effect.d.ts +4 -5
  159. package/lib/state/effect/laad-signaleringsbeelden.effect.d.ts +13 -13
  160. package/lib/state/effect/ritdelen.effect.d.ts +7 -6
  161. package/lib/state/mst-editor-state.d.ts +27 -91
  162. package/lib/util/actie-helper.d.ts +4 -4
  163. package/lib/util/logging-helper.d.ts +6 -8
  164. package/lib/util/utils.d.ts +0 -1
  165. package/package.json +7 -1
  166. package/src/generated/openapi/README.md +226 -0
  167. package/src/generated/openapi/api/api.d.ts +22 -0
  168. package/src/generated/openapi/api/appConfigController.service.d.ts +38 -0
  169. package/src/generated/openapi/api/appConfigController.serviceInterface.d.ts +24 -0
  170. package/src/generated/openapi/api/bewegingController.service.d.ts +40 -0
  171. package/src/generated/openapi/api/bewegingController.serviceInterface.d.ts +27 -0
  172. package/src/generated/openapi/api/class0BuildProperties.service.d.ts +36 -0
  173. package/src/generated/openapi/api/class0BuildProperties.serviceInterface.d.ts +23 -0
  174. package/src/generated/openapi/api/connectorController.service.d.ts +38 -0
  175. package/src/generated/openapi/api/connectorController.serviceInterface.d.ts +25 -0
  176. package/src/generated/openapi/api/logController.service.d.ts +38 -0
  177. package/src/generated/openapi/api/logController.serviceInterface.d.ts +25 -0
  178. package/src/generated/openapi/api/p21Controller.service.d.ts +62 -0
  179. package/src/generated/openapi/api/p21Controller.serviceInterface.d.ts +30 -0
  180. package/src/generated/openapi/api/sbController.service.d.ts +60 -0
  181. package/src/generated/openapi/api/sbController.serviceInterface.d.ts +32 -0
  182. package/src/generated/openapi/api.module.d.ts +11 -0
  183. package/src/generated/openapi/configuration.d.ts +104 -0
  184. package/src/generated/openapi/encoder.d.ts +11 -0
  185. package/src/generated/openapi/index.d.ts +6 -0
  186. package/src/generated/openapi/model/actieDto.d.ts +35 -0
  187. package/src/generated/openapi/model/algemeneRitDto.d.ts +20 -0
  188. package/src/generated/openapi/model/bewegingDto.d.ts +37 -0
  189. package/src/generated/openapi/model/frontendKeycloakConfig.d.ts +16 -0
  190. package/src/generated/openapi/model/frontendProperties.d.ts +15 -0
  191. package/src/generated/openapi/model/logDto.d.ts +22 -0
  192. package/src/generated/openapi/model/models.d.ts +8 -0
  193. package/src/generated/openapi/model/ritRequestDto.d.ts +17 -0
  194. package/src/generated/openapi/model/signaleringsbeeldDto.d.ts +16 -0
  195. package/src/generated/openapi/param.d.ts +37 -0
  196. package/src/generated/openapi/variables.d.ts +8 -0
@@ -1,7 +1,7 @@
1
1
  import * as i2 from '@angular/common';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { EventEmitter, Output, Input, Component, Injectable, ChangeDetectionStrategy, ViewChild, HostListener, NgModule } from '@angular/core';
4
+ import { EventEmitter, Output, Input, Component, Injectable, ChangeDetectionStrategy, ViewChild, InjectionToken, Optional, Inject, SkipSelf, NgModule, HostListener } from '@angular/core';
5
5
  import * as i7 from '@loxia/imx-viewer';
6
6
  import { SelectieInfo, PopoverInfo, Point, SvgInfo, ImxViewerComponent, ImxViewerModule } from '@loxia/imx-viewer';
7
7
  import * as i4 from '@loxia/rijwegen';
@@ -11,13 +11,13 @@ import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
11
11
  import * as i2$1 from '@ngrx/store';
12
12
  import { createAction, union, select, createReducer, on, StoreModule } from '@ngrx/store';
13
13
  import { ResourceModule } from '@ngx-resource/handler-ngx-http';
14
- import { BehaviorSubject, Subscription, from, combineLatest, of, throwError } from 'rxjs';
14
+ import { BehaviorSubject, from, Subscription, combineLatest, forkJoin, of, throwError } from 'rxjs';
15
+ import { filter, map, take, tap, catchError, withLatestFrom, switchMap } from 'rxjs/operators';
16
+ import * as i1 from '@angular/common/http';
17
+ import { HttpHeaders, HttpContext, HttpParams } from '@angular/common/http';
15
18
  import { __decorate } from 'tslib';
16
- import * as i1 from '@ngx-resource/core';
17
- import { Resource, ResourceAction, ResourceRequestMethod, ResourceParams, ResourceModel } from '@ngx-resource/core';
18
- import { take, filter, map, catchError, withLatestFrom, switchMap, tap } from 'rxjs/operators';
19
- import * as i1$1 from '@angular/common/http';
20
- import { HttpHeaders } from '@angular/common/http';
19
+ import * as i1$1 from '@ngx-resource/core';
20
+ import { Resource, ResourceAction, ResourceParams } from '@ngx-resource/core';
21
21
 
22
22
  class Message {
23
23
  constructor(severity, text, timeout = 0) {
@@ -41,7 +41,7 @@ class MessageComponent {
41
41
  this.onClearMessage = new EventEmitter();
42
42
  }
43
43
  ngOnInit() {
44
- if (this.message.timeout > 0) {
44
+ if (this.message && this.message.timeout > 0) {
45
45
  setTimeout(() => {
46
46
  this.closeMessage({ stopPropagation: () => null });
47
47
  }, this.message.timeout);
@@ -53,7 +53,7 @@ class MessageComponent {
53
53
  this.message = undefined;
54
54
  }
55
55
  get severity() {
56
- return this.message.severity;
56
+ return this.message?.severity ?? '?';
57
57
  }
58
58
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
59
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: MessageComponent, selector: "loxia-message", inputs: { message: "message" }, outputs: { onClearMessage: "onClearMessage" }, ngImport: i0, template: "<div id=\"alert-1\" *ngIf=\"message\"\n [ngClass]=\"severity\"\n class=\" loxia-message flex items-center p-4 text-white\" role=\"alert\">\n <svg class=\"flex-shrink-0 size-4 mt-0.5\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path d=\"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z\"></path>\n <path d=\"M12 9v4\"></path>\n <path d=\"M12 17h.01\"></path>\n </svg>\n <span class=\"sr-only\">Info</span>\n <div class=\"ms-3 text-sm font-medium\">\n {{message.text}}\n </div>\n <button type=\"button\"\n (click)=\"closeMessage($event)\"\n class=\"ms-auto -mx-1.5 -my-1.5 rounded-lg inline-flex items-center justify-center h-8 w-8\" data-dismiss-target=\"#alert-1\" aria-label=\"Close\">\n <span class=\"sr-only\">Close</span>\n <svg class=\"w-3 h-3\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 14 14\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6\"/>\n </svg>\n </button>\n</div>\n", styles: ["svg{background-color:transparent;stroke-width:unset}.loxia-message.information{background-color:#0288d1}.loxia-message.warning{background-color:#ff6a00}.loxia-message.notification{background-color:#f3ed38}.loxia-message.error{background-color:#b5061b}.loxia-message.success{background-color:#297d03}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
@@ -124,6 +124,83 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
124
124
  args: [{ selector: 'loxia-progress-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"inline-block h-16 w-16 animate-spin rounded-full border-4 border-solid border-current border-e-transparent align-[-0.125em] text-surface motion-reduce:animate-[spin_1.5s_linear_infinite] dark:text-warning\"\n role=\"status\">\n <span class=\"!absolute !-m-px !h-px !w-px !overflow-hidden !whitespace-nowrap !border-0 !p-0 ![clip:rect(0,0,0,0)]\">\n Loading...\n </span>\n</div>\n" }]
125
125
  }] });
126
126
 
127
+ const SET_RIT_DELEN = '[mst] SetRitDelen';
128
+ const SET_RIT_DELEN_AFTER_UPDATE = '[mst] SetRitDelenAfterUpdate';
129
+ const UPDATE_RIT_DELEN = '[mst] UpdateRitDelen';
130
+ const TOGGLE_RITDEEL_ZICHTBAAR = '[mst] ToggleRitdeelZichtbaar';
131
+ const SET_RITDEEL_ZICHTBAAR = '[mst] ZetRitdeelZichtbaar';
132
+ const SET_ZICHTBAARHEID_ALLE_RITDELEN = '[mst] SetZichtbaarheidAlleRitdelen';
133
+ const TOGGLE_ZICHTBAARHEID_VOOR_BEWEGINGEN = '[mst] ToggleZichtbaarheidVoorBewegingen';
134
+ const SET_ALTERNATIEVE_RIT_DELEN = '[mst] SetAlternatieveRitDelen';
135
+ const RITDEEL_INVOEGEN = '[mst] RitdeelInvoegen';
136
+ const DELETE_RITDEEL = '[mst] DeleteRitdeel';
137
+ const DELETE_RITDEEL_ACTIE = '[mst] DeleteRitdeelActie';
138
+ const ADD_RITDEEL_ACTIE = '[mst] AddRitdeelActie';
139
+ const NAVIGEER = '[mst] Navigeer';
140
+ const NAVIGEER_VANAF = '[mst] NavigeerVanaf';
141
+ const setRitDelen = createAction(SET_RIT_DELEN, (ritDelen, paginationSize) => ({ ritDelen, paginationSize }));
142
+ const setRitdelenAfterUpdate = createAction(SET_RIT_DELEN_AFTER_UPDATE, (ritDelen) => ({ ritDelen }));
143
+ const navigeer = createAction(NAVIGEER, (stapSize, paginationSize) => ({ stapSize, paginationSize }));
144
+ const navigeerVanaf = createAction(NAVIGEER_VANAF, (paginationSize, ritdeel) => ({ paginationSize, ritdeel }));
145
+ const updateRitDelen = createAction(UPDATE_RIT_DELEN, (ritDelen) => ({ ritDelen }));
146
+ const toggleRitdeelZichtbaar = createAction(TOGGLE_RITDEEL_ZICHTBAAR, (ritDeel) => ({ ritDeel }));
147
+ const setRitdeelZichtbaar = createAction(SET_RITDEEL_ZICHTBAAR, (ritDeel, zichtbaar) => ({ ritDeel, zichtbaar }));
148
+ const deleteRitdeel = createAction(DELETE_RITDEEL, (ritDeel) => ({ ritDeel }));
149
+ const deleteRitdeelActie = createAction(DELETE_RITDEEL_ACTIE, (ritDeel, actie) => ({ ritDeel, actie }));
150
+ const addRitdeelActie = createAction(ADD_RITDEEL_ACTIE, (ritDeel, actie) => ({ ritDeel, actie }));
151
+ const setZichtbaarheidAlleRitdelen = createAction(SET_ZICHTBAARHEID_ALLE_RITDELEN, (zichtbaarheid) => ({ zichtbaarheid }));
152
+ const toggleZichtbaarheidVoorBewegingen = createAction(TOGGLE_ZICHTBAARHEID_VOOR_BEWEGINGEN, (bewegingIds) => ({ bewegingIds }));
153
+ const setAlternatieveRitDelen = createAction(SET_ALTERNATIEVE_RIT_DELEN, (alternatieveRitDeel) => ({ alternatieveRitDeel }));
154
+ const ritdeelInvoegen = createAction(RITDEEL_INVOEGEN, (nieuweRoute) => ({ nieuweRoute }));
155
+ // do not export return value
156
+ const ritdeelActions = union({
157
+ setRitDelen,
158
+ updateRitDelen,
159
+ setRitdelenAfterUpdate,
160
+ toggleRitdeelZichtbaar,
161
+ setRitdeelZichtbaar,
162
+ deleteRitdeel,
163
+ deleteRitdeelActie,
164
+ addRitdeelActie,
165
+ setZichtbaarheidAlleRitdelen,
166
+ toggleZichtbaarheidVoorBewegingen,
167
+ setAlternatieveRitDelen,
168
+ ritdeelInvoegen
169
+ });
170
+
171
+ class CarouselControlsComponent {
172
+ constructor(store) {
173
+ this.store = store;
174
+ this.paginationSize = 4;
175
+ this.sideNavOpen = false;
176
+ this.ritdelen$ = this.store.select('ritDelen').pipe(filter(r => r?.length > 0));
177
+ this.kanLinks$ = this.ritdelen$.pipe(map(r => this.kanLinksNavigeren(r)));
178
+ this.kanRechts$ = this.ritdelen$.pipe(map(r => this.kanRechtsNavigeren(r)));
179
+ }
180
+ kanLinksNavigeren(ritDelen) {
181
+ return ritDelen.length > this.paginationSize && !ritDelen[0].isBinnenWindow();
182
+ }
183
+ kanRechtsNavigeren(ritDelen) {
184
+ return ritDelen.length > this.paginationSize && !ritDelen[ritDelen.length - 1].isBinnenWindow();
185
+ }
186
+ navigeerNaarLinks(event) {
187
+ this.store.dispatch(navigeer(event?.ctrlKey ? -1 : -(this.paginationSize - 1), this.paginationSize));
188
+ }
189
+ navigeerNaarRechts(event) {
190
+ this.store.dispatch(navigeer(event?.ctrlKey ? 1 : this.paginationSize - 1, this.paginationSize));
191
+ }
192
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: CarouselControlsComponent, deps: [{ token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
193
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: CarouselControlsComponent, selector: "carousel-controls", inputs: { paginationSize: "paginationSize", sideNavOpen: "sideNavOpen" }, ngImport: i0, template: "<div *ngIf=\"ritdelen$ | async\">\n <a class=\"loxia-carousel-control-prev\" [ngClass]=\"(sideNavOpen)?'carousel-sidebar-open':'carousel-sidebar'\" role=\"button\"\n data-slide=\"prev\" (click)=\"navigeerNaarLinks($event)\" [hidden]=\"(kanLinks$ | async) === false\">\n <span id=\"previous-page\" class=\"loxia-carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Previous</span>\n</a>\n <a class=\"loxia-carousel-control-next\" style=\"width: 2%;\" role=\"button\" data-slide=\"next\" (click)=\"navigeerNaarRechts($event)\"\n [hidden]=\"(kanRechts$ | async) === false\">\n <span id=\"next-page\" class=\"loxia-carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Next</span>\n </a>\n</div>\n", styles: [".loxia-carousel-control-prev{left:0}.loxia-carousel-control-next{right:0}.loxia-carousel-control-next-icon,.loxia-carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:50%/100% 100% no-repeat}.loxia-carousel-control-prev-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next:focus,.loxia-carousel-control-next:hover,.loxia-carousel-control-prev:focus,.loxia-carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.loxia-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loxia-carousel-control-next,.loxia-carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}.carousel-sidebar{width:2%}.carousel-sidebar-open{width:2%;transition:all .3s;left:470px}[hidden]{display:none!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
194
+ }
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: CarouselControlsComponent, decorators: [{
196
+ type: Component,
197
+ args: [{ selector: 'carousel-controls', template: "<div *ngIf=\"ritdelen$ | async\">\n <a class=\"loxia-carousel-control-prev\" [ngClass]=\"(sideNavOpen)?'carousel-sidebar-open':'carousel-sidebar'\" role=\"button\"\n data-slide=\"prev\" (click)=\"navigeerNaarLinks($event)\" [hidden]=\"(kanLinks$ | async) === false\">\n <span id=\"previous-page\" class=\"loxia-carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Previous</span>\n</a>\n <a class=\"loxia-carousel-control-next\" style=\"width: 2%;\" role=\"button\" data-slide=\"next\" (click)=\"navigeerNaarRechts($event)\"\n [hidden]=\"(kanRechts$ | async) === false\">\n <span id=\"next-page\" class=\"loxia-carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Next</span>\n </a>\n</div>\n", styles: [".loxia-carousel-control-prev{left:0}.loxia-carousel-control-next{right:0}.loxia-carousel-control-next-icon,.loxia-carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:50%/100% 100% no-repeat}.loxia-carousel-control-prev-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next:focus,.loxia-carousel-control-next:hover,.loxia-carousel-control-prev:focus,.loxia-carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.loxia-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loxia-carousel-control-next,.loxia-carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}.carousel-sidebar{width:2%}.carousel-sidebar-open{width:2%;transition:all .3s;left:470px}[hidden]{display:none!important}\n"] }]
198
+ }], ctorParameters: () => [{ type: i2$1.Store }], propDecorators: { paginationSize: [{
199
+ type: Input
200
+ }], sideNavOpen: [{
201
+ type: Input
202
+ }] } });
203
+
127
204
  const version = '8.1.3-SNAPSHOT';
128
205
 
129
206
  const SET_EDITABLE = '[mst] SetEditable';
@@ -169,7 +246,6 @@ const LAAD_EN_VERWERK_SIGNALERINGSBEELD_INFO = '[mst] laadEnVerwerkSignaleringsb
169
246
  const FOCUS_OP_RITDEEL = '[mst] focusOpRitdeel';
170
247
  const FOCUS_OP_IDS = '[mst] focusOpIds';
171
248
  const BEPAAL_SB_INFOS = '[mst] bepaalSbInfos';
172
- const SET_SELECTED_RITDEEL = '[mst] SetSelectedRitdeel';
173
249
  const setEditable = createAction(SET_EDITABLE, (editable) => ({ editable }));
174
250
  const SetRitSelectieIds = createAction(SET_RIT_SELECTIE_IDS, (ids) => ({ ids }));
175
251
  const SetGeplandeActies = createAction(SET_GEPLANDE_ACTIES, (geplandeActiesMap) => ({ geplandeActiesMap }));
@@ -213,7 +289,6 @@ const navigeerBuitenRit = createAction(NAVIGEER_BUITEN_RIT, (randPuic) => ({ ran
213
289
  const focusOpRitdeel = createAction(FOCUS_OP_RITDEEL, (ritdeel, paginationSize, iaVersieInfo) => ({ ritdeel, paginationSize, iaVersieInfo }));
214
290
  const focusOpIds = createAction(FOCUS_OP_IDS, (puics) => ({ puics }));
215
291
  const bepaalSbInfos = createAction(BEPAAL_SB_INFOS, (rit, ongeplandeActies, iaVersie, ritGewijzigdToegestaan, paginationSize) => ({ rit, ongeplandeActies, iaVersie, ritGewijzigdToegestaan, paginationSize }));
216
- const SetSelectedRitdeel = createAction(SET_SELECTED_RITDEEL, (id) => ({ id }));
217
292
  // do not export return value
218
293
  const mstActions = union({
219
294
  setEditable,
@@ -251,239 +326,9 @@ const mstActions = union({
251
326
  ClearProgress,
252
327
  BewegingInvoegen,
253
328
  KeurAlleActiesGoed,
254
- UpdateRit,
255
- setSelectedRitdeel: SetSelectedRitdeel
256
- });
257
-
258
- const SET_RIT_DELEN = '[mst] SetRitDelen';
259
- const SET_RIT_DELEN_AFTER_UPDATE = '[mst] SetRitDelenAfterUpdate';
260
- const UPDATE_RIT_DELEN = '[mst] UpdateRitDelen';
261
- const TOGGLE_RITDEEL_ZICHTBAAR = '[mst] ToggleRitdeelZichtbaar';
262
- const SET_RITDEEL_ZICHTBAAR = '[mst] ZetRitdeelZichtbaar';
263
- const SET_ZICHTBAARHEID_ALLE_RITDELEN = '[mst] SetZichtbaarheidAlleRitdelen';
264
- const TOGGLE_ZICHTBAARHEID_VOOR_BEWEGINGEN = '[mst] ToggleZichtbaarheidVoorBewegingen';
265
- const SET_ALTERNATIEVE_RIT_DELEN = '[mst] SetAlternatieveRitDelen';
266
- const RITDEEL_INVOEGEN = '[mst] RitdeelInvoegen';
267
- const DELETE_RITDEEL = '[mst] DeleteRitdeel';
268
- const DELETE_RITDEEL_ACTIE = '[mst] DeleteRitdeelActie';
269
- const ADD_RITDEEL_ACTIE = '[mst] AddRitdeelActie';
270
- const NAVIGEER = '[mst] Navigeer';
271
- const NAVIGEER_VANAF = '[mst] NavigeerVanaf';
272
- const setRitDelen = createAction(SET_RIT_DELEN, (ritDelen, paginationSize, iaversieinfo) => ({ ritDelen, paginationSize, iaversieinfo }));
273
- const setRitdelenAfterUpdate = createAction(SET_RIT_DELEN_AFTER_UPDATE, (ritDelen) => ({ ritDelen }));
274
- const navigeer = createAction(NAVIGEER, (stapSize, paginationSize, iaversieinfo) => ({ stapSize, paginationSize, iaversieinfo }));
275
- const navigeerVanaf = createAction(NAVIGEER_VANAF, (paginationSize, iaversieinfo, ritdeel) => ({ paginationSize, iaversieinfo, ritdeel }));
276
- const updateRitDelen = createAction(UPDATE_RIT_DELEN, (ritDelen) => ({ ritDelen }));
277
- const toggleRitdeelZichtbaar = createAction(TOGGLE_RITDEEL_ZICHTBAAR, (ritDeel) => ({ ritDeel }));
278
- const setRitdeelZichtbaar = createAction(SET_RITDEEL_ZICHTBAAR, (ritDeel, zichtbaar) => ({ ritDeel, zichtbaar }));
279
- const deleteRitdeel = createAction(DELETE_RITDEEL, (ritDeel) => ({ ritDeel }));
280
- const deleteRitdeelActie = createAction(DELETE_RITDEEL_ACTIE, (ritDeel, actie) => ({ ritDeel, actie }));
281
- const addRitdeelActie = createAction(ADD_RITDEEL_ACTIE, (ritDeel, actie) => ({ ritDeel, actie }));
282
- const setZichtbaarheidAlleRitdelen = createAction(SET_ZICHTBAARHEID_ALLE_RITDELEN, (zichtbaarheid) => ({ zichtbaarheid }));
283
- const toggleZichtbaarheidVoorBewegingen = createAction(TOGGLE_ZICHTBAARHEID_VOOR_BEWEGINGEN, (bewegingIds) => ({ bewegingIds }));
284
- const setAlternatieveRitDelen = createAction(SET_ALTERNATIEVE_RIT_DELEN, (alternatieveRitDeel) => ({ alternatieveRitDeel }));
285
- const ritdeelInvoegen = createAction(RITDEEL_INVOEGEN, (nieuweRoute) => ({ nieuweRoute }));
286
- // do not export return value
287
- const ritdeelActions = union({
288
- setRitDelen,
289
- updateRitDelen,
290
- setRitdelenAfterUpdate,
291
- toggleRitdeelZichtbaar,
292
- setRitdeelZichtbaar,
293
- deleteRitdeel,
294
- deleteRitdeelActie,
295
- addRitdeelActie,
296
- setZichtbaarheidAlleRitdelen,
297
- toggleZichtbaarheidVoorBewegingen,
298
- setAlternatieveRitDelen,
299
- ritdeelInvoegen
329
+ UpdateRit
300
330
  });
301
331
 
302
- let MstLoggingResource = class MstLoggingResource extends Resource {
303
- constructor(restHandler, store) {
304
- super(restHandler);
305
- this.store = store;
306
- this.subscriptions = new Subscription();
307
- this.subscriptions.add(this.store.select('baseUrl').subscribe(baseUrl => this.$setUrl(baseUrl)));
308
- }
309
- ngOnDestroy() {
310
- this.subscriptions.unsubscribe();
311
- }
312
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource, deps: [{ token: i1.ResourceHandler }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
313
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource }); }
314
- };
315
- __decorate([
316
- ResourceAction({
317
- path: '/',
318
- method: ResourceRequestMethod.Post
319
- })
320
- ], MstLoggingResource.prototype, "logErrorMessages", void 0);
321
- MstLoggingResource = __decorate([
322
- ResourceParams({
323
- pathPrefix: '/mst/services/rest/logging'
324
- })
325
- ], MstLoggingResource);
326
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource, decorators: [{
327
- type: Injectable
328
- }], ctorParameters: () => [{ type: i1.ResourceHandler }, { type: i2$1.Store }], propDecorators: { logErrorMessages: [] } });
329
- class MstLoggingDto extends ResourceModel {
330
- constructor(data) {
331
- super();
332
- this.$resource = MstLoggingResource;
333
- this.$setData(data);
334
- }
335
- toJSON() {
336
- return {
337
- iaVersie: this.iaVersie,
338
- meldingLevel: this.meldingLevel,
339
- meldingMessage: this.meldingMessage,
340
- algemeneRitInfoDto: this.algemeneRitInfoDto,
341
- actieDto: this.actieDto,
342
- sbinfoDtos: this.sbinfoDtos
343
- };
344
- }
345
- toString() {
346
- return `${this.iaVersie},${this.meldingLevel},${this.meldingMessage},${this.algemeneRitInfoDto},
347
- ${this.actieDto},${this.sbinfoDtos}`;
348
- }
349
- $setData(data) {
350
- if (data) {
351
- this.iaVersie = data.iaVersie;
352
- this.meldingLevel = data.meldingLevel;
353
- this.meldingMessage = data.meldingMessage;
354
- this.algemeneRitInfoDto = data.algemeneRitInfoDto;
355
- this.actieDto = data.actieDto;
356
- this.sbinfoDtos = data.sbinfoDtos;
357
- }
358
- return this;
359
- }
360
- }
361
- class ActieDto {
362
- constructor(data) {
363
- this.$setData(data);
364
- }
365
- toJSON() {
366
- return {
367
- pplgNaam: this.pplgNaam,
368
- ritActieTypeOmschrijving: this.ritActieTypeOmschrijving,
369
- ritActieStatus: this.ritActieStatus,
370
- bewegingId: this.bewegingId,
371
- wisselType: this.wisselType,
372
- wisselNaam: this.wisselNaam,
373
- wisselKantCode: this.wisselKantCode,
374
- vanKilometerlint: this.vanKilometerlint,
375
- vanKilometrering: this.vanKilometrering,
376
- totKilometerlint: this.totKilometerlint,
377
- totKilometrering: this.totKilometrering
378
- };
379
- }
380
- toString() {
381
- return `${this.pplgNaam},${this.ritActieTypeOmschrijving},${this.ritActieStatus},
382
- ${this.bewegingId},${this.wisselType},${this.wisselNaam},${this.wisselKantCode},
383
- ${this.vanKilometerlint},${this.vanKilometrering},${this.totKilometerlint},${this.totKilometrering}`;
384
- }
385
- $setData(data) {
386
- if (data) {
387
- this.pplgNaam = data.pplgNaam;
388
- this.ritActieTypeOmschrijving = data.ritActieTypeOmschrijving;
389
- this.ritActieStatus = data.ritActieStatus;
390
- this.bewegingId = data.bewegingId;
391
- this.wisselType = data.wisselType;
392
- this.wisselNaam = data.wisselNaam;
393
- this.wisselKantCode = data.wisselKantCode;
394
- this.vanKilometerlint = data.vanKilometerlint;
395
- this.vanKilometrering = data.vanKilometrering;
396
- this.totKilometerlint = data.totKilometerlint;
397
- this.totKilometrering = data.totKilometrering;
398
- }
399
- return this;
400
- }
401
- }
402
- class AlgemeneRitInfoDto {
403
- constructor(data) {
404
- this.$setData(data);
405
- }
406
- toJSON() {
407
- return {
408
- id: this.id,
409
- jaarplanId: this.jaarplanId,
410
- volgnummer: this.volgnummer,
411
- machineTypeId: this.machineTypeId,
412
- machineTypeOmschrijving: this.machineTypeOmschrijving,
413
- ritDatum: this.ritDatum,
414
- startDatum: this.startDatum,
415
- eindDatum: this.eindDatum,
416
- ritNaam: this.ritNaam,
417
- startLocatie: this.startLocatie,
418
- eindLocatie: this.eindLocatie,
419
- ritStatus: this.ritStatus,
420
- modified: this.modified,
421
- modifiedBy: this.modifiedBy,
422
- planJobId: this.planJobId
423
- };
424
- }
425
- toString() {
426
- return `${this.id},${this.jaarplanId},${this.volgnummer},${this.machineTypeId},${this.machineTypeOmschrijving}
427
- ,${this.ritDatum},${this.startDatum},${this.eindDatum},${this.ritNaam},${this.startLocatie}
428
- ,${this.eindLocatie},${this.ritStatus},${this.modified},${this.modifiedBy},${this.planJobId}`;
429
- }
430
- $setData(data) {
431
- if (data) {
432
- this.id = data.id;
433
- this.jaarplanId = data.jaarplanId;
434
- this.volgnummer = data.volgnummer;
435
- this.machineTypeId = data.machineTypeId;
436
- this.machineTypeOmschrijving = data.machineTypeOmschrijving;
437
- this.ritDatum = data.ritDatum;
438
- this.startDatum = data.startDatum;
439
- this.eindDatum = data.eindDatum;
440
- this.ritNaam = data.ritNaam;
441
- this.startLocatie = data.startLocatie;
442
- this.eindLocatie = data.eindLocatie;
443
- this.ritStatus = data.ritStatus;
444
- this.modified = data.modified;
445
- this.modifiedBy = data.modifiedBy;
446
- this.planJobId = data.planJobId;
447
- }
448
- return this;
449
- }
450
- }
451
-
452
- class Utils {
453
- static flatMap(xs, f) {
454
- return xs.reduce((acc, x) => acc.concat(f(x)), []);
455
- }
456
- static getValidErorrMessage(err) {
457
- let errorMsg = '';
458
- if (err.msg) {
459
- errorMsg += err.msg;
460
- }
461
- if (Array.isArray(err.body)) {
462
- err.body.forEach(x => errorMsg += x);
463
- }
464
- else if (err.body) {
465
- if (err.body instanceof ProgressEvent) {
466
- errorMsg = 'Kon geen verbinding maken met de server';
467
- }
468
- else if (err.body.text) {
469
- errorMsg += err.body.text;
470
- }
471
- else {
472
- errorMsg += err.body;
473
- }
474
- }
475
- if (err.message) {
476
- errorMsg += err.message;
477
- }
478
- if (typeof err === 'string' || err instanceof String) {
479
- errorMsg += err;
480
- }
481
- if (errorMsg !== '') {
482
- return errorMsg;
483
- }
484
- }
485
- }
486
-
487
332
  /**
488
333
  * https://gist.github.com/jordanluyke/609a4fffb69d1ebafdadd313ee2ee804
489
334
  *
@@ -547,7 +392,7 @@ class ArrayMultimap {
547
392
  return Array.from(new Set(this._entries.map(entry => entry.key)));
548
393
  }
549
394
  values() {
550
- return Utils.flatMap(this._entries, x => x.value);
395
+ return this._entries.reduce((acc, x) => acc.concat(x.value), []);
551
396
  }
552
397
  put(key, value) {
553
398
  this._entries.push(new MultimapEntry(key, value));
@@ -653,6 +498,7 @@ class EditorService {
653
498
  this.signaleringsBeeldManagerService = signaleringsBeeldManagerService;
654
499
  this.initReadyPromise();
655
500
  }
501
+ // Called from GWT only, can be removed when GWT is gone. any is used because it will be removed with GWT
656
502
  setEditor(editor) {
657
503
  this.editor = editor;
658
504
  this.resolveReadyPromise();
@@ -660,6 +506,7 @@ class EditorService {
660
506
  isReady() {
661
507
  return this.promise;
662
508
  }
509
+ // Called from GWT only, can be removed when GWT is gone
663
510
  setSignaleringsBeeldManager(signaleringsBeeldManager) {
664
511
  this.signaleringsBeeldManagerService.set(signaleringsBeeldManager);
665
512
  }
@@ -705,7 +552,7 @@ class BewegingUtils {
705
552
  const retval = [];
706
553
  retval.length = ritDelen.length;
707
554
  const origineleBewegingMap = this.bepaalOrigineleBewegingMap(origineleBewegingen);
708
- let vorigeBeweging = null;
555
+ let vorigeBeweging = undefined;
709
556
  for (let i = 0; i < ritDelen.length; i++) {
710
557
  const ritdeel = ritDelen[i];
711
558
  if (ritdeel.beweging) {
@@ -735,7 +582,7 @@ class BewegingUtils {
735
582
  }
736
583
  static bewegingenZijnGewijzigd(ritDelen, origineleBewegingen) {
737
584
  const ritDelenArray = ritDelen
738
- .filter(r => r.beweging)
585
+ .filter(r => r.beweging?.id)
739
586
  .map(r => r.beweging.id)
740
587
  .sort((a, b) => a - b);
741
588
  const bewegingenIdArray = origineleBewegingen.map(b => b.id).sort((a, b) => a - b);
@@ -751,9 +598,9 @@ class BewegingUtils {
751
598
  return stringToCheck.indexOf(match) !== -1;
752
599
  }
753
600
  static isGewijzigd(ritdeel, nieuwDwangNummer, origineleBewegingenMap) {
754
- const dwangGewijzigd = ritdeel.beweging.dwangNummer !== nieuwDwangNummer;
601
+ const dwangGewijzigd = ritdeel.beweging?.dwangNummer !== nieuwDwangNummer;
755
602
  let gewijzigd = false;
756
- if (ritdeel.beweging.wijzigStatus === this.NORMAAL) {
603
+ if (ritdeel.beweging?.wijzigStatus === this.NORMAAL) {
757
604
  const origineleBewegingActies = origineleBewegingenMap.get(ritdeel.beweging.id);
758
605
  const huidigeActies = this.createSortedActieIdList(ritdeel.acties);
759
606
  gewijzigd = JSON.stringify(huidigeActies) !== JSON.stringify(origineleBewegingActies);
@@ -777,7 +624,7 @@ class BewegingUtils {
777
624
  let naarSeinPplg;
778
625
  let naarSpoor = newRitdeel.getNaarPrlSpoor();
779
626
  if (eindSein.getTypeAlsString() === BewegingUtils.SEIN_TYPE_FICTIEF) {
780
- if (newRitdeel.heeftVrijebaanInfo()) {
627
+ if (newRitdeel.heeftVrijebaanInfo() && newRitdeel.getVrijebaanRijweg()) {
781
628
  const vbEindSein = newRitdeel.getVrijebaanRijweg().getEindSein();
782
629
  naarSeinNaam = vbEindSein.getName();
783
630
  naarSeinPplg = vbEindSein.getPPLG();
@@ -836,6 +683,8 @@ class ViewerControlService {
836
683
  this.printing$ = new BehaviorSubject(false);
837
684
  this.sideNavOpen = false;
838
685
  this.sideNavOpen$ = new BehaviorSubject(this.sideNavOpen);
686
+ this.selectieInfos = [];
687
+ this.origineelTreinPad = {};
839
688
  this.subscriptions.add(combineLatest([
840
689
  store.select('ritSelectieIds'),
841
690
  store.select('actieOpRitSelectieIds'),
@@ -855,19 +704,18 @@ class ViewerControlService {
855
704
  selectie.push(new SelectieInfo(eind, 'zigzagNaar'));
856
705
  this.selectieInfos = selectie;
857
706
  }));
858
- this.subscriptions.add(store.select('ritDelen').subscribe(ritdelen => this.ritdelen = ritdelen));
859
707
  }
860
708
  toggleSideNavVisible() {
861
709
  this.sideNavOpen = !this.sideNavOpen;
862
710
  this.sideNavOpen$.next(this.sideNavOpen);
863
711
  }
864
712
  keurAlleActiesGoed(ongeplandeActies) {
865
- if (this.ritdelen) {
713
+ this.store.select('ritDelen').pipe(take(1), filter(ritdelen => !!ritdelen), tap(ritdelen => {
866
714
  this.store.dispatch(ShowProgress());
867
- const bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(this.ritdelen, this.origineelTreinPad.bewegingen);
868
- const alleActies = this.verzamelAlleActies(this.ritdelen, ongeplandeActies);
715
+ const bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(ritdelen, this.origineelTreinPad.bewegingen);
716
+ const alleActies = this.verzamelAlleActies(ritdelen, ongeplandeActies);
869
717
  this.store.dispatch(KeurAlleActiesGoed(this.getBewegingenZonderActies(bewegingen), alleActies));
870
- }
718
+ })).subscribe();
871
719
  }
872
720
  setValideRit(valideRit) {
873
721
  this.valideRit$.next(valideRit);
@@ -889,7 +737,7 @@ class ViewerControlService {
889
737
  }
890
738
  setOrigineelTreinPad(treinpad) {
891
739
  const rit = JSON.parse(JSON.stringify(treinpad));
892
- this.store.dispatch(SetAlgemeneRitInfo(new AlgemeneRitInfoDto({
740
+ this.store.dispatch(SetAlgemeneRitInfo({
893
741
  id: rit.id,
894
742
  jaarplanId: rit.jaarplanId,
895
743
  volgnummer: rit.volgnummer,
@@ -905,7 +753,7 @@ class ViewerControlService {
905
753
  modified: rit.modified,
906
754
  modifiedBy: rit.modifiedBy,
907
755
  planJobId: rit.planJobId
908
- })));
756
+ }));
909
757
  this.origineelTreinPad = rit;
910
758
  }
911
759
  isValideRit$() {
@@ -933,10 +781,10 @@ class DebugService {
933
781
  setDebugFlag(debug) {
934
782
  this.store.dispatch(SetDebug(debug));
935
783
  if (debug) {
936
- document.getElementById('svgContainer').addEventListener('mouseover', this.listener);
784
+ document.getElementById('svgContainer')?.addEventListener('mouseover', this.listener);
937
785
  }
938
786
  else {
939
- document.getElementById('svgContainer').removeEventListener('mouseover', this.listener);
787
+ document.getElementById('svgContainer')?.removeEventListener('mouseover', this.listener);
940
788
  }
941
789
  }
942
790
  debugEventListener() {
@@ -982,229 +830,1605 @@ class PrintBewegingService {
982
830
  this.store = store;
983
831
  this.viewerControlService = viewerControlService;
984
832
  this.sbmService = sbmService;
985
- this.store.select(s => s.ritDelen).subscribe(ritdelen => this.ritdelen = ritdelen);
986
- }
987
- printBeweging(bewegingId, paginationSize, iaVersieInfo) {
988
- const gevondenRitdeel = this.ritdelen.filter(r => parseInt(r.getBewegingId(), 10) === bewegingId);
989
- // hide/show de knoppen
990
- const printing = !!bewegingId && gevondenRitdeel.length === 1;
991
- this.viewerControlService.setPrinting(printing);
992
- if (!printing) {
993
- return Promise.reject(new Error('Geen beweging gevonden voor ' + bewegingId));
994
- }
995
- return new Promise((resolve) => {
996
- const ritdeel = gevondenRitdeel[0];
997
- if (ritdeel.isNietBeschikbaar()) {
998
- this.store.dispatch(navigeerVanaf(paginationSize, iaVersieInfo, ritdeel));
999
- this.store.dispatch(ShowProgress());
1000
- setTimeout(() => this.focusOpBeweging(ritdeel, resolve), 1000);
833
+ }
834
+ printBeweging(bewegingId, paginationSize) {
835
+ return new Promise((resolve, reject) => {
836
+ this.store.select('ritDelen').pipe(take(1), tap(ritdelen => {
837
+ const gevondenRitdeel = ritdelen.filter(r => Number.parseInt(r.getBewegingId(), 10) === bewegingId);
838
+ // hide/show de knoppen
839
+ const printing = !!bewegingId && gevondenRitdeel.length === 1;
840
+ this.viewerControlService.setPrinting(printing);
841
+ if (!printing) {
842
+ reject(new Error('Geen beweging gevonden voor ' + bewegingId));
843
+ return;
844
+ }
845
+ const ritdeel = gevondenRitdeel[0];
846
+ if (ritdeel.isNietBeschikbaar()) {
847
+ this.store.dispatch(navigeerVanaf(paginationSize, ritdeel));
848
+ this.store.dispatch(ShowProgress());
849
+ setTimeout(() => this.focusOpBeweging(ritdeel, resolve), 1000);
850
+ }
851
+ else {
852
+ this.focusOpBeweging(ritdeel, resolve);
853
+ }
854
+ })).subscribe();
855
+ });
856
+ }
857
+ focusOpBeweging(ritdeel, resolve) {
858
+ // deselecteer alles
859
+ this.store.dispatch(setZichtbaarheidAlleRitdelen(false));
860
+ // enable ritacties (checkbox) voor alle ritdelen met beweging die matched met bewegingId(s)
861
+ this.store.dispatch(toggleZichtbaarheidVoorBewegingen([parseInt(ritdeel.getBewegingId(), 10)]));
862
+ setTimeout(() => {
863
+ // dit neemt niet de vrijebaan elementen mee
864
+ const topoElementen = this.sbmService.bepaalRouteElementen(ritdeel.getRoute());
865
+ const dwangPuics = this.getPuics(topoElementen);
866
+ this.store.dispatch(focusOpIds(dwangPuics));
867
+ setTimeout(() => {
868
+ // resolve de promise, om aan te geven dat focus klaar is
869
+ resolve(true);
870
+ this.viewerControlService.setPrinting(false);
871
+ this.store.dispatch(ClearProgress());
872
+ }, 1000);
873
+ });
874
+ }
875
+ getPuics(topoElementen) {
876
+ return topoElementen.map(e => e.getPuic());
877
+ }
878
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, deps: [{ token: i2$1.Store }, { token: ViewerControlService }, { token: SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
879
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, providedIn: 'root' }); }
880
+ }
881
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, decorators: [{
882
+ type: Injectable,
883
+ args: [{
884
+ providedIn: 'root'
885
+ }]
886
+ }], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: SignaleringsBeeldManagerService }] });
887
+
888
+ class RpeComponent {
889
+ constructor() {
890
+ this.baseurl = '';
891
+ this.path = '';
892
+ }
893
+ convertToScript() {
894
+ const element = this.script?.nativeElement;
895
+ const script = document.createElement('script');
896
+ script.type = 'text/javascript';
897
+ if (this.baseurl && this.path) {
898
+ script.src = this.baseurl + this.path;
899
+ // eslint-disable-next-line no-console
900
+ console.log('Code geladen van: ' + script.src); //useful for debugging in GWT environment
901
+ }
902
+ const parent = element.parentElement;
903
+ parent.parentElement.replaceChild(script, parent);
904
+ }
905
+ ngAfterViewInit() {
906
+ this.convertToScript();
907
+ }
908
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RpeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
909
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: RpeComponent, selector: "rpe-component", inputs: { baseurl: "baseurl", path: "path" }, viewQueries: [{ propertyName: "script", first: true, predicate: ["rpescript"], descendants: true }], ngImport: i0, template: "<div #rpescript style.display=\"none\">\n <ng-content></ng-content>\n</div>\n" }); }
910
+ }
911
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RpeComponent, decorators: [{
912
+ type: Component,
913
+ args: [{ selector: 'rpe-component', template: "<div #rpescript style.display=\"none\">\n <ng-content></ng-content>\n</div>\n" }]
914
+ }], propDecorators: { baseurl: [{
915
+ type: Input
916
+ }], path: [{
917
+ type: Input
918
+ }], script: [{
919
+ type: ViewChild,
920
+ args: ['rpescript']
921
+ }] } });
922
+
923
+ class OngeplandeActie {
924
+ constructor(actie, puics) {
925
+ this.actie = actie;
926
+ this.puics = puics;
927
+ }
928
+ }
929
+
930
+ class KmRange {
931
+ constructor(topologyElement, vanKilometreringen, totKilometreringen) {
932
+ this.topologyElement = topologyElement;
933
+ this.vanKilometreringen = vanKilometreringen;
934
+ this.totKilometreringen = totKilometreringen;
935
+ }
936
+ static rangeVoorPuntObject(topologyElement) {
937
+ return new KmRange(topologyElement, JsJavaUtil.listToArray(topologyElement.getKilometreringen()), JsJavaUtil.listToArray(topologyElement.getKilometreringen()));
938
+ }
939
+ static rangeVoorStrekObject(topologyElement, vanKilometreringen, totKilometreringen) {
940
+ return new KmRange(topologyElement, vanKilometreringen, totKilometreringen);
941
+ }
942
+ static getKilometrering(lintNaam, kilometreringen) {
943
+ const result = kilometreringen.filter(kilometrering => kilometrering.getKmLint() === lintNaam);
944
+ if (result.length >= 1) {
945
+ return result[0];
946
+ }
947
+ return undefined;
948
+ }
949
+ heeftOverlap(kilometrering1, kilometrering2) {
950
+ const vanKilometrering = KmRange.getKilometrering(kilometrering1.getKmLint(), this.vanKilometreringen);
951
+ const totKilometrering = KmRange.getKilometrering(kilometrering2.getKmLint(), this.totKilometreringen);
952
+ if (!vanKilometrering || !totKilometrering) {
953
+ return false;
954
+ }
955
+ let startKmWaarde = vanKilometrering.getKmWaarde();
956
+ let endKmWaarde = totKilometrering.getKmWaarde();
957
+ if (startKmWaarde > endKmWaarde) {
958
+ const temp = { end: endKmWaarde, start: startKmWaarde };
959
+ startKmWaarde = temp.end;
960
+ endKmWaarde = temp.start;
961
+ }
962
+ const actieStartKmWaarde = kilometrering1.getKmWaarde();
963
+ const actieEndKmWaarde = kilometrering2.getKmWaarde();
964
+ return endKmWaarde >= actieStartKmWaarde && actieEndKmWaarde >= startKmWaarde;
965
+ }
966
+ }
967
+
968
+ class WisselKantCode {
969
+ constructor(naam, kantCode) {
970
+ this.naam = naam;
971
+ this.kantCode = kantCode;
972
+ }
973
+ }
974
+
975
+ class MeldingEvent {
976
+ constructor(meldingMessage, meldingLevel) {
977
+ this.meldingMessage = meldingMessage;
978
+ this.meldingLevel = meldingLevel;
979
+ }
980
+ }
981
+
982
+ const MELDING_LEVEL_ERROR = 'error';
983
+ const MELDING_LEVEL_WARNING = 'warn';
984
+ const MELDING_LEVEL_INFO = 'info';
985
+ class MeldingBuilder {
986
+ static nietGevondenTakkenOngeplandeActies(nietGevondenTakken) {
987
+ return new MeldingEvent('Niet gevonden takken uit \'OngeplandeActies\': ' + nietGevondenTakken, MELDING_LEVEL_INFO);
988
+ }
989
+ static actieHighlightError(actieZonderElementen) {
990
+ return new MeldingEvent('Highlight error. Geen elementen kunnen vinden voor actie(s) met id: ' + actieZonderElementen, MELDING_LEVEL_ERROR);
991
+ }
992
+ }
993
+
994
+ class Utils {
995
+ static getValidErorrMessage(err) {
996
+ let errorMsg = '';
997
+ if (err.msg) {
998
+ errorMsg += err.msg;
999
+ }
1000
+ if (Array.isArray(err.body)) {
1001
+ err.body.forEach((x) => errorMsg += x);
1002
+ }
1003
+ else if (err.body) {
1004
+ if (err.body instanceof ProgressEvent) {
1005
+ errorMsg = 'Kon geen verbinding maken met de server';
1006
+ }
1007
+ else if (err.body.text) {
1008
+ errorMsg += err.body.text;
1009
+ }
1010
+ else {
1011
+ errorMsg += err.body;
1012
+ }
1013
+ }
1014
+ if (err.message) {
1015
+ errorMsg += err.message;
1016
+ }
1017
+ if (typeof err === 'string' || err instanceof String) {
1018
+ errorMsg += err;
1019
+ }
1020
+ if (errorMsg !== '') {
1021
+ return errorMsg;
1022
+ }
1023
+ else {
1024
+ return 'Er is een onbekende fout opgetreden';
1025
+ }
1026
+ }
1027
+ }
1028
+
1029
+ class MessageBuilder {
1030
+ static rwpDataNietGevonden(err) {
1031
+ return new Message(Severity.ERROR, 'Error bij ophalen van rijwegplan data: ' + err);
1032
+ }
1033
+ static rijwegNietGevonden(beweging) {
1034
+ return new Message(Severity.ERROR, `Rijweg van ${beweging.vanSpoor} in PPLG ${beweging.vanPplg} naar ${beweging.naarSpoor} niet gevonden`);
1035
+ }
1036
+ static rijwegplanNietGevonden(beweging) {
1037
+ return new Message(Severity.ERROR, `Rijwegplan van PPLG ${beweging.vanPplg} niet gevonden`);
1038
+ }
1039
+ static dwangNietGevonden(beweging) {
1040
+ return new Message(Severity.ERROR, `Dwang ${beweging.dwangNummer} voor rijweg van ${beweging.vanSpoor} in PPLG ${beweging.vanPplg} naar ${beweging.naarSpoor} niet gevonden`);
1041
+ }
1042
+ static nietGevondenSBI(err) {
1043
+ return new Message(Severity.ERROR, 'Error bij het ophalen van signaleringsbeeldinfo: ' + Utils.getValidErorrMessage(err));
1044
+ }
1045
+ static actieHighlightError(actieZonderElementen) {
1046
+ return new Message(Severity.ERROR, 'Highlight error. Geen elementen kunnen vinden voor actie(s) met id: ' + actieZonderElementen);
1047
+ }
1048
+ static ritFileAlGewijzigdError(beweging) {
1049
+ return new Message(Severity.ERROR, 'Rit bevat een beweging met status \'Gewijzigd\': Beweging met ID:' + beweging.id);
1050
+ }
1051
+ static meerDan12BladenGevonden(bladAmount) {
1052
+ return new Message(Severity.WARNING, 'Warning, Rit bevat ' + bladAmount + ' bladen. Er worden maximaal 12 bladen ondersteund.');
1053
+ }
1054
+ static nietGevondenTakkenOngeplandeActies(nietGevondenTakken) {
1055
+ return new Message(Severity.INFORMATION, 'Info, Niet gevonden takken uit \'OngeplandeActies\': ' + nietGevondenTakken);
1056
+ }
1057
+ }
1058
+
1059
+ /**
1060
+ * Custom HttpParameterCodec
1061
+ * Workaround for https://github.com/angular/angular/issues/18261
1062
+ */
1063
+ class CustomHttpParameterCodec {
1064
+ encodeKey(k) {
1065
+ return encodeURIComponent(k);
1066
+ }
1067
+ encodeValue(v) {
1068
+ return encodeURIComponent(v);
1069
+ }
1070
+ decodeKey(k) {
1071
+ return decodeURIComponent(k);
1072
+ }
1073
+ decodeValue(v) {
1074
+ return decodeURIComponent(v);
1075
+ }
1076
+ }
1077
+
1078
+ const BASE_PATH = new InjectionToken('basePath');
1079
+ const COLLECTION_FORMATS = {
1080
+ 'csv': ',',
1081
+ 'tsv': ' ',
1082
+ 'ssv': ' ',
1083
+ 'pipes': '|'
1084
+ };
1085
+
1086
+ class Configuration {
1087
+ constructor(configurationParameters = {}) {
1088
+ this.apiKeys = configurationParameters.apiKeys;
1089
+ this.username = configurationParameters.username;
1090
+ this.password = configurationParameters.password;
1091
+ this.accessToken = configurationParameters.accessToken;
1092
+ this.basePath = configurationParameters.basePath;
1093
+ this.withCredentials = configurationParameters.withCredentials;
1094
+ this.encoder = configurationParameters.encoder;
1095
+ if (configurationParameters.encodeParam) {
1096
+ this.encodeParam = configurationParameters.encodeParam;
1097
+ }
1098
+ else {
1099
+ this.encodeParam = param => this.defaultEncodeParam(param);
1100
+ }
1101
+ if (configurationParameters.credentials) {
1102
+ this.credentials = configurationParameters.credentials;
1103
+ }
1104
+ else {
1105
+ this.credentials = {};
1106
+ }
1107
+ // init default keycloak_auth credential
1108
+ if (!this.credentials['keycloak_auth']) {
1109
+ this.credentials['keycloak_auth'] = () => {
1110
+ return typeof this.accessToken === 'function'
1111
+ ? this.accessToken()
1112
+ : this.accessToken;
1113
+ };
1114
+ }
1115
+ }
1116
+ /**
1117
+ * Select the correct content-type to use for a request.
1118
+ * Uses {@link Configuration#isJsonMime} to determine the correct content-type.
1119
+ * If no content type is found return the first found type if the contentTypes is not empty
1120
+ * @param contentTypes - the array of content types that are available for selection
1121
+ * @returns the selected content-type or <code>undefined</code> if no selection could be made.
1122
+ */
1123
+ selectHeaderContentType(contentTypes) {
1124
+ if (contentTypes.length === 0) {
1125
+ return undefined;
1126
+ }
1127
+ const type = contentTypes.find((x) => this.isJsonMime(x));
1128
+ if (type === undefined) {
1129
+ return contentTypes[0];
1130
+ }
1131
+ return type;
1132
+ }
1133
+ /**
1134
+ * Select the correct accept content-type to use for a request.
1135
+ * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.
1136
+ * If no content type is found return the first found type if the contentTypes is not empty
1137
+ * @param accepts - the array of content types that are available for selection.
1138
+ * @returns the selected content-type or <code>undefined</code> if no selection could be made.
1139
+ */
1140
+ selectHeaderAccept(accepts) {
1141
+ if (accepts.length === 0) {
1142
+ return undefined;
1143
+ }
1144
+ const type = accepts.find((x) => this.isJsonMime(x));
1145
+ if (type === undefined) {
1146
+ return accepts[0];
1147
+ }
1148
+ return type;
1149
+ }
1150
+ /**
1151
+ * Check if the given MIME is a JSON MIME.
1152
+ * JSON MIME examples:
1153
+ * application/json
1154
+ * application/json; charset=UTF8
1155
+ * APPLICATION/JSON
1156
+ * application/vnd.company+json
1157
+ * @param mime - MIME (Multipurpose Internet Mail Extensions)
1158
+ * @return True if the given MIME is JSON, false otherwise.
1159
+ */
1160
+ isJsonMime(mime) {
1161
+ const jsonMime = new RegExp('^(application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(;.*)?$', 'i');
1162
+ return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');
1163
+ }
1164
+ lookupCredential(key) {
1165
+ const value = this.credentials[key];
1166
+ return typeof value === 'function'
1167
+ ? value()
1168
+ : value;
1169
+ }
1170
+ defaultEncodeParam(param) {
1171
+ // This implementation exists as fallback for missing configuration
1172
+ // and for backwards compatibility to older typescript-angular generator versions.
1173
+ // It only works for the 'simple' parameter style.
1174
+ // Date-handling only works for the 'date-time' format.
1175
+ // All other styles and Date-formats are probably handled incorrectly.
1176
+ //
1177
+ // But: if that's all you need (i.e.: the most common use-case): no need for customization!
1178
+ const value = param.dataFormat === 'date-time' && param.value instanceof Date
1179
+ ? param.value.toISOString()
1180
+ : param.value;
1181
+ return encodeURIComponent(String(value));
1182
+ }
1183
+ }
1184
+
1185
+ /**
1186
+ * MST
1187
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1188
+ *
1189
+ * The version of the OpenAPI document: 1
1190
+ *
1191
+ *
1192
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1193
+ * https://openapi-generator.tech
1194
+ * Do not edit the class manually.
1195
+ */
1196
+ /* tslint:disable:no-unused-variable member-ordering */
1197
+ class AppConfigControllerService {
1198
+ constructor(httpClient, basePath, configuration) {
1199
+ this.httpClient = httpClient;
1200
+ this.basePath = 'http://localhost:8080/mst';
1201
+ this.defaultHeaders = new HttpHeaders();
1202
+ this.configuration = new Configuration();
1203
+ if (configuration) {
1204
+ this.configuration = configuration;
1205
+ }
1206
+ if (typeof this.configuration.basePath !== 'string') {
1207
+ if (Array.isArray(basePath) && basePath.length > 0) {
1208
+ basePath = basePath[0];
1209
+ }
1210
+ if (typeof basePath !== 'string') {
1211
+ basePath = this.basePath;
1212
+ }
1213
+ this.configuration.basePath = basePath;
1214
+ }
1215
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
1216
+ }
1217
+ // @ts-ignore
1218
+ addToHttpParams(httpParams, value, key) {
1219
+ if (typeof value === "object" && value instanceof Date === false) {
1220
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
1221
+ }
1222
+ else {
1223
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
1224
+ }
1225
+ return httpParams;
1226
+ }
1227
+ addToHttpParamsRecursive(httpParams, value, key) {
1228
+ if (value == null) {
1229
+ return httpParams;
1230
+ }
1231
+ if (typeof value === "object") {
1232
+ if (Array.isArray(value)) {
1233
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
1234
+ }
1235
+ else if (value instanceof Date) {
1236
+ if (key != null) {
1237
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
1238
+ }
1239
+ else {
1240
+ throw Error("key may not be null if value is Date");
1241
+ }
1242
+ }
1243
+ else {
1244
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
1245
+ }
1246
+ }
1247
+ else if (key != null) {
1248
+ httpParams = httpParams.append(key, value);
1249
+ }
1250
+ else {
1251
+ throw Error("key may not be null if value is not object or array");
1252
+ }
1253
+ return httpParams;
1254
+ }
1255
+ getAppConfig(observe = 'body', reportProgress = false, options) {
1256
+ let localVarHeaders = this.defaultHeaders;
1257
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
1258
+ if (localVarHttpHeaderAcceptSelected === undefined) {
1259
+ // to determine the Accept header
1260
+ const httpHeaderAccepts = [
1261
+ '*/*'
1262
+ ];
1263
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
1264
+ }
1265
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1266
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1267
+ }
1268
+ let localVarHttpContext = options && options.context;
1269
+ if (localVarHttpContext === undefined) {
1270
+ localVarHttpContext = new HttpContext();
1271
+ }
1272
+ let localVarTransferCache = options && options.transferCache;
1273
+ if (localVarTransferCache === undefined) {
1274
+ localVarTransferCache = true;
1275
+ }
1276
+ let responseType_ = 'json';
1277
+ if (localVarHttpHeaderAcceptSelected) {
1278
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
1279
+ responseType_ = 'text';
1280
+ }
1281
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
1282
+ responseType_ = 'json';
1283
+ }
1284
+ else {
1285
+ responseType_ = 'blob';
1286
+ }
1287
+ }
1288
+ let localVarPath = `/rest/appconfig`;
1289
+ return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, {
1290
+ context: localVarHttpContext,
1291
+ responseType: responseType_,
1292
+ withCredentials: this.configuration.withCredentials,
1293
+ headers: localVarHeaders,
1294
+ observe: observe,
1295
+ transferCache: localVarTransferCache,
1296
+ reportProgress: reportProgress
1297
+ });
1298
+ }
1299
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AppConfigControllerService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1300
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AppConfigControllerService, providedIn: 'root' }); }
1301
+ }
1302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AppConfigControllerService, decorators: [{
1303
+ type: Injectable,
1304
+ args: [{
1305
+ providedIn: 'root'
1306
+ }]
1307
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
1308
+ type: Optional
1309
+ }, {
1310
+ type: Inject,
1311
+ args: [BASE_PATH]
1312
+ }] }, { type: Configuration, decorators: [{
1313
+ type: Optional
1314
+ }] }] });
1315
+
1316
+ /**
1317
+ * MST
1318
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1319
+ *
1320
+ * The version of the OpenAPI document: 1
1321
+ *
1322
+ *
1323
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1324
+ * https://openapi-generator.tech
1325
+ * Do not edit the class manually.
1326
+ */
1327
+ /* tslint:disable:no-unused-variable member-ordering */
1328
+ class BewegingControllerService {
1329
+ constructor(httpClient, basePath, configuration) {
1330
+ this.httpClient = httpClient;
1331
+ this.basePath = 'http://localhost:8080/mst';
1332
+ this.defaultHeaders = new HttpHeaders();
1333
+ this.configuration = new Configuration();
1334
+ if (configuration) {
1335
+ this.configuration = configuration;
1336
+ }
1337
+ if (typeof this.configuration.basePath !== 'string') {
1338
+ if (Array.isArray(basePath) && basePath.length > 0) {
1339
+ basePath = basePath[0];
1340
+ }
1341
+ if (typeof basePath !== 'string') {
1342
+ basePath = this.basePath;
1343
+ }
1344
+ this.configuration.basePath = basePath;
1345
+ }
1346
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
1347
+ }
1348
+ // @ts-ignore
1349
+ addToHttpParams(httpParams, value, key) {
1350
+ if (typeof value === "object" && value instanceof Date === false) {
1351
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
1352
+ }
1353
+ else {
1354
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
1355
+ }
1356
+ return httpParams;
1357
+ }
1358
+ addToHttpParamsRecursive(httpParams, value, key) {
1359
+ if (value == null) {
1360
+ return httpParams;
1361
+ }
1362
+ if (typeof value === "object") {
1363
+ if (Array.isArray(value)) {
1364
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
1365
+ }
1366
+ else if (value instanceof Date) {
1367
+ if (key != null) {
1368
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
1369
+ }
1370
+ else {
1371
+ throw Error("key may not be null if value is Date");
1372
+ }
1373
+ }
1374
+ else {
1375
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
1376
+ }
1377
+ }
1378
+ else if (key != null) {
1379
+ httpParams = httpParams.append(key, value);
1380
+ }
1381
+ else {
1382
+ throw Error("key may not be null if value is not object or array");
1383
+ }
1384
+ return httpParams;
1385
+ }
1386
+ verrijkBewegingenMetOngeplandeActies(iaVersie, ritRequestDto, observe = 'body', reportProgress = false, options) {
1387
+ if (iaVersie === null || iaVersie === undefined) {
1388
+ throw new Error('Required parameter iaVersie was null or undefined when calling verrijkBewegingenMetOngeplandeActies.');
1389
+ }
1390
+ if (ritRequestDto === null || ritRequestDto === undefined) {
1391
+ throw new Error('Required parameter ritRequestDto was null or undefined when calling verrijkBewegingenMetOngeplandeActies.');
1392
+ }
1393
+ let localVarHeaders = this.defaultHeaders;
1394
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
1395
+ if (localVarHttpHeaderAcceptSelected === undefined) {
1396
+ // to determine the Accept header
1397
+ const httpHeaderAccepts = [
1398
+ '*/*'
1399
+ ];
1400
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
1401
+ }
1402
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1403
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1404
+ }
1405
+ let localVarHttpContext = options && options.context;
1406
+ if (localVarHttpContext === undefined) {
1407
+ localVarHttpContext = new HttpContext();
1408
+ }
1409
+ let localVarTransferCache = options && options.transferCache;
1410
+ if (localVarTransferCache === undefined) {
1411
+ localVarTransferCache = true;
1412
+ }
1413
+ // to determine the Content-Type header
1414
+ const consumes = [
1415
+ 'application/json'
1416
+ ];
1417
+ const httpContentTypeSelected = this.configuration.selectHeaderContentType(consumes);
1418
+ if (httpContentTypeSelected !== undefined) {
1419
+ localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);
1420
+ }
1421
+ let responseType_ = 'json';
1422
+ if (localVarHttpHeaderAcceptSelected) {
1423
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
1424
+ responseType_ = 'text';
1425
+ }
1426
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
1427
+ responseType_ = 'json';
1428
+ }
1429
+ else {
1430
+ responseType_ = 'blob';
1431
+ }
1432
+ }
1433
+ let localVarPath = `/rest/beweging/${this.configuration.encodeParam({ name: "iaVersie", value: iaVersie, in: "path", style: "simple", explode: false, dataType: "string", dataFormat: undefined })}`;
1434
+ return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`, {
1435
+ context: localVarHttpContext,
1436
+ body: ritRequestDto,
1437
+ responseType: responseType_,
1438
+ withCredentials: this.configuration.withCredentials,
1439
+ headers: localVarHeaders,
1440
+ observe: observe,
1441
+ transferCache: localVarTransferCache,
1442
+ reportProgress: reportProgress
1443
+ });
1444
+ }
1445
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingControllerService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1446
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingControllerService, providedIn: 'root' }); }
1447
+ }
1448
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingControllerService, decorators: [{
1449
+ type: Injectable,
1450
+ args: [{
1451
+ providedIn: 'root'
1452
+ }]
1453
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
1454
+ type: Optional
1455
+ }, {
1456
+ type: Inject,
1457
+ args: [BASE_PATH]
1458
+ }] }, { type: Configuration, decorators: [{
1459
+ type: Optional
1460
+ }] }] });
1461
+
1462
+ /**
1463
+ * MST
1464
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1465
+ *
1466
+ * The version of the OpenAPI document: 1
1467
+ *
1468
+ *
1469
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1470
+ * https://openapi-generator.tech
1471
+ * Do not edit the class manually.
1472
+ */
1473
+ /* tslint:disable:no-unused-variable member-ordering */
1474
+ class Class0BuildPropertiesService {
1475
+ constructor(httpClient, basePath, configuration) {
1476
+ this.httpClient = httpClient;
1477
+ this.basePath = 'http://localhost:8080/mst';
1478
+ this.defaultHeaders = new HttpHeaders();
1479
+ this.configuration = new Configuration();
1480
+ if (configuration) {
1481
+ this.configuration = configuration;
1482
+ }
1483
+ if (typeof this.configuration.basePath !== 'string') {
1484
+ if (Array.isArray(basePath) && basePath.length > 0) {
1485
+ basePath = basePath[0];
1486
+ }
1487
+ if (typeof basePath !== 'string') {
1488
+ basePath = this.basePath;
1489
+ }
1490
+ this.configuration.basePath = basePath;
1491
+ }
1492
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
1493
+ }
1494
+ // @ts-ignore
1495
+ addToHttpParams(httpParams, value, key) {
1496
+ if (typeof value === "object" && value instanceof Date === false) {
1497
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
1498
+ }
1499
+ else {
1500
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
1501
+ }
1502
+ return httpParams;
1503
+ }
1504
+ addToHttpParamsRecursive(httpParams, value, key) {
1505
+ if (value == null) {
1506
+ return httpParams;
1507
+ }
1508
+ if (typeof value === "object") {
1509
+ if (Array.isArray(value)) {
1510
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
1511
+ }
1512
+ else if (value instanceof Date) {
1513
+ if (key != null) {
1514
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
1515
+ }
1516
+ else {
1517
+ throw Error("key may not be null if value is Date");
1518
+ }
1519
+ }
1520
+ else {
1521
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
1522
+ }
1523
+ }
1524
+ else if (key != null) {
1525
+ httpParams = httpParams.append(key, value);
1526
+ }
1527
+ else {
1528
+ throw Error("key may not be null if value is not object or array");
1529
+ }
1530
+ return httpParams;
1531
+ }
1532
+ getBuildProperties(observe = 'body', reportProgress = false, options) {
1533
+ let localVarHeaders = this.defaultHeaders;
1534
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
1535
+ if (localVarHttpHeaderAcceptSelected === undefined) {
1536
+ // to determine the Accept header
1537
+ const httpHeaderAccepts = [
1538
+ 'application/json'
1539
+ ];
1540
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
1541
+ }
1542
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1543
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1544
+ }
1545
+ let localVarHttpContext = options && options.context;
1546
+ if (localVarHttpContext === undefined) {
1547
+ localVarHttpContext = new HttpContext();
1548
+ }
1549
+ let localVarTransferCache = options && options.transferCache;
1550
+ if (localVarTransferCache === undefined) {
1551
+ localVarTransferCache = true;
1552
+ }
1553
+ let responseType_ = 'json';
1554
+ if (localVarHttpHeaderAcceptSelected) {
1555
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
1556
+ responseType_ = 'text';
1557
+ }
1558
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
1559
+ responseType_ = 'json';
1560
+ }
1561
+ else {
1562
+ responseType_ = 'blob';
1563
+ }
1564
+ }
1565
+ let localVarPath = `/build.properties`;
1566
+ return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, {
1567
+ context: localVarHttpContext,
1568
+ responseType: responseType_,
1569
+ withCredentials: this.configuration.withCredentials,
1570
+ headers: localVarHeaders,
1571
+ observe: observe,
1572
+ transferCache: localVarTransferCache,
1573
+ reportProgress: reportProgress
1574
+ });
1575
+ }
1576
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Class0BuildPropertiesService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1577
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Class0BuildPropertiesService, providedIn: 'root' }); }
1578
+ }
1579
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Class0BuildPropertiesService, decorators: [{
1580
+ type: Injectable,
1581
+ args: [{
1582
+ providedIn: 'root'
1583
+ }]
1584
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
1585
+ type: Optional
1586
+ }, {
1587
+ type: Inject,
1588
+ args: [BASE_PATH]
1589
+ }] }, { type: Configuration, decorators: [{
1590
+ type: Optional
1591
+ }] }] });
1592
+
1593
+ /**
1594
+ * MST
1595
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1596
+ *
1597
+ * The version of the OpenAPI document: 1
1598
+ *
1599
+ *
1600
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1601
+ * https://openapi-generator.tech
1602
+ * Do not edit the class manually.
1603
+ */
1604
+ /* tslint:disable:no-unused-variable member-ordering */
1605
+ class ConnectorControllerService {
1606
+ constructor(httpClient, basePath, configuration) {
1607
+ this.httpClient = httpClient;
1608
+ this.basePath = 'http://localhost:8080/mst';
1609
+ this.defaultHeaders = new HttpHeaders();
1610
+ this.configuration = new Configuration();
1611
+ if (configuration) {
1612
+ this.configuration = configuration;
1613
+ }
1614
+ if (typeof this.configuration.basePath !== 'string') {
1615
+ if (Array.isArray(basePath) && basePath.length > 0) {
1616
+ basePath = basePath[0];
1617
+ }
1618
+ if (typeof basePath !== 'string') {
1619
+ basePath = this.basePath;
1620
+ }
1621
+ this.configuration.basePath = basePath;
1622
+ }
1623
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
1624
+ }
1625
+ // @ts-ignore
1626
+ addToHttpParams(httpParams, value, key) {
1627
+ if (typeof value === "object" && value instanceof Date === false) {
1628
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
1629
+ }
1630
+ else {
1631
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
1632
+ }
1633
+ return httpParams;
1634
+ }
1635
+ addToHttpParamsRecursive(httpParams, value, key) {
1636
+ if (value == null) {
1637
+ return httpParams;
1638
+ }
1639
+ if (typeof value === "object") {
1640
+ if (Array.isArray(value)) {
1641
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
1642
+ }
1643
+ else if (value instanceof Date) {
1644
+ if (key != null) {
1645
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
1646
+ }
1647
+ else {
1648
+ throw Error("key may not be null if value is Date");
1649
+ }
1650
+ }
1651
+ else {
1652
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
1653
+ }
1654
+ }
1655
+ else if (key != null) {
1656
+ httpParams = httpParams.append(key, value);
1657
+ }
1658
+ else {
1659
+ throw Error("key may not be null if value is not object or array");
1660
+ }
1661
+ return httpParams;
1662
+ }
1663
+ getOtherConnector(iaVersie, connectorPuic, observe = 'body', reportProgress = false, options) {
1664
+ if (iaVersie === null || iaVersie === undefined) {
1665
+ throw new Error('Required parameter iaVersie was null or undefined when calling getOtherConnector.');
1666
+ }
1667
+ if (connectorPuic === null || connectorPuic === undefined) {
1668
+ throw new Error('Required parameter connectorPuic was null or undefined when calling getOtherConnector.');
1669
+ }
1670
+ let localVarHeaders = this.defaultHeaders;
1671
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
1672
+ if (localVarHttpHeaderAcceptSelected === undefined) {
1673
+ // to determine the Accept header
1674
+ const httpHeaderAccepts = [
1675
+ '*/*'
1676
+ ];
1677
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
1678
+ }
1679
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1680
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1681
+ }
1682
+ let localVarHttpContext = options && options.context;
1683
+ if (localVarHttpContext === undefined) {
1684
+ localVarHttpContext = new HttpContext();
1685
+ }
1686
+ let localVarTransferCache = options && options.transferCache;
1687
+ if (localVarTransferCache === undefined) {
1688
+ localVarTransferCache = true;
1689
+ }
1690
+ let responseType_ = 'json';
1691
+ if (localVarHttpHeaderAcceptSelected) {
1692
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
1693
+ responseType_ = 'text';
1694
+ }
1695
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
1696
+ responseType_ = 'json';
1697
+ }
1698
+ else {
1699
+ responseType_ = 'blob';
1700
+ }
1701
+ }
1702
+ let localVarPath = `/rest/connector/${this.configuration.encodeParam({ name: "iaVersie", value: iaVersie, in: "path", style: "simple", explode: false, dataType: "string", dataFormat: undefined })}/${this.configuration.encodeParam({ name: "connectorPuic", value: connectorPuic, in: "path", style: "simple", explode: false, dataType: "string", dataFormat: undefined })}`;
1703
+ return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, {
1704
+ context: localVarHttpContext,
1705
+ responseType: responseType_,
1706
+ withCredentials: this.configuration.withCredentials,
1707
+ headers: localVarHeaders,
1708
+ observe: observe,
1709
+ transferCache: localVarTransferCache,
1710
+ reportProgress: reportProgress
1711
+ });
1712
+ }
1713
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorControllerService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1714
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorControllerService, providedIn: 'root' }); }
1715
+ }
1716
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorControllerService, decorators: [{
1717
+ type: Injectable,
1718
+ args: [{
1719
+ providedIn: 'root'
1720
+ }]
1721
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
1722
+ type: Optional
1723
+ }, {
1724
+ type: Inject,
1725
+ args: [BASE_PATH]
1726
+ }] }, { type: Configuration, decorators: [{
1727
+ type: Optional
1728
+ }] }] });
1729
+
1730
+ /**
1731
+ * MST
1732
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1733
+ *
1734
+ * The version of the OpenAPI document: 1
1735
+ *
1736
+ *
1737
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1738
+ * https://openapi-generator.tech
1739
+ * Do not edit the class manually.
1740
+ */
1741
+ /* tslint:disable:no-unused-variable member-ordering */
1742
+ class LogControllerService {
1743
+ constructor(httpClient, basePath, configuration) {
1744
+ this.httpClient = httpClient;
1745
+ this.basePath = 'http://localhost:8080/mst';
1746
+ this.defaultHeaders = new HttpHeaders();
1747
+ this.configuration = new Configuration();
1748
+ if (configuration) {
1749
+ this.configuration = configuration;
1750
+ }
1751
+ if (typeof this.configuration.basePath !== 'string') {
1752
+ if (Array.isArray(basePath) && basePath.length > 0) {
1753
+ basePath = basePath[0];
1754
+ }
1755
+ if (typeof basePath !== 'string') {
1756
+ basePath = this.basePath;
1757
+ }
1758
+ this.configuration.basePath = basePath;
1759
+ }
1760
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
1761
+ }
1762
+ // @ts-ignore
1763
+ addToHttpParams(httpParams, value, key) {
1764
+ if (typeof value === "object" && value instanceof Date === false) {
1765
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
1766
+ }
1767
+ else {
1768
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
1769
+ }
1770
+ return httpParams;
1771
+ }
1772
+ addToHttpParamsRecursive(httpParams, value, key) {
1773
+ if (value == null) {
1774
+ return httpParams;
1775
+ }
1776
+ if (typeof value === "object") {
1777
+ if (Array.isArray(value)) {
1778
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
1779
+ }
1780
+ else if (value instanceof Date) {
1781
+ if (key != null) {
1782
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
1783
+ }
1784
+ else {
1785
+ throw Error("key may not be null if value is Date");
1786
+ }
1787
+ }
1788
+ else {
1789
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
1790
+ }
1791
+ }
1792
+ else if (key != null) {
1793
+ httpParams = httpParams.append(key, value);
1794
+ }
1795
+ else {
1796
+ throw Error("key may not be null if value is not object or array");
1797
+ }
1798
+ return httpParams;
1799
+ }
1800
+ log(logDto, observe = 'body', reportProgress = false, options) {
1801
+ if (logDto === null || logDto === undefined) {
1802
+ throw new Error('Required parameter logDto was null or undefined when calling log.');
1803
+ }
1804
+ let localVarHeaders = this.defaultHeaders;
1805
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
1806
+ if (localVarHttpHeaderAcceptSelected === undefined) {
1807
+ // to determine the Accept header
1808
+ const httpHeaderAccepts = [];
1809
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
1810
+ }
1811
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1812
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1813
+ }
1814
+ let localVarHttpContext = options && options.context;
1815
+ if (localVarHttpContext === undefined) {
1816
+ localVarHttpContext = new HttpContext();
1817
+ }
1818
+ let localVarTransferCache = options && options.transferCache;
1819
+ if (localVarTransferCache === undefined) {
1820
+ localVarTransferCache = true;
1821
+ }
1822
+ // to determine the Content-Type header
1823
+ const consumes = [
1824
+ 'application/json'
1825
+ ];
1826
+ const httpContentTypeSelected = this.configuration.selectHeaderContentType(consumes);
1827
+ if (httpContentTypeSelected !== undefined) {
1828
+ localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);
1829
+ }
1830
+ let responseType_ = 'json';
1831
+ if (localVarHttpHeaderAcceptSelected) {
1832
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
1833
+ responseType_ = 'text';
1834
+ }
1835
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
1836
+ responseType_ = 'json';
1837
+ }
1838
+ else {
1839
+ responseType_ = 'blob';
1840
+ }
1841
+ }
1842
+ let localVarPath = `/rest/logging/`;
1843
+ return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, {
1844
+ context: localVarHttpContext,
1845
+ body: logDto,
1846
+ responseType: responseType_,
1847
+ withCredentials: this.configuration.withCredentials,
1848
+ headers: localVarHeaders,
1849
+ observe: observe,
1850
+ transferCache: localVarTransferCache,
1851
+ reportProgress: reportProgress
1852
+ });
1853
+ }
1854
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LogControllerService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1855
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LogControllerService, providedIn: 'root' }); }
1856
+ }
1857
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LogControllerService, decorators: [{
1858
+ type: Injectable,
1859
+ args: [{
1860
+ providedIn: 'root'
1861
+ }]
1862
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
1863
+ type: Optional
1864
+ }, {
1865
+ type: Inject,
1866
+ args: [BASE_PATH]
1867
+ }] }, { type: Configuration, decorators: [{
1868
+ type: Optional
1869
+ }] }] });
1870
+
1871
+ /**
1872
+ * MST
1873
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1874
+ *
1875
+ * The version of the OpenAPI document: 1
1876
+ *
1877
+ *
1878
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1879
+ * https://openapi-generator.tech
1880
+ * Do not edit the class manually.
1881
+ */
1882
+ /* tslint:disable:no-unused-variable member-ordering */
1883
+ class P21ControllerService {
1884
+ constructor(httpClient, basePath, configuration) {
1885
+ this.httpClient = httpClient;
1886
+ this.basePath = 'http://localhost:8080/mst';
1887
+ this.defaultHeaders = new HttpHeaders();
1888
+ this.configuration = new Configuration();
1889
+ if (configuration) {
1890
+ this.configuration = configuration;
1891
+ }
1892
+ if (typeof this.configuration.basePath !== 'string') {
1893
+ if (Array.isArray(basePath) && basePath.length > 0) {
1894
+ basePath = basePath[0];
1895
+ }
1896
+ if (typeof basePath !== 'string') {
1897
+ basePath = this.basePath;
1898
+ }
1899
+ this.configuration.basePath = basePath;
1900
+ }
1901
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
1902
+ }
1903
+ /**
1904
+ * @param consumes string[] mime-types
1905
+ * @return true: consumes contains 'multipart/form-data', false: otherwise
1906
+ */
1907
+ canConsumeForm(consumes) {
1908
+ const form = 'multipart/form-data';
1909
+ for (const consume of consumes) {
1910
+ if (form === consume) {
1911
+ return true;
1912
+ }
1913
+ }
1914
+ return false;
1915
+ }
1916
+ // @ts-ignore
1917
+ addToHttpParams(httpParams, value, key) {
1918
+ if (typeof value === "object" && value instanceof Date === false) {
1919
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
1920
+ }
1921
+ else {
1922
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
1923
+ }
1924
+ return httpParams;
1925
+ }
1926
+ addToHttpParamsRecursive(httpParams, value, key) {
1927
+ if (value == null) {
1928
+ return httpParams;
1929
+ }
1930
+ if (typeof value === "object") {
1931
+ if (Array.isArray(value)) {
1932
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
1933
+ }
1934
+ else if (value instanceof Date) {
1935
+ if (key != null) {
1936
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
1937
+ }
1938
+ else {
1939
+ throw Error("key may not be null if value is Date");
1940
+ }
1941
+ }
1942
+ else {
1943
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
1944
+ }
1945
+ }
1946
+ else if (key != null) {
1947
+ httpParams = httpParams.append(key, value);
1948
+ }
1949
+ else {
1950
+ throw Error("key may not be null if value is not object or array");
1951
+ }
1952
+ return httpParams;
1953
+ }
1954
+ createP21Levering(p21Levering, update, observe = 'body', reportProgress = false, options) {
1955
+ if (p21Levering === null || p21Levering === undefined) {
1956
+ throw new Error('Required parameter p21Levering was null or undefined when calling createP21Levering.');
1957
+ }
1958
+ let localVarHeaders = this.defaultHeaders;
1959
+ let localVarCredential;
1960
+ // authentication (keycloak_auth) required
1961
+ localVarCredential = this.configuration.lookupCredential('keycloak_auth');
1962
+ if (localVarCredential) {
1963
+ localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);
1964
+ }
1965
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
1966
+ if (localVarHttpHeaderAcceptSelected === undefined) {
1967
+ // to determine the Accept header
1968
+ const httpHeaderAccepts = [
1969
+ '*/*'
1970
+ ];
1971
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
1972
+ }
1973
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1974
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1975
+ }
1976
+ let localVarHttpContext = options && options.context;
1977
+ if (localVarHttpContext === undefined) {
1978
+ localVarHttpContext = new HttpContext();
1979
+ }
1980
+ let localVarTransferCache = options && options.transferCache;
1981
+ if (localVarTransferCache === undefined) {
1982
+ localVarTransferCache = true;
1983
+ }
1984
+ // to determine the Content-Type header
1985
+ const consumes = [
1986
+ 'multipart/form-data'
1987
+ ];
1988
+ const canConsumeForm = this.canConsumeForm(consumes);
1989
+ let localVarFormParams;
1990
+ let localVarUseForm = false;
1991
+ let localVarConvertFormParamsToString = false;
1992
+ // use FormData to transmit files using content-type "multipart/form-data"
1993
+ // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data
1994
+ localVarUseForm = canConsumeForm;
1995
+ if (localVarUseForm) {
1996
+ localVarFormParams = new FormData();
1997
+ }
1998
+ else {
1999
+ localVarFormParams = new HttpParams({ encoder: this.encoder });
2000
+ }
2001
+ if (update !== undefined) {
2002
+ localVarFormParams = localVarFormParams.append('update', update) || localVarFormParams;
2003
+ }
2004
+ if (p21Levering !== undefined) {
2005
+ localVarFormParams = localVarFormParams.append('p21Levering', p21Levering) || localVarFormParams;
2006
+ }
2007
+ let responseType_ = 'json';
2008
+ if (localVarHttpHeaderAcceptSelected) {
2009
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
2010
+ responseType_ = 'text';
2011
+ }
2012
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
2013
+ responseType_ = 'json';
2014
+ }
2015
+ else {
2016
+ responseType_ = 'blob';
2017
+ }
2018
+ }
2019
+ let localVarPath = `/services/secure/rest/backend/uploadversie`;
2020
+ return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, {
2021
+ context: localVarHttpContext,
2022
+ body: localVarConvertFormParamsToString ? localVarFormParams.toString() : localVarFormParams,
2023
+ responseType: responseType_,
2024
+ withCredentials: this.configuration.withCredentials,
2025
+ headers: localVarHeaders,
2026
+ observe: observe,
2027
+ transferCache: localVarTransferCache,
2028
+ reportProgress: reportProgress
2029
+ });
2030
+ }
2031
+ getVersies(observe = 'body', reportProgress = false, options) {
2032
+ let localVarHeaders = this.defaultHeaders;
2033
+ let localVarCredential;
2034
+ // authentication (keycloak_auth) required
2035
+ localVarCredential = this.configuration.lookupCredential('keycloak_auth');
2036
+ if (localVarCredential) {
2037
+ localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);
2038
+ }
2039
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
2040
+ if (localVarHttpHeaderAcceptSelected === undefined) {
2041
+ // to determine the Accept header
2042
+ const httpHeaderAccepts = [
2043
+ 'application/json'
2044
+ ];
2045
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
2046
+ }
2047
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
2048
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
2049
+ }
2050
+ let localVarHttpContext = options && options.context;
2051
+ if (localVarHttpContext === undefined) {
2052
+ localVarHttpContext = new HttpContext();
2053
+ }
2054
+ let localVarTransferCache = options && options.transferCache;
2055
+ if (localVarTransferCache === undefined) {
2056
+ localVarTransferCache = true;
2057
+ }
2058
+ let responseType_ = 'json';
2059
+ if (localVarHttpHeaderAcceptSelected) {
2060
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
2061
+ responseType_ = 'text';
2062
+ }
2063
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
2064
+ responseType_ = 'json';
2065
+ }
2066
+ else {
2067
+ responseType_ = 'blob';
2068
+ }
2069
+ }
2070
+ let localVarPath = `/services/secure/rest/backend/versies`;
2071
+ return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, {
2072
+ context: localVarHttpContext,
2073
+ responseType: responseType_,
2074
+ withCredentials: this.configuration.withCredentials,
2075
+ headers: localVarHeaders,
2076
+ observe: observe,
2077
+ transferCache: localVarTransferCache,
2078
+ reportProgress: reportProgress
2079
+ });
2080
+ }
2081
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: P21ControllerService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
2082
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: P21ControllerService, providedIn: 'root' }); }
2083
+ }
2084
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: P21ControllerService, decorators: [{
2085
+ type: Injectable,
2086
+ args: [{
2087
+ providedIn: 'root'
2088
+ }]
2089
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
2090
+ type: Optional
2091
+ }, {
2092
+ type: Inject,
2093
+ args: [BASE_PATH]
2094
+ }] }, { type: Configuration, decorators: [{
2095
+ type: Optional
2096
+ }] }] });
2097
+
2098
+ /**
2099
+ * MST
2100
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2101
+ *
2102
+ * The version of the OpenAPI document: 1
2103
+ *
2104
+ *
2105
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2106
+ * https://openapi-generator.tech
2107
+ * Do not edit the class manually.
2108
+ */
2109
+ /* tslint:disable:no-unused-variable member-ordering */
2110
+ class SbControllerService {
2111
+ constructor(httpClient, basePath, configuration) {
2112
+ this.httpClient = httpClient;
2113
+ this.basePath = 'http://localhost:8080/mst';
2114
+ this.defaultHeaders = new HttpHeaders();
2115
+ this.configuration = new Configuration();
2116
+ if (configuration) {
2117
+ this.configuration = configuration;
2118
+ }
2119
+ if (typeof this.configuration.basePath !== 'string') {
2120
+ if (Array.isArray(basePath) && basePath.length > 0) {
2121
+ basePath = basePath[0];
2122
+ }
2123
+ if (typeof basePath !== 'string') {
2124
+ basePath = this.basePath;
2125
+ }
2126
+ this.configuration.basePath = basePath;
2127
+ }
2128
+ this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
2129
+ }
2130
+ // @ts-ignore
2131
+ addToHttpParams(httpParams, value, key) {
2132
+ if (typeof value === "object" && value instanceof Date === false) {
2133
+ httpParams = this.addToHttpParamsRecursive(httpParams, value);
2134
+ }
2135
+ else {
2136
+ httpParams = this.addToHttpParamsRecursive(httpParams, value, key);
2137
+ }
2138
+ return httpParams;
2139
+ }
2140
+ addToHttpParamsRecursive(httpParams, value, key) {
2141
+ if (value == null) {
2142
+ return httpParams;
2143
+ }
2144
+ if (typeof value === "object") {
2145
+ if (Array.isArray(value)) {
2146
+ value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));
2147
+ }
2148
+ else if (value instanceof Date) {
2149
+ if (key != null) {
2150
+ httpParams = httpParams.append(key, value.toISOString().substring(0, 10));
2151
+ }
2152
+ else {
2153
+ throw Error("key may not be null if value is Date");
2154
+ }
2155
+ }
2156
+ else {
2157
+ Object.keys(value).forEach(k => httpParams = this.addToHttpParamsRecursive(httpParams, value[k], key != null ? `${key}.${k}` : k));
2158
+ }
2159
+ }
2160
+ else if (key != null) {
2161
+ httpParams = httpParams.append(key, value);
2162
+ }
2163
+ else {
2164
+ throw Error("key may not be null if value is not object or array");
2165
+ }
2166
+ return httpParams;
2167
+ }
2168
+ getSignaleringsbeelden(iaVersie, pplg, observe = 'body', reportProgress = false, options) {
2169
+ if (iaVersie === null || iaVersie === undefined) {
2170
+ throw new Error('Required parameter iaVersie was null or undefined when calling getSignaleringsbeelden.');
2171
+ }
2172
+ if (pplg === null || pplg === undefined) {
2173
+ throw new Error('Required parameter pplg was null or undefined when calling getSignaleringsbeelden.');
2174
+ }
2175
+ let localVarQueryParameters = new HttpParams({ encoder: this.encoder });
2176
+ if (pplg) {
2177
+ pplg.forEach((element) => {
2178
+ localVarQueryParameters = this.addToHttpParams(localVarQueryParameters, element, 'pplg');
2179
+ });
2180
+ }
2181
+ let localVarHeaders = this.defaultHeaders;
2182
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
2183
+ if (localVarHttpHeaderAcceptSelected === undefined) {
2184
+ // to determine the Accept header
2185
+ const httpHeaderAccepts = [
2186
+ 'application/json'
2187
+ ];
2188
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
2189
+ }
2190
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
2191
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
2192
+ }
2193
+ let localVarHttpContext = options && options.context;
2194
+ if (localVarHttpContext === undefined) {
2195
+ localVarHttpContext = new HttpContext();
2196
+ }
2197
+ let localVarTransferCache = options && options.transferCache;
2198
+ if (localVarTransferCache === undefined) {
2199
+ localVarTransferCache = true;
2200
+ }
2201
+ let responseType_ = 'json';
2202
+ if (localVarHttpHeaderAcceptSelected) {
2203
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
2204
+ responseType_ = 'text';
2205
+ }
2206
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
2207
+ responseType_ = 'json';
2208
+ }
2209
+ else {
2210
+ responseType_ = 'blob';
2211
+ }
2212
+ }
2213
+ let localVarPath = `/rest/${this.configuration.encodeParam({ name: "iaVersie", value: iaVersie, in: "path", style: "simple", explode: false, dataType: "string", dataFormat: undefined })}/SignaleringsbeeldAndPplgs`;
2214
+ return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, {
2215
+ context: localVarHttpContext,
2216
+ params: localVarQueryParameters,
2217
+ responseType: responseType_,
2218
+ withCredentials: this.configuration.withCredentials,
2219
+ headers: localVarHeaders,
2220
+ observe: observe,
2221
+ transferCache: localVarTransferCache,
2222
+ reportProgress: reportProgress
2223
+ });
2224
+ }
2225
+ valideerIaVersie(versie, observe = 'body', reportProgress = false, options) {
2226
+ if (versie === null || versie === undefined) {
2227
+ throw new Error('Required parameter versie was null or undefined when calling valideerIaVersie.');
2228
+ }
2229
+ let localVarQueryParameters = new HttpParams({ encoder: this.encoder });
2230
+ if (versie !== undefined && versie !== null) {
2231
+ localVarQueryParameters = this.addToHttpParams(localVarQueryParameters, versie, 'versie');
2232
+ }
2233
+ let localVarHeaders = this.defaultHeaders;
2234
+ let localVarHttpHeaderAcceptSelected = options && options.httpHeaderAccept;
2235
+ if (localVarHttpHeaderAcceptSelected === undefined) {
2236
+ // to determine the Accept header
2237
+ const httpHeaderAccepts = [];
2238
+ localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);
2239
+ }
2240
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
2241
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
2242
+ }
2243
+ let localVarHttpContext = options && options.context;
2244
+ if (localVarHttpContext === undefined) {
2245
+ localVarHttpContext = new HttpContext();
2246
+ }
2247
+ let localVarTransferCache = options && options.transferCache;
2248
+ if (localVarTransferCache === undefined) {
2249
+ localVarTransferCache = true;
2250
+ }
2251
+ let responseType_ = 'json';
2252
+ if (localVarHttpHeaderAcceptSelected) {
2253
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
2254
+ responseType_ = 'text';
2255
+ }
2256
+ else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
2257
+ responseType_ = 'json';
1001
2258
  }
1002
2259
  else {
1003
- this.focusOpBeweging(ritdeel, resolve);
2260
+ responseType_ = 'blob';
1004
2261
  }
2262
+ }
2263
+ let localVarPath = `/rest/signaleringsbeeldeninfo/valideeriaversie`;
2264
+ return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, {
2265
+ context: localVarHttpContext,
2266
+ params: localVarQueryParameters,
2267
+ responseType: responseType_,
2268
+ withCredentials: this.configuration.withCredentials,
2269
+ headers: localVarHeaders,
2270
+ observe: observe,
2271
+ transferCache: localVarTransferCache,
2272
+ reportProgress: reportProgress
1005
2273
  });
1006
2274
  }
1007
- focusOpBeweging(ritdeel, resolve) {
1008
- // deselecteer alles
1009
- this.store.dispatch(setZichtbaarheidAlleRitdelen(false));
1010
- // enable ritacties (checkbox) voor alle ritdelen met beweging die matched met bewegingId(s)
1011
- this.store.dispatch(toggleZichtbaarheidVoorBewegingen([parseInt(ritdeel.getBewegingId(), 10)]));
1012
- setTimeout(() => {
1013
- // dit neemt niet de vrijebaan elementen mee
1014
- const topoElementen = this.sbmService.bepaalRouteElementen(ritdeel.getRoute());
1015
- const dwangPuics = this.getPuics(topoElementen);
1016
- this.store.dispatch(focusOpIds(dwangPuics));
1017
- setTimeout(() => {
1018
- // resolve de promise, om aan te geven dat focus klaar is
1019
- resolve(true);
1020
- this.viewerControlService.setPrinting(false);
1021
- this.store.dispatch(ClearProgress());
1022
- }, 1000);
1023
- });
1024
- }
1025
- getPuics(topoElementen) {
1026
- return topoElementen.map(e => e.getPuic());
1027
- }
1028
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, deps: [{ token: i2$1.Store }, { token: ViewerControlService }, { token: SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1029
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, providedIn: 'root' }); }
2275
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SbControllerService, deps: [{ token: i1.HttpClient }, { token: BASE_PATH, optional: true }, { token: Configuration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
2276
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SbControllerService, providedIn: 'root' }); }
1030
2277
  }
1031
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, decorators: [{
2278
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SbControllerService, decorators: [{
1032
2279
  type: Injectable,
1033
2280
  args: [{
1034
2281
  providedIn: 'root'
1035
2282
  }]
1036
- }], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: SignaleringsBeeldManagerService }] });
2283
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
2284
+ type: Optional
2285
+ }, {
2286
+ type: Inject,
2287
+ args: [BASE_PATH]
2288
+ }] }, { type: Configuration, decorators: [{
2289
+ type: Optional
2290
+ }] }] });
1037
2291
 
1038
- class RpeComponent {
1039
- convertToScript() {
1040
- const element = this.script.nativeElement;
1041
- const script = document.createElement('script');
1042
- script.type = 'text/javascript';
1043
- if (this.baseurl && this.path) {
1044
- script.src = this.baseurl + this.path;
1045
- // eslint-disable-next-line no-console
1046
- console.log('Code geladen van: ' + script.src); //useful for debugging in GWT environment
1047
- }
1048
- const parent = element.parentElement;
1049
- parent.parentElement.replaceChild(script, parent);
1050
- }
1051
- ngAfterViewInit() {
1052
- this.convertToScript();
1053
- }
1054
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RpeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1055
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: RpeComponent, selector: "rpe-component", inputs: { baseurl: "baseurl", path: "path" }, viewQueries: [{ propertyName: "script", first: true, predicate: ["rpescript"], descendants: true }], ngImport: i0, template: "<div #rpescript style.display=\"none\">\n <ng-content></ng-content>\n</div>\n" }); }
1056
- }
1057
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RpeComponent, decorators: [{
1058
- type: Component,
1059
- args: [{ selector: 'rpe-component', template: "<div #rpescript style.display=\"none\">\n <ng-content></ng-content>\n</div>\n" }]
1060
- }], propDecorators: { baseurl: [{
1061
- type: Input
1062
- }], path: [{
1063
- type: Input
1064
- }], script: [{
1065
- type: ViewChild,
1066
- args: ['rpescript']
1067
- }] } });
2292
+ const APIS = [AppConfigControllerService, BewegingControllerService, Class0BuildPropertiesService, ConnectorControllerService, LogControllerService, P21ControllerService, SbControllerService];
1068
2293
 
1069
- class OngeplandeActie {
1070
- constructor(actie, puics) {
1071
- this.actie = actie;
1072
- this.puics = puics;
1073
- }
1074
- }
2294
+ /**
2295
+ * MST
2296
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2297
+ *
2298
+ * The version of the OpenAPI document: 1
2299
+ *
2300
+ *
2301
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2302
+ * https://openapi-generator.tech
2303
+ * Do not edit the class manually.
2304
+ */
1075
2305
 
1076
- class KmRange {
1077
- constructor(topologyElement, vanKilometreringen, totKilometreringen) {
1078
- this.topologyElement = topologyElement;
1079
- this.vanKilometreringen = vanKilometreringen;
1080
- this.totKilometreringen = totKilometreringen;
1081
- }
1082
- static rangeVoorPuntObject(topologyElement) {
1083
- return new KmRange(topologyElement, JsJavaUtil.listToArray(topologyElement.getKilometreringen()), JsJavaUtil.listToArray(topologyElement.getKilometreringen()));
1084
- }
1085
- static rangeVoorStrekObject(topologyElement, vanKilometreringen, totKilometreringen) {
1086
- return new KmRange(topologyElement, vanKilometreringen, totKilometreringen);
1087
- }
1088
- static getKilometrering(lintNaam, kilometreringen) {
1089
- const result = kilometreringen.filter(kilometrering => kilometrering.getKmLint() === lintNaam);
1090
- if (result.length >= 1) {
1091
- return result[0];
1092
- }
1093
- return null;
1094
- }
1095
- heeftOverlap(kilometrering1, kilometrering2) {
1096
- const vanKilometrering = KmRange.getKilometrering(kilometrering1.getKmLint(), this.vanKilometreringen);
1097
- const totKilometrering = KmRange.getKilometrering(kilometrering2.getKmLint(), this.totKilometreringen);
1098
- if (!vanKilometrering || !totKilometrering) {
1099
- return false;
1100
- }
1101
- let startKmWaarde = vanKilometrering.getKmWaarde();
1102
- let endKmWaarde = totKilometrering.getKmWaarde();
1103
- if (startKmWaarde > endKmWaarde) {
1104
- const temp = { end: endKmWaarde, start: startKmWaarde };
1105
- startKmWaarde = temp.end;
1106
- endKmWaarde = temp.start;
1107
- }
1108
- const actieStartKmWaarde = kilometrering1.getKmWaarde();
1109
- const actieEndKmWaarde = kilometrering2.getKmWaarde();
1110
- return endKmWaarde >= actieStartKmWaarde && actieEndKmWaarde >= startKmWaarde;
1111
- }
1112
- }
2306
+ /**
2307
+ * MST
2308
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2309
+ *
2310
+ * The version of the OpenAPI document: 1
2311
+ *
2312
+ *
2313
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2314
+ * https://openapi-generator.tech
2315
+ * Do not edit the class manually.
2316
+ */
1113
2317
 
1114
- class WisselKantCode {
1115
- constructor(naam, kantCode) {
1116
- this.naam = naam;
1117
- this.kantCode = kantCode;
1118
- }
1119
- }
2318
+ /**
2319
+ * MST
2320
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2321
+ *
2322
+ * The version of the OpenAPI document: 1
2323
+ *
2324
+ *
2325
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2326
+ * https://openapi-generator.tech
2327
+ * Do not edit the class manually.
2328
+ */
1120
2329
 
1121
- class MeldingEvent {
1122
- constructor(meldingMessage, meldingLevel) {
1123
- this.meldingMessage = meldingMessage;
1124
- this.meldingLevel = meldingLevel;
1125
- }
1126
- }
2330
+ /**
2331
+ * MST
2332
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2333
+ *
2334
+ * The version of the OpenAPI document: 1
2335
+ *
2336
+ *
2337
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2338
+ * https://openapi-generator.tech
2339
+ * Do not edit the class manually.
2340
+ */
1127
2341
 
1128
- const MELDING_LEVEL_ERROR = 'error';
1129
- const MELDING_LEVEL_WARNING = 'warn';
1130
- const MELDING_LEVEL_INFO = 'info';
1131
- class MeldingBuilder {
1132
- static nietGevondenTakkenOngeplandeActies(nietGevondenTakken) {
1133
- return new MeldingEvent('Niet gevonden takken uit \'OngeplandeActies\': ' + nietGevondenTakken, MELDING_LEVEL_INFO);
2342
+ class ApiModule {
2343
+ static forRoot(configurationFactory) {
2344
+ return {
2345
+ ngModule: ApiModule,
2346
+ providers: [{ provide: Configuration, useFactory: configurationFactory }]
2347
+ };
1134
2348
  }
1135
- static actieHighlightError(actieZonderElementen) {
1136
- return new MeldingEvent('Highlight error. Geen elementen kunnen vinden voor actie(s) met id: ' + actieZonderElementen, MELDING_LEVEL_ERROR);
2349
+ constructor(parentModule, http) {
2350
+ if (parentModule) {
2351
+ throw new Error('ApiModule is already loaded. Import in your base AppModule only.');
2352
+ }
2353
+ if (!http) {
2354
+ throw new Error('You need to import the HttpClientModule in your AppModule! \n' +
2355
+ 'See also https://github.com/angular/angular/issues/20575');
2356
+ }
1137
2357
  }
2358
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ApiModule, deps: [{ token: ApiModule, optional: true, skipSelf: true }, { token: i1.HttpClient, optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
2359
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: ApiModule }); }
2360
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ApiModule }); }
1138
2361
  }
2362
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ApiModule, decorators: [{
2363
+ type: NgModule,
2364
+ args: [{
2365
+ imports: [],
2366
+ declarations: [],
2367
+ exports: [],
2368
+ providers: []
2369
+ }]
2370
+ }], ctorParameters: () => [{ type: ApiModule, decorators: [{
2371
+ type: Optional
2372
+ }, {
2373
+ type: SkipSelf
2374
+ }] }, { type: i1.HttpClient, decorators: [{
2375
+ type: Optional
2376
+ }] }] });
1139
2377
 
1140
- class MessageBuilder {
1141
- static rwpDataNietGevonden(err) {
1142
- return new Message(Severity.ERROR, 'Error bij ophalen van rijwegplan data: ' + err);
1143
- }
1144
- static rijwegNietGevonden(beweging) {
1145
- return new Message(Severity.ERROR, `Rijweg van ${beweging.vanSpoor} in PPLG ${beweging.vanPplg} naar ${beweging.naarSpoor} niet gevonden`);
1146
- }
1147
- static rijwegplanNietGevonden(beweging) {
1148
- return new Message(Severity.ERROR, `Rijwegplan van PPLG ${beweging.vanPplg} niet gevonden`);
1149
- }
1150
- static dwangNietGevonden(beweging) {
1151
- return new Message(Severity.ERROR, `Dwang ${beweging.dwangNummer} voor rijweg van ${beweging.vanSpoor} in PPLG ${beweging.vanPplg} naar ${beweging.naarSpoor} niet gevonden`);
1152
- }
1153
- static nietGevondenSBI(err) {
1154
- return new Message(Severity.ERROR, 'Error bij het ophalen van signaleringsbeeldinfo: ' + Utils.getValidErorrMessage(err));
1155
- }
1156
- static actieHighlightError(actieZonderElementen) {
1157
- return new Message(Severity.ERROR, 'Highlight error. Geen elementen kunnen vinden voor actie(s) met id: ' + actieZonderElementen);
1158
- }
1159
- static ritFileAlGewijzigdError(beweging) {
1160
- return new Message(Severity.ERROR, 'Rit bevat een beweging met status \'Gewijzigd\': Beweging met ID:' + beweging.id);
2378
+ class MstLoggingResource {
2379
+ constructor(controller, store) {
2380
+ this.controller = controller;
2381
+ this.store = store;
2382
+ this.subscriptions = new Subscription();
2383
+ this.subscriptions.add(this.store.select('baseUrl').subscribe(baseUrl => controller.configuration.basePath = baseUrl + '/mst'));
1161
2384
  }
1162
- static meerDan12BladenGevonden(bladAmount) {
1163
- return new Message(Severity.WARNING, 'Warning, Rit bevat ' + bladAmount + ' bladen. Er worden maximaal 12 bladen ondersteund.');
2385
+ ngOnDestroy() {
2386
+ this.subscriptions.unsubscribe();
1164
2387
  }
1165
- static nietGevondenTakkenOngeplandeActies(nietGevondenTakken) {
1166
- return new Message(Severity.INFORMATION, 'Info, Niet gevonden takken uit \'OngeplandeActies\': ' + nietGevondenTakken);
2388
+ logMessages(logDto) {
2389
+ this.controller.log(logDto).subscribe();
1167
2390
  }
2391
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource, deps: [{ token: LogControllerService }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
2392
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource }); }
1168
2393
  }
2394
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource, decorators: [{
2395
+ type: Injectable
2396
+ }], ctorParameters: () => [{ type: LogControllerService }, { type: i2$1.Store }] });
1169
2397
 
1170
2398
  class LoggingHelper {
1171
- constructor(sbmService, store) {
1172
- this.sbmService = sbmService;
2399
+ constructor(store) {
1173
2400
  this.store = store;
1174
2401
  }
1175
2402
  maakLogDTO(melding, actie) {
1176
- let iaVersie = '';
1177
- let algemeneRitInfoDto = null;
1178
- let actieDto = null;
1179
- this.store.select('algemeneRitInfoDto').pipe(take(1)).subscribe(dto => {
1180
- algemeneRitInfoDto = dto;
1181
- });
1182
- this.store.select('iaVersie').pipe(take(1)).subscribe(ia => {
1183
- iaVersie = ia.versie;
1184
- });
1185
- if (actie) {
1186
- actieDto = new ActieDto({
1187
- pplgNaam: actie.pplgNaam,
1188
- ritActieTypeOmschrijving: actie.ritActieTypeOmschrijving,
1189
- ritActieStatus: actie.ritActieStatus,
1190
- bewegingId: actie.bewegingId,
1191
- wisselType: actie.wisselType,
1192
- wisselNaam: actie.wisselNaam,
1193
- wisselKantCode: actie.wisselKantCode,
1194
- vanKilometerlint: actie.vanKilometerlint,
1195
- vanKilometrering: actie.vanKilometrering,
1196
- totKilometerlint: actie.totKilometerlint,
1197
- totKilometrering: actie.totKilometrering
1198
- });
1199
- }
1200
- return new MstLoggingDto({
1201
- iaVersie,
1202
- meldingLevel: melding.meldingLevel,
1203
- meldingMessage: melding.meldingMessage,
1204
- actieDto,
1205
- algemeneRitInfoDto,
1206
- sbinfoDtos: this.getSbInfoDtos()
1207
- });
2403
+ return combineLatest([
2404
+ this.store.select('algemeneRitInfoDto'),
2405
+ this.store.select('iaVersie')
2406
+ ]).pipe(take(1), map(([algemeneRitInfoDto, iaVersie]) => {
2407
+ let actieDto = null;
2408
+ if (actie) {
2409
+ actieDto = {
2410
+ pplgNaam: actie.pplgNaam,
2411
+ ritActieTypeOmschrijving: actie.ritActieTypeOmschrijving,
2412
+ ritActieStatus: actie.ritActieStatus,
2413
+ bewegingId: actie.bewegingId,
2414
+ wisselType: actie.wisselType,
2415
+ wisselNaam: actie.wisselNaam,
2416
+ wisselKantCode: actie.wisselKantCode,
2417
+ vanKilometerlint: actie.vanKilometerlint,
2418
+ vanKilometrering: actie.vanKilometrering,
2419
+ totKilometerlint: actie.totKilometerlint,
2420
+ totKilometrering: actie.totKilometrering
2421
+ };
2422
+ }
2423
+ return {
2424
+ iaVersie: iaVersie.versie,
2425
+ meldingLevel: melding.meldingLevel,
2426
+ meldingMessage: melding.meldingMessage,
2427
+ actieDto,
2428
+ algemeneRitInfoDto,
2429
+ sbinfoDtos: this.getSbInfoDtos()
2430
+ };
2431
+ }));
1208
2432
  }
1209
2433
  getSbInfoDtos() {
1210
2434
  const sbInfoDtos = [];
@@ -1215,12 +2439,12 @@ class LoggingHelper {
1215
2439
  });
1216
2440
  return sbInfoDtos;
1217
2441
  }
1218
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, deps: [{ token: SignaleringsBeeldManagerService }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
2442
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, deps: [{ token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
1219
2443
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper }); }
1220
2444
  }
1221
2445
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, decorators: [{
1222
2446
  type: Injectable
1223
- }], ctorParameters: () => [{ type: SignaleringsBeeldManagerService }, { type: i2$1.Store }] });
2447
+ }], ctorParameters: () => [{ type: i2$1.Store }] });
1224
2448
 
1225
2449
  /**
1226
2450
  * export const RIT_ACTIE_1 = 1;
@@ -1316,6 +2540,7 @@ class ActieHelper {
1316
2540
  this.messagesService = messagesService;
1317
2541
  this.store = store;
1318
2542
  this.loggingHelper = loggingHelper;
2543
+ this.debug = false;
1319
2544
  this.store.select('debug').subscribe(debug => this.debug = debug);
1320
2545
  }
1321
2546
  static getActieTopoElements(ritDeel, sbmService) {
@@ -1349,10 +2574,10 @@ class ActieHelper {
1349
2574
  }
1350
2575
  }
1351
2576
  static actieComparator(actie1, actie2) {
1352
- if (actie1.vanKilometrering !== actie2.vanKilometrering) {
2577
+ if (actie1.vanKilometrering && actie2.vanKilometrering && actie1.vanKilometrering !== actie2.vanKilometrering) {
1353
2578
  return actie1.vanKilometrering > actie2.vanKilometrering ? 1 : -1;
1354
2579
  }
1355
- if (actie1.ritActieTypeOmschrijving !== actie2.ritActieTypeOmschrijving) {
2580
+ if (actie1.ritActieTypeOmschrijving && actie2.ritActieTypeOmschrijving && actie1.ritActieTypeOmschrijving !== actie2.ritActieTypeOmschrijving) {
1356
2581
  return actie1.ritActieTypeOmschrijving > actie2.ritActieTypeOmschrijving ? 1 : -1;
1357
2582
  }
1358
2583
  if (actie1.wisselNaam !== actie2.wisselNaam) {
@@ -1392,9 +2617,9 @@ class ActieHelper {
1392
2617
  // make sure the elems are sorted in ascending order
1393
2618
  static sorteerTopoElementen(topoElems) {
1394
2619
  const topoElementen = topoElems.slice();
1395
- let lint = null;
1396
- let first = null;
1397
- let second = null;
2620
+ let lint = undefined;
2621
+ let first;
2622
+ let second;
1398
2623
  for (const topoElement of topoElementen) {
1399
2624
  let kilometreringen = null;
1400
2625
  const kms = JsJavaUtil.listToArray(topoElement.getKilometreringen());
@@ -1426,11 +2651,11 @@ class ActieHelper {
1426
2651
  if (!totKilometreringen && vanKilometreringen) {
1427
2652
  totKilometreringen = [new MstKilometrering(vanKilometreringen[0].getKmLint(), 100000)];
1428
2653
  }
1429
- if (vanKilometreringen[0] > totKilometreringen[0]) {
2654
+ if (vanKilometreringen && totKilometreringen && vanKilometreringen[0] > totKilometreringen[0]) {
1430
2655
  kmRanges.push(KmRange.rangeVoorStrekObject(e, this.addKm(vanKilometreringen, -1), this.addKm(totKilometreringen, 1)));
1431
2656
  }
1432
2657
  else {
1433
- kmRanges.push(KmRange.rangeVoorStrekObject(e, this.addKm(vanKilometreringen, 1), this.addKm(totKilometreringen, -1)));
2658
+ kmRanges.push(KmRange.rangeVoorStrekObject(e, this.addKm(vanKilometreringen ?? [], 1), this.addKm(totKilometreringen ?? [], -1)));
1434
2659
  }
1435
2660
  });
1436
2661
  }
@@ -1521,21 +2746,23 @@ class ActieHelper {
1521
2746
  else {
1522
2747
  const puics = [];
1523
2748
  kmRanges.forEach(kmRange => {
1524
- let vanKilometrering = new MstKilometrering(actie.vanKilometerlint, actie.vanKilometrering);
1525
- let totKilometrering = new MstKilometrering(actie.totKilometerlint, actie.totKilometrering);
1526
- if (actie.vanKilometrering > actie.totKilometrering) {
1527
- const temp = { van: vanKilometrering, tot: totKilometrering };
1528
- vanKilometrering = temp.tot;
1529
- totKilometrering = temp.van;
1530
- }
1531
- if (kmRange.heeftOverlap(vanKilometrering, totKilometrering)) {
1532
- puics.push(kmRange.topologyElement.getPuic());
2749
+ if (actie.vanKilometrering && actie.vanKilometerlint && actie.totKilometrering && actie.totKilometerlint) {
2750
+ let vanKilometrering = new MstKilometrering(actie.vanKilometerlint, actie.vanKilometrering);
2751
+ let totKilometrering = new MstKilometrering(actie.totKilometerlint, actie.totKilometrering);
2752
+ if (actie.vanKilometrering > actie.totKilometrering) {
2753
+ const temp = { van: vanKilometrering, tot: totKilometrering };
2754
+ vanKilometrering = temp.tot;
2755
+ totKilometrering = temp.van;
2756
+ }
2757
+ if (kmRange.heeftOverlap(vanKilometrering, totKilometrering)) {
2758
+ puics.push(kmRange.topologyElement.getPuic());
2759
+ }
1533
2760
  }
1534
2761
  });
1535
2762
  if (puics.length === 0) {
1536
2763
  actieZonderElementen.push(actie.id);
1537
2764
  const melding = MeldingBuilder.actieHighlightError(actieZonderElementen);
1538
- logMeldingDTOs.push(this.loggingHelper.maakLogDTO(melding, actie));
2765
+ this.loggingHelper.maakLogDTO(melding, actie).pipe(tap(dto => logMeldingDTOs.push(dto))).subscribe();
1539
2766
  }
1540
2767
  retval.putAll(actie, puics);
1541
2768
  }
@@ -1543,15 +2770,15 @@ class ActieHelper {
1543
2770
  this.logLegeMeldingDto(logMeldingDTOs);
1544
2771
  return retval;
1545
2772
  }
1546
- logLegeMeldingDto(logMeldingDTOs) {
1547
- if (logMeldingDTOs.length > 0) {
1548
- this.mstLogResource.logErrorMessages(logMeldingDTOs);
2773
+ logLegeMeldingDto(logDto) {
2774
+ if (logDto.length > 0) {
2775
+ return this.mstLogResource.logMessages(logDto);
1549
2776
  }
1550
2777
  }
1551
2778
  verwerkTopoElementen(topoElementen) {
1552
2779
  const kmRanges = [];
1553
2780
  let topoElementenZonderKms = [];
1554
- let laatstePuntKms = null;
2781
+ let laatstePuntKms = undefined;
1555
2782
  topoElementen.forEach(elem => {
1556
2783
  const kms = JsJavaUtil.listToArray(elem.getKilometreringen());
1557
2784
  if (kms.length > 0) {
@@ -1565,7 +2792,7 @@ class ActieHelper {
1565
2792
  }
1566
2793
  });
1567
2794
  if (topoElementenZonderKms.length > 0 && laatstePuntKms) {
1568
- ActieHelper.corrigeerTopoElementenZonderKms(topoElementenZonderKms, laatstePuntKms, null, kmRanges);
2795
+ ActieHelper.corrigeerTopoElementenZonderKms(topoElementenZonderKms, laatstePuntKms, undefined, kmRanges);
1569
2796
  }
1570
2797
  return kmRanges;
1571
2798
  }
@@ -1628,14 +2855,14 @@ class ActieHelper {
1628
2855
  if (ActieHelper.isKantCodeLinks(kantcode)) {
1629
2856
  return wissel.getLeft();
1630
2857
  }
1631
- return null;
2858
+ return undefined;
1632
2859
  }
1633
2860
  bepaalPuicVoorWisselSlijpenActie(actie) {
1634
2861
  const storingsSymboolPuic = this.sbmService.getSBWissel(actie.wisselNaam, actie.pplgNaam)?.getStoringSymboolPuic();
1635
2862
  if (!storingsSymboolPuic && this.debug) {
1636
2863
  const melding = MeldingBuilder.actieHighlightError([actie.id]);
1637
2864
  this.messagesService.showMessage(MessageBuilder.actieHighlightError([actie.id]));
1638
- this.mstLogResource.logErrorMessages([this.loggingHelper.maakLogDTO(melding, actie)]);
2865
+ this.loggingHelper.maakLogDTO(melding, actie).pipe(tap(logDto => this.mstLogResource.logMessages([logDto]))).subscribe();
1639
2866
  }
1640
2867
  return storingsSymboolPuic ? [storingsSymboolPuic] : [];
1641
2868
  }
@@ -1650,10 +2877,16 @@ class RitdelenLijstComponent {
1650
2877
  constructor(store, sbmService) {
1651
2878
  this.store = store;
1652
2879
  this.sbmService = sbmService;
2880
+ this.nietGeplandeActies = [];
1653
2881
  this.focusEmitter = new EventEmitter();
1654
2882
  this.keurAlleActiesGoed = new EventEmitter();
2883
+ this.ritdeelViewModels = [];
1655
2884
  this.selectedRitdeelActies = [];
1656
2885
  this.selectedRitdeelOngeplandeActies = [];
2886
+ this.disableActieKnoppenVanRitdeel = true;
2887
+ this.editable = false;
2888
+ this.ongeplandeActiesMap = new ArrayMultimap();
2889
+ this.geplandeActies = new ArrayMultimap();
1657
2890
  this.NG_ACTIE_PREFIX = '* ';
1658
2891
  this.subscriptions = [];
1659
2892
  this.subscriptions.push(store.select('ritDelen').subscribe((ritdelen) => {
@@ -1664,9 +2897,6 @@ class RitdelenLijstComponent {
1664
2897
  this.subscriptions.push(store.select('ongeplandeActies').subscribe(acties => this.ongeplandeActiesMap = acties));
1665
2898
  this.subscriptions.push(store.select('geplandeActies').subscribe(acties => this.geplandeActies = acties));
1666
2899
  this.subscriptions.push(store.select('editable').subscribe(editable => this.editable = editable));
1667
- // listen to changes from svg-viewer-component, saving ritdeel in store isn't cool because of all the gwt in it. This is
1668
- // just to make changes within the angular lifecycle.
1669
- this.subscriptions.push(store.select('selectedRitdeelId').pipe(filter(id => !id)).subscribe(this.deselectRitdeel));
1670
2900
  this.subscriptions.push(combineLatest([
1671
2901
  this.store.select('ritDelen'),
1672
2902
  this.store.select('ongeplandeActies')
@@ -1703,12 +2933,14 @@ class RitdelenLijstComponent {
1703
2933
  this.store.dispatch(deleteRitdeel(ritdeel));
1704
2934
  }
1705
2935
  deleteActiesUitRit() {
1706
- this.selectedRitdeel.acties.slice().forEach(actie => {
2936
+ this.selectedRitdeel?.acties.slice().forEach(actie => {
1707
2937
  this.deleteActieUitRit(actie);
1708
2938
  });
1709
2939
  }
1710
2940
  deleteActieUitRit(actie) {
1711
- const acties = this.selectedRitdeel.acties;
2941
+ if (!this.selectedRitdeel)
2942
+ return;
2943
+ const acties = this.selectedRitdeel.acties ?? [];
1712
2944
  const idx = acties.indexOf(actie);
1713
2945
  if (idx >= 0) {
1714
2946
  this.verhuisActieNaarOngepland(actie);
@@ -1734,7 +2966,7 @@ class RitdelenLijstComponent {
1734
2966
  }
1735
2967
  voegActieToeAanRit(ongeplandeActie) {
1736
2968
  const idx = this.selectedRitdeelOngeplandeActies.indexOf(ongeplandeActie);
1737
- if (idx >= 0) {
2969
+ if (idx >= 0 && this.selectedRitdeel) {
1738
2970
  this.store.dispatch(addRitdeelActie(this.selectedRitdeel, this.selectedRitdeelOngeplandeActies[idx].actie));
1739
2971
  this.store.dispatch(AddGeplandeActie(ongeplandeActie.actie, ongeplandeActie.puics));
1740
2972
  this.store.dispatch(DeleteOngeplandeActie(ongeplandeActie));
@@ -1836,13 +3068,13 @@ class RitdelenLijstComponent {
1836
3068
  return `${prefix}${ActieHelper.getVSTActieOmschrijving(actie)}`;
1837
3069
  }
1838
3070
  bepaalPrefixVoorActieOmschrijving(actie) {
1839
- const prefix = '';
1840
- if (this.selectedRitdeel.acties.includes(actie)) {
3071
+ const noPrefix = '';
3072
+ if (this.selectedRitdeel?.acties.includes(actie)) {
1841
3073
  // Afwijkende naam bij niet gevisualiseerde actie in rit
1842
3074
  const puics = this.geplandeActies.get(actie);
1843
- return puics.length > 0 ? prefix : this.NG_ACTIE_PREFIX;
3075
+ return puics.length > 0 ? noPrefix : this.NG_ACTIE_PREFIX;
1844
3076
  }
1845
- return prefix;
3077
+ return noPrefix;
1846
3078
  }
1847
3079
  actieVanKmTekst(actie) {
1848
3080
  if (ActieHelper.isWisselSlijpenActie(actie)) {
@@ -1863,6 +3095,7 @@ class RitdelenLijstComponent {
1863
3095
  return ritdeel.getPplgString();
1864
3096
  }
1865
3097
  getKantCode(stand) {
3098
+ // @ts-ignore
1866
3099
  if (stand === window['domein'].Stand.LINKS) {
1867
3100
  return 'L';
1868
3101
  }
@@ -1999,49 +3232,18 @@ class RitdeelViewModel {
1999
3232
  }
2000
3233
  }
2001
3234
 
2002
- class CarouselControlsComponent {
2003
- constructor(store) {
2004
- this.store = store;
2005
- this.paginationSize = 4;
2006
- this.ritdelen$ = this.store.select('ritDelen').pipe(filter(r => r?.length > 0));
2007
- this.kanLinks$ = this.ritdelen$.pipe(map(r => this.kanLinksNavigeren(r)));
2008
- this.kanRechts$ = this.ritdelen$.pipe(map(r => this.kanRechtsNavigeren(r)));
2009
- }
2010
- kanLinksNavigeren(ritDelen) {
2011
- return ritDelen.length > this.paginationSize && !ritDelen[0].isBinnenWindow();
2012
- }
2013
- kanRechtsNavigeren(ritDelen) {
2014
- return ritDelen.length > this.paginationSize && !ritDelen[ritDelen.length - 1].isBinnenWindow();
2015
- }
2016
- navigeerNaarLinks(event) {
2017
- this.store.dispatch(navigeer(event?.ctrlKey ? -1 : -(this.paginationSize - 1), this.paginationSize, this.iaversieinfo));
2018
- }
2019
- navigeerNaarRechts(event) {
2020
- this.store.dispatch(navigeer(event?.ctrlKey ? 1 : this.paginationSize - 1, this.paginationSize, this.iaversieinfo));
2021
- }
2022
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: CarouselControlsComponent, deps: [{ token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
2023
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: CarouselControlsComponent, selector: "carousel-controls", inputs: { paginationSize: "paginationSize", iaversieinfo: "iaversieinfo", sideNavOpen: "sideNavOpen" }, ngImport: i0, template: "<div *ngIf=\"ritdelen$ | async\">\n <a class=\"loxia-carousel-control-prev\" [ngClass]=\"(sideNavOpen)?'carousel-sidebar-open':'carousel-sidebar'\" role=\"button\"\n data-slide=\"prev\" (click)=\"navigeerNaarLinks($event)\" [hidden]=\"(kanLinks$ | async) === false\">\n <span id=\"previous-page\" class=\"loxia-carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Previous</span>\n</a>\n <a class=\"loxia-carousel-control-next\" style=\"width: 2%;\" role=\"button\" data-slide=\"next\" (click)=\"navigeerNaarRechts($event)\"\n [hidden]=\"(kanRechts$ | async) === false\">\n <span id=\"next-page\" class=\"loxia-carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Next</span>\n </a>\n</div>\n", styles: [".loxia-carousel-control-prev{left:0}.loxia-carousel-control-next{right:0}.loxia-carousel-control-next-icon,.loxia-carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:50%/100% 100% no-repeat}.loxia-carousel-control-prev-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next:focus,.loxia-carousel-control-next:hover,.loxia-carousel-control-prev:focus,.loxia-carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.loxia-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loxia-carousel-control-next,.loxia-carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}.carousel-sidebar{width:2%}.carousel-sidebar-open{width:2%;transition:all .3s;left:470px}[hidden]{display:none!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
2024
- }
2025
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: CarouselControlsComponent, decorators: [{
2026
- type: Component,
2027
- args: [{ selector: 'carousel-controls', template: "<div *ngIf=\"ritdelen$ | async\">\n <a class=\"loxia-carousel-control-prev\" [ngClass]=\"(sideNavOpen)?'carousel-sidebar-open':'carousel-sidebar'\" role=\"button\"\n data-slide=\"prev\" (click)=\"navigeerNaarLinks($event)\" [hidden]=\"(kanLinks$ | async) === false\">\n <span id=\"previous-page\" class=\"loxia-carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Previous</span>\n</a>\n <a class=\"loxia-carousel-control-next\" style=\"width: 2%;\" role=\"button\" data-slide=\"next\" (click)=\"navigeerNaarRechts($event)\"\n [hidden]=\"(kanRechts$ | async) === false\">\n <span id=\"next-page\" class=\"loxia-carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"loxia-sr-only\">Next</span>\n </a>\n</div>\n", styles: [".loxia-carousel-control-prev{left:0}.loxia-carousel-control-next{right:0}.loxia-carousel-control-next-icon,.loxia-carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:50%/100% 100% no-repeat}.loxia-carousel-control-prev-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e\")}.loxia-carousel-control-next:focus,.loxia-carousel-control-next:hover,.loxia-carousel-control-prev:focus,.loxia-carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.loxia-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loxia-carousel-control-next,.loxia-carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}.carousel-sidebar{width:2%}.carousel-sidebar-open{width:2%;transition:all .3s;left:470px}[hidden]{display:none!important}\n"] }]
2028
- }], ctorParameters: () => [{ type: i2$1.Store }], propDecorators: { paginationSize: [{
2029
- type: Input
2030
- }], iaversieinfo: [{
2031
- type: Input
2032
- }], sideNavOpen: [{
2033
- type: Input
2034
- }] } });
2035
-
2036
3235
  class ViewerControlsComponent {
2037
3236
  constructor(store, viewerControlsService, bewegingUtils) {
2038
3237
  this.store = store;
2039
3238
  this.viewerControlsService = viewerControlsService;
2040
3239
  this.bewegingUtils = bewegingUtils;
2041
3240
  this.paginationSize = 4;
3241
+ this.treinpad = undefined;
3242
+ this.goedgekeurd = new EventEmitter();
2042
3243
  this.printing$ = this.viewerControlsService.isPrinting$();
2043
3244
  this.valideRit$ = this.viewerControlsService.isValideRit$();
2044
3245
  this.subscriptions = new Subscription();
3246
+ this.editable = false;
2045
3247
  this.subscriptions.add(this.store.select('editable').subscribe(editable => this.editable = editable));
2046
3248
  }
2047
3249
  ngOnChanges({ treinpad }) {
@@ -2053,24 +3255,23 @@ class ViewerControlsComponent {
2053
3255
  return this.editable && this.viewerControlsService.selectieInfos.length !== 0;
2054
3256
  }
2055
3257
  goedkeurenClick() {
2056
- const ritDelen = this.viewerControlsService.ritdelen;
2057
- if (ritDelen) {
2058
- delete this.treinpad.aantalRitActies;
2059
- this.treinpad.bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(ritDelen, this.viewerControlsService.origineelTreinPad.bewegingen);
2060
- this.goedgekeurd.emit(this.treinpad);
2061
- this.viewerControlsService.setOrigineelTreinPad(this.treinpad);
2062
- }
3258
+ this.store.select('ritDelen').pipe(filter(ritdelen => !!ritdelen), tap(ritDelen => {
3259
+ if (this.treinpad) {
3260
+ delete this.treinpad.aantalRitActies;
3261
+ this.treinpad.bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(ritDelen, this.viewerControlsService.origineelTreinPad.bewegingen);
3262
+ this.goedgekeurd.emit(this.treinpad);
3263
+ this.viewerControlsService.setOrigineelTreinPad(this.treinpad);
3264
+ }
3265
+ })).subscribe();
2063
3266
  }
2064
3267
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ViewerControlsComponent, deps: [{ token: i2$1.Store }, { token: ViewerControlService }, { token: BewegingUtils }], target: i0.ɵɵFactoryTarget.Component }); }
2065
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ViewerControlsComponent, selector: "viewer-controls", inputs: { paginationSize: "paginationSize", iaversieinfo: "iaversieinfo", treinpad: "treinpad", goedgekeurd: "goedgekeurd" }, usesOnChanges: true, ngImport: i0, template: "<button id=\"toonSideNavKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm open-sidenav-button\"\n (click)=\"viewerControlsService.toggleSideNavVisible()\"\n [class.active]=\"viewerControlsService.sideNavOpen$ | async\"\n [hidden]=\"printing$ | async\">Ritdetails\n</button>\n<button *ngIf=\"showGoedkeuren()\"\n id=\"goedkeurenKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm goedkeuren-button\"\n (click)=\"goedkeurenClick()\"\n [disabled]=\"(valideRit$ | async ) === false\"\n [hidden]=\"printing$ | async\">Goedkeuren\n</button>\n\n<carousel-controls [paginationSize]=\"paginationSize\"\n [iaversieinfo]=\"iaversieinfo\"\n [sideNavOpen]=\"viewerControlsService.sideNavOpen$ | async\">\n</carousel-controls>\n", styles: [".open-sidenav-button.active{visibility:hidden}.open-sidenav-button,.goedkeuren-button{position:absolute;top:15px;z-index:600}.open-sidenav-button{left:15px}.goedkeuren-button{right:15px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CarouselControlsComponent, selector: "carousel-controls", inputs: ["paginationSize", "iaversieinfo", "sideNavOpen"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
3268
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ViewerControlsComponent, selector: "viewer-controls", inputs: { paginationSize: "paginationSize", treinpad: "treinpad", goedgekeurd: "goedgekeurd" }, usesOnChanges: true, ngImport: i0, template: "<button id=\"toonSideNavKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm open-sidenav-button\"\n (click)=\"viewerControlsService.toggleSideNavVisible()\"\n [class.active]=\"viewerControlsService.sideNavOpen$ | async\"\n [hidden]=\"printing$ | async\">Ritdetails\n</button>\n<button *ngIf=\"showGoedkeuren()\"\n id=\"goedkeurenKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm goedkeuren-button\"\n (click)=\"goedkeurenClick()\"\n [disabled]=\"(valideRit$ | async ) === false\"\n [hidden]=\"printing$ | async\">Goedkeuren\n</button>\n\n<carousel-controls [paginationSize]=\"paginationSize\"\n [sideNavOpen]=\"viewerControlsService.sideNavOpen$ | async\">\n</carousel-controls>\n", styles: [".open-sidenav-button.active{visibility:hidden}.open-sidenav-button,.goedkeuren-button{position:absolute;top:15px;z-index:600}.open-sidenav-button{left:15px}.goedkeuren-button{right:15px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CarouselControlsComponent, selector: "carousel-controls", inputs: ["paginationSize", "sideNavOpen"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
2066
3269
  }
2067
3270
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ViewerControlsComponent, decorators: [{
2068
3271
  type: Component,
2069
- args: [{ selector: 'viewer-controls', template: "<button id=\"toonSideNavKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm open-sidenav-button\"\n (click)=\"viewerControlsService.toggleSideNavVisible()\"\n [class.active]=\"viewerControlsService.sideNavOpen$ | async\"\n [hidden]=\"printing$ | async\">Ritdetails\n</button>\n<button *ngIf=\"showGoedkeuren()\"\n id=\"goedkeurenKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm goedkeuren-button\"\n (click)=\"goedkeurenClick()\"\n [disabled]=\"(valideRit$ | async ) === false\"\n [hidden]=\"printing$ | async\">Goedkeuren\n</button>\n\n<carousel-controls [paginationSize]=\"paginationSize\"\n [iaversieinfo]=\"iaversieinfo\"\n [sideNavOpen]=\"viewerControlsService.sideNavOpen$ | async\">\n</carousel-controls>\n", styles: [".open-sidenav-button.active{visibility:hidden}.open-sidenav-button,.goedkeuren-button{position:absolute;top:15px;z-index:600}.open-sidenav-button{left:15px}.goedkeuren-button{right:15px}\n"] }]
3272
+ args: [{ selector: 'viewer-controls', template: "<button id=\"toonSideNavKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm open-sidenav-button\"\n (click)=\"viewerControlsService.toggleSideNavVisible()\"\n [class.active]=\"viewerControlsService.sideNavOpen$ | async\"\n [hidden]=\"printing$ | async\">Ritdetails\n</button>\n<button *ngIf=\"showGoedkeuren()\"\n id=\"goedkeurenKnop\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm goedkeuren-button\"\n (click)=\"goedkeurenClick()\"\n [disabled]=\"(valideRit$ | async ) === false\"\n [hidden]=\"printing$ | async\">Goedkeuren\n</button>\n\n<carousel-controls [paginationSize]=\"paginationSize\"\n [sideNavOpen]=\"viewerControlsService.sideNavOpen$ | async\">\n</carousel-controls>\n", styles: [".open-sidenav-button.active{visibility:hidden}.open-sidenav-button,.goedkeuren-button{position:absolute;top:15px;z-index:600}.open-sidenav-button{left:15px}.goedkeuren-button{right:15px}\n"] }]
2070
3273
  }], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: BewegingUtils }], propDecorators: { paginationSize: [{
2071
3274
  type: Input
2072
- }], iaversieinfo: [{
2073
- type: Input
2074
3275
  }], treinpad: [{
2075
3276
  type: Input
2076
3277
  }], goedgekeurd: [{
@@ -2125,7 +3326,7 @@ class ActiePopoverBepaler {
2125
3326
  ongeplandeActies.entries.forEach(entry => {
2126
3327
  const treinNummerActieInfos = puicNaarOngeplandeActieMap.get(entry.key);
2127
3328
  if (!treinNummerActieInfos?.map(({ actie }) => actie).includes(entry.value.actie)) {
2128
- puicNaarOngeplandeActieMap.put(entry.key, { treinNummer: undefined, actie: entry.value.actie });
3329
+ puicNaarOngeplandeActieMap.put(entry.key, { actie: entry.value.actie });
2129
3330
  }
2130
3331
  });
2131
3332
  }
@@ -2185,12 +3386,15 @@ class SvgVisualisatieComponent {
2185
3386
  this.actieHelper = actieHelper;
2186
3387
  this.sbmService = sbmService;
2187
3388
  this.editorService = editorService;
3389
+ this.nietGeplandeActies = [];
3390
+ this.useClickArea = false;
2188
3391
  this.svgInfos$ = this.store.select('svgInfos');
2189
3392
  this.popoverInfos = [];
2190
3393
  this.clickableIds = [];
2191
3394
  this.rightClickableIds = [];
2192
3395
  this.contextMenuActions = [];
2193
3396
  this.contextMenuStyle = { display: 'none' };
3397
+ this.editable = false;
2194
3398
  this.puicNaarBeginSeinRitdeel = new Map();
2195
3399
  this.puicNaarEindSeinCombinatie = new Map();
2196
3400
  this.puicNaarAlternatieveRoute = new Map();
@@ -2214,7 +3418,7 @@ class SvgVisualisatieComponent {
2214
3418
  }));
2215
3419
  }
2216
3420
  ngOnInit() {
2217
- document.getElementById('contextMenu').addEventListener('mouseleave', () => this.hideContextMenu());
3421
+ document.getElementById('contextMenu')?.addEventListener('mouseleave', () => this.hideContextMenu());
2218
3422
  }
2219
3423
  ngOnDestroy() {
2220
3424
  this.subscriptions.forEach(s => s.unsubscribe());
@@ -2241,7 +3445,6 @@ class SvgVisualisatieComponent {
2241
3445
  this.store.dispatch(navigeerBuitenRit(puic));
2242
3446
  }
2243
3447
  }
2244
- this.store.dispatch(SetSelectedRitdeel(undefined));
2245
3448
  }
2246
3449
  handleImxviewRightClick(evt) {
2247
3450
  const fn = () => {
@@ -2272,7 +3475,7 @@ class SvgVisualisatieComponent {
2272
3475
  handleNieuweRouteToegevoegd() {
2273
3476
  this.store.select('nieuweRoute')
2274
3477
  .subscribe((nieuweRoute) => {
2275
- if (nieuweRoute.isValid()) {
3478
+ if (nieuweRoute?.isValid()) {
2276
3479
  this.store.dispatch(ResetNieuweRoute());
2277
3480
  this.store.dispatch(ritdeelInvoegen(nieuweRoute));
2278
3481
  }
@@ -2385,7 +3588,7 @@ class SvgVisualisatieComponent {
2385
3588
  });
2386
3589
  this.viewerControlsService.setValideRit(!gebrokenRit);
2387
3590
  this.store.dispatch(SetGeplandeActies(actieOpRitSelectiePuics));
2388
- const actieOpRitSelectiePuicsArray = Utils.flatMap(Array.from(actieOpRitSelectiePuics.values()), x => x);
3591
+ const actieOpRitSelectiePuicsArray = Array.from(actieOpRitSelectiePuics.values()).flat();
2389
3592
  this.store.dispatch(SetActieOpRitSelectieIds(actieOpRitSelectiePuicsArray));
2390
3593
  ritSelectiePuics = ritSelectiePuics.filter(item => actieOpRitSelectiePuicsArray.indexOf(item) < 0); // make mutually exclusive
2391
3594
  this.store.dispatch(SetRitSelectieIds(ritSelectiePuics));
@@ -2441,6 +3644,9 @@ class MstviewerComponent {
2441
3644
  this.printBewegingService = printBewegingService;
2442
3645
  this.paginationSize = 4;
2443
3646
  this.baseurl = 'https://acceptatie.raildesign.nl';
3647
+ this.debug = false;
3648
+ this.viewer = false;
3649
+ this.useClickArea = false;
2444
3650
  this.goedgekeurd = new EventEmitter();
2445
3651
  this.subscriptions = new Subscription();
2446
3652
  this.subscriptions.add(this.store.select('nieuweBewegingen').subscribe(nieuweRit => {
@@ -2491,23 +3697,26 @@ class MstviewerComponent {
2491
3697
  }
2492
3698
  }
2493
3699
  printFocusBeweging(bewegingId) {
2494
- return this.printBewegingService.printBeweging(bewegingId, this.paginationSize, this.iaversieinfo);
3700
+ return this.printBewegingService.printBeweging(bewegingId, this.paginationSize);
2495
3701
  }
2496
3702
  keurAlleActiesGoed() {
2497
3703
  this.viewerControlsService.keurAlleActiesGoed(this.ongeplandeActies);
2498
3704
  }
2499
3705
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstviewerComponent, deps: [{ token: i2$1.Store }, { token: ViewerControlService }, { token: DebugService }, { token: PrintBewegingService }], target: i0.ɵɵFactoryTarget.Component }); }
2500
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: MstviewerComponent, selector: "mst-viewer", inputs: { iaversieinfo: "iaversieinfo", treinpad: "treinpad", ongeplandeActies: "ongeplandeActies", paginationSize: "paginationSize", baseurl: "baseurl", debug: "debug", viewer: "viewer", useClickArea: "useClickArea" }, outputs: { goedgekeurd: "goedgekeurd" }, usesOnChanges: true, ngImport: i0, template: "<loxia-messages></loxia-messages>\n<loxia-overlay *ngIf=\"(progressIndicator$ | async)\">\n <loxia-progress-indicator id=\"progress-indicator\" [border]=\"false\" upperText=\"\">\n </loxia-progress-indicator>\n</loxia-overlay>\n\n<div style=\"position: relative\">\n <rpe-component [baseurl]=\"baseurl\" path=\"/mst/editor/editor.nocache.js\"></rpe-component>\n\n <svg-visualisatie [useClickArea]=\"useClickArea\" [nietGeplandeActies]=\"ongeplandeActies\"></svg-visualisatie>\n\n <nav [class.active]=\"(viewerControlsService.sideNavOpen$ | async) === false\" id=\"sidebar\">\n <div id=\"dismiss\">\n <em id=\"verbergSideNav\" class=\"fa fa-arrow-left\" (click)=\"viewerControlsService.toggleSideNavVisible()\">&times;</em>\n </div>\n <ritdelen-lijst *ngIf=\"!viewer\" (focusEmitter)=\"focusRitdeel($event)\" (keurAlleActiesGoed)=\"keurAlleActiesGoed()\"\n [nietGeplandeActies]=\"ongeplandeActies\"></ritdelen-lijst>\n <ritdelen-view *ngIf=\"viewer\" (focusEmitter)=\"focusRitdeel($event)\"></ritdelen-view>\n </nav>\n\n <viewer-controls [paginationSize]=\"paginationSize\"\n [iaversieinfo]=\"iaversieinfo\"\n [treinpad]=\"treinpad\"\n [goedgekeurd]=\"goedgekeurd\"\n ></viewer-controls>\n\n</div>\n", styles: ["#sidebar{min-width:350px;max-width:475px;background:#fff;transition:all .3s;height:93vh;position:absolute;top:0;z-index:20}#sidebar.active{margin-left:-475px}#sidebar .sidebar-header{padding:20px;background:#6d7fcc}#dismiss{width:20px;height:20px;position:absolute;cursor:pointer;top:5px;right:0;color:#000;z-index:300}[hidden]{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OverlayComponent, selector: "loxia-overlay" }, { kind: "component", type: ProgressIndicatorComponent, selector: "loxia-progress-indicator" }, { kind: "component", type: RpeComponent, selector: "rpe-component", inputs: ["baseurl", "path"] }, { kind: "component", type: RitdelenLijstComponent, selector: "ritdelen-lijst", inputs: ["nietGeplandeActies"], outputs: ["focusEmitter", "keurAlleActiesGoed"] }, { kind: "component", type: RitdelenViewComponent, selector: "ritdelen-view", outputs: ["focusEmitter"] }, { kind: "component", type: ViewerControlsComponent, selector: "viewer-controls", inputs: ["paginationSize", "iaversieinfo", "treinpad", "goedgekeurd"] }, { kind: "component", type: SvgVisualisatieComponent, selector: "svg-visualisatie", inputs: ["nietGeplandeActies", "useClickArea"] }, { kind: "component", type: MessagesComponent, selector: "loxia-messages" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
3706
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: MstviewerComponent, selector: "mst-viewer", inputs: { iaversieinfo: "iaversieinfo", treinpad: "treinpad", ongeplandeActies: "ongeplandeActies", paginationSize: "paginationSize", baseurl: "baseurl", debug: "debug", viewer: "viewer", useClickArea: "useClickArea" }, outputs: { goedgekeurd: "goedgekeurd" }, usesOnChanges: true, ngImport: i0, template: "<loxia-messages></loxia-messages>\n<loxia-overlay *ngIf=\"(progressIndicator$ | async)\">\n <loxia-progress-indicator id=\"progress-indicator\" [border]=\"false\" upperText=\"\">\n </loxia-progress-indicator>\n</loxia-overlay>\n\n<div style=\"position: relative\">\n <rpe-component [baseurl]=\"baseurl\" path=\"/mst/editor/editor.nocache.js\"></rpe-component>\n\n <svg-visualisatie [useClickArea]=\"useClickArea\" [nietGeplandeActies]=\"ongeplandeActies\"></svg-visualisatie>\n\n <nav [class.active]=\"(viewerControlsService.sideNavOpen$ | async) === false\" id=\"sidebar\">\n <div id=\"dismiss\">\n <em id=\"verbergSideNav\" class=\"fa fa-arrow-left\" (click)=\"viewerControlsService.toggleSideNavVisible()\">&times;</em>\n </div>\n <ritdelen-lijst *ngIf=\"!viewer\" (focusEmitter)=\"focusRitdeel($event)\" (keurAlleActiesGoed)=\"keurAlleActiesGoed()\"\n [nietGeplandeActies]=\"ongeplandeActies\"></ritdelen-lijst>\n <ritdelen-view *ngIf=\"viewer\" (focusEmitter)=\"focusRitdeel($event)\"></ritdelen-view>\n </nav>\n\n <viewer-controls [paginationSize]=\"paginationSize\"\n [treinpad]=\"treinpad\"\n [goedgekeurd]=\"goedgekeurd\"\n ></viewer-controls>\n\n</div>\n", styles: ["#sidebar{min-width:350px;max-width:475px;background:#fff;transition:all .3s;height:93vh;position:absolute;top:0;z-index:20}#sidebar.active{margin-left:-475px}#sidebar .sidebar-header{padding:20px;background:#6d7fcc}#dismiss{width:20px;height:20px;position:absolute;cursor:pointer;top:5px;right:0;color:#000;z-index:300}[hidden]{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OverlayComponent, selector: "loxia-overlay" }, { kind: "component", type: ProgressIndicatorComponent, selector: "loxia-progress-indicator" }, { kind: "component", type: RpeComponent, selector: "rpe-component", inputs: ["baseurl", "path"] }, { kind: "component", type: RitdelenLijstComponent, selector: "ritdelen-lijst", inputs: ["nietGeplandeActies"], outputs: ["focusEmitter", "keurAlleActiesGoed"] }, { kind: "component", type: RitdelenViewComponent, selector: "ritdelen-view", outputs: ["focusEmitter"] }, { kind: "component", type: ViewerControlsComponent, selector: "viewer-controls", inputs: ["paginationSize", "treinpad", "goedgekeurd"] }, { kind: "component", type: SvgVisualisatieComponent, selector: "svg-visualisatie", inputs: ["nietGeplandeActies", "useClickArea"] }, { kind: "component", type: MessagesComponent, selector: "loxia-messages" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
2501
3707
  }
2502
3708
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstviewerComponent, decorators: [{
2503
3709
  type: Component,
2504
- args: [{ selector: 'mst-viewer', template: "<loxia-messages></loxia-messages>\n<loxia-overlay *ngIf=\"(progressIndicator$ | async)\">\n <loxia-progress-indicator id=\"progress-indicator\" [border]=\"false\" upperText=\"\">\n </loxia-progress-indicator>\n</loxia-overlay>\n\n<div style=\"position: relative\">\n <rpe-component [baseurl]=\"baseurl\" path=\"/mst/editor/editor.nocache.js\"></rpe-component>\n\n <svg-visualisatie [useClickArea]=\"useClickArea\" [nietGeplandeActies]=\"ongeplandeActies\"></svg-visualisatie>\n\n <nav [class.active]=\"(viewerControlsService.sideNavOpen$ | async) === false\" id=\"sidebar\">\n <div id=\"dismiss\">\n <em id=\"verbergSideNav\" class=\"fa fa-arrow-left\" (click)=\"viewerControlsService.toggleSideNavVisible()\">&times;</em>\n </div>\n <ritdelen-lijst *ngIf=\"!viewer\" (focusEmitter)=\"focusRitdeel($event)\" (keurAlleActiesGoed)=\"keurAlleActiesGoed()\"\n [nietGeplandeActies]=\"ongeplandeActies\"></ritdelen-lijst>\n <ritdelen-view *ngIf=\"viewer\" (focusEmitter)=\"focusRitdeel($event)\"></ritdelen-view>\n </nav>\n\n <viewer-controls [paginationSize]=\"paginationSize\"\n [iaversieinfo]=\"iaversieinfo\"\n [treinpad]=\"treinpad\"\n [goedgekeurd]=\"goedgekeurd\"\n ></viewer-controls>\n\n</div>\n", styles: ["#sidebar{min-width:350px;max-width:475px;background:#fff;transition:all .3s;height:93vh;position:absolute;top:0;z-index:20}#sidebar.active{margin-left:-475px}#sidebar .sidebar-header{padding:20px;background:#6d7fcc}#dismiss{width:20px;height:20px;position:absolute;cursor:pointer;top:5px;right:0;color:#000;z-index:300}[hidden]{display:none}\n"] }]
3710
+ args: [{ selector: 'mst-viewer', template: "<loxia-messages></loxia-messages>\n<loxia-overlay *ngIf=\"(progressIndicator$ | async)\">\n <loxia-progress-indicator id=\"progress-indicator\" [border]=\"false\" upperText=\"\">\n </loxia-progress-indicator>\n</loxia-overlay>\n\n<div style=\"position: relative\">\n <rpe-component [baseurl]=\"baseurl\" path=\"/mst/editor/editor.nocache.js\"></rpe-component>\n\n <svg-visualisatie [useClickArea]=\"useClickArea\" [nietGeplandeActies]=\"ongeplandeActies\"></svg-visualisatie>\n\n <nav [class.active]=\"(viewerControlsService.sideNavOpen$ | async) === false\" id=\"sidebar\">\n <div id=\"dismiss\">\n <em id=\"verbergSideNav\" class=\"fa fa-arrow-left\" (click)=\"viewerControlsService.toggleSideNavVisible()\">&times;</em>\n </div>\n <ritdelen-lijst *ngIf=\"!viewer\" (focusEmitter)=\"focusRitdeel($event)\" (keurAlleActiesGoed)=\"keurAlleActiesGoed()\"\n [nietGeplandeActies]=\"ongeplandeActies\"></ritdelen-lijst>\n <ritdelen-view *ngIf=\"viewer\" (focusEmitter)=\"focusRitdeel($event)\"></ritdelen-view>\n </nav>\n\n <viewer-controls [paginationSize]=\"paginationSize\"\n [treinpad]=\"treinpad\"\n [goedgekeurd]=\"goedgekeurd\"\n ></viewer-controls>\n\n</div>\n", styles: ["#sidebar{min-width:350px;max-width:475px;background:#fff;transition:all .3s;height:93vh;position:absolute;top:0;z-index:20}#sidebar.active{margin-left:-475px}#sidebar .sidebar-header{padding:20px;background:#6d7fcc}#dismiss{width:20px;height:20px;position:absolute;cursor:pointer;top:5px;right:0;color:#000;z-index:300}[hidden]{display:none}\n"] }]
2505
3711
  }], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: DebugService }, { type: PrintBewegingService }], propDecorators: { iaversieinfo: [{
2506
- type: Input
3712
+ type: Input,
3713
+ args: [{ required: true }]
2507
3714
  }], treinpad: [{
2508
- type: Input
3715
+ type: Input,
3716
+ args: [{ required: true }]
2509
3717
  }], ongeplandeActies: [{
2510
- type: Input
3718
+ type: Input,
3719
+ args: [{ required: true }]
2511
3720
  }], paginationSize: [{
2512
3721
  type: Input
2513
3722
  }], baseurl: [{
@@ -2523,24 +3732,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
2523
3732
  }] } });
2524
3733
 
2525
3734
  let SignaleringsbeeldInfoResource = class SignaleringsbeeldInfoResource extends Resource {
2526
- constructor(restHandler, store) {
3735
+ constructor(restHandler, store, sbControllerService) {
2527
3736
  super(restHandler);
3737
+ this.restHandler = restHandler;
2528
3738
  this.store = store;
3739
+ this.sbControllerService = sbControllerService;
2529
3740
  this.subscriptions = new Subscription();
2530
- this.subscriptions.add(this.store.select('baseUrl').subscribe(baseUrl => this.$setUrl(baseUrl)));
3741
+ this.subscriptions.add(this.store.select('baseUrl').subscribe(baseUrl => {
3742
+ this.$setUrl(baseUrl);
3743
+ sbControllerService.configuration.basePath = baseUrl + '/mst';
3744
+ }));
2531
3745
  }
2532
3746
  ngOnDestroy() {
2533
3747
  this.subscriptions.unsubscribe();
2534
3748
  }
2535
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsbeeldInfoResource, deps: [{ token: i1.ResourceHandler }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
3749
+ laadSignaleringsbeeldInfo(versie, pplgs) {
3750
+ return this.sbControllerService.getSignaleringsbeelden(versie, pplgs);
3751
+ }
3752
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsbeeldInfoResource, deps: [{ token: i1$1.ResourceHandler }, { token: i2$1.Store }, { token: SbControllerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
2536
3753
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsbeeldInfoResource }); }
2537
3754
  };
2538
- __decorate([
2539
- ResourceAction({
2540
- path: '/',
2541
- method: ResourceRequestMethod.Post
2542
- })
2543
- ], SignaleringsbeeldInfoResource.prototype, "laadSignaleringsbeeldInfo", void 0);
2544
3755
  __decorate([
2545
3756
  ResourceAction({
2546
3757
  path: '/valideeriaversie'
@@ -2553,41 +3764,22 @@ SignaleringsbeeldInfoResource = __decorate([
2553
3764
  ], SignaleringsbeeldInfoResource);
2554
3765
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsbeeldInfoResource, decorators: [{
2555
3766
  type: Injectable
2556
- }], ctorParameters: () => [{ type: i1.ResourceHandler }, { type: i2$1.Store }], propDecorators: { laadSignaleringsbeeldInfo: [], getBestaatIALevering: [] } });
2557
- class SignaleringsbeeldInfoDto extends ResourceModel {
2558
- constructor(data) {
2559
- super();
2560
- this.$resource = SignaleringsbeeldInfoResource;
2561
- this.$setData(data);
2562
- }
2563
- toJSON() {
2564
- return { bladnaam: this.bladNaam, pplgs: this.pplgs, metVisualisatie: this.metVisualisatie };
2565
- }
2566
- toString() {
2567
- return `${this.bladNaam}, ${this.pplgs}, ${this.metVisualisatie}`;
2568
- }
2569
- $setData(data) {
2570
- if (data) {
2571
- this.bladNaam = data.bladNaam;
2572
- this.pplgs = data.pplgs;
2573
- this.metVisualisatie = data.metVisualisatie;
2574
- }
2575
- return this;
2576
- }
2577
- }
3767
+ }], ctorParameters: () => [{ type: i1$1.ResourceHandler }, { type: i2$1.Store }, { type: SbControllerService }], propDecorators: { getBestaatIALevering: [] } });
2578
3768
 
2579
3769
  class BaseRestService {
2580
3770
  constructor(httpClient, store) {
2581
3771
  this.httpClient = httpClient;
2582
3772
  this.store = store;
2583
3773
  this.subscriptions = new Subscription();
3774
+ this.baseUrl = '';
3775
+ this.iaVersie = '';
2584
3776
  this.subscriptions.add(this.store.select('baseUrl').subscribe(baseUrl => this.baseUrl = baseUrl));
2585
3777
  this.subscriptions.add(this.store.select('iaVersie').subscribe(iaVersie => this.iaVersie = iaVersie.versie));
2586
3778
  }
2587
3779
  ngOnDestroy() {
2588
3780
  this.subscriptions.unsubscribe();
2589
3781
  }
2590
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BaseRestService, deps: [{ token: i1$1.HttpClient }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
3782
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BaseRestService, deps: [{ token: i1.HttpClient }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
2591
3783
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BaseRestService, providedIn: 'root' }); }
2592
3784
  }
2593
3785
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BaseRestService, decorators: [{
@@ -2595,7 +3787,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
2595
3787
  args: [{
2596
3788
  providedIn: 'root'
2597
3789
  }]
2598
- }], ctorParameters: () => [{ type: i1$1.HttpClient }, { type: i2$1.Store }] });
3790
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2$1.Store }] });
2599
3791
 
2600
3792
  class BewegingVerrijkerService extends BaseRestService {
2601
3793
  getBewegingen(bewegingen, ongeplandeActies) {
@@ -2756,13 +3948,13 @@ class Ritdeel {
2756
3948
  return retval;
2757
3949
  }
2758
3950
  getVrijebaanRijwegplan() {
2759
- return this.vrijebaanRijwegplanRijwegDwangCombi.rijwegplan;
3951
+ return this.vrijebaanRijwegplanRijwegDwangCombi?.rijwegplan;
2760
3952
  }
2761
3953
  getVrijebaanRijweg() {
2762
- return this.vrijebaanRijwegplanRijwegDwangCombi.rijweg;
3954
+ return this.vrijebaanRijwegplanRijwegDwangCombi?.rijweg;
2763
3955
  }
2764
3956
  getVrijebaanDwang() {
2765
- return this.vrijebaanRijwegplanRijwegDwangCombi.dwang;
3957
+ return this.vrijebaanRijwegplanRijwegDwangCombi?.dwang;
2766
3958
  }
2767
3959
  getDwangNummer() {
2768
3960
  return this.rijwegplanRijwegDwangCombi.getDwangNummer();
@@ -2779,7 +3971,7 @@ class Ritdeel {
2779
3971
  isBinnenWindow() {
2780
3972
  return (this.zichtbaarheid === RitdeelZichtbaarheid.ZICHTBAAR ||
2781
3973
  this.zichtbaarheid === RitdeelZichtbaarheid.ONZICHTBAAR_DOOR_GEBRUIKER)
2782
- && this.zichtbaarBuitenPaginatie === false;
3974
+ && !this.zichtbaarBuitenPaginatie;
2783
3975
  }
2784
3976
  isNietBeschikbaar() {
2785
3977
  return this.zichtbaarheid === RitdeelZichtbaarheid.ONZICHTBAAR_DOOR_SYSTEEM;
@@ -2802,10 +3994,10 @@ class Ritdeel {
2802
3994
  }
2803
3995
  }
2804
3996
  heeftVrijebaanInfo() {
2805
- return this.vrijebaanRijwegplanRijwegDwangCombi && !!this.vrijebaanRijwegplanRijwegDwangCombi.dwang;
3997
+ return !!this.vrijebaanRijwegplanRijwegDwangCombi && !!this.vrijebaanRijwegplanRijwegDwangCombi.dwang;
2806
3998
  }
2807
3999
  getVrijebaanPrlRoute() {
2808
- return this.vrijebaanRijwegplanRijwegDwangCombi.getRoute();
4000
+ return this.vrijebaanRijwegplanRijwegDwangCombi?.getRoute();
2809
4001
  }
2810
4002
  getTopologieElementen() {
2811
4003
  return this.topoElementen;
@@ -2837,10 +4029,10 @@ class Ritdeel {
2837
4029
  getZichtbaarheidBuitenPaginatie() {
2838
4030
  return this.zichtbaarBuitenPaginatie;
2839
4031
  }
2840
- bepaalTopologieElementen(signaleringsBeeldManagerService) {
2841
- const topoElementen = signaleringsBeeldManagerService.bepaalRouteElementen(this.getRoute());
4032
+ bepaalTopologieElementen(sbmService) {
4033
+ const topoElementen = sbmService.bepaalRouteElementen(this.getRoute());
2842
4034
  if (this.heeftVrijebaanInfo()) {
2843
- const vrijebaanTopoElementen = signaleringsBeeldManagerService.bepaalRouteElementen(this.getVrijebaanPrlRoute());
4035
+ const vrijebaanTopoElementen = sbmService.bepaalRouteElementen(this.getVrijebaanPrlRoute());
2844
4036
  topoElementen.push(...vrijebaanTopoElementen);
2845
4037
  }
2846
4038
  this.topoElementen = topoElementen;
@@ -2886,7 +4078,7 @@ class RitLezerService {
2886
4078
  ritDelen.push(new Ritdeel(dwangInfo, beweging.ritActies, beweging, vrijebaanDwangInfo, vervolgSpoor, []));
2887
4079
  }
2888
4080
  extractVrijebaanDwangInfo(beweging, rijwegPlan, rijweg) {
2889
- let vrijebaanDwangInfo = null;
4081
+ let vrijebaanDwangInfo = undefined;
2890
4082
  let vervolgSpoor;
2891
4083
  if (beweging.naarSpoor.endsWith(SPOOR_NAAR_VRIJEBAAN_POSTFIX) ||
2892
4084
  beweging.naarSpoor.endsWith(SPOOR_NAAR_VEERWISSEL_VRIJEBAAN_POSTFIX)) {
@@ -2900,9 +4092,9 @@ class RitLezerService {
2900
4092
  vrijebaanRijweg = vrijebaanRijwegen[0];
2901
4093
  vrijebaanDwang = vrijebaanRijweg.getDwangVoorDwangNummer(0);
2902
4094
  vervolgSpoor = vrijebaanRijwegplan.getVervolgSpoor(vrijebaanRijweg);
4095
+ vrijebaanDwangInfo =
4096
+ new RijwegplanRijwegDwangCombinatie(vrijebaanRijwegplan, vrijebaanRijweg, vrijebaanDwang);
2903
4097
  }
2904
- vrijebaanDwangInfo =
2905
- new RijwegplanRijwegDwangCombinatie(vrijebaanRijwegplan, vrijebaanRijweg, vrijebaanDwang);
2906
4098
  }
2907
4099
  }
2908
4100
  return { vrijebaanDwangInfo, vervolgSpoor };
@@ -2955,7 +4147,7 @@ class BepaalOngeplandeActiesEffect {
2955
4147
  this.bepaalOngeplandeActies$ = createEffect(() => this.actions$.pipe(ofType(BepaalOngeplandeActies), withLatestFrom(this.store), map(([action, store]) => {
2956
4148
  const puicActieMap = new ArrayMultimap();
2957
4149
  const nietGevondenTakken = [];
2958
- const logMeldingDTOs = [];
4150
+ const logMeldingDTOs$ = [];
2959
4151
  const acties = store.ritDelen.flatMap(rd => rd.acties);
2960
4152
  action.ongeplandeActies.forEach(actie => {
2961
4153
  const alreadyAdded = acties.filter(a => a.id === actie.id).length > 0;
@@ -2971,11 +4163,11 @@ class BepaalOngeplandeActiesEffect {
2971
4163
  if (!spoortak && nietGevondenTakken.indexOf(takId) < 0) {
2972
4164
  nietGevondenTakken.push(takId);
2973
4165
  const melding = MeldingBuilder.nietGevondenTakkenOngeplandeActies(nietGevondenTakken);
2974
- logMeldingDTOs.push(this.loggingHelper.maakLogDTO(melding, actie));
4166
+ logMeldingDTOs$.push(this.loggingHelper.maakLogDTO(melding, actie));
2975
4167
  }
2976
4168
  else if (spoortak) {
2977
4169
  const melding = MeldingBuilder.actieHighlightError([actie.id]);
2978
- logMeldingDTOs.push(this.loggingHelper.maakLogDTO(melding, actie));
4170
+ logMeldingDTOs$.push(this.loggingHelper.maakLogDTO(melding, actie));
2979
4171
  this.messagesService.showMessage(MessageBuilder.actieHighlightError([actie.id]));
2980
4172
  }
2981
4173
  }
@@ -2984,8 +4176,8 @@ class BepaalOngeplandeActiesEffect {
2984
4176
  if (nietGevondenTakken.length > 0) {
2985
4177
  this.messagesService.showMessage(MessageBuilder.nietGevondenTakkenOngeplandeActies(nietGevondenTakken));
2986
4178
  }
2987
- if (logMeldingDTOs.length > 0) {
2988
- this.mstLogResource.logErrorMessages(logMeldingDTOs);
4179
+ if (logMeldingDTOs$.length > 0) {
4180
+ forkJoin(logMeldingDTOs$).pipe(tap(dtos => this.mstLogResource.logMessages(dtos))).subscribe();
2989
4181
  }
2990
4182
  this.store.dispatch(SetOngeplandeActies(puicActieMap));
2991
4183
  this.store.dispatch(SetOngeplandeActieSelectieIds(Array.from(puicActieMap.keys())));
@@ -3055,7 +4247,7 @@ class BepaalSbInfosEffect {
3055
4247
  next: _res => this.store.dispatch(laadEnVerwerkSignaleringsbeeldInfo(treinpad, paginationSize, pplgs, ritGewijzigdToegestaan)),
3056
4248
  error: err => {
3057
4249
  this.messagesService.showMessage(new Message(Severity.INFORMATION, Utils.getValidErorrMessage(err)));
3058
- const iaVersieInfo = { versie: 'DONNA_77136_VER_1', ingangsDatum: this.dateService.getCurrentDate() };
4250
+ const iaVersieInfo = { versie: 'DONNA_97207_VER_1', ingangsDatum: this.dateService.getCurrentDate() };
3059
4251
  this.store.dispatch(SetIaVersie(iaVersieInfo));
3060
4252
  this.store.dispatch(laadEnVerwerkSignaleringsbeeldInfo(treinpad, paginationSize, pplgs, ritGewijzigdToegestaan));
3061
4253
  }
@@ -3178,7 +4370,7 @@ class FocusEffect {
3178
4370
  const dwangPuics = this.getPuics(topoElementen);
3179
4371
  if (ritdeel.isNietBeschikbaar()) {
3180
4372
  this.store.dispatch(SetOngeplandeActiesBepaald(false));
3181
- this.store.dispatch(navigeerVanaf(actie.paginationSize, actie.iaVersieInfo, ritdeel));
4373
+ this.store.dispatch(navigeerVanaf(actie.paginationSize, ritdeel));
3182
4374
  }
3183
4375
  return focusOpIds(dwangPuics);
3184
4376
  })));
@@ -3200,16 +4392,16 @@ class LaadRouteFilesEffect {
3200
4392
  this.ritLezer = ritLezer;
3201
4393
  this.editorService = editorService;
3202
4394
  this.messagesService = messagesService;
3203
- this.authActions$ = createEffect(() => this.actions$.pipe(ofType(SetSignaleringsbeeldInfoDtos), map(action => this.laadRouteFiles(action))), { dispatch: false });
4395
+ this.authActions$ = createEffect(() => this.actions$.pipe(ofType(SetSignaleringsbeeldInfoDtos), withLatestFrom(this.store), map(([action, storeState]) => this.laadRouteFiles(action, storeState.iaVersie.versie))), { dispatch: false });
3204
4396
  }
3205
- laadRouteFiles(actie) {
4397
+ laadRouteFiles(actie, iaVersie) {
3206
4398
  const isReady = this.editorService.isReady();
3207
4399
  isReady.then(() => {
3208
4400
  const pplgs = this.bepaalSbDtoPplgs(actie.dtos);
3209
- const promise = this.editorService.laadRouteFiles(actie.iaversieinfo.versie, pplgs);
4401
+ const promise = this.editorService.laadRouteFiles(iaVersie, pplgs);
3210
4402
  promise.then(() => {
3211
4403
  this.updateRitdelen(actie);
3212
- }, err => {
4404
+ }, (err) => {
3213
4405
  this.messagesService.showMessage(MessageBuilder.rwpDataNietGevonden(Utils.getValidErorrMessage(err)));
3214
4406
  });
3215
4407
  });
@@ -3220,7 +4412,7 @@ class LaadRouteFilesEffect {
3220
4412
  if (ritdelen.length === 0) {
3221
4413
  ritdelen = this.ritLezer.parseRit(actie.treinpad, actie.ritGewijzigdToegestaan);
3222
4414
  }
3223
- this.store.dispatch(setRitDelen(ritdelen, actie.paginationSize, actie.iaversieinfo));
4415
+ this.store.dispatch(setRitDelen(ritdelen, actie.paginationSize));
3224
4416
  this.store.dispatch(setEditable(actie.treinpad.ritStatus !== 'Definitief'));
3225
4417
  });
3226
4418
  }, 0);
@@ -3228,7 +4420,7 @@ class LaadRouteFilesEffect {
3228
4420
  bepaalSbDtoPplgs(dtos) {
3229
4421
  const pplgs = [];
3230
4422
  dtos.forEach(dto => {
3231
- dto.pplgs.forEach(pplg => {
4423
+ dto.pplgs?.forEach(pplg => {
3232
4424
  if (!pplgs.includes(pplg)) {
3233
4425
  pplgs.push(pplg);
3234
4426
  }
@@ -3269,14 +4461,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
3269
4461
  }] });
3270
4462
 
3271
4463
  class LaadSignaleringsbeeldenEffect {
3272
- constructor(actions$, store, signaleringsBeeldManagerService, editorService, sbiResource, connectorService, messagesSerivce) {
4464
+ constructor(actions$, store, signaleringsBeeldManagerService, editorService, sbiResource, connectorService, messagesService) {
3273
4465
  this.actions$ = actions$;
3274
4466
  this.store = store;
3275
4467
  this.signaleringsBeeldManagerService = signaleringsBeeldManagerService;
3276
4468
  this.editorService = editorService;
3277
4469
  this.sbiResource = sbiResource;
3278
4470
  this.connectorService = connectorService;
3279
- this.messagesSerivce = messagesSerivce;
4471
+ this.messagesService = messagesService;
3280
4472
  this.SVG_PIXEL_RUIMTE = 30;
3281
4473
  this.verwerkRitdelen$ = createEffect(() => this.actions$.pipe(ofType(setRitDelen, navigeer, navigeerVanaf), withLatestFrom(this.store), map(([actie, storeState]) => {
3282
4474
  this.store.dispatch(SetOngeplandeActiesBepaald(false));
@@ -3290,14 +4482,14 @@ class LaadSignaleringsbeeldenEffect {
3290
4482
  }).pipe(switchMap(this.getOtherRand.bind(this)), switchMap(this.loadRouteFilesAndSignaleringsbeeldInfo.bind(this)), switchMap(this.loadSignaleringsbeelden.bind(this)), map(this.processSvgsAndUpdateRitdelen.bind(this))))), { dispatch: false });
3291
4483
  }
3292
4484
  handleSignaleringsbeeldInfo({ actie, storeState }) {
3293
- return this.sbiResource.laadSignaleringsbeeldInfo(this.createSignaleringsbeeldInfoQueryDto(actie.pplgs, storeState.iaVersie)).pipe(take(1), tap((dtos) => this.processResponse({ dtos, storeState, actie })), catchError((err) => {
3294
- this.messagesSerivce.showMessage(MessageBuilder.nietGevondenSBI(err));
4485
+ return this.sbiResource.laadSignaleringsbeeldInfo(storeState.iaVersie.versie, actie.pplgs).pipe(take(1), tap((dtos) => this.processResponse({ dtos, storeState, actie })), catchError((err) => {
4486
+ this.messagesService.showMessage(MessageBuilder.nietGevondenSBI(err));
3295
4487
  return throwError(() => err);
3296
4488
  }));
3297
4489
  }
3298
4490
  processResponse({ dtos, storeState, actie }) {
3299
4491
  if (dtos && dtos.filter(dto => dto.metVisualisatie).length > 12) {
3300
- this.messagesSerivce.showMessage(MessageBuilder.meerDan12BladenGevonden(dtos.length));
4492
+ this.messagesService.showMessage(MessageBuilder.meerDan12BladenGevonden(dtos.length));
3301
4493
  }
3302
4494
  this.store.dispatch(SetSignaleringsbeeldInfoDtos(dtos, storeState.iaVersie, actie.rit, actie.paginationSize, actie.ritGewijzigdToegestaan));
3303
4495
  this.store.dispatch(SetVisibleSignaleringsbeeldInfoDtos(dtos));
@@ -3307,14 +4499,14 @@ class LaadSignaleringsbeeldenEffect {
3307
4499
  }
3308
4500
  loadRouteFilesAndSignaleringsbeeldInfo({ otherPplg, rand, storeState }) {
3309
4501
  this.editorService.laadRouteFiles(storeState.iaVersie.versie, [rand.getPPLG(), otherPplg]);
3310
- return this.sbiResource.laadSignaleringsbeeldInfo(this.createSignaleringsbeeldInfoQueryDto([rand.getPPLG(), otherPplg], storeState.iaVersie)).pipe(map(dtos => ({ dtos, storeState })));
4502
+ return this.sbiResource.laadSignaleringsbeeldInfo(storeState.iaVersie.versie, [rand.getPPLG(), otherPplg]).pipe(map(dtos => ({ dtos, storeState })));
3311
4503
  }
3312
4504
  loadSignaleringsbeelden({ dtos, storeState }) {
3313
- return this.editorService.laadSignaleringsbeelden(storeState.iaVersie.versie, dtos).pipe(map(svgDataUrls => ({ svgDataUrls, storeState, dtos })));
4505
+ return this.editorService.laadSignaleringsbeelden(storeState.iaVersie.versie, dtos).pipe(map(svgDataUrls => ({ svgDataUrls, ritDelen: storeState.ritDelen, dtos })));
3314
4506
  }
3315
- processSvgsAndUpdateRitdelen({ svgDataUrls, storeState, dtos }) {
4507
+ processSvgsAndUpdateRitdelen({ svgDataUrls, ritDelen, dtos }) {
3316
4508
  this.verwerkSvgs(svgDataUrls);
3317
- const nieuweRitdelen = this.updateRitdelen(storeState.ritDelen, dtos);
4509
+ const nieuweRitdelen = this.updateRitdelen(ritDelen, dtos);
3318
4510
  this.store.dispatch(UpdateVisibleSignaleringsbeeldInfoDtos(dtos));
3319
4511
  this.store.dispatch(updateRitDelen(nieuweRitdelen));
3320
4512
  }
@@ -3327,11 +4519,11 @@ class LaadSignaleringsbeeldenEffect {
3327
4519
  const visibleRitPplgs = visibleRitDelen.map(r => r.getPplg()).filter(this.distinct);
3328
4520
  const visibleDtos = this.bepaalZichtbareDtos(visibleRitPplgs, storeDtos);
3329
4521
  const loadingDtos = this.bepaalToLoadDtos(visibleDtos, ritDelen, visibleRitDelen, visibleRitPplgs, storeState);
3330
- this.editorService.laadSignaleringsbeelden(actie.iaversieinfo.versie, loadingDtos).pipe(tap(svgDataUrls => {
4522
+ this.editorService.laadSignaleringsbeelden(storeState.iaVersie.versie, loadingDtos).pipe(tap(svgDataUrls => {
3331
4523
  this.verwerkSvgs(svgDataUrls);
3332
4524
  this.updateState(ritDelen, visibleDtos, storeState, visibleRitPplgs, loadingDtos, isInit, storeDtos);
3333
4525
  }), catchError(err => {
3334
- this.messagesSerivce.showMessage(MessageBuilder.rwpDataNietGevonden(Utils.getValidErorrMessage(err)));
4526
+ this.messagesService.showMessage(MessageBuilder.rwpDataNietGevonden(Utils.getValidErorrMessage(err)));
3335
4527
  throw err;
3336
4528
  })).subscribe();
3337
4529
  }
@@ -3346,10 +4538,6 @@ class LaadSignaleringsbeeldenEffect {
3346
4538
  this.store.dispatch(updateRitDelen(nieuweRitdelen));
3347
4539
  }, 0);
3348
4540
  }
3349
- createSignaleringsbeeldInfoQueryDto(pplgs, iainfo) {
3350
- const datum = iainfo.ingangsDatum && !isNaN(iainfo.ingangsDatum.getTime()) ? iainfo.ingangsDatum.toISOString() : undefined;
3351
- return { pplgs, versie: iainfo.versie, ingangsDatum: datum };
3352
- }
3353
4541
  verwerkSvgs(svgDataUrls) {
3354
4542
  this.store.dispatch(SetSvgInfos(this.bepaalSvgInfos(svgDataUrls)));
3355
4543
  }
@@ -3376,7 +4564,7 @@ class LaadSignaleringsbeeldenEffect {
3376
4564
  bepaalZichtbareDtos(visibleRitPplgs, dtos) {
3377
4565
  const visibleDtos = [];
3378
4566
  visibleRitPplgs.forEach(pplg => {
3379
- dtos.filter(dto => dto.pplgs.includes(pplg)).forEach(dto => {
4567
+ dtos.filter(dto => dto.pplgs?.includes(pplg)).forEach(dto => {
3380
4568
  if (!visibleDtos.includes(dto)) {
3381
4569
  visibleDtos.push(dto);
3382
4570
  }
@@ -3386,13 +4574,13 @@ class LaadSignaleringsbeeldenEffect {
3386
4574
  dtos.filter(d => !visibleDtos.includes(d)).forEach(d => d.metVisualisatie = false);
3387
4575
  return visibleDtos;
3388
4576
  }
3389
- distinct(value, index, self) {
3390
- return self.indexOf(value) === index;
4577
+ distinct(value, index, values) {
4578
+ return values.indexOf(value) === index;
3391
4579
  }
3392
4580
  addPrevNonVisibleDto(firstIdx, ritdelen, loadingDtos, visibleRitPplgs, allDtos) {
3393
4581
  if (firstIdx >= 0) {
3394
4582
  const pplg = ritdelen[firstIdx].getPplg();
3395
- const ritdeelDtos = allDtos.filter(dto => dto.pplgs.includes(pplg)).filter(dto => !loadingDtos.includes(dto));
4583
+ const ritdeelDtos = allDtos.filter(dto => dto.pplgs?.includes(pplg)).filter(dto => !loadingDtos.includes(dto));
3396
4584
  if (!visibleRitPplgs.includes(pplg) && ritdeelDtos.length > 0) {
3397
4585
  ritdeelDtos.filter(d => !loadingDtos.includes(d)).forEach(d => {
3398
4586
  d.metVisualisatie = false;
@@ -3407,7 +4595,7 @@ class LaadSignaleringsbeeldenEffect {
3407
4595
  addNextNonVisibleDto(lastIdx, ritdelen, loadingDtos, visibleRitPplgs, allDtos) {
3408
4596
  if (lastIdx <= ritdelen.length - 1) {
3409
4597
  const pplg = ritdelen[lastIdx].getPplg();
3410
- const ritdeelDtos = allDtos.filter(dto => dto.pplgs.includes(pplg)).filter(dto => !loadingDtos.includes(dto));
4598
+ const ritdeelDtos = allDtos.filter(dto => dto.pplgs?.includes(pplg)).filter(dto => !loadingDtos.includes(dto));
3411
4599
  if (!visibleRitPplgs.includes(pplg) && ritdeelDtos.length > 0) {
3412
4600
  ritdeelDtos.filter(d => !loadingDtos.includes(d)).forEach(d => {
3413
4601
  d.metVisualisatie = false;
@@ -3476,7 +4664,7 @@ class LaadSignaleringsbeeldenEffect {
3476
4664
  }
3477
4665
  }
3478
4666
  }
3479
- this.updateZichtbaarheidAangrezendeRitdelen(min, max, ritdelen, visibleDtos);
4667
+ this.updateZichtbaarheidAangrenzendeRitdelen(min, max, ritdelen, visibleDtos);
3480
4668
  return this.updateZichtbaarheidBuitenWindow(ritdelen, visibleDtos);
3481
4669
  }
3482
4670
  updateZichtbaarheidBuitenWindow(nieuweRitdelen, visibleDtos) {
@@ -3492,7 +4680,7 @@ class LaadSignaleringsbeeldenEffect {
3492
4680
  }
3493
4681
  return nieuweRitdelen;
3494
4682
  }
3495
- updateZichtbaarheidAangrezendeRitdelen(min, max, nieuweRitdelen, visibleDtos) {
4683
+ updateZichtbaarheidAangrenzendeRitdelen(min, max, nieuweRitdelen, visibleDtos) {
3496
4684
  let i = min - 1;
3497
4685
  while (i >= 0) {
3498
4686
  i = this.updateZichtbaarHeid(i, 0, visibleDtos, nieuweRitdelen) - 1;
@@ -3528,9 +4716,11 @@ class LaadSignaleringsbeeldenEffect {
3528
4716
  }
3529
4717
  bevatGevisualiseerdePplg(visibleDtos, pplg) {
3530
4718
  for (const dto of visibleDtos) {
3531
- for (const dtopplg of dto.pplgs) {
3532
- if (dtopplg === pplg) {
3533
- return true;
4719
+ if (dto.pplgs) {
4720
+ for (const dtopplg of dto.pplgs) {
4721
+ if (dtopplg === pplg) {
4722
+ return true;
4723
+ }
3534
4724
  }
3535
4725
  }
3536
4726
  }
@@ -3580,7 +4770,7 @@ class LaadSignaleringsbeeldenEffect {
3580
4770
  pplgsWindow.push(itemPplg);
3581
4771
  }
3582
4772
  const pplgDtos = [];
3583
- dtos.filter(dto => dto.pplgs.includes(itemPplg)).forEach(dto => {
4773
+ dtos.filter(dto => dto.pplgs?.includes(itemPplg)).forEach(dto => {
3584
4774
  if (!pplgDtos.includes(dto)) {
3585
4775
  pplgDtos.push(dto);
3586
4776
  }
@@ -3627,11 +4817,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
3627
4817
  }], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: BewegingVerrijkerService }] });
3628
4818
 
3629
4819
  class RitdelenEffect {
3630
- constructor(actions$, store, sbmService, rijwegPlanEditorService) {
4820
+ constructor(actions$, store, sbmService, editorService) {
3631
4821
  this.actions$ = actions$;
3632
4822
  this.store = store;
3633
4823
  this.sbmService = sbmService;
3634
- this.rijwegPlanEditorService = rijwegPlanEditorService;
4824
+ this.editorService = editorService;
3635
4825
  this.updateRitDelen$ = createEffect(() => this.actions$.pipe(ofType(updateRitDelen), withLatestFrom(this.store), map(([actie, _storeState]) => {
3636
4826
  const nieuweRitDelen = actie.ritDelen.map(ritDeel => ritDeel.isZichtbaar() ?
3637
4827
  ritDeel.copyMetAlternatieveRoutes(this.sbmService.bepaalAlternativeRoutes(ritDeel.getRijweg())) : ritDeel);
@@ -3649,25 +4839,25 @@ class RitdelenEffect {
3649
4839
  return setRitdelenAfterUpdate(ritDelen);
3650
4840
  })));
3651
4841
  this.ritdeelInvoegen$ = createEffect(() => this.actions$.pipe(ofType(ritdeelInvoegen), withLatestFrom(this.store), map(([actie, storeState]) => {
3652
- const ritDelen = this.ritdeelInvoegenFunc(storeState.ritDelen, actie.nieuweRoute, this.rijwegPlanEditorService, this.sbmService);
4842
+ const ritDelen = this.ritdeelInvoegenFunc(storeState.ritDelen, actie.nieuweRoute);
3653
4843
  return setRitdelenAfterUpdate(ritDelen);
3654
4844
  })));
3655
4845
  }
3656
- ritdeelInvoegenFunc(ritDelen, nieuweRoute, rijwegPlanEditorService, sbmService) {
4846
+ ritdeelInvoegenFunc(ritDelen, nieuweRoute) {
3657
4847
  const origineelRitdeel = nieuweRoute.beginSeinOpRitdeel.ritdeel;
3658
4848
  const beginSein = nieuweRoute.beginSeinOpRitdeel.sein;
3659
- const rijwegplan = rijwegPlanEditorService.getRijwegplan(beginSein.getPPLG());
4849
+ const rijwegplan = this.editorService.getRijwegplan(beginSein.getPPLG());
3660
4850
  const dwangen = JsJavaUtil.listToArray(rijwegplan.getOnderliggendeDwangenTotEnVanSein(origineelRitdeel.getDwang(), beginSein));
3661
4851
  const isSamengesteldeRoute = dwangen[0] && dwangen[1];
3662
4852
  let newRitdeel1 = origineelRitdeel;
3663
4853
  if (isSamengesteldeRoute) {
3664
- newRitdeel1 = this.verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen, sbmService, ritDelen);
4854
+ newRitdeel1 = this.verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen, ritDelen);
3665
4855
  }
3666
- if (nieuweRoute.combinatieVoorEindsein.isVrijeBaanRijweg()) {
3667
- this.extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute, sbmService);
4856
+ if (nieuweRoute.combinatieVoorEindsein?.isVrijeBaanRijweg()) {
4857
+ this.extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute);
3668
4858
  }
3669
4859
  else {
3670
- this.maakNieuwRitdeel(newRitdeel1, nieuweRoute, sbmService, ritDelen);
4860
+ this.maakNieuwRitdeel(newRitdeel1, nieuweRoute, ritDelen);
3671
4861
  }
3672
4862
  if (isSamengesteldeRoute) {
3673
4863
  ritDelen.splice(ritDelen.indexOf(origineelRitdeel), 1);
@@ -3682,38 +4872,39 @@ class RitdelenEffect {
3682
4872
  }
3683
4873
  }
3684
4874
  }
3685
- verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen, sbmService, ritDelen) {
4875
+ verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen, ritDelen) {
3686
4876
  // dwangen in 2 nieuwe ritdelen verwerken voor de knip
3687
4877
  const nieuweRijweg1 = rijwegplan.getRijwegVoorSeinen(dwangen[0].getRoute().getBeginSein(), dwangen[0].getRoute().getEindSein());
3688
4878
  const dwangInfo1 = new RijwegplanRijwegDwangCombinatie(rijwegplan, nieuweRijweg1, dwangen[0]);
3689
- const newRitdeel1 = new Ritdeel(dwangInfo1, [], null, null, null, []);
4879
+ const newRitdeel1 = new Ritdeel(dwangInfo1, [], undefined, undefined, undefined, []);
3690
4880
  // remove vrijbaan info uit ritdeel
3691
- newRitdeel1.vrijebaanRijwegplanRijwegDwangCombi = null;
3692
- newRitdeel1.vervolgSpoor = null;
3693
- newRitdeel1.bepaalTopologieElementen(sbmService);
4881
+ newRitdeel1.vrijebaanRijwegplanRijwegDwangCombi = undefined;
4882
+ newRitdeel1.vervolgSpoor = undefined;
4883
+ newRitdeel1.bepaalTopologieElementen(this.sbmService);
3694
4884
  this.insertRitdeel(ritDelen, origineelRitdeel, newRitdeel1);
3695
4885
  const nieuweRijweg2 = rijwegplan.getRijwegVoorSeinen(dwangen[1].getRoute().getBeginSein(), dwangen[1].getRoute().getEindSein());
3696
4886
  const dwangInfo2 = new RijwegplanRijwegDwangCombinatie(rijwegplan, nieuweRijweg2, dwangen[1]);
3697
- const newRitdeel2 = new Ritdeel(dwangInfo2, [], null, null, null, []);
3698
- newRitdeel2.bepaalTopologieElementen(sbmService);
4887
+ const newRitdeel2 = new Ritdeel(dwangInfo2, [], undefined, undefined, undefined, []);
4888
+ newRitdeel2.bepaalTopologieElementen(this.sbmService);
3699
4889
  this.insertRitdeel(ritDelen, newRitdeel1, newRitdeel2);
3700
4890
  return newRitdeel1;
3701
4891
  }
3702
- extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute, sbmService) {
4892
+ extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute) {
3703
4893
  newRitdeel1.vrijebaanRijwegplanRijwegDwangCombi = nieuweRoute.combinatieVoorEindsein;
3704
- const vbrwp = nieuweRoute.combinatieVoorEindsein.rijwegplan;
3705
- newRitdeel1.vervolgSpoor = vbrwp.getVervolgSpoor(nieuweRoute.combinatieVoorEindsein.rijweg);
3706
- newRitdeel1.bepaalTopologieElementen(sbmService);
4894
+ const vbrwp = nieuweRoute.combinatieVoorEindsein?.rijwegplan;
4895
+ newRitdeel1.vervolgSpoor = nieuweRoute.combinatieVoorEindsein ?
4896
+ vbrwp.getVervolgSpoor(nieuweRoute.combinatieVoorEindsein?.rijweg) : undefined;
4897
+ newRitdeel1.bepaalTopologieElementen(this.sbmService);
3707
4898
  }
3708
- maakNieuwRitdeel(newRitdeel1, nieuweRoute, sbmService, ritDelen) {
4899
+ maakNieuwRitdeel(newRitdeel1, nieuweRoute, ritDelen) {
3709
4900
  let newRitdeel = this.createRitdeel(nieuweRoute);
3710
- const altRoutes = sbmService.bepaalAlternativeRoutes(newRitdeel.getRijweg());
4901
+ const altRoutes = this.sbmService.bepaalAlternativeRoutes(newRitdeel.getRijweg());
3711
4902
  newRitdeel = newRitdeel.copyMetAlternatieveRoutes(altRoutes);
3712
- newRitdeel.bepaalTopologieElementen(sbmService);
4903
+ newRitdeel.bepaalTopologieElementen(this.sbmService);
3713
4904
  this.insertRitdeel(ritDelen, newRitdeel1, newRitdeel);
3714
4905
  }
3715
4906
  createRitdeel(nieuweRoute) {
3716
- return new Ritdeel(nieuweRoute.combinatieVoorEindsein, [], null, null, null, []);
4907
+ return new Ritdeel(nieuweRoute.combinatieVoorEindsein, [], undefined, undefined, undefined, []);
3717
4908
  }
3718
4909
  insertRitdeel(ritdelen, naRitdeelPositie, newRitdeel) {
3719
4910
  const idx = ritdelen.indexOf(naRitdeelPositie);
@@ -3764,13 +4955,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
3764
4955
  type: Injectable
3765
4956
  }], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }, { type: i4.SignaleringsbeeldSvgUtilityService }] });
3766
4957
 
4958
+ class ProgressIndicator {
4959
+ constructor(lowerText, upperText, iconClass) {
4960
+ this.lowerText = '';
4961
+ this.upperText = '';
4962
+ this.iconClass = '';
4963
+ this.lowerText = lowerText ?? this.lowerText;
4964
+ this.upperText = upperText ?? this.upperText;
4965
+ this.iconClass = iconClass ?? this.iconClass;
4966
+ }
4967
+ }
4968
+
3767
4969
  class NieuweRoute {
3768
4970
  constructor(beginSeinOpRitdeel, combinatieVoorEindsein) {
3769
4971
  this.beginSeinOpRitdeel = beginSeinOpRitdeel;
3770
4972
  this.combinatieVoorEindsein = combinatieVoorEindsein;
3771
4973
  }
3772
4974
  isValid() {
3773
- return this.combinatieVoorEindsein !== null;
4975
+ return !!this.combinatieVoorEindsein;
3774
4976
  }
3775
4977
  }
3776
4978
 
@@ -3836,7 +5038,7 @@ function addRitdeelActieFunc(ritDelen, { ritDeel, actie }) {
3836
5038
  const onIdsActionHandler = (action) => on(action, (_, { ids }) => ids);
3837
5039
  const createIdsReducer = (action) => createReducer([], onIdsActionHandler(action));
3838
5040
  const editableReducer = createReducer(true, on(setEditable, (_, { editable }) => editable));
3839
- const progressIndicatorReducer = createReducer(undefined, on(ShowProgress, () => ({ progressIndicator: {} })), on(ClearProgress, () => undefined));
5041
+ const progressIndicatorReducer = createReducer({}, on(ShowProgress, () => ({ progressIndicator: new ProgressIndicator() })), on(ClearProgress, () => ({})));
3840
5042
  const svgInfoReducer = createReducer([], on(SetSvgInfos, (_, { svgInfos }) => svgInfos));
3841
5043
  const debugReducer = createReducer(false, on(SetDebug, (_, { debug }) => debug));
3842
5044
  const ritSelectieIdsReducer = createIdsReducer(SetRitSelectieIds);
@@ -3862,12 +5064,10 @@ const ongeplandeActieReducer = createReducer(new ArrayMultimap(), on(SetOngeplan
3862
5064
  ongeplandeActie.puics.forEach(puic => ongeplandeActies.delete(puic, ongeplandeActie));
3863
5065
  return new ArrayMultimap(ongeplandeActies);
3864
5066
  }));
3865
- const ongeplandeActieSelectieIdsReducer = createReducer([],
3866
- // on(MstActions.SetOngeplandeActieSelectieIds, (_, { ids }) => ids),
3867
- onIdsActionHandler(SetOngeplandeActieSelectieIds), on(AddOngeplandeActie, (ids, { ongeplandeActie }) => {
5067
+ const ongeplandeActieSelectieIdsReducer = createReducer([], onIdsActionHandler(SetOngeplandeActieSelectieIds), on(AddOngeplandeActie, (ids, { ongeplandeActie }) => {
3868
5068
  ongeplandeActie.puics.filter(puic => !ids.includes(puic)).forEach(puic => ids.push(puic));
3869
5069
  return [...ids];
3870
- }), on(DeleteOngeplandeActieSelectieId, (ids, { id }) => [].concat(ids.includes(id) ? ids.filter(_id => _id !== id) : ids)));
5070
+ }), on(DeleteOngeplandeActieSelectieId, (ids, { id }) => ids.includes(id) ? ids.filter(_id => _id !== id) : ids));
3871
5071
  const gebrokenRitSelectieIdsReducer = createIdsReducer(SetGebrokenRitSelectieIds);
3872
5072
  const alternatievenSelectieIdsReducer = createIdsReducer(SetAlternatievenSelectieIds);
3873
5073
  const beginSeinSelectieIdsReducer = createIdsReducer(SetBeginSeinSelectieIds);
@@ -3876,16 +5076,15 @@ const alternatievenClickableIdsReducer = createIdsReducer(SetAlternatievenClicka
3876
5076
  const eindSeinenClickableIdsReducer = createIdsReducer(SetEindSeinenClickableIds);
3877
5077
  const connectorClickableIdsReducer = createIdsReducer(SetConnectorenClickableIds);
3878
5078
  const beginSeinRightClickableIdsReducer = createIdsReducer(SetBeginSeinRightClickableIds);
3879
- const nieuweRouteReducer = createReducer(new NieuweRoute(null, null), on(SetNieuwRouteBeginSein, (_, { startSeinOpRitdeel }) => new NieuweRoute(startSeinOpRitdeel, null)), on(SetNieuwRouteEindSein, (nieuweRoute, { combinatieVoorEindsein }) => new NieuweRoute(nieuweRoute.beginSeinOpRitdeel, combinatieVoorEindsein)), on(ResetNieuweRoute, () => new NieuweRoute(null, null)));
5079
+ const nieuweRouteReducer = createReducer(undefined, on(SetNieuwRouteBeginSein, (_, { startSeinOpRitdeel }) => new NieuweRoute(startSeinOpRitdeel, undefined)), on(SetNieuwRouteEindSein, (nieuweRoute, { combinatieVoorEindsein }) => nieuweRoute ? new NieuweRoute(nieuweRoute.beginSeinOpRitdeel, combinatieVoorEindsein) : undefined), on(ResetNieuweRoute, () => undefined));
3880
5080
  const signaleringsbeeldInfoDtosReducer = createReducer([], on(SetSignaleringsbeeldInfoDtos, (_, { dtos }) => dtos), on(UpdateSignaleringsbeeldInfoDtos, (_, { dtos }) => [...dtos]));
3881
5081
  const visibleSbInfoDtosReducer = createReducer([], on(SetVisibleSignaleringsbeeldInfoDtos, (_, { dtos }) => dtos), on(UpdateVisibleSignaleringsbeeldInfoDtos, (_, { dtos }) => [...dtos]));
3882
- const iaVersieReducer = createReducer({}, on(SetIaVersie, (_, { iaVersie }) => Object.assign({}, iaVersie, { versie: iaVersie.versie.toUpperCase() })));
3883
- const algemeneRitInfoDtoReducer = createReducer(new AlgemeneRitInfoDto(), on(SetAlgemeneRitInfo, (_, { algemeneRitInfoDto }) => algemeneRitInfoDto));
5082
+ const iaVersieReducer = createReducer({ versie: 'unknown', ingangsDatum: new Date() }, on(SetIaVersie, (_, { iaVersie }) => Object.assign({}, iaVersie, { versie: iaVersie.versie.toUpperCase() })));
5083
+ const algemeneRitInfoDtoReducer = createReducer({}, on(SetAlgemeneRitInfo, (_, { algemeneRitInfoDto }) => algemeneRitInfoDto));
3884
5084
  const ongeplandeActiesBepaaldReducer = createReducer(false, on(SetOngeplandeActiesBepaald, (_, { bepaald }) => bepaald));
3885
- const nieuweBewegingReducer = createReducer({}, on(UpdateRit, (_, { bewegingen }) => bewegingen));
3886
- const baseUrlReducer = createReducer(undefined, on(SetBaseUrl, (_, { baseUrl }) => baseUrl));
3887
- const focusIdsReducer = createReducer({}, on(focusOpIds, (_, { puics }) => puics));
3888
- const selectedRitdeelIdReducer = createReducer({}, on(SetSelectedRitdeel, (_, { id }) => id));
5085
+ const nieuweBewegingReducer = createReducer([], on(UpdateRit, (_, { bewegingen }) => bewegingen));
5086
+ const baseUrlReducer = createReducer('', on(SetBaseUrl, (_, { baseUrl }) => baseUrl));
5087
+ const focusIdsReducer = createReducer([], on(focusOpIds, (_, { puics }) => puics));
3889
5088
  const storeReducers = {
3890
5089
  ritDelen: ritdelenReducer,
3891
5090
  ritSelectieIds: ritSelectieIdsReducer,
@@ -3914,9 +5113,9 @@ const storeReducers = {
3914
5113
  nieuweBewegingen: nieuweBewegingReducer,
3915
5114
  baseUrl: baseUrlReducer,
3916
5115
  focusIds: focusIdsReducer,
3917
- selectedRitdeelId: selectedRitdeelIdReducer
3918
5116
  };
3919
5117
 
5118
+ // @ts-nocheck
3920
5119
  class ZoneUtil {
3921
5120
  constructor(ngZone) {
3922
5121
  this.ngZone = ngZone;
@@ -3979,6 +5178,7 @@ class MstViewerModule {
3979
5178
  constructor(service, zoneUtil) {
3980
5179
  this.service = service;
3981
5180
  // maak de EditorService toegankelijk voor GWT code
5181
+ // @ts-ignore
3982
5182
  window['rpe'] = {
3983
5183
  EditorService: zoneUtil.proxy(service)
3984
5184
  };
@@ -3996,7 +5196,7 @@ class MstViewerModule {
3996
5196
  SvgVisualisatieComponent,
3997
5197
  MessagesComponent], imports: [CommonModule,
3998
5198
  ImxViewerModule,
3999
- RijwegenModule, i1.ResourceModule, i2$1.StoreRootModule, i1$2.EffectsRootModule], exports: [MstviewerComponent] }); }
5199
+ RijwegenModule, i1$1.ResourceModule, i2$1.StoreRootModule, i1$2.EffectsRootModule], exports: [MstviewerComponent] }); }
4000
5200
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstViewerModule, providers: [
4001
5201
  ZoneUtil,
4002
5202
  SignaleringsbeeldInfoResource,
@@ -4061,5 +5261,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
4061
5261
  * Generated bundle index. Do not edit.
4062
5262
  */
4063
5263
 
4064
- export { MeldingEvent, MstViewerModule, MstviewerComponent, STORE_CONFIG, SignaleringsbeeldInfoDto, SignaleringsbeeldInfoResource };
5264
+ export { MeldingEvent, MstViewerModule, MstviewerComponent, STORE_CONFIG, SignaleringsbeeldInfoResource };
4065
5265
  //# sourceMappingURL=loxia-mst-viewer.mjs.map