@loxia/mst-viewer 8.1.3-202512130125 → 8.1.3-202512142335
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.
- package/esm2022/generated/openapi/api/api.mjs +23 -0
- package/esm2022/generated/openapi/api/appConfigController.service.mjs +140 -0
- package/esm2022/generated/openapi/api/appConfigController.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/bewegingController.service.mjs +155 -0
- package/esm2022/generated/openapi/api/bewegingController.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/class0BuildProperties.service.mjs +140 -0
- package/esm2022/generated/openapi/api/class0BuildProperties.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/connectorController.service.mjs +146 -0
- package/esm2022/generated/openapi/api/connectorController.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/logController.service.mjs +150 -0
- package/esm2022/generated/openapi/api/logController.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/p21Controller.service.mjs +236 -0
- package/esm2022/generated/openapi/api/p21Controller.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/sbController.service.mjs +202 -0
- package/esm2022/generated/openapi/api/sbController.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api.module.mjs +40 -0
- package/esm2022/generated/openapi/configuration.mjs +99 -0
- package/esm2022/generated/openapi/encoder.mjs +19 -0
- package/esm2022/generated/openapi/index.mjs +7 -0
- package/esm2022/generated/openapi/model/actieDto.mjs +13 -0
- package/esm2022/generated/openapi/model/algemeneRitDto.mjs +13 -0
- package/esm2022/generated/openapi/model/bewegingDto.mjs +2 -0
- package/esm2022/generated/openapi/model/frontendKeycloakConfig.mjs +13 -0
- package/esm2022/generated/openapi/model/frontendProperties.mjs +2 -0
- package/esm2022/generated/openapi/model/logDto.mjs +2 -0
- package/esm2022/generated/openapi/model/models.mjs +10 -0
- package/esm2022/generated/openapi/model/ritRequestDto.mjs +2 -0
- package/esm2022/generated/openapi/model/signaleringsbeeldDto.mjs +13 -0
- package/esm2022/generated/openapi/model/signaleringsbeeldRequestDto.mjs +13 -0
- package/esm2022/generated/openapi/param.mjs +2 -0
- package/esm2022/generated/openapi/variables.mjs +9 -0
- package/esm2022/generated.version.mjs +2 -0
- package/esm2022/lib/atomic-components/message/index.mjs +4 -0
- package/esm2022/lib/atomic-components/message/message.component.mjs +34 -0
- package/esm2022/lib/atomic-components/message/message.mjs +8 -0
- package/esm2022/lib/atomic-components/message/severity.enum.mjs +9 -0
- package/esm2022/lib/atomic-components/messages/messages.component.mjs +20 -0
- package/esm2022/lib/atomic-components/overlay/overlay.component.mjs +11 -0
- package/esm2022/lib/atomic-components/progress-indicator/progress-indicator.component.mjs +11 -0
- package/esm2022/lib/atomic-components/progress-indicator/progress-indicator.entity.mjs +11 -0
- package/esm2022/lib/atomic-components/services/messages.service.mjs +27 -0
- package/esm2022/lib/components/carousel-controls/carousel-controls.component.mjs +39 -0
- package/esm2022/lib/components/mstviewer/mstviewer.component.mjs +116 -0
- package/esm2022/lib/components/ritdelen-lijst/ritdelen-lijst.component.mjs +273 -0
- package/esm2022/lib/components/ritdelen-view/ritdelen-view.component.mjs +103 -0
- package/esm2022/lib/components/rpe/rpe.component.mjs +37 -0
- package/esm2022/lib/components/svg-visualisatie/svg-visualisatie.component.mjs +274 -0
- package/esm2022/lib/components/viewer-controls/viewer-controls.component.mjs +55 -0
- package/esm2022/lib/model/alternatief-rit-deel.mjs +7 -0
- package/esm2022/lib/model/km-range.mjs +39 -0
- package/esm2022/lib/model/melding-event.mjs +7 -0
- package/esm2022/lib/model/nieuwe-route.mjs +10 -0
- package/esm2022/lib/model/ongeplande-actie.mjs +7 -0
- package/esm2022/lib/model/rijwegplan-rijweg-dwang-combinatie.mjs +24 -0
- package/esm2022/lib/model/ritdeel.mjs +205 -0
- package/esm2022/lib/model/sein-op-ritdeel.mjs +7 -0
- package/esm2022/lib/model/wissel-kant-code.mjs +7 -0
- package/esm2022/lib/mst-viewer.module.mjs +144 -0
- package/esm2022/lib/optimo.mjs +9 -0
- package/esm2022/lib/resources/mstlogging.resource.mjs +25 -0
- package/esm2022/lib/resources/signaleringsbeeldinfo.resource.mjs +63 -0
- package/esm2022/lib/services/base-rest.service.mjs +28 -0
- package/esm2022/lib/services/beweging-utils.service.mjs +139 -0
- package/esm2022/lib/services/beweging-verrijker.service.mjs +30 -0
- package/esm2022/lib/services/connector.service.mjs +30 -0
- package/esm2022/lib/services/debug.service.mjs +59 -0
- package/esm2022/lib/services/editor.service.mjs +50 -0
- package/esm2022/lib/services/print-beweging.service.mjs +69 -0
- package/esm2022/lib/services/rit-lezer.service.mjs +104 -0
- package/esm2022/lib/services/signalerings-beeld-manager.service.mjs +92 -0
- package/esm2022/lib/services/viewer-control.service.mjs +106 -0
- package/esm2022/lib/state/actions/actions.mjs +127 -0
- package/esm2022/lib/state/actions/ritdelen.actions.mjs +45 -0
- package/esm2022/lib/state/effect/bepaal-ongeplande-acties.effect.mjs +79 -0
- package/esm2022/lib/state/effect/bepaal-sb-infos.effect.mjs +67 -0
- package/esm2022/lib/state/effect/beweging-invoegen.effect.mjs +73 -0
- package/esm2022/lib/state/effect/delete-ongeplande-actie.effect.mjs +39 -0
- package/esm2022/lib/state/effect/focus-effect.mjs +36 -0
- package/esm2022/lib/state/effect/laad-route-files.effect.mjs +64 -0
- package/esm2022/lib/state/effect/laad-signaleringsbeelden.effect.mjs +363 -0
- package/esm2022/lib/state/effect/rit-goedkeuren.effect.mjs +23 -0
- package/esm2022/lib/state/effect/ritdelen.effect.mjs +113 -0
- package/esm2022/lib/state/effect/svg-view.effect.mjs +48 -0
- package/esm2022/lib/state/mst-editor-state.mjs +86 -0
- package/esm2022/lib/state/reducer/rit-delen.reducer.mjs +62 -0
- package/esm2022/lib/util/actie-helper.mjs +441 -0
- package/esm2022/lib/util/actie-popover-bepaler.mjs +90 -0
- package/esm2022/lib/util/date.service.mjs +17 -0
- package/esm2022/lib/util/logging-helper.mjs +56 -0
- package/esm2022/lib/util/melding-builder.mjs +13 -0
- package/esm2022/lib/util/message-builder.mjs +32 -0
- package/esm2022/lib/util/multi-map.mjs +75 -0
- package/esm2022/lib/util/utils.mjs +35 -0
- package/esm2022/lib/util/zone-util.mjs +33 -0
- package/esm2022/loxia-mst-viewer.mjs +5 -0
- package/esm2022/public-api.mjs +9 -0
- package/esm2022/src/generated/openapi/api/api.mjs +23 -0
- package/esm2022/src/generated/openapi/api/appConfigController.service.mjs +140 -0
- package/esm2022/src/generated/openapi/api/appConfigController.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/bewegingController.service.mjs +155 -0
- package/esm2022/src/generated/openapi/api/bewegingController.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/class0BuildProperties.service.mjs +140 -0
- package/esm2022/src/generated/openapi/api/class0BuildProperties.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/connectorController.service.mjs +146 -0
- package/esm2022/src/generated/openapi/api/connectorController.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/logController.service.mjs +150 -0
- package/esm2022/src/generated/openapi/api/logController.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/p21Controller.service.mjs +236 -0
- package/esm2022/src/generated/openapi/api/p21Controller.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/sbController.service.mjs +202 -0
- package/esm2022/src/generated/openapi/api/sbController.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api.module.mjs +40 -0
- package/esm2022/src/generated/openapi/configuration.mjs +99 -0
- package/esm2022/src/generated/openapi/encoder.mjs +19 -0
- package/esm2022/src/generated/openapi/index.mjs +7 -0
- package/esm2022/src/generated/openapi/loxia-mst-viewer-src-generated-openapi.mjs +5 -0
- package/esm2022/src/generated/openapi/model/actieDto.mjs +13 -0
- package/esm2022/src/generated/openapi/model/algemeneRitDto.mjs +13 -0
- package/esm2022/src/generated/openapi/model/bewegingDto.mjs +2 -0
- package/esm2022/src/generated/openapi/model/frontendKeycloakConfig.mjs +13 -0
- package/esm2022/src/generated/openapi/model/frontendProperties.mjs +2 -0
- package/esm2022/src/generated/openapi/model/logDto.mjs +2 -0
- package/esm2022/src/generated/openapi/model/models.mjs +10 -0
- package/esm2022/src/generated/openapi/model/ritRequestDto.mjs +2 -0
- package/esm2022/src/generated/openapi/model/signaleringsbeeldDto.mjs +13 -0
- package/esm2022/src/generated/openapi/model/signaleringsbeeldRequestDto.mjs +13 -0
- package/esm2022/src/generated/openapi/param.mjs +2 -0
- package/esm2022/src/generated/openapi/variables.mjs +9 -0
- package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs +25 -25
- package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs.map +1 -1
- package/fesm2022/loxia-mst-viewer.mjs +492 -459
- package/fesm2022/loxia-mst-viewer.mjs.map +1 -1
- package/generated/openapi/api/api.d.ts +22 -0
- package/generated/openapi/api/appConfigController.service.d.ts +38 -0
- package/generated/openapi/api/appConfigController.serviceInterface.d.ts +24 -0
- package/generated/openapi/api/bewegingController.service.d.ts +40 -0
- package/generated/openapi/api/bewegingController.serviceInterface.d.ts +27 -0
- package/generated/openapi/api/class0BuildProperties.service.d.ts +36 -0
- package/generated/openapi/api/class0BuildProperties.serviceInterface.d.ts +23 -0
- package/generated/openapi/api/connectorController.service.d.ts +38 -0
- package/generated/openapi/api/connectorController.serviceInterface.d.ts +25 -0
- package/generated/openapi/api/logController.service.d.ts +38 -0
- package/generated/openapi/api/logController.serviceInterface.d.ts +25 -0
- package/generated/openapi/api/p21Controller.service.d.ts +62 -0
- package/generated/openapi/api/p21Controller.serviceInterface.d.ts +30 -0
- package/generated/openapi/api/sbController.service.d.ts +60 -0
- package/generated/openapi/api/sbController.serviceInterface.d.ts +32 -0
- package/generated/openapi/api.module.d.ts +11 -0
- package/generated/openapi/configuration.d.ts +104 -0
- package/generated/openapi/encoder.d.ts +11 -0
- package/generated/openapi/index.d.ts +6 -0
- package/generated/openapi/model/actieDto.d.ts +35 -0
- package/generated/openapi/model/algemeneRitDto.d.ts +28 -0
- package/generated/openapi/model/bewegingDto.d.ts +37 -0
- package/generated/openapi/model/frontendKeycloakConfig.d.ts +16 -0
- package/generated/openapi/model/frontendProperties.d.ts +15 -0
- package/generated/openapi/model/logDto.d.ts +22 -0
- package/generated/openapi/model/models.d.ts +9 -0
- package/generated/openapi/model/ritRequestDto.d.ts +17 -0
- package/generated/openapi/model/signaleringsbeeldDto.d.ts +16 -0
- package/generated/openapi/model/signaleringsbeeldRequestDto.d.ts +16 -0
- package/generated/openapi/param.d.ts +37 -0
- package/generated/openapi/variables.d.ts +8 -0
- package/generated.version.d.ts +1 -0
- package/index.d.ts +3 -1079
- package/lib/atomic-components/message/index.d.ts +3 -0
- package/lib/atomic-components/message/message.component.d.ts +12 -0
- package/lib/atomic-components/message/message.d.ts +7 -0
- package/lib/atomic-components/message/severity.enum.d.ts +7 -0
- package/lib/atomic-components/messages/messages.component.d.ts +9 -0
- package/lib/atomic-components/overlay/overlay.component.d.ts +5 -0
- package/lib/atomic-components/progress-indicator/progress-indicator.component.d.ts +5 -0
- package/lib/atomic-components/progress-indicator/progress-indicator.entity.d.ts +6 -0
- package/lib/atomic-components/services/messages.service.d.ts +12 -0
- package/lib/components/carousel-controls/carousel-controls.component.d.ts +19 -0
- package/lib/components/mstviewer/mstviewer.component.d.ts +39 -0
- package/lib/components/ritdelen-lijst/ritdelen-lijst.component.d.ts +72 -0
- package/lib/components/ritdelen-view/ritdelen-view.component.d.ts +33 -0
- package/lib/components/rpe/rpe.component.d.ts +11 -0
- package/lib/components/svg-visualisatie/svg-visualisatie.component.d.ts +55 -0
- package/lib/components/viewer-controls/viewer-controls.component.d.ts +26 -0
- package/lib/model/alternatief-rit-deel.d.ts +7 -0
- package/lib/model/km-range.d.ts +13 -0
- package/lib/model/melding-event.d.ts +5 -0
- package/lib/model/nieuwe-route.d.ts +8 -0
- package/lib/model/ongeplande-actie.d.ts +6 -0
- package/lib/model/rijwegplan-rijweg-dwang-combinatie.d.ts +12 -0
- package/lib/model/ritdeel.d.ts +62 -0
- package/lib/model/sein-op-ritdeel.d.ts +7 -0
- package/lib/model/wissel-kant-code.d.ts +5 -0
- package/lib/mst-viewer.module.d.ts +34 -0
- package/lib/optimo.d.ts +69 -0
- package/lib/resources/mstlogging.resource.d.ts +15 -0
- package/lib/resources/signaleringsbeeldinfo.resource.d.ts +36 -0
- package/lib/services/base-rest.service.d.ts +16 -0
- package/lib/services/beweging-utils.service.d.ts +25 -0
- package/lib/services/beweging-verrijker.service.d.ts +11 -0
- package/lib/services/connector.service.d.ts +10 -0
- package/lib/services/debug.service.d.ts +15 -0
- package/lib/services/editor.service.d.ts +23 -0
- package/lib/services/print-beweging.service.d.ts +16 -0
- package/lib/services/rit-lezer.service.d.ts +22 -0
- package/lib/services/signalerings-beeld-manager.service.d.ts +29 -0
- package/lib/services/viewer-control.service.d.ts +30 -0
- package/lib/state/actions/actions.d.ts +269 -0
- package/lib/state/actions/ritdelen.actions.d.ts +97 -0
- package/lib/state/effect/bepaal-ongeplande-acties.effect.d.ts +24 -0
- package/lib/state/effect/bepaal-sb-infos.effect.d.ts +23 -0
- package/lib/state/effect/beweging-invoegen.effect.d.ts +17 -0
- package/lib/state/effect/delete-ongeplande-actie.effect.d.ts +15 -0
- package/lib/state/effect/focus-effect.d.ts +17 -0
- package/lib/state/effect/laad-route-files.effect.d.ts +27 -0
- package/lib/state/effect/laad-signaleringsbeelden.effect.d.ts +58 -0
- package/lib/state/effect/rit-goedkeuren.effect.d.ts +17 -0
- package/lib/state/effect/ritdelen.effect.d.ts +33 -0
- package/lib/state/effect/svg-view.effect.d.ts +17 -0
- package/lib/state/mst-editor-state.d.ts +70 -0
- package/lib/state/reducer/rit-delen.reducer.d.ts +4 -0
- package/lib/util/actie-helper.d.ts +117 -0
- package/lib/util/actie-popover-bepaler.d.ts +14 -0
- package/lib/util/date.service.d.ts +6 -0
- package/lib/util/logging-helper.d.ts +16 -0
- package/lib/util/melding-builder.d.ts +8 -0
- package/lib/util/message-builder.d.ts +13 -0
- package/lib/util/multi-map.d.ts +39 -0
- package/lib/util/utils.d.ts +3 -0
- package/lib/util/zone-util.d.ts +11 -0
- package/package.json +10 -6
- package/public-api.d.ts +5 -0
- package/src/generated/openapi/api/api.d.ts +22 -0
- package/src/generated/openapi/api/appConfigController.service.d.ts +38 -0
- package/src/generated/openapi/api/appConfigController.serviceInterface.d.ts +24 -0
- package/src/generated/openapi/api/bewegingController.service.d.ts +40 -0
- package/src/generated/openapi/api/bewegingController.serviceInterface.d.ts +27 -0
- package/src/generated/openapi/api/class0BuildProperties.service.d.ts +36 -0
- package/src/generated/openapi/api/class0BuildProperties.serviceInterface.d.ts +23 -0
- package/src/generated/openapi/api/connectorController.service.d.ts +38 -0
- package/src/generated/openapi/api/connectorController.serviceInterface.d.ts +25 -0
- package/src/generated/openapi/api/logController.service.d.ts +38 -0
- package/src/generated/openapi/api/logController.serviceInterface.d.ts +25 -0
- package/src/generated/openapi/api/p21Controller.service.d.ts +62 -0
- package/src/generated/openapi/api/p21Controller.serviceInterface.d.ts +30 -0
- package/src/generated/openapi/api/sbController.service.d.ts +60 -0
- package/src/generated/openapi/api/sbController.serviceInterface.d.ts +32 -0
- package/src/generated/openapi/api.module.d.ts +11 -0
- package/src/generated/openapi/configuration.d.ts +104 -0
- package/src/generated/openapi/encoder.d.ts +11 -0
- package/src/generated/openapi/index.d.ts +6 -825
- package/src/generated/openapi/model/actieDto.d.ts +35 -0
- package/src/generated/openapi/model/algemeneRitDto.d.ts +28 -0
- package/src/generated/openapi/model/bewegingDto.d.ts +37 -0
- package/src/generated/openapi/model/frontendKeycloakConfig.d.ts +16 -0
- package/src/generated/openapi/model/frontendProperties.d.ts +15 -0
- package/src/generated/openapi/model/logDto.d.ts +22 -0
- package/src/generated/openapi/model/models.d.ts +9 -0
- package/src/generated/openapi/model/ritRequestDto.d.ts +17 -0
- package/src/generated/openapi/model/signaleringsbeeldDto.d.ts +16 -0
- package/src/generated/openapi/model/signaleringsbeeldRequestDto.d.ts +16 -0
- package/src/generated/openapi/param.d.ts +37 -0
- package/src/generated/openapi/variables.d.ts +8 -0
- package/tailwind.scss +1 -1
|
@@ -11,8 +11,8 @@ 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, from, Subscription, combineLatest, of, throwError } from 'rxjs';
|
|
15
|
-
import {
|
|
14
|
+
import { BehaviorSubject, from, Subscription, combineLatest, forkJoin, of, throwError } from 'rxjs';
|
|
15
|
+
import { filter, map, take, tap, catchError, withLatestFrom, switchMap } from 'rxjs/operators';
|
|
16
16
|
import * as i1 from '@angular/common/http';
|
|
17
17
|
import { HttpHeaders, HttpContext, HttpParams } from '@angular/common/http';
|
|
18
18
|
import { __decorate } from 'tslib';
|
|
@@ -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,14 +53,14 @@ class MessageComponent {
|
|
|
53
53
|
this.message = undefined;
|
|
54
54
|
}
|
|
55
55
|
get severity() {
|
|
56
|
-
return this.message
|
|
56
|
+
return this.message?.severity ?? '?';
|
|
57
57
|
}
|
|
58
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
59
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
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"] }] }); }
|
|
60
60
|
}
|
|
61
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessageComponent, decorators: [{
|
|
62
62
|
type: Component,
|
|
63
|
-
args: [{ selector: 'loxia-message',
|
|
63
|
+
args: [{ selector: 'loxia-message', 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"] }]
|
|
64
64
|
}], propDecorators: { message: [{
|
|
65
65
|
type: Input
|
|
66
66
|
}], onClearMessage: [{
|
|
@@ -83,10 +83,10 @@ class MessagesService {
|
|
|
83
83
|
get messages$() {
|
|
84
84
|
return this._messages$;
|
|
85
85
|
}
|
|
86
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
87
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
86
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessagesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
87
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessagesService, providedIn: 'root' }); }
|
|
88
88
|
}
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessagesService, decorators: [{
|
|
90
90
|
type: Injectable,
|
|
91
91
|
args: [{ providedIn: 'root' }]
|
|
92
92
|
}] });
|
|
@@ -98,32 +98,109 @@ class MessagesComponent {
|
|
|
98
98
|
trackbyIndex(index) {
|
|
99
99
|
return index;
|
|
100
100
|
}
|
|
101
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
102
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
101
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessagesComponent, deps: [{ token: MessagesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: MessagesComponent, selector: "loxia-messages", ngImport: i0, template: "<div class=\"messages w-full\">\n <div *ngFor=\"let message of (messagesService.messages$ | async); let i = index; trackBy: trackbyIndex\">\n <loxia-message [message]=\"message\" (onClearMessage)=\"messagesService.clearMessage($event)\"></loxia-message>\n </div>\n</div>\n", styles: [".messages{position:fixed;top:0;left:0;z-index:2000;flex-direction:column;display:flex}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: MessageComponent, selector: "loxia-message", inputs: ["message"], outputs: ["onClearMessage"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
103
103
|
}
|
|
104
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
104
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MessagesComponent, decorators: [{
|
|
105
105
|
type: Component,
|
|
106
|
-
args: [{ selector: 'loxia-messages',
|
|
106
|
+
args: [{ selector: 'loxia-messages', template: "<div class=\"messages w-full\">\n <div *ngFor=\"let message of (messagesService.messages$ | async); let i = index; trackBy: trackbyIndex\">\n <loxia-message [message]=\"message\" (onClearMessage)=\"messagesService.clearMessage($event)\"></loxia-message>\n </div>\n</div>\n", styles: [".messages{position:fixed;top:0;left:0;z-index:2000;flex-direction:column;display:flex}\n"] }]
|
|
107
107
|
}], ctorParameters: () => [{ type: MessagesService }] });
|
|
108
108
|
|
|
109
109
|
class OverlayComponent {
|
|
110
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
111
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
110
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: OverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
111
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: OverlayComponent, selector: "loxia-overlay", ngImport: i0, template: "<div class=\"overlay\">\n <div class=\"centered-content\">\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{width:100vw;height:0;opacity:1}.centered-content{position:relative;width:100%;height:100%}.content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.overlay{position:absolute;background-color:#1f2528db;width:100%;height:100%;z-index:1001}\n"] }); }
|
|
112
112
|
}
|
|
113
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
113
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: OverlayComponent, decorators: [{
|
|
114
114
|
type: Component,
|
|
115
|
-
args: [{ selector: '
|
|
115
|
+
args: [{ selector: 'loxia-overlay', template: "<div class=\"overlay\">\n <div class=\"centered-content\">\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{width:100vw;height:0;opacity:1}.centered-content{position:relative;width:100%;height:100%}.content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.overlay{position:absolute;background-color:#1f2528db;width:100%;height:100%;z-index:1001}\n"] }]
|
|
116
116
|
}] });
|
|
117
117
|
|
|
118
118
|
class ProgressIndicatorComponent {
|
|
119
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
120
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ProgressIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ProgressIndicatorComponent, selector: "loxia-progress-indicator", ngImport: i0, 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", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
121
121
|
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
|
|
123
123
|
type: Component,
|
|
124
|
-
args: [{ selector: 'loxia-progress-indicator', changeDetection: ChangeDetectionStrategy.OnPush,
|
|
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,89 +326,9 @@ const mstActions = union({
|
|
|
251
326
|
ClearProgress,
|
|
252
327
|
BewegingInvoegen,
|
|
253
328
|
KeurAlleActiesGoed,
|
|
254
|
-
UpdateRit
|
|
255
|
-
setSelectedRitdeel: SetSelectedRitdeel
|
|
329
|
+
UpdateRit
|
|
256
330
|
});
|
|
257
331
|
|
|
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
|
|
300
|
-
});
|
|
301
|
-
|
|
302
|
-
class Utils {
|
|
303
|
-
static flatMap(xs, f) {
|
|
304
|
-
return xs.reduce((acc, x) => acc.concat(f(x)), []);
|
|
305
|
-
}
|
|
306
|
-
static getValidErorrMessage(err) {
|
|
307
|
-
let errorMsg = '';
|
|
308
|
-
if (err.msg) {
|
|
309
|
-
errorMsg += err.msg;
|
|
310
|
-
}
|
|
311
|
-
if (Array.isArray(err.body)) {
|
|
312
|
-
err.body.forEach(x => errorMsg += x);
|
|
313
|
-
}
|
|
314
|
-
else if (err.body) {
|
|
315
|
-
if (err.body instanceof ProgressEvent) {
|
|
316
|
-
errorMsg = 'Kon geen verbinding maken met de server';
|
|
317
|
-
}
|
|
318
|
-
else if (err.body.text) {
|
|
319
|
-
errorMsg += err.body.text;
|
|
320
|
-
}
|
|
321
|
-
else {
|
|
322
|
-
errorMsg += err.body;
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
if (err.message) {
|
|
326
|
-
errorMsg += err.message;
|
|
327
|
-
}
|
|
328
|
-
if (typeof err === 'string' || err instanceof String) {
|
|
329
|
-
errorMsg += err;
|
|
330
|
-
}
|
|
331
|
-
if (errorMsg !== '') {
|
|
332
|
-
return errorMsg;
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
|
|
337
332
|
/**
|
|
338
333
|
* https://gist.github.com/jordanluyke/609a4fffb69d1ebafdadd313ee2ee804
|
|
339
334
|
*
|
|
@@ -397,7 +392,7 @@ class ArrayMultimap {
|
|
|
397
392
|
return Array.from(new Set(this._entries.map(entry => entry.key)));
|
|
398
393
|
}
|
|
399
394
|
values() {
|
|
400
|
-
return
|
|
395
|
+
return this._entries.reduce((acc, x) => acc.concat(x.value), []);
|
|
401
396
|
}
|
|
402
397
|
put(key, value) {
|
|
403
398
|
this._entries.push(new MultimapEntry(key, value));
|
|
@@ -491,10 +486,10 @@ class SignaleringsBeeldManagerService {
|
|
|
491
486
|
getEersteVerbindingPuicVoorSplitEngelseWissel(engelsWisselNaam, kantcode) {
|
|
492
487
|
return this.signaleringsBeeldManager.getEersteVerbindingPuicVoorSplitEngelseWissel(engelsWisselNaam, kantcode);
|
|
493
488
|
}
|
|
494
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
495
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
489
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsBeeldManagerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
490
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsBeeldManagerService }); }
|
|
496
491
|
}
|
|
497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
492
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsBeeldManagerService, decorators: [{
|
|
498
493
|
type: Injectable
|
|
499
494
|
}] });
|
|
500
495
|
|
|
@@ -503,6 +498,7 @@ class EditorService {
|
|
|
503
498
|
this.signaleringsBeeldManagerService = signaleringsBeeldManagerService;
|
|
504
499
|
this.initReadyPromise();
|
|
505
500
|
}
|
|
501
|
+
// Called from GWT only, can be removed when GWT is gone. any is used because it will be removed with GWT
|
|
506
502
|
setEditor(editor) {
|
|
507
503
|
this.editor = editor;
|
|
508
504
|
this.resolveReadyPromise();
|
|
@@ -510,6 +506,7 @@ class EditorService {
|
|
|
510
506
|
isReady() {
|
|
511
507
|
return this.promise;
|
|
512
508
|
}
|
|
509
|
+
// Called from GWT only, can be removed when GWT is gone
|
|
513
510
|
setSignaleringsBeeldManager(signaleringsBeeldManager) {
|
|
514
511
|
this.signaleringsBeeldManagerService.set(signaleringsBeeldManager);
|
|
515
512
|
}
|
|
@@ -535,10 +532,10 @@ class EditorService {
|
|
|
535
532
|
that.resolveReadyPromise = resolve;
|
|
536
533
|
}) : this.promise;
|
|
537
534
|
}
|
|
538
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
539
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
535
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: EditorService, deps: [{ token: SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
536
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: EditorService }); }
|
|
540
537
|
}
|
|
541
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
538
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: EditorService, decorators: [{
|
|
542
539
|
type: Injectable
|
|
543
540
|
}], ctorParameters: () => [{ type: SignaleringsBeeldManagerService }] });
|
|
544
541
|
|
|
@@ -555,7 +552,7 @@ class BewegingUtils {
|
|
|
555
552
|
const retval = [];
|
|
556
553
|
retval.length = ritDelen.length;
|
|
557
554
|
const origineleBewegingMap = this.bepaalOrigineleBewegingMap(origineleBewegingen);
|
|
558
|
-
let vorigeBeweging =
|
|
555
|
+
let vorigeBeweging = undefined;
|
|
559
556
|
for (let i = 0; i < ritDelen.length; i++) {
|
|
560
557
|
const ritdeel = ritDelen[i];
|
|
561
558
|
if (ritdeel.beweging) {
|
|
@@ -585,7 +582,7 @@ class BewegingUtils {
|
|
|
585
582
|
}
|
|
586
583
|
static bewegingenZijnGewijzigd(ritDelen, origineleBewegingen) {
|
|
587
584
|
const ritDelenArray = ritDelen
|
|
588
|
-
.filter(r => r.beweging)
|
|
585
|
+
.filter(r => r.beweging?.id)
|
|
589
586
|
.map(r => r.beweging.id)
|
|
590
587
|
.sort((a, b) => a - b);
|
|
591
588
|
const bewegingenIdArray = origineleBewegingen.map(b => b.id).sort((a, b) => a - b);
|
|
@@ -601,9 +598,9 @@ class BewegingUtils {
|
|
|
601
598
|
return stringToCheck.indexOf(match) !== -1;
|
|
602
599
|
}
|
|
603
600
|
static isGewijzigd(ritdeel, nieuwDwangNummer, origineleBewegingenMap) {
|
|
604
|
-
const dwangGewijzigd = ritdeel.beweging
|
|
601
|
+
const dwangGewijzigd = ritdeel.beweging?.dwangNummer !== nieuwDwangNummer;
|
|
605
602
|
let gewijzigd = false;
|
|
606
|
-
if (ritdeel.beweging
|
|
603
|
+
if (ritdeel.beweging?.wijzigStatus === this.NORMAAL) {
|
|
607
604
|
const origineleBewegingActies = origineleBewegingenMap.get(ritdeel.beweging.id);
|
|
608
605
|
const huidigeActies = this.createSortedActieIdList(ritdeel.acties);
|
|
609
606
|
gewijzigd = JSON.stringify(huidigeActies) !== JSON.stringify(origineleBewegingActies);
|
|
@@ -627,7 +624,7 @@ class BewegingUtils {
|
|
|
627
624
|
let naarSeinPplg;
|
|
628
625
|
let naarSpoor = newRitdeel.getNaarPrlSpoor();
|
|
629
626
|
if (eindSein.getTypeAlsString() === BewegingUtils.SEIN_TYPE_FICTIEF) {
|
|
630
|
-
if (newRitdeel.heeftVrijebaanInfo()) {
|
|
627
|
+
if (newRitdeel.heeftVrijebaanInfo() && newRitdeel.getVrijebaanRijweg()) {
|
|
631
628
|
const vbEindSein = newRitdeel.getVrijebaanRijweg().getEindSein();
|
|
632
629
|
naarSeinNaam = vbEindSein.getName();
|
|
633
630
|
naarSeinPplg = vbEindSein.getPPLG();
|
|
@@ -670,10 +667,10 @@ class BewegingUtils {
|
|
|
670
667
|
static toRouteFileDwangNummer(dwangNummer) {
|
|
671
668
|
return (dwangNummer === 0) ? -1 : dwangNummer;
|
|
672
669
|
}
|
|
673
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
674
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
670
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingUtils, deps: [{ token: EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
671
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingUtils }); }
|
|
675
672
|
}
|
|
676
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
673
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingUtils, decorators: [{
|
|
677
674
|
type: Injectable
|
|
678
675
|
}], ctorParameters: () => [{ type: EditorService }] });
|
|
679
676
|
|
|
@@ -686,6 +683,8 @@ class ViewerControlService {
|
|
|
686
683
|
this.printing$ = new BehaviorSubject(false);
|
|
687
684
|
this.sideNavOpen = false;
|
|
688
685
|
this.sideNavOpen$ = new BehaviorSubject(this.sideNavOpen);
|
|
686
|
+
this.selectieInfos = [];
|
|
687
|
+
this.origineelTreinPad = {};
|
|
689
688
|
this.subscriptions.add(combineLatest([
|
|
690
689
|
store.select('ritSelectieIds'),
|
|
691
690
|
store.select('actieOpRitSelectieIds'),
|
|
@@ -705,19 +704,18 @@ class ViewerControlService {
|
|
|
705
704
|
selectie.push(new SelectieInfo(eind, 'zigzagNaar'));
|
|
706
705
|
this.selectieInfos = selectie;
|
|
707
706
|
}));
|
|
708
|
-
this.subscriptions.add(store.select('ritDelen').subscribe(ritdelen => this.ritdelen = ritdelen));
|
|
709
707
|
}
|
|
710
708
|
toggleSideNavVisible() {
|
|
711
709
|
this.sideNavOpen = !this.sideNavOpen;
|
|
712
710
|
this.sideNavOpen$.next(this.sideNavOpen);
|
|
713
711
|
}
|
|
714
712
|
keurAlleActiesGoed(ongeplandeActies) {
|
|
715
|
-
|
|
713
|
+
this.store.select('ritDelen').pipe(take(1), filter(ritdelen => !!ritdelen), tap(ritdelen => {
|
|
716
714
|
this.store.dispatch(ShowProgress());
|
|
717
|
-
const bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(
|
|
718
|
-
const alleActies = this.verzamelAlleActies(
|
|
715
|
+
const bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(ritdelen, this.origineelTreinPad.bewegingen);
|
|
716
|
+
const alleActies = this.verzamelAlleActies(ritdelen, ongeplandeActies);
|
|
719
717
|
this.store.dispatch(KeurAlleActiesGoed(this.getBewegingenZonderActies(bewegingen), alleActies));
|
|
720
|
-
}
|
|
718
|
+
})).subscribe();
|
|
721
719
|
}
|
|
722
720
|
setValideRit(valideRit) {
|
|
723
721
|
this.valideRit$.next(valideRit);
|
|
@@ -764,10 +762,10 @@ class ViewerControlService {
|
|
|
764
762
|
isPrinting$() {
|
|
765
763
|
return this.printing$;
|
|
766
764
|
}
|
|
767
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
768
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
765
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ViewerControlService, deps: [{ token: i2$1.Store }, { token: BewegingUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
766
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ViewerControlService, providedIn: 'root' }); }
|
|
769
767
|
}
|
|
770
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
768
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ViewerControlService, decorators: [{
|
|
771
769
|
type: Injectable,
|
|
772
770
|
args: [{
|
|
773
771
|
providedIn: 'root'
|
|
@@ -783,10 +781,10 @@ class DebugService {
|
|
|
783
781
|
setDebugFlag(debug) {
|
|
784
782
|
this.store.dispatch(SetDebug(debug));
|
|
785
783
|
if (debug) {
|
|
786
|
-
document.getElementById('svgContainer')
|
|
784
|
+
document.getElementById('svgContainer')?.addEventListener('mouseover', this.listener);
|
|
787
785
|
}
|
|
788
786
|
else {
|
|
789
|
-
document.getElementById('svgContainer')
|
|
787
|
+
document.getElementById('svgContainer')?.removeEventListener('mouseover', this.listener);
|
|
790
788
|
}
|
|
791
789
|
}
|
|
792
790
|
debugEventListener() {
|
|
@@ -817,10 +815,10 @@ class DebugService {
|
|
|
817
815
|
console.log(logline);
|
|
818
816
|
}
|
|
819
817
|
}
|
|
820
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
821
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
818
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DebugService, deps: [{ token: i2$1.Store }, { token: SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
819
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DebugService, providedIn: 'root' }); }
|
|
822
820
|
}
|
|
823
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
821
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DebugService, decorators: [{
|
|
824
822
|
type: Injectable,
|
|
825
823
|
args: [{
|
|
826
824
|
providedIn: 'root'
|
|
@@ -832,26 +830,28 @@ class PrintBewegingService {
|
|
|
832
830
|
this.store = store;
|
|
833
831
|
this.viewerControlService = viewerControlService;
|
|
834
832
|
this.sbmService = sbmService;
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
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
855
|
});
|
|
856
856
|
}
|
|
857
857
|
focusOpBeweging(ritdeel, resolve) {
|
|
@@ -875,10 +875,10 @@ class PrintBewegingService {
|
|
|
875
875
|
getPuics(topoElementen) {
|
|
876
876
|
return topoElementen.map(e => e.getPuic());
|
|
877
877
|
}
|
|
878
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
879
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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
880
|
}
|
|
881
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
881
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PrintBewegingService, decorators: [{
|
|
882
882
|
type: Injectable,
|
|
883
883
|
args: [{
|
|
884
884
|
providedIn: 'root'
|
|
@@ -886,8 +886,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
886
886
|
}], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: SignaleringsBeeldManagerService }] });
|
|
887
887
|
|
|
888
888
|
class RpeComponent {
|
|
889
|
+
constructor() {
|
|
890
|
+
this.baseurl = '';
|
|
891
|
+
this.path = '';
|
|
892
|
+
}
|
|
889
893
|
convertToScript() {
|
|
890
|
-
const element = this.script
|
|
894
|
+
const element = this.script?.nativeElement;
|
|
891
895
|
const script = document.createElement('script');
|
|
892
896
|
script.type = 'text/javascript';
|
|
893
897
|
if (this.baseurl && this.path) {
|
|
@@ -901,12 +905,12 @@ class RpeComponent {
|
|
|
901
905
|
ngAfterViewInit() {
|
|
902
906
|
this.convertToScript();
|
|
903
907
|
}
|
|
904
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
905
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
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" }); }
|
|
906
910
|
}
|
|
907
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
911
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RpeComponent, decorators: [{
|
|
908
912
|
type: Component,
|
|
909
|
-
args: [{ selector: 'rpe-component',
|
|
913
|
+
args: [{ selector: 'rpe-component', template: "<div #rpescript style.display=\"none\">\n <ng-content></ng-content>\n</div>\n" }]
|
|
910
914
|
}], propDecorators: { baseurl: [{
|
|
911
915
|
type: Input
|
|
912
916
|
}], path: [{
|
|
@@ -940,7 +944,7 @@ class KmRange {
|
|
|
940
944
|
if (result.length >= 1) {
|
|
941
945
|
return result[0];
|
|
942
946
|
}
|
|
943
|
-
return
|
|
947
|
+
return undefined;
|
|
944
948
|
}
|
|
945
949
|
heeftOverlap(kilometrering1, kilometrering2) {
|
|
946
950
|
const vanKilometrering = KmRange.getKilometrering(kilometrering1.getKmLint(), this.vanKilometreringen);
|
|
@@ -987,6 +991,41 @@ class MeldingBuilder {
|
|
|
987
991
|
}
|
|
988
992
|
}
|
|
989
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
|
+
|
|
990
1029
|
class MessageBuilder {
|
|
991
1030
|
static rwpDataNietGevonden(err) {
|
|
992
1031
|
return new Message(Severity.ERROR, 'Error bij ophalen van rijwegplan data: ' + err);
|
|
@@ -1257,10 +1296,10 @@ class AppConfigControllerService {
|
|
|
1257
1296
|
reportProgress: reportProgress
|
|
1258
1297
|
});
|
|
1259
1298
|
}
|
|
1260
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1261
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1262
1301
|
}
|
|
1263
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1302
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AppConfigControllerService, decorators: [{
|
|
1264
1303
|
type: Injectable,
|
|
1265
1304
|
args: [{
|
|
1266
1305
|
providedIn: 'root'
|
|
@@ -1403,10 +1442,10 @@ class BewegingControllerService {
|
|
|
1403
1442
|
reportProgress: reportProgress
|
|
1404
1443
|
});
|
|
1405
1444
|
}
|
|
1406
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1407
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1408
1447
|
}
|
|
1409
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1448
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingControllerService, decorators: [{
|
|
1410
1449
|
type: Injectable,
|
|
1411
1450
|
args: [{
|
|
1412
1451
|
providedIn: 'root'
|
|
@@ -1534,10 +1573,10 @@ class Class0BuildPropertiesService {
|
|
|
1534
1573
|
reportProgress: reportProgress
|
|
1535
1574
|
});
|
|
1536
1575
|
}
|
|
1537
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1538
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1539
1578
|
}
|
|
1540
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1579
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Class0BuildPropertiesService, decorators: [{
|
|
1541
1580
|
type: Injectable,
|
|
1542
1581
|
args: [{
|
|
1543
1582
|
providedIn: 'root'
|
|
@@ -1671,10 +1710,10 @@ class ConnectorControllerService {
|
|
|
1671
1710
|
reportProgress: reportProgress
|
|
1672
1711
|
});
|
|
1673
1712
|
}
|
|
1674
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1675
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1676
1715
|
}
|
|
1677
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1716
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorControllerService, decorators: [{
|
|
1678
1717
|
type: Injectable,
|
|
1679
1718
|
args: [{
|
|
1680
1719
|
providedIn: 'root'
|
|
@@ -1812,10 +1851,10 @@ class LogControllerService {
|
|
|
1812
1851
|
reportProgress: reportProgress
|
|
1813
1852
|
});
|
|
1814
1853
|
}
|
|
1815
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1816
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1817
1856
|
}
|
|
1818
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1857
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LogControllerService, decorators: [{
|
|
1819
1858
|
type: Injectable,
|
|
1820
1859
|
args: [{
|
|
1821
1860
|
providedIn: 'root'
|
|
@@ -2039,10 +2078,10 @@ class P21ControllerService {
|
|
|
2039
2078
|
reportProgress: reportProgress
|
|
2040
2079
|
});
|
|
2041
2080
|
}
|
|
2042
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2043
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
2044
2083
|
}
|
|
2045
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2084
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: P21ControllerService, decorators: [{
|
|
2046
2085
|
type: Injectable,
|
|
2047
2086
|
args: [{
|
|
2048
2087
|
providedIn: 'root'
|
|
@@ -2232,10 +2271,10 @@ class SbControllerService {
|
|
|
2232
2271
|
reportProgress: reportProgress
|
|
2233
2272
|
});
|
|
2234
2273
|
}
|
|
2235
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2236
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2274
|
+
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 }); }
|
|
2275
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SbControllerService, providedIn: 'root' }); }
|
|
2237
2276
|
}
|
|
2238
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2277
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SbControllerService, decorators: [{
|
|
2239
2278
|
type: Injectable,
|
|
2240
2279
|
args: [{
|
|
2241
2280
|
providedIn: 'root'
|
|
@@ -2327,11 +2366,11 @@ class ApiModule {
|
|
|
2327
2366
|
'See also https://github.com/angular/angular/issues/20575');
|
|
2328
2367
|
}
|
|
2329
2368
|
}
|
|
2330
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2331
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2332
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
2369
|
+
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 }); }
|
|
2370
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: ApiModule }); }
|
|
2371
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ApiModule }); }
|
|
2333
2372
|
}
|
|
2334
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2373
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ApiModule, decorators: [{
|
|
2335
2374
|
type: NgModule,
|
|
2336
2375
|
args: [{
|
|
2337
2376
|
imports: [],
|
|
@@ -2360,10 +2399,10 @@ class MstLoggingResource {
|
|
|
2360
2399
|
logMessages(logDto) {
|
|
2361
2400
|
this.controller.log(logDto).subscribe();
|
|
2362
2401
|
}
|
|
2363
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2364
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2402
|
+
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 }); }
|
|
2403
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource }); }
|
|
2365
2404
|
}
|
|
2366
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2405
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstLoggingResource, decorators: [{
|
|
2367
2406
|
type: Injectable
|
|
2368
2407
|
}], ctorParameters: () => [{ type: LogControllerService }, { type: i2$1.Store }] });
|
|
2369
2408
|
|
|
@@ -2372,38 +2411,35 @@ class LoggingHelper {
|
|
|
2372
2411
|
this.store = store;
|
|
2373
2412
|
}
|
|
2374
2413
|
maakLogDTO(melding, actie) {
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2414
|
+
return combineLatest([
|
|
2415
|
+
this.store.select('algemeneRitInfoDto'),
|
|
2416
|
+
this.store.select('iaVersie')
|
|
2417
|
+
]).pipe(take(1), map(([algemeneRitInfoDto, iaVersie]) => {
|
|
2418
|
+
let actieDto = null;
|
|
2419
|
+
if (actie) {
|
|
2420
|
+
actieDto = {
|
|
2421
|
+
pplgNaam: actie.pplgNaam,
|
|
2422
|
+
ritActieTypeOmschrijving: actie.ritActieTypeOmschrijving,
|
|
2423
|
+
ritActieStatus: actie.ritActieStatus,
|
|
2424
|
+
bewegingId: actie.bewegingId,
|
|
2425
|
+
wisselType: actie.wisselType,
|
|
2426
|
+
wisselNaam: actie.wisselNaam,
|
|
2427
|
+
wisselKantCode: actie.wisselKantCode,
|
|
2428
|
+
vanKilometerlint: actie.vanKilometerlint,
|
|
2429
|
+
vanKilometrering: actie.vanKilometrering,
|
|
2430
|
+
totKilometerlint: actie.totKilometerlint,
|
|
2431
|
+
totKilometrering: actie.totKilometrering
|
|
2432
|
+
};
|
|
2433
|
+
}
|
|
2434
|
+
return {
|
|
2435
|
+
iaVersie: iaVersie.versie,
|
|
2436
|
+
meldingLevel: melding.meldingLevel,
|
|
2437
|
+
meldingMessage: melding.meldingMessage,
|
|
2438
|
+
actieDto,
|
|
2439
|
+
algemeneRitInfoDto,
|
|
2440
|
+
sbinfoDtos: this.getSbInfoDtos()
|
|
2397
2441
|
};
|
|
2398
|
-
}
|
|
2399
|
-
return {
|
|
2400
|
-
iaVersie,
|
|
2401
|
-
meldingLevel: melding.meldingLevel,
|
|
2402
|
-
meldingMessage: melding.meldingMessage,
|
|
2403
|
-
actieDto,
|
|
2404
|
-
algemeneRitInfoDto,
|
|
2405
|
-
sbinfoDtos: this.getSbInfoDtos()
|
|
2406
|
-
};
|
|
2442
|
+
}));
|
|
2407
2443
|
}
|
|
2408
2444
|
getSbInfoDtos() {
|
|
2409
2445
|
const sbInfoDtos = [];
|
|
@@ -2414,10 +2450,10 @@ class LoggingHelper {
|
|
|
2414
2450
|
});
|
|
2415
2451
|
return sbInfoDtos;
|
|
2416
2452
|
}
|
|
2417
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2418
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2453
|
+
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 }); }
|
|
2454
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper }); }
|
|
2419
2455
|
}
|
|
2420
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2456
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoggingHelper, decorators: [{
|
|
2421
2457
|
type: Injectable
|
|
2422
2458
|
}], ctorParameters: () => [{ type: i2$1.Store }] });
|
|
2423
2459
|
|
|
@@ -2515,6 +2551,7 @@ class ActieHelper {
|
|
|
2515
2551
|
this.messagesService = messagesService;
|
|
2516
2552
|
this.store = store;
|
|
2517
2553
|
this.loggingHelper = loggingHelper;
|
|
2554
|
+
this.debug = false;
|
|
2518
2555
|
this.store.select('debug').subscribe(debug => this.debug = debug);
|
|
2519
2556
|
}
|
|
2520
2557
|
static getActieTopoElements(ritDeel, sbmService) {
|
|
@@ -2548,10 +2585,10 @@ class ActieHelper {
|
|
|
2548
2585
|
}
|
|
2549
2586
|
}
|
|
2550
2587
|
static actieComparator(actie1, actie2) {
|
|
2551
|
-
if (actie1.vanKilometrering !== actie2.vanKilometrering) {
|
|
2588
|
+
if (actie1.vanKilometrering && actie2.vanKilometrering && actie1.vanKilometrering !== actie2.vanKilometrering) {
|
|
2552
2589
|
return actie1.vanKilometrering > actie2.vanKilometrering ? 1 : -1;
|
|
2553
2590
|
}
|
|
2554
|
-
if (actie1.ritActieTypeOmschrijving !== actie2.ritActieTypeOmschrijving) {
|
|
2591
|
+
if (actie1.ritActieTypeOmschrijving && actie2.ritActieTypeOmschrijving && actie1.ritActieTypeOmschrijving !== actie2.ritActieTypeOmschrijving) {
|
|
2555
2592
|
return actie1.ritActieTypeOmschrijving > actie2.ritActieTypeOmschrijving ? 1 : -1;
|
|
2556
2593
|
}
|
|
2557
2594
|
if (actie1.wisselNaam !== actie2.wisselNaam) {
|
|
@@ -2591,9 +2628,9 @@ class ActieHelper {
|
|
|
2591
2628
|
// make sure the elems are sorted in ascending order
|
|
2592
2629
|
static sorteerTopoElementen(topoElems) {
|
|
2593
2630
|
const topoElementen = topoElems.slice();
|
|
2594
|
-
let lint =
|
|
2595
|
-
let first
|
|
2596
|
-
let second
|
|
2631
|
+
let lint = undefined;
|
|
2632
|
+
let first;
|
|
2633
|
+
let second;
|
|
2597
2634
|
for (const topoElement of topoElementen) {
|
|
2598
2635
|
let kilometreringen = null;
|
|
2599
2636
|
const kms = JsJavaUtil.listToArray(topoElement.getKilometreringen());
|
|
@@ -2625,11 +2662,11 @@ class ActieHelper {
|
|
|
2625
2662
|
if (!totKilometreringen && vanKilometreringen) {
|
|
2626
2663
|
totKilometreringen = [new MstKilometrering(vanKilometreringen[0].getKmLint(), 100000)];
|
|
2627
2664
|
}
|
|
2628
|
-
if (vanKilometreringen[0] > totKilometreringen[0]) {
|
|
2665
|
+
if (vanKilometreringen && totKilometreringen && vanKilometreringen[0] > totKilometreringen[0]) {
|
|
2629
2666
|
kmRanges.push(KmRange.rangeVoorStrekObject(e, this.addKm(vanKilometreringen, -1), this.addKm(totKilometreringen, 1)));
|
|
2630
2667
|
}
|
|
2631
2668
|
else {
|
|
2632
|
-
kmRanges.push(KmRange.rangeVoorStrekObject(e, this.addKm(vanKilometreringen, 1), this.addKm(totKilometreringen, -1)));
|
|
2669
|
+
kmRanges.push(KmRange.rangeVoorStrekObject(e, this.addKm(vanKilometreringen ?? [], 1), this.addKm(totKilometreringen ?? [], -1)));
|
|
2633
2670
|
}
|
|
2634
2671
|
});
|
|
2635
2672
|
}
|
|
@@ -2720,21 +2757,23 @@ class ActieHelper {
|
|
|
2720
2757
|
else {
|
|
2721
2758
|
const puics = [];
|
|
2722
2759
|
kmRanges.forEach(kmRange => {
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2760
|
+
if (actie.vanKilometrering && actie.vanKilometerlint && actie.totKilometrering && actie.totKilometerlint) {
|
|
2761
|
+
let vanKilometrering = new MstKilometrering(actie.vanKilometerlint, actie.vanKilometrering);
|
|
2762
|
+
let totKilometrering = new MstKilometrering(actie.totKilometerlint, actie.totKilometrering);
|
|
2763
|
+
if (actie.vanKilometrering > actie.totKilometrering) {
|
|
2764
|
+
const temp = { van: vanKilometrering, tot: totKilometrering };
|
|
2765
|
+
vanKilometrering = temp.tot;
|
|
2766
|
+
totKilometrering = temp.van;
|
|
2767
|
+
}
|
|
2768
|
+
if (kmRange.heeftOverlap(vanKilometrering, totKilometrering)) {
|
|
2769
|
+
puics.push(kmRange.topologyElement.getPuic());
|
|
2770
|
+
}
|
|
2732
2771
|
}
|
|
2733
2772
|
});
|
|
2734
2773
|
if (puics.length === 0) {
|
|
2735
2774
|
actieZonderElementen.push(actie.id);
|
|
2736
2775
|
const melding = MeldingBuilder.actieHighlightError(actieZonderElementen);
|
|
2737
|
-
|
|
2776
|
+
this.loggingHelper.maakLogDTO(melding, actie).pipe(tap(dto => logMeldingDTOs.push(dto))).subscribe();
|
|
2738
2777
|
}
|
|
2739
2778
|
retval.putAll(actie, puics);
|
|
2740
2779
|
}
|
|
@@ -2750,7 +2789,7 @@ class ActieHelper {
|
|
|
2750
2789
|
verwerkTopoElementen(topoElementen) {
|
|
2751
2790
|
const kmRanges = [];
|
|
2752
2791
|
let topoElementenZonderKms = [];
|
|
2753
|
-
let laatstePuntKms =
|
|
2792
|
+
let laatstePuntKms = undefined;
|
|
2754
2793
|
topoElementen.forEach(elem => {
|
|
2755
2794
|
const kms = JsJavaUtil.listToArray(elem.getKilometreringen());
|
|
2756
2795
|
if (kms.length > 0) {
|
|
@@ -2764,7 +2803,7 @@ class ActieHelper {
|
|
|
2764
2803
|
}
|
|
2765
2804
|
});
|
|
2766
2805
|
if (topoElementenZonderKms.length > 0 && laatstePuntKms) {
|
|
2767
|
-
ActieHelper.corrigeerTopoElementenZonderKms(topoElementenZonderKms, laatstePuntKms,
|
|
2806
|
+
ActieHelper.corrigeerTopoElementenZonderKms(topoElementenZonderKms, laatstePuntKms, undefined, kmRanges);
|
|
2768
2807
|
}
|
|
2769
2808
|
return kmRanges;
|
|
2770
2809
|
}
|
|
@@ -2827,21 +2866,21 @@ class ActieHelper {
|
|
|
2827
2866
|
if (ActieHelper.isKantCodeLinks(kantcode)) {
|
|
2828
2867
|
return wissel.getLeft();
|
|
2829
2868
|
}
|
|
2830
|
-
return
|
|
2869
|
+
return undefined;
|
|
2831
2870
|
}
|
|
2832
2871
|
bepaalPuicVoorWisselSlijpenActie(actie) {
|
|
2833
2872
|
const storingsSymboolPuic = this.sbmService.getSBWissel(actie.wisselNaam, actie.pplgNaam)?.getStoringSymboolPuic();
|
|
2834
2873
|
if (!storingsSymboolPuic && this.debug) {
|
|
2835
2874
|
const melding = MeldingBuilder.actieHighlightError([actie.id]);
|
|
2836
2875
|
this.messagesService.showMessage(MessageBuilder.actieHighlightError([actie.id]));
|
|
2837
|
-
this.
|
|
2876
|
+
this.loggingHelper.maakLogDTO(melding, actie).pipe(tap(logDto => this.mstLogResource.logMessages([logDto]))).subscribe();
|
|
2838
2877
|
}
|
|
2839
2878
|
return storingsSymboolPuic ? [storingsSymboolPuic] : [];
|
|
2840
2879
|
}
|
|
2841
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2842
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2880
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ActieHelper, deps: [{ token: SignaleringsBeeldManagerService }, { token: MstLoggingResource }, { token: MessagesService }, { token: i2$1.Store }, { token: LoggingHelper }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2881
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ActieHelper }); }
|
|
2843
2882
|
}
|
|
2844
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2883
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ActieHelper, decorators: [{
|
|
2845
2884
|
type: Injectable
|
|
2846
2885
|
}], ctorParameters: () => [{ type: SignaleringsBeeldManagerService }, { type: MstLoggingResource }, { type: MessagesService }, { type: i2$1.Store }, { type: LoggingHelper }] });
|
|
2847
2886
|
|
|
@@ -2849,10 +2888,16 @@ class RitdelenLijstComponent {
|
|
|
2849
2888
|
constructor(store, sbmService) {
|
|
2850
2889
|
this.store = store;
|
|
2851
2890
|
this.sbmService = sbmService;
|
|
2891
|
+
this.nietGeplandeActies = [];
|
|
2852
2892
|
this.focusEmitter = new EventEmitter();
|
|
2853
2893
|
this.keurAlleActiesGoed = new EventEmitter();
|
|
2894
|
+
this.ritdeelViewModels = [];
|
|
2854
2895
|
this.selectedRitdeelActies = [];
|
|
2855
2896
|
this.selectedRitdeelOngeplandeActies = [];
|
|
2897
|
+
this.disableActieKnoppenVanRitdeel = true;
|
|
2898
|
+
this.editable = false;
|
|
2899
|
+
this.ongeplandeActiesMap = new ArrayMultimap();
|
|
2900
|
+
this.geplandeActies = new ArrayMultimap();
|
|
2856
2901
|
this.NG_ACTIE_PREFIX = '* ';
|
|
2857
2902
|
this.subscriptions = [];
|
|
2858
2903
|
this.subscriptions.push(store.select('ritDelen').subscribe((ritdelen) => {
|
|
@@ -2863,9 +2908,6 @@ class RitdelenLijstComponent {
|
|
|
2863
2908
|
this.subscriptions.push(store.select('ongeplandeActies').subscribe(acties => this.ongeplandeActiesMap = acties));
|
|
2864
2909
|
this.subscriptions.push(store.select('geplandeActies').subscribe(acties => this.geplandeActies = acties));
|
|
2865
2910
|
this.subscriptions.push(store.select('editable').subscribe(editable => this.editable = editable));
|
|
2866
|
-
// listen to changes from svg-viewer-component, saving ritdeel in store isn't cool because of all the gwt in it. This is
|
|
2867
|
-
// just to make changes within the angular lifecycle.
|
|
2868
|
-
this.subscriptions.push(store.select('selectedRitdeelId').pipe(filter(id => !id)).subscribe(this.deselectRitdeel));
|
|
2869
2911
|
this.subscriptions.push(combineLatest([
|
|
2870
2912
|
this.store.select('ritDelen'),
|
|
2871
2913
|
this.store.select('ongeplandeActies')
|
|
@@ -2902,12 +2944,14 @@ class RitdelenLijstComponent {
|
|
|
2902
2944
|
this.store.dispatch(deleteRitdeel(ritdeel));
|
|
2903
2945
|
}
|
|
2904
2946
|
deleteActiesUitRit() {
|
|
2905
|
-
this.selectedRitdeel
|
|
2947
|
+
this.selectedRitdeel?.acties.slice().forEach(actie => {
|
|
2906
2948
|
this.deleteActieUitRit(actie);
|
|
2907
2949
|
});
|
|
2908
2950
|
}
|
|
2909
2951
|
deleteActieUitRit(actie) {
|
|
2910
|
-
|
|
2952
|
+
if (!this.selectedRitdeel)
|
|
2953
|
+
return;
|
|
2954
|
+
const acties = this.selectedRitdeel.acties ?? [];
|
|
2911
2955
|
const idx = acties.indexOf(actie);
|
|
2912
2956
|
if (idx >= 0) {
|
|
2913
2957
|
this.verhuisActieNaarOngepland(actie);
|
|
@@ -2933,7 +2977,7 @@ class RitdelenLijstComponent {
|
|
|
2933
2977
|
}
|
|
2934
2978
|
voegActieToeAanRit(ongeplandeActie) {
|
|
2935
2979
|
const idx = this.selectedRitdeelOngeplandeActies.indexOf(ongeplandeActie);
|
|
2936
|
-
if (idx >= 0) {
|
|
2980
|
+
if (idx >= 0 && this.selectedRitdeel) {
|
|
2937
2981
|
this.store.dispatch(addRitdeelActie(this.selectedRitdeel, this.selectedRitdeelOngeplandeActies[idx].actie));
|
|
2938
2982
|
this.store.dispatch(AddGeplandeActie(ongeplandeActie.actie, ongeplandeActie.puics));
|
|
2939
2983
|
this.store.dispatch(DeleteOngeplandeActie(ongeplandeActie));
|
|
@@ -3035,13 +3079,13 @@ class RitdelenLijstComponent {
|
|
|
3035
3079
|
return `${prefix}${ActieHelper.getVSTActieOmschrijving(actie)}`;
|
|
3036
3080
|
}
|
|
3037
3081
|
bepaalPrefixVoorActieOmschrijving(actie) {
|
|
3038
|
-
const
|
|
3039
|
-
if (this.selectedRitdeel
|
|
3082
|
+
const noPrefix = '';
|
|
3083
|
+
if (this.selectedRitdeel?.acties.includes(actie)) {
|
|
3040
3084
|
// Afwijkende naam bij niet gevisualiseerde actie in rit
|
|
3041
3085
|
const puics = this.geplandeActies.get(actie);
|
|
3042
|
-
return puics.length > 0 ?
|
|
3086
|
+
return puics.length > 0 ? noPrefix : this.NG_ACTIE_PREFIX;
|
|
3043
3087
|
}
|
|
3044
|
-
return
|
|
3088
|
+
return noPrefix;
|
|
3045
3089
|
}
|
|
3046
3090
|
actieVanKmTekst(actie) {
|
|
3047
3091
|
if (ActieHelper.isWisselSlijpenActie(actie)) {
|
|
@@ -3062,6 +3106,7 @@ class RitdelenLijstComponent {
|
|
|
3062
3106
|
return ritdeel.getPplgString();
|
|
3063
3107
|
}
|
|
3064
3108
|
getKantCode(stand) {
|
|
3109
|
+
// @ts-ignore
|
|
3065
3110
|
if (stand === window['domein'].Stand.LINKS) {
|
|
3066
3111
|
return 'L';
|
|
3067
3112
|
}
|
|
@@ -3071,12 +3116,12 @@ class RitdelenLijstComponent {
|
|
|
3071
3116
|
this.keurAlleActiesGoed.emit();
|
|
3072
3117
|
this.deselectRitdeel();
|
|
3073
3118
|
}
|
|
3074
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3075
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenLijstComponent, deps: [{ token: i2$1.Store }, { token: SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: RitdelenLijstComponent, selector: "ritdelen-lijst", inputs: { nietGeplandeActies: "nietGeplandeActies" }, outputs: { focusEmitter: "focusEmitter", keurAlleActiesGoed: "keurAlleActiesGoed" }, ngImport: i0, template: "<div id=\"ritdelen-lijst\">\n <div class=\"sidebar-header\">\n <h3 [attr.data-test-id]=\"'title-rit-details'\">Ritdetails</h3>\n </div>\n <div class=\"panes-container\">\n <div class=\"top-pane tableFixHead\" id=\"top-pane\">\n <table class=\"table\" aria-hidden=\"true\" [attr.data-test-id]=\"'table-rit-details'\">\n <thead>\n <tr>\n <th scope=\"col\">\n <input #input\n type=\"checkbox\"\n checked\n class=\"checkbox col-visibility\"\n (change)=\"toggleZichtbaarheidAlleRitdelen(input.checked)\"\n id=\"ritdetails-selecteerAlles\"\n title=\"Selecteer alles\"\n [attr.data-test-id]=\"'checkbox-alle-bewegingen'\">\n </th>\n <th scope=\"col\"></th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Naar</th>\n <th scope=\"col\">DW</th>\n <th scope=\"col\">PPLG(s)</th>\n <th scope=\"col\">Treinnr.</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n\n <tr *ngFor=\"let ritdeelViewModel of ritdeelViewModels; let i = index\"\n class=\"{{ selectedRitdeelClass(ritdeelViewModel.ritdeel) }}\" id=\"ritdetails-r{{i}}\">\n <td>\n <input id=\"ritdetails-r{{i}}-zichtbaar\"\n [attr.data-test-id]=\"'checkbox-r'+i\"\n type=\"checkbox\"\n class=\"checkbox col-visibility\"\n [checked]=\"ritdeelViewModel.isZichtbaar\"\n [title]=\"ritdeelViewModel.title\"\n (change)=\"toggleRitdeelZichtbaarheid(ritdeelViewModel.ritdeel)\"\n [hidden]=\"ritdeelViewModel.isNietBeschikbaar\"/>\n </td>\n <td id=\"ritdetails-r{{i}}-gewijzigd\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.isNieuw}}</td>\n <td id=\"ritdetails-r{{i}}-vanSpoor\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.vanPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-naarSpoor\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.naarPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-dwangNummer\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.dwangNummer}}</td>\n <td id=\"ritdetails-r{{i}}-pplgs\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.pplgString}}</td>\n <td id=\"ritdetails-r{{i}}-treinNummer\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.treinNummer}}</td>\n <td style=\"text-align:right\">\n <button *ngIf=\"editable\"\n id=\"ritdetails-r{{i}}-del\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-danger btn-sm\"\n (click)=\"deleteRitdeel(ritdeelViewModel.ritdeel)\">X\n </button>\n </td>\n </tr>\n\n </table>\n </div>\n <div class=\"actie-pane\">\n <div *ngIf=\"selectedRitdeel && (selectedRitdeelActies.length > 0 || selectedRitdeelOngeplandeActies.length > 0) \"\n id=\"actie-pane\">\n <h4>Geplande acties</h4>\n <table aria-hidden=\"true\">\n <tr>\n <th scope=\"col\">Actie</th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Tot</th>\n <th scope=\"col\">\n <button *ngIf=\"editable\"\n [hidden]=\"selectedRitdeelActies.length===0\"\n id=\"bulkSetOngeplandButton\"\n [attr.data-test-id]=\"'unplan-all-actions'\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-danger btn-sm\"\n (click)=\"deleteActiesUitRit()\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">X\n </button>\n </th>\n </tr>\n\n <tr *ngFor=\"let actie of selectedRitdeelActies; let i = index\" id=\"ritdetails-a{{i}}\">\n <td id=\"ritdetails-a{{i}}-omschrijving\" class=\"nowrap\">{{ actieOmschrijvingTekst(actie) }}</td>\n <td id=\"ritdetails-a{{i}}-vanKmLint\">{{ actieVanKmTekst(actie)}}</td>\n <td id=\"ritdetails-a{{i}}-totKmLint\">{{ actieTotKmTekst(actie)}}</td>\n <td style=\"text-align:right\">\n <button *ngIf=\"editable\"\n id=\"ritdetails-a{{i}}-del\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-danger btn-sm\"\n (click)=\"deleteActieUitRit(actie)\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">X\n </button>\n </td>\n </tr>\n </table>\n <h4>Ongeplande acties</h4>\n <table aria-hidden=\"true\">\n <tr>\n <th scope=\"col\">Actie</th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Tot</th>\n <th scope=\"col\">\n <button *ngIf=\"editable\"\n [hidden]=\"selectedRitdeelOngeplandeActies.length===0\"\n id=\"bulkSetGeplandButton\"\n [attr.data-test-id]=\"'plan-all-actions'\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-success loxia-btn-sm\"\n (click)=\"voegActiesToeAanRit()\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">^\n </button>\n </th>\n </tr>\n\n <tr *ngFor=\"let ongeplandeActie of selectedRitdeelOngeplandeActies; let i = index\"\n id=\"ritdetails-oa{{i}}\">\n <td id=\"ritdetails-oa{{i}}-omschrijving\" class=\"nowrap\">{{actieOmschrijvingTekst(ongeplandeActie.actie) }}</td>\n <td id=\"ritdetails-oa{{i}}-vanKmLint\">{{ actieVanKmTekst(ongeplandeActie.actie)}}</td>\n <td id=\"ritdetails-oa{{i}}-totKmLint\">{{ actieTotKmTekst(ongeplandeActie.actie)}}</td>\n <td style=\"text-align:right\">\n <button *ngIf=\"editable\"\n id=\"ritdetails-oa{{i}}-del\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-success loxia-btn-sm\"\n (click)=\"voegActieToeAanRit(ongeplandeActie)\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">^\n </button>\n </td>\n </tr>\n </table>\n </div>\n </div>\n <div class=\"knop-pane\">\n <button type=\"button\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm\"\n [attr.data-test-id]=\"'plan-all-actions-for-file'\"\n [innerText]=\"'Plan acties hele rit'\"\n (click)=\"planAlleRitActies()\">\n </button>\n </div>\n </div>\n</div>\n", styles: [".panes-container{display:inline;height:100%;border:1px solid black}table{width:100%}th{padding:5px;z-index:1000}td{padding:4px}tr:nth-child(2n){background:#f0f0f0}tr:nth-child(odd){background:#fff}.top-pane{height:45vh;overflow:auto}.actie-pane{height:35vh;overflow:auto}.knop-pane{height:5vh;justify-content:center;display:flex;align-items:center}.panes-container,.panes-separator,.top-pane,.actie-pane{margin:0;padding:0;width:100%}.selected{background:#ffff80!important}.disabled{background:gray!important}.visible-outside-window{background:#87cefa!important}.table-scroll-header-fix tbody{display:block;height:40vh;overflow:auto}.tableFixHead{overflow-y:auto}.tableFixHead thead th{position:sticky;top:0;background-color:#fff}.table{margin-bottom:0}.table td,.table th{border-top:none;border-bottom:none;padding-left:.75em}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
|
|
3076
3121
|
}
|
|
3077
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenLijstComponent, decorators: [{
|
|
3078
3123
|
type: Component,
|
|
3079
|
-
args: [{ selector: 'ritdelen-lijst', changeDetection: ChangeDetectionStrategy.Default,
|
|
3124
|
+
args: [{ selector: 'ritdelen-lijst', changeDetection: ChangeDetectionStrategy.Default, template: "<div id=\"ritdelen-lijst\">\n <div class=\"sidebar-header\">\n <h3 [attr.data-test-id]=\"'title-rit-details'\">Ritdetails</h3>\n </div>\n <div class=\"panes-container\">\n <div class=\"top-pane tableFixHead\" id=\"top-pane\">\n <table class=\"table\" aria-hidden=\"true\" [attr.data-test-id]=\"'table-rit-details'\">\n <thead>\n <tr>\n <th scope=\"col\">\n <input #input\n type=\"checkbox\"\n checked\n class=\"checkbox col-visibility\"\n (change)=\"toggleZichtbaarheidAlleRitdelen(input.checked)\"\n id=\"ritdetails-selecteerAlles\"\n title=\"Selecteer alles\"\n [attr.data-test-id]=\"'checkbox-alle-bewegingen'\">\n </th>\n <th scope=\"col\"></th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Naar</th>\n <th scope=\"col\">DW</th>\n <th scope=\"col\">PPLG(s)</th>\n <th scope=\"col\">Treinnr.</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n\n <tr *ngFor=\"let ritdeelViewModel of ritdeelViewModels; let i = index\"\n class=\"{{ selectedRitdeelClass(ritdeelViewModel.ritdeel) }}\" id=\"ritdetails-r{{i}}\">\n <td>\n <input id=\"ritdetails-r{{i}}-zichtbaar\"\n [attr.data-test-id]=\"'checkbox-r'+i\"\n type=\"checkbox\"\n class=\"checkbox col-visibility\"\n [checked]=\"ritdeelViewModel.isZichtbaar\"\n [title]=\"ritdeelViewModel.title\"\n (change)=\"toggleRitdeelZichtbaarheid(ritdeelViewModel.ritdeel)\"\n [hidden]=\"ritdeelViewModel.isNietBeschikbaar\"/>\n </td>\n <td id=\"ritdetails-r{{i}}-gewijzigd\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.isNieuw}}</td>\n <td id=\"ritdetails-r{{i}}-vanSpoor\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.vanPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-naarSpoor\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.naarPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-dwangNummer\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.dwangNummer}}</td>\n <td id=\"ritdetails-r{{i}}-pplgs\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.pplgString}}</td>\n <td id=\"ritdetails-r{{i}}-treinNummer\" (click)=\"selectRitdeel($event, ritdeelViewModel.ritdeel)\">{{ritdeelViewModel.treinNummer}}</td>\n <td style=\"text-align:right\">\n <button *ngIf=\"editable\"\n id=\"ritdetails-r{{i}}-del\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-danger btn-sm\"\n (click)=\"deleteRitdeel(ritdeelViewModel.ritdeel)\">X\n </button>\n </td>\n </tr>\n\n </table>\n </div>\n <div class=\"actie-pane\">\n <div *ngIf=\"selectedRitdeel && (selectedRitdeelActies.length > 0 || selectedRitdeelOngeplandeActies.length > 0) \"\n id=\"actie-pane\">\n <h4>Geplande acties</h4>\n <table aria-hidden=\"true\">\n <tr>\n <th scope=\"col\">Actie</th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Tot</th>\n <th scope=\"col\">\n <button *ngIf=\"editable\"\n [hidden]=\"selectedRitdeelActies.length===0\"\n id=\"bulkSetOngeplandButton\"\n [attr.data-test-id]=\"'unplan-all-actions'\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-danger btn-sm\"\n (click)=\"deleteActiesUitRit()\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">X\n </button>\n </th>\n </tr>\n\n <tr *ngFor=\"let actie of selectedRitdeelActies; let i = index\" id=\"ritdetails-a{{i}}\">\n <td id=\"ritdetails-a{{i}}-omschrijving\" class=\"nowrap\">{{ actieOmschrijvingTekst(actie) }}</td>\n <td id=\"ritdetails-a{{i}}-vanKmLint\">{{ actieVanKmTekst(actie)}}</td>\n <td id=\"ritdetails-a{{i}}-totKmLint\">{{ actieTotKmTekst(actie)}}</td>\n <td style=\"text-align:right\">\n <button *ngIf=\"editable\"\n id=\"ritdetails-a{{i}}-del\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-danger btn-sm\"\n (click)=\"deleteActieUitRit(actie)\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">X\n </button>\n </td>\n </tr>\n </table>\n <h4>Ongeplande acties</h4>\n <table aria-hidden=\"true\">\n <tr>\n <th scope=\"col\">Actie</th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Tot</th>\n <th scope=\"col\">\n <button *ngIf=\"editable\"\n [hidden]=\"selectedRitdeelOngeplandeActies.length===0\"\n id=\"bulkSetGeplandButton\"\n [attr.data-test-id]=\"'plan-all-actions'\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-success loxia-btn-sm\"\n (click)=\"voegActiesToeAanRit()\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">^\n </button>\n </th>\n </tr>\n\n <tr *ngFor=\"let ongeplandeActie of selectedRitdeelOngeplandeActies; let i = index\"\n id=\"ritdetails-oa{{i}}\">\n <td id=\"ritdetails-oa{{i}}-omschrijving\" class=\"nowrap\">{{actieOmschrijvingTekst(ongeplandeActie.actie) }}</td>\n <td id=\"ritdetails-oa{{i}}-vanKmLint\">{{ actieVanKmTekst(ongeplandeActie.actie)}}</td>\n <td id=\"ritdetails-oa{{i}}-totKmLint\">{{ actieTotKmTekst(ongeplandeActie.actie)}}</td>\n <td style=\"text-align:right\">\n <button *ngIf=\"editable\"\n id=\"ritdetails-oa{{i}}-del\"\n type=\"button\"\n class=\"loxia-btn loxia-btn-success loxia-btn-sm\"\n (click)=\"voegActieToeAanRit(ongeplandeActie)\"\n [disabled]=\"disableActieKnoppenVanRitdeel\">^\n </button>\n </td>\n </tr>\n </table>\n </div>\n </div>\n <div class=\"knop-pane\">\n <button type=\"button\"\n class=\"loxia-btn loxia-btn-primary loxia-btn-sm\"\n [attr.data-test-id]=\"'plan-all-actions-for-file'\"\n [innerText]=\"'Plan acties hele rit'\"\n (click)=\"planAlleRitActies()\">\n </button>\n </div>\n </div>\n</div>\n", styles: [".panes-container{display:inline;height:100%;border:1px solid black}table{width:100%}th{padding:5px;z-index:1000}td{padding:4px}tr:nth-child(2n){background:#f0f0f0}tr:nth-child(odd){background:#fff}.top-pane{height:45vh;overflow:auto}.actie-pane{height:35vh;overflow:auto}.knop-pane{height:5vh;justify-content:center;display:flex;align-items:center}.panes-container,.panes-separator,.top-pane,.actie-pane{margin:0;padding:0;width:100%}.selected{background:#ffff80!important}.disabled{background:gray!important}.visible-outside-window{background:#87cefa!important}.table-scroll-header-fix tbody{display:block;height:40vh;overflow:auto}.tableFixHead{overflow-y:auto}.tableFixHead thead th{position:sticky;top:0;background-color:#fff}.table{margin-bottom:0}.table td,.table th{border-top:none;border-bottom:none;padding-left:.75em}\n"] }]
|
|
3080
3125
|
}], ctorParameters: () => [{ type: i2$1.Store }, { type: SignaleringsBeeldManagerService }], propDecorators: { nietGeplandeActies: [{
|
|
3081
3126
|
type: Input
|
|
3082
3127
|
}], focusEmitter: [{
|
|
@@ -3174,12 +3219,12 @@ class RitdelenViewComponent {
|
|
|
3174
3219
|
}
|
|
3175
3220
|
return false;
|
|
3176
3221
|
}
|
|
3177
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3178
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3222
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenViewComponent, deps: [{ token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3223
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: RitdelenViewComponent, selector: "ritdelen-view", outputs: { focusEmitter: "focusEmitter" }, host: { listeners: { "window:keyup": "keyEvent($event)" } }, ngImport: i0, template: "<div id=\"ritdelen-lijst\">\n <div class=\"sidebar-header\">\n <h3>Ritdetails view</h3>\n </div>\n <div class=\"panes-container\">\n <div class=\"top-pane tableFixHead\" id=\"top-pane\">\n <table class=\"table\" aria-hidden=\"true\">\n <thead>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\" colspan=\"2\" style=\"text-align:center;\">Spoor</th>\n <th scope=\"col\"></th>\n <th scope=\"col\" colspan=\"2\" style=\"text-align:center;\">Sein</th>\n <th scope=\"col\"></th>\n <th scope=\"col\"></th>\n </tr>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Naar</th>\n <th scope=\"col\">DW</th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Naar</th>\n <th scope=\"col\">Treinnummer</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n\n <tr *ngFor=\"let ritdeelViewModel of ritdeelViewModels; let i = index\"\n class=\"{{ selectedRitdeelClass(ritdeelViewModel.ritdeel) }}\" id=\"ritdetails-r{{i}}\">\n <td id=\"ritdetails-r{{i}}-gewijzigd\" (click)=\"selectRitdeel(i)\"></td>\n <td id=\"ritdetails-r{{i}}-vanSpoor\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.vanPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-naarSpoor\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.naarPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-dwangNummer\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.dwangNummer}}</td>\n <td id=\"ritdetails-r{{i}}-vanSeinName\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.vanSeinName}}</td>\n <td id=\"ritdetails-r{{i}}-naarSeinName\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.naarSeinName}}</td>\n <td id=\"ritdetails-r{{i}}-treinNummer\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.treinNummer}}</td>\n <td style=\"text-align:right\">\n </td>\n </tr>\n </table>\n </div>\n </div>\n</div>\n", styles: [".panes-container{display:inline;height:100%}table{width:100%}th,td{padding:5px}tr:nth-child(2n){background:#f0f0f0}tr:nth-child(odd){background:#fff}.top-pane{height:90vh;overflow:auto}.panes-container,.panes-separator,.top-pane{margin:0;padding:0;width:100%}.selected{background:#ffff80!important}.disabled{background:gray!important}.visible-outside-window{background:#87cefa!important}.table-scroll-header-fix tbody{display:block;height:40vh;overflow:auto}.tableFixHead{overflow-y:auto}.tableFixHead thead th{position:sticky;top:0;background-color:#fff}.table{margin-bottom:0}.table td,.table th{border-top:none;border-bottom:none;padding-left:.75em}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
|
|
3179
3224
|
}
|
|
3180
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3225
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenViewComponent, decorators: [{
|
|
3181
3226
|
type: Component,
|
|
3182
|
-
args: [{ selector: 'ritdelen-view',
|
|
3227
|
+
args: [{ selector: 'ritdelen-view', template: "<div id=\"ritdelen-lijst\">\n <div class=\"sidebar-header\">\n <h3>Ritdetails view</h3>\n </div>\n <div class=\"panes-container\">\n <div class=\"top-pane tableFixHead\" id=\"top-pane\">\n <table class=\"table\" aria-hidden=\"true\">\n <thead>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\" colspan=\"2\" style=\"text-align:center;\">Spoor</th>\n <th scope=\"col\"></th>\n <th scope=\"col\" colspan=\"2\" style=\"text-align:center;\">Sein</th>\n <th scope=\"col\"></th>\n <th scope=\"col\"></th>\n </tr>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Naar</th>\n <th scope=\"col\">DW</th>\n <th scope=\"col\">Van</th>\n <th scope=\"col\">Naar</th>\n <th scope=\"col\">Treinnummer</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n\n <tr *ngFor=\"let ritdeelViewModel of ritdeelViewModels; let i = index\"\n class=\"{{ selectedRitdeelClass(ritdeelViewModel.ritdeel) }}\" id=\"ritdetails-r{{i}}\">\n <td id=\"ritdetails-r{{i}}-gewijzigd\" (click)=\"selectRitdeel(i)\"></td>\n <td id=\"ritdetails-r{{i}}-vanSpoor\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.vanPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-naarSpoor\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.naarPrlSpoor}}</td>\n <td id=\"ritdetails-r{{i}}-dwangNummer\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.dwangNummer}}</td>\n <td id=\"ritdetails-r{{i}}-vanSeinName\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.vanSeinName}}</td>\n <td id=\"ritdetails-r{{i}}-naarSeinName\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.naarSeinName}}</td>\n <td id=\"ritdetails-r{{i}}-treinNummer\" (click)=\"selectRitdeel(i)\">{{ritdeelViewModel.treinNummer}}</td>\n <td style=\"text-align:right\">\n </td>\n </tr>\n </table>\n </div>\n </div>\n</div>\n", styles: [".panes-container{display:inline;height:100%}table{width:100%}th,td{padding:5px}tr:nth-child(2n){background:#f0f0f0}tr:nth-child(odd){background:#fff}.top-pane{height:90vh;overflow:auto}.panes-container,.panes-separator,.top-pane{margin:0;padding:0;width:100%}.selected{background:#ffff80!important}.disabled{background:gray!important}.visible-outside-window{background:#87cefa!important}.table-scroll-header-fix tbody{display:block;height:40vh;overflow:auto}.tableFixHead{overflow-y:auto}.tableFixHead thead th{position:sticky;top:0;background-color:#fff}.table{margin-bottom:0}.table td,.table th{border-top:none;border-bottom:none;padding-left:.75em}\n"] }]
|
|
3183
3228
|
}], ctorParameters: () => [{ type: i2$1.Store }], propDecorators: { focusEmitter: [{
|
|
3184
3229
|
type: Output
|
|
3185
3230
|
}], keyEvent: [{
|
|
@@ -3198,49 +3243,18 @@ class RitdeelViewModel {
|
|
|
3198
3243
|
}
|
|
3199
3244
|
}
|
|
3200
3245
|
|
|
3201
|
-
class CarouselControlsComponent {
|
|
3202
|
-
constructor(store) {
|
|
3203
|
-
this.store = store;
|
|
3204
|
-
this.paginationSize = 4;
|
|
3205
|
-
this.ritdelen$ = this.store.select('ritDelen').pipe(filter(r => r?.length > 0));
|
|
3206
|
-
this.kanLinks$ = this.ritdelen$.pipe(map(r => this.kanLinksNavigeren(r)));
|
|
3207
|
-
this.kanRechts$ = this.ritdelen$.pipe(map(r => this.kanRechtsNavigeren(r)));
|
|
3208
|
-
}
|
|
3209
|
-
kanLinksNavigeren(ritDelen) {
|
|
3210
|
-
return ritDelen.length > this.paginationSize && !ritDelen[0].isBinnenWindow();
|
|
3211
|
-
}
|
|
3212
|
-
kanRechtsNavigeren(ritDelen) {
|
|
3213
|
-
return ritDelen.length > this.paginationSize && !ritDelen[ritDelen.length - 1].isBinnenWindow();
|
|
3214
|
-
}
|
|
3215
|
-
navigeerNaarLinks(event) {
|
|
3216
|
-
this.store.dispatch(navigeer(event?.ctrlKey ? -1 : -(this.paginationSize - 1), this.paginationSize, this.iaversieinfo));
|
|
3217
|
-
}
|
|
3218
|
-
navigeerNaarRechts(event) {
|
|
3219
|
-
this.store.dispatch(navigeer(event?.ctrlKey ? 1 : this.paginationSize - 1, this.paginationSize, this.iaversieinfo));
|
|
3220
|
-
}
|
|
3221
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: CarouselControlsComponent, deps: [{ token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3222
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: CarouselControlsComponent, isStandalone: false, 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" }] }); }
|
|
3223
|
-
}
|
|
3224
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: CarouselControlsComponent, decorators: [{
|
|
3225
|
-
type: Component,
|
|
3226
|
-
args: [{ selector: 'carousel-controls', standalone: false, 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"] }]
|
|
3227
|
-
}], ctorParameters: () => [{ type: i2$1.Store }], propDecorators: { paginationSize: [{
|
|
3228
|
-
type: Input
|
|
3229
|
-
}], iaversieinfo: [{
|
|
3230
|
-
type: Input
|
|
3231
|
-
}], sideNavOpen: [{
|
|
3232
|
-
type: Input
|
|
3233
|
-
}] } });
|
|
3234
|
-
|
|
3235
3246
|
class ViewerControlsComponent {
|
|
3236
3247
|
constructor(store, viewerControlsService, bewegingUtils) {
|
|
3237
3248
|
this.store = store;
|
|
3238
3249
|
this.viewerControlsService = viewerControlsService;
|
|
3239
3250
|
this.bewegingUtils = bewegingUtils;
|
|
3240
3251
|
this.paginationSize = 4;
|
|
3252
|
+
this.treinpad = undefined;
|
|
3253
|
+
this.goedgekeurd = new EventEmitter();
|
|
3241
3254
|
this.printing$ = this.viewerControlsService.isPrinting$();
|
|
3242
3255
|
this.valideRit$ = this.viewerControlsService.isValideRit$();
|
|
3243
3256
|
this.subscriptions = new Subscription();
|
|
3257
|
+
this.editable = false;
|
|
3244
3258
|
this.subscriptions.add(this.store.select('editable').subscribe(editable => this.editable = editable));
|
|
3245
3259
|
}
|
|
3246
3260
|
ngOnChanges({ treinpad }) {
|
|
@@ -3252,24 +3266,23 @@ class ViewerControlsComponent {
|
|
|
3252
3266
|
return this.editable && this.viewerControlsService.selectieInfos.length !== 0;
|
|
3253
3267
|
}
|
|
3254
3268
|
goedkeurenClick() {
|
|
3255
|
-
|
|
3256
|
-
|
|
3257
|
-
|
|
3258
|
-
|
|
3259
|
-
|
|
3260
|
-
|
|
3261
|
-
|
|
3269
|
+
this.store.select('ritDelen').pipe(filter(ritdelen => !!ritdelen), tap(ritDelen => {
|
|
3270
|
+
if (this.treinpad) {
|
|
3271
|
+
delete this.treinpad.aantalRitActies;
|
|
3272
|
+
this.treinpad.bewegingen = this.bewegingUtils.extractBewegingenUitRitdelen(ritDelen, this.viewerControlsService.origineelTreinPad.bewegingen);
|
|
3273
|
+
this.goedgekeurd.emit(this.treinpad);
|
|
3274
|
+
this.viewerControlsService.setOrigineelTreinPad(this.treinpad);
|
|
3275
|
+
}
|
|
3276
|
+
})).subscribe();
|
|
3262
3277
|
}
|
|
3263
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3264
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3278
|
+
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 }); }
|
|
3279
|
+
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" }] }); }
|
|
3265
3280
|
}
|
|
3266
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3281
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ViewerControlsComponent, decorators: [{
|
|
3267
3282
|
type: Component,
|
|
3268
|
-
args: [{ selector: 'viewer-controls',
|
|
3283
|
+
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"] }]
|
|
3269
3284
|
}], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: BewegingUtils }], propDecorators: { paginationSize: [{
|
|
3270
3285
|
type: Input
|
|
3271
|
-
}], iaversieinfo: [{
|
|
3272
|
-
type: Input
|
|
3273
3286
|
}], treinpad: [{
|
|
3274
3287
|
type: Input
|
|
3275
3288
|
}], goedgekeurd: [{
|
|
@@ -3324,7 +3337,7 @@ class ActiePopoverBepaler {
|
|
|
3324
3337
|
ongeplandeActies.entries.forEach(entry => {
|
|
3325
3338
|
const treinNummerActieInfos = puicNaarOngeplandeActieMap.get(entry.key);
|
|
3326
3339
|
if (!treinNummerActieInfos?.map(({ actie }) => actie).includes(entry.value.actie)) {
|
|
3327
|
-
puicNaarOngeplandeActieMap.put(entry.key, {
|
|
3340
|
+
puicNaarOngeplandeActieMap.put(entry.key, { actie: entry.value.actie });
|
|
3328
3341
|
}
|
|
3329
3342
|
});
|
|
3330
3343
|
}
|
|
@@ -3384,12 +3397,15 @@ class SvgVisualisatieComponent {
|
|
|
3384
3397
|
this.actieHelper = actieHelper;
|
|
3385
3398
|
this.sbmService = sbmService;
|
|
3386
3399
|
this.editorService = editorService;
|
|
3400
|
+
this.nietGeplandeActies = [];
|
|
3401
|
+
this.useClickArea = false;
|
|
3387
3402
|
this.svgInfos$ = this.store.select('svgInfos');
|
|
3388
3403
|
this.popoverInfos = [];
|
|
3389
3404
|
this.clickableIds = [];
|
|
3390
3405
|
this.rightClickableIds = [];
|
|
3391
3406
|
this.contextMenuActions = [];
|
|
3392
3407
|
this.contextMenuStyle = { display: 'none' };
|
|
3408
|
+
this.editable = false;
|
|
3393
3409
|
this.puicNaarBeginSeinRitdeel = new Map();
|
|
3394
3410
|
this.puicNaarEindSeinCombinatie = new Map();
|
|
3395
3411
|
this.puicNaarAlternatieveRoute = new Map();
|
|
@@ -3413,7 +3429,7 @@ class SvgVisualisatieComponent {
|
|
|
3413
3429
|
}));
|
|
3414
3430
|
}
|
|
3415
3431
|
ngOnInit() {
|
|
3416
|
-
document.getElementById('contextMenu')
|
|
3432
|
+
document.getElementById('contextMenu')?.addEventListener('mouseleave', () => this.hideContextMenu());
|
|
3417
3433
|
}
|
|
3418
3434
|
ngOnDestroy() {
|
|
3419
3435
|
this.subscriptions.forEach(s => s.unsubscribe());
|
|
@@ -3440,7 +3456,6 @@ class SvgVisualisatieComponent {
|
|
|
3440
3456
|
this.store.dispatch(navigeerBuitenRit(puic));
|
|
3441
3457
|
}
|
|
3442
3458
|
}
|
|
3443
|
-
this.store.dispatch(SetSelectedRitdeel(undefined));
|
|
3444
3459
|
}
|
|
3445
3460
|
handleImxviewRightClick(evt) {
|
|
3446
3461
|
const fn = () => {
|
|
@@ -3471,7 +3486,7 @@ class SvgVisualisatieComponent {
|
|
|
3471
3486
|
handleNieuweRouteToegevoegd() {
|
|
3472
3487
|
this.store.select('nieuweRoute')
|
|
3473
3488
|
.subscribe((nieuweRoute) => {
|
|
3474
|
-
if (nieuweRoute
|
|
3489
|
+
if (nieuweRoute?.isValid()) {
|
|
3475
3490
|
this.store.dispatch(ResetNieuweRoute());
|
|
3476
3491
|
this.store.dispatch(ritdeelInvoegen(nieuweRoute));
|
|
3477
3492
|
}
|
|
@@ -3584,7 +3599,7 @@ class SvgVisualisatieComponent {
|
|
|
3584
3599
|
});
|
|
3585
3600
|
this.viewerControlsService.setValideRit(!gebrokenRit);
|
|
3586
3601
|
this.store.dispatch(SetGeplandeActies(actieOpRitSelectiePuics));
|
|
3587
|
-
const actieOpRitSelectiePuicsArray =
|
|
3602
|
+
const actieOpRitSelectiePuicsArray = Array.from(actieOpRitSelectiePuics.values()).flat();
|
|
3588
3603
|
this.store.dispatch(SetActieOpRitSelectieIds(actieOpRitSelectiePuicsArray));
|
|
3589
3604
|
ritSelectiePuics = ritSelectiePuics.filter(item => actieOpRitSelectiePuicsArray.indexOf(item) < 0); // make mutually exclusive
|
|
3590
3605
|
this.store.dispatch(SetRitSelectieIds(ritSelectiePuics));
|
|
@@ -3617,12 +3632,12 @@ class SvgVisualisatieComponent {
|
|
|
3617
3632
|
getPuics(topoElementen) {
|
|
3618
3633
|
return topoElementen.map(e => e.getPuic());
|
|
3619
3634
|
}
|
|
3620
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3621
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3635
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgVisualisatieComponent, deps: [{ token: i2$1.Store }, { token: ViewerControlService }, { token: ActieHelper }, { token: SignaleringsBeeldManagerService }, { token: EditorService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3636
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: SvgVisualisatieComponent, selector: "svg-visualisatie", inputs: { nietGeplandeActies: "nietGeplandeActies", useClickArea: "useClickArea" }, viewQueries: [{ propertyName: "imxviewer", first: true, predicate: ["imxviewercontainer"], descendants: true }], ngImport: i0, template: "<imx-viewer #imxviewercontainer\n [svgInfo]=\"svgInfos$ | async\"\n [selectieInfos]=\"viewerControlsService.selectieInfos\"\n [clickableIds]=\"clickableIds\"\n [rightClickableIds]=\"rightClickableIds\"\n [popoverInfos]=\"popoverInfos\"\n [inlineDgnCssImport]=\"false\"\n [useClickArea]=\"useClickArea\"\n [zoomScaleSensitivity]=\"0.25\"\n (clickHandler)=\"handleImxviewClick($event)\"\n (rightClickHandler)=\"handleImxviewRightClick($event)\"\n ></imx-viewer>\n\n<ul id=\"contextMenu\" class=\"dropdown-menu\" role=\"menu\" [ngStyle]=\"contextMenuStyle\">\n <li *ngFor=\"let action of contextMenuActions\"><a class=\"dropdown-item\" tabindex=\"-1\"\n (click)=\"action.click()\">{{action.label}}</a></li>\n</ul>\n", styles: [".dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i7.ImxViewerComponent, selector: "imx-viewer", inputs: ["useClickArea", "inlineDgnCssImport", "svgInfo", "selectieInfos", "clickableIds", "rightClickableIds", "popoverInfos", "zoomScaleSensitivity", "autoAlignSvgsHorizontally", "initialPanAndZoom"], outputs: ["clickHandler", "rightClickHandler", "svgLoaded", "panned"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
3622
3637
|
}
|
|
3623
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3638
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgVisualisatieComponent, decorators: [{
|
|
3624
3639
|
type: Component,
|
|
3625
|
-
args: [{ selector: 'svg-visualisatie',
|
|
3640
|
+
args: [{ selector: 'svg-visualisatie', template: "<imx-viewer #imxviewercontainer\n [svgInfo]=\"svgInfos$ | async\"\n [selectieInfos]=\"viewerControlsService.selectieInfos\"\n [clickableIds]=\"clickableIds\"\n [rightClickableIds]=\"rightClickableIds\"\n [popoverInfos]=\"popoverInfos\"\n [inlineDgnCssImport]=\"false\"\n [useClickArea]=\"useClickArea\"\n [zoomScaleSensitivity]=\"0.25\"\n (clickHandler)=\"handleImxviewClick($event)\"\n (rightClickHandler)=\"handleImxviewRightClick($event)\"\n ></imx-viewer>\n\n<ul id=\"contextMenu\" class=\"dropdown-menu\" role=\"menu\" [ngStyle]=\"contextMenuStyle\">\n <li *ngFor=\"let action of contextMenuActions\"><a class=\"dropdown-item\" tabindex=\"-1\"\n (click)=\"action.click()\">{{action.label}}</a></li>\n</ul>\n", styles: [".dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}\n"] }]
|
|
3626
3641
|
}], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: ActieHelper }, { type: SignaleringsBeeldManagerService }, { type: EditorService }], propDecorators: { nietGeplandeActies: [{
|
|
3627
3642
|
type: Input
|
|
3628
3643
|
}], useClickArea: [{
|
|
@@ -3640,6 +3655,9 @@ class MstviewerComponent {
|
|
|
3640
3655
|
this.printBewegingService = printBewegingService;
|
|
3641
3656
|
this.paginationSize = 4;
|
|
3642
3657
|
this.baseurl = 'https://acceptatie.raildesign.nl';
|
|
3658
|
+
this.debug = false;
|
|
3659
|
+
this.viewer = false;
|
|
3660
|
+
this.useClickArea = false;
|
|
3643
3661
|
this.goedgekeurd = new EventEmitter();
|
|
3644
3662
|
this.subscriptions = new Subscription();
|
|
3645
3663
|
this.subscriptions.add(this.store.select('nieuweBewegingen').subscribe(nieuweRit => {
|
|
@@ -3690,23 +3708,26 @@ class MstviewerComponent {
|
|
|
3690
3708
|
}
|
|
3691
3709
|
}
|
|
3692
3710
|
printFocusBeweging(bewegingId) {
|
|
3693
|
-
return this.printBewegingService.printBeweging(bewegingId, this.paginationSize
|
|
3711
|
+
return this.printBewegingService.printBeweging(bewegingId, this.paginationSize);
|
|
3694
3712
|
}
|
|
3695
3713
|
keurAlleActiesGoed() {
|
|
3696
3714
|
this.viewerControlsService.keurAlleActiesGoed(this.ongeplandeActies);
|
|
3697
3715
|
}
|
|
3698
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3699
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3716
|
+
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 }); }
|
|
3717
|
+
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()\">×</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" }] }); }
|
|
3700
3718
|
}
|
|
3701
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3719
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstviewerComponent, decorators: [{
|
|
3702
3720
|
type: Component,
|
|
3703
|
-
args: [{ selector: 'mst-viewer',
|
|
3721
|
+
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()\">×</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"] }]
|
|
3704
3722
|
}], ctorParameters: () => [{ type: i2$1.Store }, { type: ViewerControlService }, { type: DebugService }, { type: PrintBewegingService }], propDecorators: { iaversieinfo: [{
|
|
3705
|
-
type: Input
|
|
3723
|
+
type: Input,
|
|
3724
|
+
args: [{ required: true }]
|
|
3706
3725
|
}], treinpad: [{
|
|
3707
|
-
type: Input
|
|
3726
|
+
type: Input,
|
|
3727
|
+
args: [{ required: true }]
|
|
3708
3728
|
}], ongeplandeActies: [{
|
|
3709
|
-
type: Input
|
|
3729
|
+
type: Input,
|
|
3730
|
+
args: [{ required: true }]
|
|
3710
3731
|
}], paginationSize: [{
|
|
3711
3732
|
type: Input
|
|
3712
3733
|
}], baseurl: [{
|
|
@@ -3731,8 +3752,8 @@ let SignaleringsbeeldInfoResource = class SignaleringsbeeldInfoResource extends
|
|
|
3731
3752
|
ngOnDestroy() {
|
|
3732
3753
|
this.subscriptions.unsubscribe();
|
|
3733
3754
|
}
|
|
3734
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3735
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3755
|
+
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 }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3756
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsbeeldInfoResource }); }
|
|
3736
3757
|
};
|
|
3737
3758
|
__decorate([
|
|
3738
3759
|
ResourceAction({
|
|
@@ -3750,7 +3771,7 @@ SignaleringsbeeldInfoResource = __decorate([
|
|
|
3750
3771
|
pathPrefix: '/mst/rest/signaleringsbeeldeninfo'
|
|
3751
3772
|
})
|
|
3752
3773
|
], SignaleringsbeeldInfoResource);
|
|
3753
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3774
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SignaleringsbeeldInfoResource, decorators: [{
|
|
3754
3775
|
type: Injectable
|
|
3755
3776
|
}], ctorParameters: () => [{ type: i1$1.ResourceHandler }, { type: i2$1.Store }], propDecorators: { laadSignaleringsbeeldInfo: [], getBestaatIALevering: [] } });
|
|
3756
3777
|
class SignaleringsbeeldInfoDto extends ResourceModel {
|
|
@@ -3780,16 +3801,18 @@ class BaseRestService {
|
|
|
3780
3801
|
this.httpClient = httpClient;
|
|
3781
3802
|
this.store = store;
|
|
3782
3803
|
this.subscriptions = new Subscription();
|
|
3804
|
+
this.baseUrl = '';
|
|
3805
|
+
this.iaVersie = '';
|
|
3783
3806
|
this.subscriptions.add(this.store.select('baseUrl').subscribe(baseUrl => this.baseUrl = baseUrl));
|
|
3784
3807
|
this.subscriptions.add(this.store.select('iaVersie').subscribe(iaVersie => this.iaVersie = iaVersie.versie));
|
|
3785
3808
|
}
|
|
3786
3809
|
ngOnDestroy() {
|
|
3787
3810
|
this.subscriptions.unsubscribe();
|
|
3788
3811
|
}
|
|
3789
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3790
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3812
|
+
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 }); }
|
|
3813
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BaseRestService, providedIn: 'root' }); }
|
|
3791
3814
|
}
|
|
3792
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3815
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BaseRestService, decorators: [{
|
|
3793
3816
|
type: Injectable,
|
|
3794
3817
|
args: [{
|
|
3795
3818
|
providedIn: 'root'
|
|
@@ -3810,10 +3833,10 @@ class BewegingVerrijkerService extends BaseRestService {
|
|
|
3810
3833
|
this.store.dispatch(ClearProgress());
|
|
3811
3834
|
return [];
|
|
3812
3835
|
}
|
|
3813
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3814
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3836
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingVerrijkerService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3837
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingVerrijkerService, providedIn: 'root' }); }
|
|
3815
3838
|
}
|
|
3816
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3839
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingVerrijkerService, decorators: [{
|
|
3817
3840
|
type: Injectable,
|
|
3818
3841
|
args: [{
|
|
3819
3842
|
providedIn: 'root'
|
|
@@ -3955,13 +3978,13 @@ class Ritdeel {
|
|
|
3955
3978
|
return retval;
|
|
3956
3979
|
}
|
|
3957
3980
|
getVrijebaanRijwegplan() {
|
|
3958
|
-
return this.vrijebaanRijwegplanRijwegDwangCombi
|
|
3981
|
+
return this.vrijebaanRijwegplanRijwegDwangCombi?.rijwegplan;
|
|
3959
3982
|
}
|
|
3960
3983
|
getVrijebaanRijweg() {
|
|
3961
|
-
return this.vrijebaanRijwegplanRijwegDwangCombi
|
|
3984
|
+
return this.vrijebaanRijwegplanRijwegDwangCombi?.rijweg;
|
|
3962
3985
|
}
|
|
3963
3986
|
getVrijebaanDwang() {
|
|
3964
|
-
return this.vrijebaanRijwegplanRijwegDwangCombi
|
|
3987
|
+
return this.vrijebaanRijwegplanRijwegDwangCombi?.dwang;
|
|
3965
3988
|
}
|
|
3966
3989
|
getDwangNummer() {
|
|
3967
3990
|
return this.rijwegplanRijwegDwangCombi.getDwangNummer();
|
|
@@ -3978,7 +4001,7 @@ class Ritdeel {
|
|
|
3978
4001
|
isBinnenWindow() {
|
|
3979
4002
|
return (this.zichtbaarheid === RitdeelZichtbaarheid.ZICHTBAAR ||
|
|
3980
4003
|
this.zichtbaarheid === RitdeelZichtbaarheid.ONZICHTBAAR_DOOR_GEBRUIKER)
|
|
3981
|
-
&& this.zichtbaarBuitenPaginatie
|
|
4004
|
+
&& !this.zichtbaarBuitenPaginatie;
|
|
3982
4005
|
}
|
|
3983
4006
|
isNietBeschikbaar() {
|
|
3984
4007
|
return this.zichtbaarheid === RitdeelZichtbaarheid.ONZICHTBAAR_DOOR_SYSTEEM;
|
|
@@ -4001,10 +4024,10 @@ class Ritdeel {
|
|
|
4001
4024
|
}
|
|
4002
4025
|
}
|
|
4003
4026
|
heeftVrijebaanInfo() {
|
|
4004
|
-
return this.vrijebaanRijwegplanRijwegDwangCombi && !!this.vrijebaanRijwegplanRijwegDwangCombi.dwang;
|
|
4027
|
+
return !!this.vrijebaanRijwegplanRijwegDwangCombi && !!this.vrijebaanRijwegplanRijwegDwangCombi.dwang;
|
|
4005
4028
|
}
|
|
4006
4029
|
getVrijebaanPrlRoute() {
|
|
4007
|
-
return this.vrijebaanRijwegplanRijwegDwangCombi
|
|
4030
|
+
return this.vrijebaanRijwegplanRijwegDwangCombi?.getRoute();
|
|
4008
4031
|
}
|
|
4009
4032
|
getTopologieElementen() {
|
|
4010
4033
|
return this.topoElementen;
|
|
@@ -4036,10 +4059,10 @@ class Ritdeel {
|
|
|
4036
4059
|
getZichtbaarheidBuitenPaginatie() {
|
|
4037
4060
|
return this.zichtbaarBuitenPaginatie;
|
|
4038
4061
|
}
|
|
4039
|
-
bepaalTopologieElementen(
|
|
4040
|
-
const topoElementen =
|
|
4062
|
+
bepaalTopologieElementen(sbmService) {
|
|
4063
|
+
const topoElementen = sbmService.bepaalRouteElementen(this.getRoute());
|
|
4041
4064
|
if (this.heeftVrijebaanInfo()) {
|
|
4042
|
-
const vrijebaanTopoElementen =
|
|
4065
|
+
const vrijebaanTopoElementen = sbmService.bepaalRouteElementen(this.getVrijebaanPrlRoute());
|
|
4043
4066
|
topoElementen.push(...vrijebaanTopoElementen);
|
|
4044
4067
|
}
|
|
4045
4068
|
this.topoElementen = topoElementen;
|
|
@@ -4085,7 +4108,7 @@ class RitLezerService {
|
|
|
4085
4108
|
ritDelen.push(new Ritdeel(dwangInfo, beweging.ritActies, beweging, vrijebaanDwangInfo, vervolgSpoor, []));
|
|
4086
4109
|
}
|
|
4087
4110
|
extractVrijebaanDwangInfo(beweging, rijwegPlan, rijweg) {
|
|
4088
|
-
let vrijebaanDwangInfo =
|
|
4111
|
+
let vrijebaanDwangInfo = undefined;
|
|
4089
4112
|
let vervolgSpoor;
|
|
4090
4113
|
if (beweging.naarSpoor.endsWith(SPOOR_NAAR_VRIJEBAAN_POSTFIX) ||
|
|
4091
4114
|
beweging.naarSpoor.endsWith(SPOOR_NAAR_VEERWISSEL_VRIJEBAAN_POSTFIX)) {
|
|
@@ -4099,9 +4122,9 @@ class RitLezerService {
|
|
|
4099
4122
|
vrijebaanRijweg = vrijebaanRijwegen[0];
|
|
4100
4123
|
vrijebaanDwang = vrijebaanRijweg.getDwangVoorDwangNummer(0);
|
|
4101
4124
|
vervolgSpoor = vrijebaanRijwegplan.getVervolgSpoor(vrijebaanRijweg);
|
|
4125
|
+
vrijebaanDwangInfo =
|
|
4126
|
+
new RijwegplanRijwegDwangCombinatie(vrijebaanRijwegplan, vrijebaanRijweg, vrijebaanDwang);
|
|
4102
4127
|
}
|
|
4103
|
-
vrijebaanDwangInfo =
|
|
4104
|
-
new RijwegplanRijwegDwangCombinatie(vrijebaanRijwegplan, vrijebaanRijweg, vrijebaanDwang);
|
|
4105
4128
|
}
|
|
4106
4129
|
}
|
|
4107
4130
|
return { vrijebaanDwangInfo, vervolgSpoor };
|
|
@@ -4135,10 +4158,10 @@ class RitLezerService {
|
|
|
4135
4158
|
isGewijzigd(beweging) {
|
|
4136
4159
|
return beweging.wijzigStatus === 'Gewijzigd';
|
|
4137
4160
|
}
|
|
4138
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4139
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4161
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitLezerService, deps: [{ token: EditorService }, { token: MessagesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4162
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitLezerService }); }
|
|
4140
4163
|
}
|
|
4141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitLezerService, decorators: [{
|
|
4142
4165
|
type: Injectable
|
|
4143
4166
|
}], ctorParameters: () => [{ type: EditorService }, { type: MessagesService }] });
|
|
4144
4167
|
|
|
@@ -4154,7 +4177,7 @@ class BepaalOngeplandeActiesEffect {
|
|
|
4154
4177
|
this.bepaalOngeplandeActies$ = createEffect(() => this.actions$.pipe(ofType(BepaalOngeplandeActies), withLatestFrom(this.store), map(([action, store]) => {
|
|
4155
4178
|
const puicActieMap = new ArrayMultimap();
|
|
4156
4179
|
const nietGevondenTakken = [];
|
|
4157
|
-
const logMeldingDTOs = [];
|
|
4180
|
+
const logMeldingDTOs$ = [];
|
|
4158
4181
|
const acties = store.ritDelen.flatMap(rd => rd.acties);
|
|
4159
4182
|
action.ongeplandeActies.forEach(actie => {
|
|
4160
4183
|
const alreadyAdded = acties.filter(a => a.id === actie.id).length > 0;
|
|
@@ -4170,11 +4193,11 @@ class BepaalOngeplandeActiesEffect {
|
|
|
4170
4193
|
if (!spoortak && nietGevondenTakken.indexOf(takId) < 0) {
|
|
4171
4194
|
nietGevondenTakken.push(takId);
|
|
4172
4195
|
const melding = MeldingBuilder.nietGevondenTakkenOngeplandeActies(nietGevondenTakken);
|
|
4173
|
-
logMeldingDTOs
|
|
4196
|
+
logMeldingDTOs$.push(this.loggingHelper.maakLogDTO(melding, actie));
|
|
4174
4197
|
}
|
|
4175
4198
|
else if (spoortak) {
|
|
4176
4199
|
const melding = MeldingBuilder.actieHighlightError([actie.id]);
|
|
4177
|
-
logMeldingDTOs
|
|
4200
|
+
logMeldingDTOs$.push(this.loggingHelper.maakLogDTO(melding, actie));
|
|
4178
4201
|
this.messagesService.showMessage(MessageBuilder.actieHighlightError([actie.id]));
|
|
4179
4202
|
}
|
|
4180
4203
|
}
|
|
@@ -4183,8 +4206,8 @@ class BepaalOngeplandeActiesEffect {
|
|
|
4183
4206
|
if (nietGevondenTakken.length > 0) {
|
|
4184
4207
|
this.messagesService.showMessage(MessageBuilder.nietGevondenTakkenOngeplandeActies(nietGevondenTakken));
|
|
4185
4208
|
}
|
|
4186
|
-
if (logMeldingDTOs
|
|
4187
|
-
this.mstLogResource.logMessages(
|
|
4209
|
+
if (logMeldingDTOs$.length > 0) {
|
|
4210
|
+
forkJoin(logMeldingDTOs$).pipe(tap(dtos => this.mstLogResource.logMessages(dtos))).subscribe();
|
|
4188
4211
|
}
|
|
4189
4212
|
this.store.dispatch(SetOngeplandeActies(puicActieMap));
|
|
4190
4213
|
this.store.dispatch(SetOngeplandeActieSelectieIds(Array.from(puicActieMap.keys())));
|
|
@@ -4196,10 +4219,10 @@ class BepaalOngeplandeActiesEffect {
|
|
|
4196
4219
|
puicMap.put(puic, ongeplandeActie);
|
|
4197
4220
|
});
|
|
4198
4221
|
}
|
|
4199
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4200
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4222
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BepaalOngeplandeActiesEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsBeeldManagerService }, { token: MstLoggingResource }, { token: MessagesService }, { token: ActieHelper }, { token: LoggingHelper }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4223
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BepaalOngeplandeActiesEffect }); }
|
|
4201
4224
|
}
|
|
4202
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4225
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BepaalOngeplandeActiesEffect, decorators: [{
|
|
4203
4226
|
type: Injectable
|
|
4204
4227
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }, { type: MstLoggingResource }, { type: MessagesService }, { type: ActieHelper }, { type: LoggingHelper }] });
|
|
4205
4228
|
|
|
@@ -4208,10 +4231,10 @@ class DateService {
|
|
|
4208
4231
|
getCurrentDate() {
|
|
4209
4232
|
return new Date();
|
|
4210
4233
|
}
|
|
4211
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4212
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4234
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4235
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DateService, providedIn: 'root' }); }
|
|
4213
4236
|
}
|
|
4214
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4237
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DateService, decorators: [{
|
|
4215
4238
|
type: Injectable,
|
|
4216
4239
|
args: [{
|
|
4217
4240
|
providedIn: 'root'
|
|
@@ -4265,10 +4288,10 @@ class BepaalSbInfosEffect {
|
|
|
4265
4288
|
pplgs.push(pplg);
|
|
4266
4289
|
}
|
|
4267
4290
|
}
|
|
4268
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4269
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4291
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BepaalSbInfosEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsbeeldInfoResource }, { token: MessagesService }, { token: DateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4292
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BepaalSbInfosEffect }); }
|
|
4270
4293
|
}
|
|
4271
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4294
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BepaalSbInfosEffect, decorators: [{
|
|
4272
4295
|
type: Injectable
|
|
4273
4296
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsbeeldInfoResource }, { type: MessagesService }, { type: DateService }] });
|
|
4274
4297
|
|
|
@@ -4327,10 +4350,10 @@ class BewegingInvoegenEffect {
|
|
|
4327
4350
|
});
|
|
4328
4351
|
return combinaties;
|
|
4329
4352
|
}
|
|
4330
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4331
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4353
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingInvoegenEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsBeeldManagerService }, { token: EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4354
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingInvoegenEffect }); }
|
|
4332
4355
|
}
|
|
4333
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4356
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BewegingInvoegenEffect, decorators: [{
|
|
4334
4357
|
type: Injectable
|
|
4335
4358
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }, { type: EditorService }] });
|
|
4336
4359
|
|
|
@@ -4359,10 +4382,10 @@ class DeleteOngeplandeActieEffect {
|
|
|
4359
4382
|
}
|
|
4360
4383
|
});
|
|
4361
4384
|
}
|
|
4362
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4363
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4385
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DeleteOngeplandeActieEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4386
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DeleteOngeplandeActieEffect }); }
|
|
4364
4387
|
}
|
|
4365
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4388
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DeleteOngeplandeActieEffect, decorators: [{
|
|
4366
4389
|
type: Injectable
|
|
4367
4390
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }] });
|
|
4368
4391
|
|
|
@@ -4377,7 +4400,7 @@ class FocusEffect {
|
|
|
4377
4400
|
const dwangPuics = this.getPuics(topoElementen);
|
|
4378
4401
|
if (ritdeel.isNietBeschikbaar()) {
|
|
4379
4402
|
this.store.dispatch(SetOngeplandeActiesBepaald(false));
|
|
4380
|
-
this.store.dispatch(navigeerVanaf(actie.paginationSize,
|
|
4403
|
+
this.store.dispatch(navigeerVanaf(actie.paginationSize, ritdeel));
|
|
4381
4404
|
}
|
|
4382
4405
|
return focusOpIds(dwangPuics);
|
|
4383
4406
|
})));
|
|
@@ -4385,10 +4408,10 @@ class FocusEffect {
|
|
|
4385
4408
|
getPuics(topoElementen) {
|
|
4386
4409
|
return topoElementen.map(e => e.getPuic());
|
|
4387
4410
|
}
|
|
4388
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4389
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4411
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FocusEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4412
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FocusEffect }); }
|
|
4390
4413
|
}
|
|
4391
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4414
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FocusEffect, decorators: [{
|
|
4392
4415
|
type: Injectable
|
|
4393
4416
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }] });
|
|
4394
4417
|
|
|
@@ -4399,16 +4422,16 @@ class LaadRouteFilesEffect {
|
|
|
4399
4422
|
this.ritLezer = ritLezer;
|
|
4400
4423
|
this.editorService = editorService;
|
|
4401
4424
|
this.messagesService = messagesService;
|
|
4402
|
-
this.authActions$ = createEffect(() => this.actions$.pipe(ofType(SetSignaleringsbeeldInfoDtos), map(action => this.laadRouteFiles(action))), { dispatch: false });
|
|
4425
|
+
this.authActions$ = createEffect(() => this.actions$.pipe(ofType(SetSignaleringsbeeldInfoDtos), withLatestFrom(this.store), map(([action, storeState]) => this.laadRouteFiles(action, storeState.iaVersie.versie))), { dispatch: false });
|
|
4403
4426
|
}
|
|
4404
|
-
laadRouteFiles(actie) {
|
|
4427
|
+
laadRouteFiles(actie, iaVersie) {
|
|
4405
4428
|
const isReady = this.editorService.isReady();
|
|
4406
4429
|
isReady.then(() => {
|
|
4407
4430
|
const pplgs = this.bepaalSbDtoPplgs(actie.dtos);
|
|
4408
|
-
const promise = this.editorService.laadRouteFiles(
|
|
4431
|
+
const promise = this.editorService.laadRouteFiles(iaVersie, pplgs);
|
|
4409
4432
|
promise.then(() => {
|
|
4410
4433
|
this.updateRitdelen(actie);
|
|
4411
|
-
}, err => {
|
|
4434
|
+
}, (err) => {
|
|
4412
4435
|
this.messagesService.showMessage(MessageBuilder.rwpDataNietGevonden(Utils.getValidErorrMessage(err)));
|
|
4413
4436
|
});
|
|
4414
4437
|
});
|
|
@@ -4419,7 +4442,7 @@ class LaadRouteFilesEffect {
|
|
|
4419
4442
|
if (ritdelen.length === 0) {
|
|
4420
4443
|
ritdelen = this.ritLezer.parseRit(actie.treinpad, actie.ritGewijzigdToegestaan);
|
|
4421
4444
|
}
|
|
4422
|
-
this.store.dispatch(setRitDelen(ritdelen, actie.paginationSize
|
|
4445
|
+
this.store.dispatch(setRitDelen(ritdelen, actie.paginationSize));
|
|
4423
4446
|
this.store.dispatch(setEditable(actie.treinpad.ritStatus !== 'Definitief'));
|
|
4424
4447
|
});
|
|
4425
4448
|
}, 0);
|
|
@@ -4435,10 +4458,10 @@ class LaadRouteFilesEffect {
|
|
|
4435
4458
|
});
|
|
4436
4459
|
return pplgs;
|
|
4437
4460
|
}
|
|
4438
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4439
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4461
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LaadRouteFilesEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: RitLezerService }, { token: EditorService }, { token: MessagesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4462
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LaadRouteFilesEffect }); }
|
|
4440
4463
|
}
|
|
4441
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4464
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LaadRouteFilesEffect, decorators: [{
|
|
4442
4465
|
type: Injectable
|
|
4443
4466
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: RitLezerService }, { type: EditorService }, { type: MessagesService }] });
|
|
4444
4467
|
|
|
@@ -4457,10 +4480,10 @@ class ConnectorService extends BaseRestService {
|
|
|
4457
4480
|
this.store.dispatch(ClearProgress());
|
|
4458
4481
|
return [];
|
|
4459
4482
|
}
|
|
4460
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4461
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4483
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4484
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorService, providedIn: 'root' }); }
|
|
4462
4485
|
}
|
|
4463
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4486
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ConnectorService, decorators: [{
|
|
4464
4487
|
type: Injectable,
|
|
4465
4488
|
args: [{
|
|
4466
4489
|
providedIn: 'root'
|
|
@@ -4468,14 +4491,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
4468
4491
|
}] });
|
|
4469
4492
|
|
|
4470
4493
|
class LaadSignaleringsbeeldenEffect {
|
|
4471
|
-
constructor(actions$, store, signaleringsBeeldManagerService, editorService, sbiResource, connectorService,
|
|
4494
|
+
constructor(actions$, store, signaleringsBeeldManagerService, editorService, sbiResource, connectorService, messagesService) {
|
|
4472
4495
|
this.actions$ = actions$;
|
|
4473
4496
|
this.store = store;
|
|
4474
4497
|
this.signaleringsBeeldManagerService = signaleringsBeeldManagerService;
|
|
4475
4498
|
this.editorService = editorService;
|
|
4476
4499
|
this.sbiResource = sbiResource;
|
|
4477
4500
|
this.connectorService = connectorService;
|
|
4478
|
-
this.
|
|
4501
|
+
this.messagesService = messagesService;
|
|
4479
4502
|
this.SVG_PIXEL_RUIMTE = 30;
|
|
4480
4503
|
this.verwerkRitdelen$ = createEffect(() => this.actions$.pipe(ofType(setRitDelen, navigeer, navigeerVanaf), withLatestFrom(this.store), map(([actie, storeState]) => {
|
|
4481
4504
|
this.store.dispatch(SetOngeplandeActiesBepaald(false));
|
|
@@ -4490,13 +4513,13 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4490
4513
|
}
|
|
4491
4514
|
handleSignaleringsbeeldInfo({ actie, storeState }) {
|
|
4492
4515
|
return this.sbiResource.laadSignaleringsbeeldInfo(this.createSignaleringsbeeldInfoQueryDto(actie.pplgs, storeState.iaVersie)).pipe(take(1), tap((dtos) => this.processResponse({ dtos, storeState, actie })), catchError((err) => {
|
|
4493
|
-
this.
|
|
4516
|
+
this.messagesService.showMessage(MessageBuilder.nietGevondenSBI(err));
|
|
4494
4517
|
return throwError(() => err);
|
|
4495
4518
|
}));
|
|
4496
4519
|
}
|
|
4497
4520
|
processResponse({ dtos, storeState, actie }) {
|
|
4498
4521
|
if (dtos && dtos.filter(dto => dto.metVisualisatie).length > 12) {
|
|
4499
|
-
this.
|
|
4522
|
+
this.messagesService.showMessage(MessageBuilder.meerDan12BladenGevonden(dtos.length));
|
|
4500
4523
|
}
|
|
4501
4524
|
this.store.dispatch(SetSignaleringsbeeldInfoDtos(dtos, storeState.iaVersie, actie.rit, actie.paginationSize, actie.ritGewijzigdToegestaan));
|
|
4502
4525
|
this.store.dispatch(SetVisibleSignaleringsbeeldInfoDtos(dtos));
|
|
@@ -4509,11 +4532,11 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4509
4532
|
return this.sbiResource.laadSignaleringsbeeldInfo(this.createSignaleringsbeeldInfoQueryDto([rand.getPPLG(), otherPplg], storeState.iaVersie)).pipe(map(dtos => ({ dtos, storeState })));
|
|
4510
4533
|
}
|
|
4511
4534
|
loadSignaleringsbeelden({ dtos, storeState }) {
|
|
4512
|
-
return this.editorService.laadSignaleringsbeelden(storeState.iaVersie.versie, dtos).pipe(map(svgDataUrls => ({ svgDataUrls, storeState, dtos })));
|
|
4535
|
+
return this.editorService.laadSignaleringsbeelden(storeState.iaVersie.versie, dtos).pipe(map(svgDataUrls => ({ svgDataUrls, ritDelen: storeState.ritDelen, dtos })));
|
|
4513
4536
|
}
|
|
4514
|
-
processSvgsAndUpdateRitdelen({ svgDataUrls,
|
|
4537
|
+
processSvgsAndUpdateRitdelen({ svgDataUrls, ritDelen, dtos }) {
|
|
4515
4538
|
this.verwerkSvgs(svgDataUrls);
|
|
4516
|
-
const nieuweRitdelen = this.updateRitdelen(
|
|
4539
|
+
const nieuweRitdelen = this.updateRitdelen(ritDelen, dtos);
|
|
4517
4540
|
this.store.dispatch(UpdateVisibleSignaleringsbeeldInfoDtos(dtos));
|
|
4518
4541
|
this.store.dispatch(updateRitDelen(nieuweRitdelen));
|
|
4519
4542
|
}
|
|
@@ -4526,11 +4549,11 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4526
4549
|
const visibleRitPplgs = visibleRitDelen.map(r => r.getPplg()).filter(this.distinct);
|
|
4527
4550
|
const visibleDtos = this.bepaalZichtbareDtos(visibleRitPplgs, storeDtos);
|
|
4528
4551
|
const loadingDtos = this.bepaalToLoadDtos(visibleDtos, ritDelen, visibleRitDelen, visibleRitPplgs, storeState);
|
|
4529
|
-
this.editorService.laadSignaleringsbeelden(
|
|
4552
|
+
this.editorService.laadSignaleringsbeelden(storeState.iaVersie.versie, loadingDtos).pipe(tap(svgDataUrls => {
|
|
4530
4553
|
this.verwerkSvgs(svgDataUrls);
|
|
4531
4554
|
this.updateState(ritDelen, visibleDtos, storeState, visibleRitPplgs, loadingDtos, isInit, storeDtos);
|
|
4532
4555
|
}), catchError(err => {
|
|
4533
|
-
this.
|
|
4556
|
+
this.messagesService.showMessage(MessageBuilder.rwpDataNietGevonden(Utils.getValidErorrMessage(err)));
|
|
4534
4557
|
throw err;
|
|
4535
4558
|
})).subscribe();
|
|
4536
4559
|
}
|
|
@@ -4585,8 +4608,8 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4585
4608
|
dtos.filter(d => !visibleDtos.includes(d)).forEach(d => d.metVisualisatie = false);
|
|
4586
4609
|
return visibleDtos;
|
|
4587
4610
|
}
|
|
4588
|
-
distinct(value, index,
|
|
4589
|
-
return
|
|
4611
|
+
distinct(value, index, values) {
|
|
4612
|
+
return values.indexOf(value) === index;
|
|
4590
4613
|
}
|
|
4591
4614
|
addPrevNonVisibleDto(firstIdx, ritdelen, loadingDtos, visibleRitPplgs, allDtos) {
|
|
4592
4615
|
if (firstIdx >= 0) {
|
|
@@ -4675,7 +4698,7 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4675
4698
|
}
|
|
4676
4699
|
}
|
|
4677
4700
|
}
|
|
4678
|
-
this.
|
|
4701
|
+
this.updateZichtbaarheidAangrenzendeRitdelen(min, max, ritdelen, visibleDtos);
|
|
4679
4702
|
return this.updateZichtbaarheidBuitenWindow(ritdelen, visibleDtos);
|
|
4680
4703
|
}
|
|
4681
4704
|
updateZichtbaarheidBuitenWindow(nieuweRitdelen, visibleDtos) {
|
|
@@ -4691,7 +4714,7 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4691
4714
|
}
|
|
4692
4715
|
return nieuweRitdelen;
|
|
4693
4716
|
}
|
|
4694
|
-
|
|
4717
|
+
updateZichtbaarheidAangrenzendeRitdelen(min, max, nieuweRitdelen, visibleDtos) {
|
|
4695
4718
|
let i = min - 1;
|
|
4696
4719
|
while (i >= 0) {
|
|
4697
4720
|
i = this.updateZichtbaarHeid(i, 0, visibleDtos, nieuweRitdelen) - 1;
|
|
@@ -4804,10 +4827,10 @@ class LaadSignaleringsbeeldenEffect {
|
|
|
4804
4827
|
}
|
|
4805
4828
|
return -1;
|
|
4806
4829
|
}
|
|
4807
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4808
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4830
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LaadSignaleringsbeeldenEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsBeeldManagerService }, { token: EditorService }, { token: SignaleringsbeeldInfoResource }, { token: ConnectorService }, { token: MessagesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4831
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LaadSignaleringsbeeldenEffect }); }
|
|
4809
4832
|
}
|
|
4810
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4833
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LaadSignaleringsbeeldenEffect, decorators: [{
|
|
4811
4834
|
type: Injectable
|
|
4812
4835
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }, { type: EditorService }, { type: SignaleringsbeeldInfoResource }, { type: ConnectorService }, { type: MessagesService }] });
|
|
4813
4836
|
|
|
@@ -4818,19 +4841,19 @@ class RitGoedkeurenEffect {
|
|
|
4818
4841
|
this.bewegingVerrijker = bewegingVerrijker;
|
|
4819
4842
|
this.keurAllesGoed$ = createEffect(() => this.actions$.pipe(ofType(KeurAlleActiesGoed), withLatestFrom(this.store), switchMap(([action, _store]) => from(this.bewegingVerrijker.getBewegingen(action.bewegingen, action.ongeplandeActies))), map((bewegingen) => UpdateRit(bewegingen))));
|
|
4820
4843
|
}
|
|
4821
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4822
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4844
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitGoedkeurenEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: BewegingVerrijkerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4845
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitGoedkeurenEffect }); }
|
|
4823
4846
|
}
|
|
4824
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4847
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitGoedkeurenEffect, decorators: [{
|
|
4825
4848
|
type: Injectable
|
|
4826
4849
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: BewegingVerrijkerService }] });
|
|
4827
4850
|
|
|
4828
4851
|
class RitdelenEffect {
|
|
4829
|
-
constructor(actions$, store, sbmService,
|
|
4852
|
+
constructor(actions$, store, sbmService, editorService) {
|
|
4830
4853
|
this.actions$ = actions$;
|
|
4831
4854
|
this.store = store;
|
|
4832
4855
|
this.sbmService = sbmService;
|
|
4833
|
-
this.
|
|
4856
|
+
this.editorService = editorService;
|
|
4834
4857
|
this.updateRitDelen$ = createEffect(() => this.actions$.pipe(ofType(updateRitDelen), withLatestFrom(this.store), map(([actie, _storeState]) => {
|
|
4835
4858
|
const nieuweRitDelen = actie.ritDelen.map(ritDeel => ritDeel.isZichtbaar() ?
|
|
4836
4859
|
ritDeel.copyMetAlternatieveRoutes(this.sbmService.bepaalAlternativeRoutes(ritDeel.getRijweg())) : ritDeel);
|
|
@@ -4848,25 +4871,25 @@ class RitdelenEffect {
|
|
|
4848
4871
|
return setRitdelenAfterUpdate(ritDelen);
|
|
4849
4872
|
})));
|
|
4850
4873
|
this.ritdeelInvoegen$ = createEffect(() => this.actions$.pipe(ofType(ritdeelInvoegen), withLatestFrom(this.store), map(([actie, storeState]) => {
|
|
4851
|
-
const ritDelen = this.ritdeelInvoegenFunc(storeState.ritDelen, actie.nieuweRoute
|
|
4874
|
+
const ritDelen = this.ritdeelInvoegenFunc(storeState.ritDelen, actie.nieuweRoute);
|
|
4852
4875
|
return setRitdelenAfterUpdate(ritDelen);
|
|
4853
4876
|
})));
|
|
4854
4877
|
}
|
|
4855
|
-
ritdeelInvoegenFunc(ritDelen, nieuweRoute
|
|
4878
|
+
ritdeelInvoegenFunc(ritDelen, nieuweRoute) {
|
|
4856
4879
|
const origineelRitdeel = nieuweRoute.beginSeinOpRitdeel.ritdeel;
|
|
4857
4880
|
const beginSein = nieuweRoute.beginSeinOpRitdeel.sein;
|
|
4858
|
-
const rijwegplan =
|
|
4881
|
+
const rijwegplan = this.editorService.getRijwegplan(beginSein.getPPLG());
|
|
4859
4882
|
const dwangen = JsJavaUtil.listToArray(rijwegplan.getOnderliggendeDwangenTotEnVanSein(origineelRitdeel.getDwang(), beginSein));
|
|
4860
4883
|
const isSamengesteldeRoute = dwangen[0] && dwangen[1];
|
|
4861
4884
|
let newRitdeel1 = origineelRitdeel;
|
|
4862
4885
|
if (isSamengesteldeRoute) {
|
|
4863
|
-
newRitdeel1 = this.verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen,
|
|
4886
|
+
newRitdeel1 = this.verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen, ritDelen);
|
|
4864
4887
|
}
|
|
4865
|
-
if (nieuweRoute.combinatieVoorEindsein
|
|
4866
|
-
this.extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute
|
|
4888
|
+
if (nieuweRoute.combinatieVoorEindsein?.isVrijeBaanRijweg()) {
|
|
4889
|
+
this.extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute);
|
|
4867
4890
|
}
|
|
4868
4891
|
else {
|
|
4869
|
-
this.maakNieuwRitdeel(newRitdeel1, nieuweRoute,
|
|
4892
|
+
this.maakNieuwRitdeel(newRitdeel1, nieuweRoute, ritDelen);
|
|
4870
4893
|
}
|
|
4871
4894
|
if (isSamengesteldeRoute) {
|
|
4872
4895
|
ritDelen.splice(ritDelen.indexOf(origineelRitdeel), 1);
|
|
@@ -4881,47 +4904,48 @@ class RitdelenEffect {
|
|
|
4881
4904
|
}
|
|
4882
4905
|
}
|
|
4883
4906
|
}
|
|
4884
|
-
verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen,
|
|
4907
|
+
verwerkSamengesteldeRoute(origineelRitdeel, rijwegplan, dwangen, ritDelen) {
|
|
4885
4908
|
// dwangen in 2 nieuwe ritdelen verwerken voor de knip
|
|
4886
4909
|
const nieuweRijweg1 = rijwegplan.getRijwegVoorSeinen(dwangen[0].getRoute().getBeginSein(), dwangen[0].getRoute().getEindSein());
|
|
4887
4910
|
const dwangInfo1 = new RijwegplanRijwegDwangCombinatie(rijwegplan, nieuweRijweg1, dwangen[0]);
|
|
4888
|
-
const newRitdeel1 = new Ritdeel(dwangInfo1, [],
|
|
4911
|
+
const newRitdeel1 = new Ritdeel(dwangInfo1, [], undefined, undefined, undefined, []);
|
|
4889
4912
|
// remove vrijbaan info uit ritdeel
|
|
4890
|
-
newRitdeel1.vrijebaanRijwegplanRijwegDwangCombi =
|
|
4891
|
-
newRitdeel1.vervolgSpoor =
|
|
4892
|
-
newRitdeel1.bepaalTopologieElementen(sbmService);
|
|
4913
|
+
newRitdeel1.vrijebaanRijwegplanRijwegDwangCombi = undefined;
|
|
4914
|
+
newRitdeel1.vervolgSpoor = undefined;
|
|
4915
|
+
newRitdeel1.bepaalTopologieElementen(this.sbmService);
|
|
4893
4916
|
this.insertRitdeel(ritDelen, origineelRitdeel, newRitdeel1);
|
|
4894
4917
|
const nieuweRijweg2 = rijwegplan.getRijwegVoorSeinen(dwangen[1].getRoute().getBeginSein(), dwangen[1].getRoute().getEindSein());
|
|
4895
4918
|
const dwangInfo2 = new RijwegplanRijwegDwangCombinatie(rijwegplan, nieuweRijweg2, dwangen[1]);
|
|
4896
|
-
const newRitdeel2 = new Ritdeel(dwangInfo2, [],
|
|
4897
|
-
newRitdeel2.bepaalTopologieElementen(sbmService);
|
|
4919
|
+
const newRitdeel2 = new Ritdeel(dwangInfo2, [], undefined, undefined, undefined, []);
|
|
4920
|
+
newRitdeel2.bepaalTopologieElementen(this.sbmService);
|
|
4898
4921
|
this.insertRitdeel(ritDelen, newRitdeel1, newRitdeel2);
|
|
4899
4922
|
return newRitdeel1;
|
|
4900
4923
|
}
|
|
4901
|
-
extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute
|
|
4924
|
+
extendRitdeelMetVrijebaanInfo(newRitdeel1, nieuweRoute) {
|
|
4902
4925
|
newRitdeel1.vrijebaanRijwegplanRijwegDwangCombi = nieuweRoute.combinatieVoorEindsein;
|
|
4903
|
-
const vbrwp = nieuweRoute.combinatieVoorEindsein
|
|
4904
|
-
newRitdeel1.vervolgSpoor =
|
|
4905
|
-
|
|
4926
|
+
const vbrwp = nieuweRoute.combinatieVoorEindsein?.rijwegplan;
|
|
4927
|
+
newRitdeel1.vervolgSpoor = nieuweRoute.combinatieVoorEindsein ?
|
|
4928
|
+
vbrwp.getVervolgSpoor(nieuweRoute.combinatieVoorEindsein?.rijweg) : undefined;
|
|
4929
|
+
newRitdeel1.bepaalTopologieElementen(this.sbmService);
|
|
4906
4930
|
}
|
|
4907
|
-
maakNieuwRitdeel(newRitdeel1, nieuweRoute,
|
|
4931
|
+
maakNieuwRitdeel(newRitdeel1, nieuweRoute, ritDelen) {
|
|
4908
4932
|
let newRitdeel = this.createRitdeel(nieuweRoute);
|
|
4909
|
-
const altRoutes = sbmService.bepaalAlternativeRoutes(newRitdeel.getRijweg());
|
|
4933
|
+
const altRoutes = this.sbmService.bepaalAlternativeRoutes(newRitdeel.getRijweg());
|
|
4910
4934
|
newRitdeel = newRitdeel.copyMetAlternatieveRoutes(altRoutes);
|
|
4911
|
-
newRitdeel.bepaalTopologieElementen(sbmService);
|
|
4935
|
+
newRitdeel.bepaalTopologieElementen(this.sbmService);
|
|
4912
4936
|
this.insertRitdeel(ritDelen, newRitdeel1, newRitdeel);
|
|
4913
4937
|
}
|
|
4914
4938
|
createRitdeel(nieuweRoute) {
|
|
4915
|
-
return new Ritdeel(nieuweRoute.combinatieVoorEindsein, [],
|
|
4939
|
+
return new Ritdeel(nieuweRoute.combinatieVoorEindsein, [], undefined, undefined, undefined, []);
|
|
4916
4940
|
}
|
|
4917
4941
|
insertRitdeel(ritdelen, naRitdeelPositie, newRitdeel) {
|
|
4918
4942
|
const idx = ritdelen.indexOf(naRitdeelPositie);
|
|
4919
4943
|
ritdelen.splice(idx + 1, 0, newRitdeel);
|
|
4920
4944
|
}
|
|
4921
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4922
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4945
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsBeeldManagerService }, { token: EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4946
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenEffect }); }
|
|
4923
4947
|
}
|
|
4924
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4948
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenEffect, decorators: [{
|
|
4925
4949
|
type: Injectable
|
|
4926
4950
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }, { type: EditorService }] });
|
|
4927
4951
|
|
|
@@ -4956,20 +4980,31 @@ class SvgViewEffect {
|
|
|
4956
4980
|
rand?.classList.add('connector');
|
|
4957
4981
|
});
|
|
4958
4982
|
}
|
|
4959
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4960
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4983
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgViewEffect, deps: [{ token: i1$2.Actions }, { token: i2$1.Store }, { token: SignaleringsBeeldManagerService }, { token: i4.SignaleringsbeeldSvgUtilityService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4984
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgViewEffect }); }
|
|
4961
4985
|
}
|
|
4962
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4986
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgViewEffect, decorators: [{
|
|
4963
4987
|
type: Injectable
|
|
4964
4988
|
}], ctorParameters: () => [{ type: i1$2.Actions }, { type: i2$1.Store }, { type: SignaleringsBeeldManagerService }, { type: i4.SignaleringsbeeldSvgUtilityService }] });
|
|
4965
4989
|
|
|
4990
|
+
class ProgressIndicator {
|
|
4991
|
+
constructor(lowerText, upperText, iconClass) {
|
|
4992
|
+
this.lowerText = '';
|
|
4993
|
+
this.upperText = '';
|
|
4994
|
+
this.iconClass = '';
|
|
4995
|
+
this.lowerText = lowerText ?? this.lowerText;
|
|
4996
|
+
this.upperText = upperText ?? this.upperText;
|
|
4997
|
+
this.iconClass = iconClass ?? this.iconClass;
|
|
4998
|
+
}
|
|
4999
|
+
}
|
|
5000
|
+
|
|
4966
5001
|
class NieuweRoute {
|
|
4967
5002
|
constructor(beginSeinOpRitdeel, combinatieVoorEindsein) {
|
|
4968
5003
|
this.beginSeinOpRitdeel = beginSeinOpRitdeel;
|
|
4969
5004
|
this.combinatieVoorEindsein = combinatieVoorEindsein;
|
|
4970
5005
|
}
|
|
4971
5006
|
isValid() {
|
|
4972
|
-
return this.combinatieVoorEindsein
|
|
5007
|
+
return !!this.combinatieVoorEindsein;
|
|
4973
5008
|
}
|
|
4974
5009
|
}
|
|
4975
5010
|
|
|
@@ -5035,7 +5070,7 @@ function addRitdeelActieFunc(ritDelen, { ritDeel, actie }) {
|
|
|
5035
5070
|
const onIdsActionHandler = (action) => on(action, (_, { ids }) => ids);
|
|
5036
5071
|
const createIdsReducer = (action) => createReducer([], onIdsActionHandler(action));
|
|
5037
5072
|
const editableReducer = createReducer(true, on(setEditable, (_, { editable }) => editable));
|
|
5038
|
-
const progressIndicatorReducer = createReducer(
|
|
5073
|
+
const progressIndicatorReducer = createReducer({}, on(ShowProgress, () => ({ progressIndicator: new ProgressIndicator() })), on(ClearProgress, () => ({})));
|
|
5039
5074
|
const svgInfoReducer = createReducer([], on(SetSvgInfos, (_, { svgInfos }) => svgInfos));
|
|
5040
5075
|
const debugReducer = createReducer(false, on(SetDebug, (_, { debug }) => debug));
|
|
5041
5076
|
const ritSelectieIdsReducer = createIdsReducer(SetRitSelectieIds);
|
|
@@ -5061,12 +5096,10 @@ const ongeplandeActieReducer = createReducer(new ArrayMultimap(), on(SetOngeplan
|
|
|
5061
5096
|
ongeplandeActie.puics.forEach(puic => ongeplandeActies.delete(puic, ongeplandeActie));
|
|
5062
5097
|
return new ArrayMultimap(ongeplandeActies);
|
|
5063
5098
|
}));
|
|
5064
|
-
const ongeplandeActieSelectieIdsReducer = createReducer([],
|
|
5065
|
-
// on(MstActions.SetOngeplandeActieSelectieIds, (_, { ids }) => ids),
|
|
5066
|
-
onIdsActionHandler(SetOngeplandeActieSelectieIds), on(AddOngeplandeActie, (ids, { ongeplandeActie }) => {
|
|
5099
|
+
const ongeplandeActieSelectieIdsReducer = createReducer([], onIdsActionHandler(SetOngeplandeActieSelectieIds), on(AddOngeplandeActie, (ids, { ongeplandeActie }) => {
|
|
5067
5100
|
ongeplandeActie.puics.filter(puic => !ids.includes(puic)).forEach(puic => ids.push(puic));
|
|
5068
5101
|
return [...ids];
|
|
5069
|
-
}), on(DeleteOngeplandeActieSelectieId, (ids, { id }) =>
|
|
5102
|
+
}), on(DeleteOngeplandeActieSelectieId, (ids, { id }) => ids.includes(id) ? ids.filter(_id => _id !== id) : ids));
|
|
5070
5103
|
const gebrokenRitSelectieIdsReducer = createIdsReducer(SetGebrokenRitSelectieIds);
|
|
5071
5104
|
const alternatievenSelectieIdsReducer = createIdsReducer(SetAlternatievenSelectieIds);
|
|
5072
5105
|
const beginSeinSelectieIdsReducer = createIdsReducer(SetBeginSeinSelectieIds);
|
|
@@ -5075,16 +5108,15 @@ const alternatievenClickableIdsReducer = createIdsReducer(SetAlternatievenClicka
|
|
|
5075
5108
|
const eindSeinenClickableIdsReducer = createIdsReducer(SetEindSeinenClickableIds);
|
|
5076
5109
|
const connectorClickableIdsReducer = createIdsReducer(SetConnectorenClickableIds);
|
|
5077
5110
|
const beginSeinRightClickableIdsReducer = createIdsReducer(SetBeginSeinRightClickableIds);
|
|
5078
|
-
const nieuweRouteReducer = createReducer(
|
|
5111
|
+
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));
|
|
5079
5112
|
const signaleringsbeeldInfoDtosReducer = createReducer([], on(SetSignaleringsbeeldInfoDtos, (_, { dtos }) => dtos), on(UpdateSignaleringsbeeldInfoDtos, (_, { dtos }) => [...dtos]));
|
|
5080
5113
|
const visibleSbInfoDtosReducer = createReducer([], on(SetVisibleSignaleringsbeeldInfoDtos, (_, { dtos }) => dtos), on(UpdateVisibleSignaleringsbeeldInfoDtos, (_, { dtos }) => [...dtos]));
|
|
5081
|
-
const iaVersieReducer = createReducer({}, on(SetIaVersie, (_, { iaVersie }) => Object.assign({}, iaVersie, { versie: iaVersie.versie.toUpperCase() })));
|
|
5114
|
+
const iaVersieReducer = createReducer({ versie: 'unknown', ingangsDatum: new Date() }, on(SetIaVersie, (_, { iaVersie }) => Object.assign({}, iaVersie, { versie: iaVersie.versie.toUpperCase() })));
|
|
5082
5115
|
const algemeneRitInfoDtoReducer = createReducer({}, on(SetAlgemeneRitInfo, (_, { algemeneRitInfoDto }) => algemeneRitInfoDto));
|
|
5083
5116
|
const ongeplandeActiesBepaaldReducer = createReducer(false, on(SetOngeplandeActiesBepaald, (_, { bepaald }) => bepaald));
|
|
5084
|
-
const nieuweBewegingReducer = createReducer(
|
|
5085
|
-
const baseUrlReducer = createReducer(
|
|
5086
|
-
const focusIdsReducer = createReducer(
|
|
5087
|
-
const selectedRitdeelIdReducer = createReducer({}, on(SetSelectedRitdeel, (_, { id }) => id));
|
|
5117
|
+
const nieuweBewegingReducer = createReducer([], on(UpdateRit, (_, { bewegingen }) => bewegingen));
|
|
5118
|
+
const baseUrlReducer = createReducer('', on(SetBaseUrl, (_, { baseUrl }) => baseUrl));
|
|
5119
|
+
const focusIdsReducer = createReducer([], on(focusOpIds, (_, { puics }) => puics));
|
|
5088
5120
|
const storeReducers = {
|
|
5089
5121
|
ritDelen: ritdelenReducer,
|
|
5090
5122
|
ritSelectieIds: ritSelectieIdsReducer,
|
|
@@ -5113,9 +5145,9 @@ const storeReducers = {
|
|
|
5113
5145
|
nieuweBewegingen: nieuweBewegingReducer,
|
|
5114
5146
|
baseUrl: baseUrlReducer,
|
|
5115
5147
|
focusIds: focusIdsReducer,
|
|
5116
|
-
selectedRitdeelId: selectedRitdeelIdReducer
|
|
5117
5148
|
};
|
|
5118
5149
|
|
|
5150
|
+
// @ts-nocheck
|
|
5119
5151
|
class ZoneUtil {
|
|
5120
5152
|
constructor(ngZone) {
|
|
5121
5153
|
this.ngZone = ngZone;
|
|
@@ -5139,10 +5171,10 @@ class ZoneUtil {
|
|
|
5139
5171
|
proxy(target) {
|
|
5140
5172
|
return new Proxy(target, this.zoneHandler);
|
|
5141
5173
|
}
|
|
5142
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5143
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
5174
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZoneUtil, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5175
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZoneUtil }); }
|
|
5144
5176
|
}
|
|
5145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5177
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZoneUtil, decorators: [{
|
|
5146
5178
|
type: Injectable
|
|
5147
5179
|
}], ctorParameters: () => [{ type: i0.NgZone }] });
|
|
5148
5180
|
|
|
@@ -5178,12 +5210,13 @@ class MstViewerModule {
|
|
|
5178
5210
|
constructor(service, zoneUtil) {
|
|
5179
5211
|
this.service = service;
|
|
5180
5212
|
// maak de EditorService toegankelijk voor GWT code
|
|
5213
|
+
// @ts-ignore
|
|
5181
5214
|
window['rpe'] = {
|
|
5182
5215
|
EditorService: zoneUtil.proxy(service)
|
|
5183
5216
|
};
|
|
5184
5217
|
}
|
|
5185
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5186
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5218
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstViewerModule, deps: [{ token: EditorService }, { token: ZoneUtil }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
5219
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: MstViewerModule, declarations: [MessageComponent,
|
|
5187
5220
|
MstviewerComponent,
|
|
5188
5221
|
OverlayComponent,
|
|
5189
5222
|
ProgressIndicatorComponent,
|
|
@@ -5196,7 +5229,7 @@ class MstViewerModule {
|
|
|
5196
5229
|
MessagesComponent], imports: [CommonModule,
|
|
5197
5230
|
ImxViewerModule,
|
|
5198
5231
|
RijwegenModule, i1$1.ResourceModule, i2$1.StoreRootModule, i1$2.EffectsRootModule], exports: [MstviewerComponent] }); }
|
|
5199
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5232
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstViewerModule, providers: [
|
|
5200
5233
|
ZoneUtil,
|
|
5201
5234
|
SignaleringsbeeldInfoResource,
|
|
5202
5235
|
MstLoggingResource,
|
|
@@ -5209,7 +5242,7 @@ class MstViewerModule {
|
|
|
5209
5242
|
BewegingVerrijkerService
|
|
5210
5243
|
], imports: [imports] }); }
|
|
5211
5244
|
}
|
|
5212
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5245
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MstViewerModule, decorators: [{
|
|
5213
5246
|
type: NgModule,
|
|
5214
5247
|
args: [{
|
|
5215
5248
|
imports,
|