@loxia/mst-viewer 8.1.3-202512161642 → 8.1.3-202512172157
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 +26 -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 +203 -0
- package/esm2022/generated/openapi/api/sbController.serviceInterface.mjs +2 -0
- package/esm2022/generated/openapi/api/svgController.service.mjs +155 -0
- package/esm2022/generated/openapi/api/svgController.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/kilometrering.mjs +13 -0
- package/esm2022/generated/openapi/model/logDto.mjs +2 -0
- package/esm2022/generated/openapi/model/models.mjs +18 -0
- package/esm2022/generated/openapi/model/ritRequestDto.mjs +2 -0
- package/esm2022/generated/openapi/model/sein.mjs +10 -0
- package/esm2022/generated/openapi/model/signaleringsElement.mjs +13 -0
- package/esm2022/generated/openapi/model/signaleringsbeeldDto.mjs +13 -0
- package/esm2022/generated/openapi/model/spoornummer.mjs +13 -0
- package/esm2022/generated/openapi/model/spoortakFragment.mjs +2 -0
- package/esm2022/generated/openapi/model/svgInfoDto.mjs +2 -0
- package/esm2022/generated/openapi/model/svgTopology.mjs +2 -0
- package/esm2022/generated/openapi/model/topologyElement.mjs +2 -0
- package/esm2022/generated/openapi/model/wissel.mjs +2 -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 +275 -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 +66 -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 +84 -0
- package/esm2022/lib/state/actions/actions.mjs +133 -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 +361 -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 +89 -0
- package/esm2022/lib/state/mst-editor-state.mjs +88 -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 +26 -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 +203 -0
- package/esm2022/src/generated/openapi/api/sbController.serviceInterface.mjs +2 -0
- package/esm2022/src/generated/openapi/api/svgController.service.mjs +155 -0
- package/esm2022/src/generated/openapi/api/svgController.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/kilometrering.mjs +13 -0
- package/esm2022/src/generated/openapi/model/logDto.mjs +2 -0
- package/esm2022/src/generated/openapi/model/models.mjs +18 -0
- package/esm2022/src/generated/openapi/model/ritRequestDto.mjs +2 -0
- package/esm2022/src/generated/openapi/model/sein.mjs +10 -0
- package/esm2022/src/generated/openapi/model/signaleringsElement.mjs +13 -0
- package/esm2022/src/generated/openapi/model/signaleringsbeeldDto.mjs +13 -0
- package/esm2022/src/generated/openapi/model/spoornummer.mjs +13 -0
- package/esm2022/src/generated/openapi/model/spoortakFragment.mjs +2 -0
- package/esm2022/src/generated/openapi/model/svgInfoDto.mjs +2 -0
- package/esm2022/src/generated/openapi/model/svgTopology.mjs +2 -0
- package/esm2022/src/generated/openapi/model/topologyElement.mjs +2 -0
- package/esm2022/src/generated/openapi/model/wissel.mjs +2 -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 +224 -43
- package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs.map +1 -1
- package/fesm2022/loxia-mst-viewer.mjs +774 -533
- package/fesm2022/loxia-mst-viewer.mjs.map +1 -1
- package/generated/openapi/api/api.d.ts +25 -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/svgController.service.d.ts +40 -0
- package/generated/openapi/api/svgController.serviceInterface.d.ts +27 -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 +20 -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/kilometrering.d.ts +15 -0
- package/generated/openapi/model/logDto.d.ts +22 -0
- package/generated/openapi/model/models.d.ts +17 -0
- package/generated/openapi/model/ritRequestDto.d.ts +17 -0
- package/generated/openapi/model/sein.d.ts +46 -0
- package/generated/openapi/model/signaleringsElement.d.ts +16 -0
- package/generated/openapi/model/signaleringsbeeldDto.d.ts +16 -0
- package/generated/openapi/model/spoornummer.d.ts +17 -0
- package/generated/openapi/model/spoortakFragment.d.ts +26 -0
- package/generated/openapi/model/svgInfoDto.d.ts +16 -0
- package/generated/openapi/model/svgTopology.d.ts +21 -0
- package/generated/openapi/model/topologyElement.d.ts +18 -0
- package/generated/openapi/model/wissel.d.ts +31 -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 +56 -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 +31 -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 +27 -0
- package/lib/state/actions/actions.d.ts +276 -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 +23 -0
- package/lib/state/mst-editor-state.d.ts +71 -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 +25 -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/svgController.service.d.ts +40 -0
- package/src/generated/openapi/api/svgController.serviceInterface.d.ts +27 -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 +20 -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/kilometrering.d.ts +15 -0
- package/src/generated/openapi/model/logDto.d.ts +22 -0
- package/src/generated/openapi/model/models.d.ts +17 -0
- package/src/generated/openapi/model/ritRequestDto.d.ts +17 -0
- package/src/generated/openapi/model/sein.d.ts +46 -0
- package/src/generated/openapi/model/signaleringsElement.d.ts +16 -0
- package/src/generated/openapi/model/signaleringsbeeldDto.d.ts +16 -0
- package/src/generated/openapi/model/spoornummer.d.ts +17 -0
- package/src/generated/openapi/model/spoortakFragment.d.ts +26 -0
- package/src/generated/openapi/model/svgInfoDto.d.ts +16 -0
- package/src/generated/openapi/model/svgTopology.d.ts +21 -0
- package/src/generated/openapi/model/topologyElement.d.ts +18 -0
- package/src/generated/openapi/model/wissel.d.ts +31 -0
- package/src/generated/openapi/param.d.ts +37 -0
- package/src/generated/openapi/variables.d.ts +8 -0
- package/tailwind.scss +4 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ArrayMultimap } from '../util/multi-map';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./editor.service";
|
|
5
|
+
export class BewegingUtils {
|
|
6
|
+
static { this.GEWIJZIGD = 'Gewijzigd'; }
|
|
7
|
+
static { this.TOEGEVOEGD = 'Toegevoegd'; }
|
|
8
|
+
static { this.NORMAAL = 'Normaal'; }
|
|
9
|
+
static { this.SEIN_TYPE_FICTIEF = 'FICTIEF'; }
|
|
10
|
+
static { this.SPOOR_NAAR_VRIJEBAAN_POSTFIX = '_e'; }
|
|
11
|
+
constructor(editorService) {
|
|
12
|
+
this.editorService = editorService;
|
|
13
|
+
}
|
|
14
|
+
extractBewegingenUitRitdelen(ritDelen, origineleBewegingen) {
|
|
15
|
+
const retval = [];
|
|
16
|
+
retval.length = ritDelen.length;
|
|
17
|
+
const origineleBewegingMap = this.bepaalOrigineleBewegingMap(origineleBewegingen);
|
|
18
|
+
let vorigeBeweging = undefined;
|
|
19
|
+
for (let i = 0; i < ritDelen.length; i++) {
|
|
20
|
+
const ritdeel = ritDelen[i];
|
|
21
|
+
if (ritdeel.beweging) {
|
|
22
|
+
retval[i] = ritdeel.beweging;
|
|
23
|
+
const nieuwDwangNummer = BewegingUtils.toRouteFileDwangNummer(ritdeel.getDwangNummer());
|
|
24
|
+
if (BewegingUtils.isGewijzigd(ritdeel, nieuwDwangNummer, origineleBewegingMap)) {
|
|
25
|
+
retval[i].wijzigStatus = BewegingUtils.GEWIJZIGD;
|
|
26
|
+
retval[i].dwangNummer = nieuwDwangNummer;
|
|
27
|
+
ritdeel.beweging.ritActies = ritdeel.acties;
|
|
28
|
+
BewegingUtils.removeKerenExtensie(retval[i]);
|
|
29
|
+
BewegingUtils.removeKerenExtensie(vorigeBeweging);
|
|
30
|
+
}
|
|
31
|
+
else if (i === ritDelen.length - 1 && BewegingUtils.bewegingenZijnGewijzigd(ritDelen, origineleBewegingen)) {
|
|
32
|
+
BewegingUtils.removeKerenExtensie(retval[i]);
|
|
33
|
+
}
|
|
34
|
+
else if (retval[i].wijzigStatus === BewegingUtils.TOEGEVOEGD) {
|
|
35
|
+
BewegingUtils.removeKerenExtensie(vorigeBeweging);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
retval[i] = this.maakBeweging(ritdeel);
|
|
40
|
+
}
|
|
41
|
+
retval[i].volgnummerBinnenRit = i + 1;
|
|
42
|
+
vorigeBeweging = ritdeel.beweging;
|
|
43
|
+
}
|
|
44
|
+
return retval;
|
|
45
|
+
}
|
|
46
|
+
static bewegingenZijnGewijzigd(ritDelen, origineleBewegingen) {
|
|
47
|
+
const ritDelenArray = ritDelen
|
|
48
|
+
.filter(r => r.beweging?.id)
|
|
49
|
+
.map(r => r.beweging.id)
|
|
50
|
+
.sort((a, b) => a - b);
|
|
51
|
+
const bewegingenIdArray = origineleBewegingen.map(b => b.id).sort((a, b) => a - b);
|
|
52
|
+
return JSON.stringify(ritDelenArray) !== JSON.stringify(bewegingenIdArray);
|
|
53
|
+
}
|
|
54
|
+
static removeKerenExtensie(beweging) {
|
|
55
|
+
if (beweging && this.containsExtensie('_k', beweging.naarSpoor)) {
|
|
56
|
+
beweging.naarSpoor = beweging.naarSpoor.split('_k')[0];
|
|
57
|
+
beweging.wijzigStatus = this.GEWIJZIGD;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
static containsExtensie(match, stringToCheck) {
|
|
61
|
+
return stringToCheck.indexOf(match) !== -1;
|
|
62
|
+
}
|
|
63
|
+
static isGewijzigd(ritdeel, nieuwDwangNummer, origineleBewegingenMap) {
|
|
64
|
+
const dwangGewijzigd = ritdeel.beweging?.dwangNummer !== nieuwDwangNummer;
|
|
65
|
+
let gewijzigd = false;
|
|
66
|
+
if (ritdeel.beweging?.wijzigStatus === this.NORMAAL) {
|
|
67
|
+
const origineleBewegingActies = origineleBewegingenMap.get(ritdeel.beweging.id);
|
|
68
|
+
const huidigeActies = this.createSortedActieIdList(ritdeel.acties);
|
|
69
|
+
gewijzigd = JSON.stringify(huidigeActies) !== JSON.stringify(origineleBewegingActies);
|
|
70
|
+
}
|
|
71
|
+
return dwangGewijzigd || gewijzigd;
|
|
72
|
+
}
|
|
73
|
+
bepaalOrigineleBewegingMap(origineleBewegingen) {
|
|
74
|
+
const bewegingMap = new ArrayMultimap();
|
|
75
|
+
origineleBewegingen.forEach(b => {
|
|
76
|
+
const actieIds = BewegingUtils.createSortedActieIdList(b.ritActies);
|
|
77
|
+
bewegingMap.putAll(b.id, actieIds);
|
|
78
|
+
});
|
|
79
|
+
return bewegingMap;
|
|
80
|
+
}
|
|
81
|
+
static createSortedActieIdList(acties) {
|
|
82
|
+
return acties.map(actie => actie.id).sort((a, b) => a - b);
|
|
83
|
+
}
|
|
84
|
+
maakBeweging(newRitdeel) {
|
|
85
|
+
const eindSein = newRitdeel.getRoute().getEindSein();
|
|
86
|
+
let naarSeinNaam;
|
|
87
|
+
let naarSeinPplg;
|
|
88
|
+
let naarSpoor = newRitdeel.getNaarPrlSpoor();
|
|
89
|
+
if (eindSein.getTypeAlsString() === BewegingUtils.SEIN_TYPE_FICTIEF) {
|
|
90
|
+
if (newRitdeel.heeftVrijebaanInfo() && newRitdeel.getVrijebaanRijweg()) {
|
|
91
|
+
const vbEindSein = newRitdeel.getVrijebaanRijweg().getEindSein();
|
|
92
|
+
naarSeinNaam = vbEindSein.getName();
|
|
93
|
+
naarSeinPplg = vbEindSein.getPPLG();
|
|
94
|
+
naarSpoor += BewegingUtils.SPOOR_NAAR_VRIJEBAAN_POSTFIX;
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
const rijwegplan = this.editorService.getRijwegplan(newRitdeel.getPplg());
|
|
98
|
+
const rijwegAndereRichting = rijwegplan.getRijweg(newRitdeel.getVisueelNaarPrlSpoor(), newRitdeel.getVanPrlSpoor());
|
|
99
|
+
const startSeinInAndereRichting = rijwegAndereRichting.getBeginSein();
|
|
100
|
+
naarSeinNaam = startSeinInAndereRichting.getName();
|
|
101
|
+
naarSeinPplg = startSeinInAndereRichting.getPPLG();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
naarSeinNaam = eindSein.getName();
|
|
106
|
+
naarSeinPplg = eindSein.getPPLG();
|
|
107
|
+
}
|
|
108
|
+
return BewegingUtils.vulBeweging(newRitdeel, naarSeinNaam, naarSeinPplg, naarSpoor);
|
|
109
|
+
}
|
|
110
|
+
static vulBeweging(newRitdeel, naarSeinNaam, naarSeinPplg, naarSpoor) {
|
|
111
|
+
return {
|
|
112
|
+
id: 0,
|
|
113
|
+
ritId: 0,
|
|
114
|
+
volgnummerBinnenRit: -1,
|
|
115
|
+
vanSeinType: 'BED_SEIN',
|
|
116
|
+
vanSeinNaam: newRitdeel.getRoute().getBeginSein().getName(),
|
|
117
|
+
vanSeinPplg: newRitdeel.getRoute().getBeginSein().getPPLG(),
|
|
118
|
+
naarSeinType: 'BED_SEIN',
|
|
119
|
+
naarSeinNaam,
|
|
120
|
+
naarSeinPplg,
|
|
121
|
+
dwangNummer: BewegingUtils.toRouteFileDwangNummer(newRitdeel.getDwangNummer()),
|
|
122
|
+
vanPplg: newRitdeel.getPplg(),
|
|
123
|
+
vanSpoor: newRitdeel.getVanPrlSpoor(),
|
|
124
|
+
naarPplg: newRitdeel.getPplg(),
|
|
125
|
+
naarSpoor,
|
|
126
|
+
ritActies: [],
|
|
127
|
+
wijzigStatus: this.TOEGEVOEGD
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
static toRouteFileDwangNummer(dwangNummer) {
|
|
131
|
+
return (dwangNummer === 0) ? -1 : dwangNummer;
|
|
132
|
+
}
|
|
133
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BewegingUtils, deps: [{ token: i1.EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
134
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BewegingUtils }); }
|
|
135
|
+
}
|
|
136
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BewegingUtils, decorators: [{
|
|
137
|
+
type: Injectable
|
|
138
|
+
}], ctorParameters: () => [{ type: i1.EditorService }] });
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmV3ZWdpbmctdXRpbHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdC12aWV3ZXIvc3JjL2xpYi9zZXJ2aWNlcy9iZXdlZ2luZy11dGlscy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFJbEQsTUFBTSxPQUFPLGFBQWE7YUFDTixjQUFTLEdBQUcsV0FBVyxBQUFkLENBQWU7YUFDeEIsZUFBVSxHQUFHLFlBQVksQUFBZixDQUFnQjthQUMxQixZQUFPLEdBQUcsU0FBUyxBQUFaLENBQWE7YUFDWixzQkFBaUIsR0FBRyxTQUFTLEFBQVosQ0FBYTthQUM5QixpQ0FBNEIsR0FBRyxJQUFJLEFBQVAsQ0FBUTtJQUU1RCxZQUE2QixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUN6RCxDQUFDO0lBRU0sNEJBQTRCLENBQUMsUUFBbUIsRUFBRSxtQkFBK0I7UUFDcEYsTUFBTSxNQUFNLEdBQWUsRUFBRSxDQUFDO1FBQzlCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUVoQyxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRWxGLElBQUksY0FBYyxHQUF5QixTQUFTLENBQUM7UUFDckQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN2QyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ25CLE1BQU0sQ0FBQyxDQUFDLENBQUMs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RSxJQUFJLENBQUMsVUFBVTtTQUNoQyxDQUFDO0lBQ04sQ0FBQztJQUVPLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxXQUFtQjtRQUNyRCxPQUFPLENBQUMsV0FBVyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7K0dBeElRLGFBQWE7bUhBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJpdGRlZWwgfSBmcm9tICcuLi9tb2RlbC9yaXRkZWVsJztcbmltcG9ydCB7IEFjdGllLCBCZXdlZ2luZyB9IGZyb20gJy4uL29wdGltbyc7XG5pbXBvcnQgeyBBcnJheU11bHRpbWFwIH0gZnJvbSAnLi4vdXRpbC9tdWx0aS1tYXAnO1xuaW1wb3J0IHsgRWRpdG9yU2VydmljZSB9IGZyb20gJy4vZWRpdG9yLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQmV3ZWdpbmdVdGlscyB7XG4gICAgc3RhdGljIHJlYWRvbmx5IEdFV0lKWklHRCA9ICdHZXdpanppZ2QnO1xuICAgIHN0YXRpYyByZWFkb25seSBUT0VHRVZPRUdEID0gJ1RvZWdldm9lZ2QnO1xuICAgIHN0YXRpYyByZWFkb25seSBOT1JNQUFMID0gJ05vcm1hYWwnO1xuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFNFSU5fVFlQRV9GSUNUSUVGID0gJ0ZJQ1RJRUYnO1xuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFNQT09SX05BQVJfVlJJSkVCQUFOX1BPU1RGSVggPSAnX2UnO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHVibGljIGV4dHJhY3RCZXdlZ2luZ2VuVWl0Uml0ZGVsZW4ocml0RGVsZW46IFJpdGRlZWxbXSwgb3JpZ2luZWxlQmV3ZWdpbmdlbjogQmV3ZWdpbmdbXSk6IEJld2VnaW5nW10ge1xuICAgICAgICBjb25zdCByZXR2YWw6IEJld2VnaW5nW10gPSBbXTtcbiAgICAgICAgcmV0dmFsLmxlbmd0aCA9IHJpdERlbGVuLmxlbmd0aDtcblxuICAgICAgICBjb25zdCBvcmlnaW5lbGVCZXdlZ2luZ01hcCA9IHRoaXMuYmVwYWFsT3JpZ2luZWxlQmV3ZWdpbmdNYXAob3JpZ2luZWxlQmV3ZWdpbmdlbik7XG5cbiAgICAgICAgbGV0IHZvcmlnZUJld2VnaW5nOiBCZXdlZ2luZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByaXREZWxlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgcml0ZGVlbCA9IHJpdERlbGVuW2ldO1xuICAgICAgICAgICAgaWYgKHJpdGRlZWwuYmV3ZWdpbmcpIHtcbiAgICAgICAgICAgICAgICByZXR2YWxbaV0gPSByaXRkZWVsLmJld2VnaW5nO1xuICAgICAgICAgICAgICAgIGNvbnN0IG5pZXV3RHdhbmdOdW1tZXIgPSBCZXdlZ2luZ1V0aWxzLnRvUm91dGVGaWxlRHdhbmdOdW1tZXIocml0ZGVlbC5nZXREd2FuZ051bW1lcigpKTtcbiAgICAgICAgICAgICAgICBpZiAoQmV3ZWdpbmdVdGlscy5pc0dld2lqemlnZChyaXRkZWVsLCBuaWV1d0R3YW5nTnVtbWVyLCBvcmlnaW5lbGVCZXdlZ2luZ01hcCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dmFsW2ldLndpanppZ1N0YXR1cyA9IEJld2VnaW5nVXRpbHMuR0VXSUpaSUdEO1xuICAgICAgICAgICAgICAgICAgICByZXR2YWxbaV0uZHdhbmdOdW1tZXIgPSBuaWV1d0R3YW5nTnVtbWVyO1xuICAgICAgICAgICAgICAgICAgICByaXRkZWVsLmJld2VnaW5nLnJpdEFjdGllcyA9IHJpdGRlZWwuYWN0aWVzO1xuICAgICAgICAgICAgICAgICAgICBCZXdlZ2luZ1V0aWxzLnJlbW92ZUtlcmVuRXh0ZW5zaWUocmV0dmFsW2ldKTtcbiAgICAgICAgICAgICAgICAgICAgQmV3ZWdpbmdVdGlscy5yZW1vdmVLZXJlbkV4dGVuc2llKHZvcmlnZUJld2VnaW5nKTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGkgPT09IHJpdERlbGVuLmxlbmd0aCAtIDEgJiYgQmV3ZWdpbmdVdGlscy5iZXdlZ2luZ2VuWmlqbkdld2lqemlnZChyaXREZWxlbiwgb3JpZ2luZWxlQmV3ZWdpbmdlbikpIHtcbiAgICAgICAgICAgICAgICAgICAgQmV3ZWdpbmdVdGlscy5yZW1vdmVLZXJlbkV4dGVuc2llKHJldHZhbFtpXSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXR2YWxbaV0ud2lqemlnU3RhdHVzID09PSBCZXdlZ2luZ1V0aWxzLlRPRUdFVk9FR0QpIHtcbiAgICAgICAgICAgICAgICAgICAgQmV3ZWdpbmdVdGlscy5yZW1vdmVLZXJlbkV4dGVuc2llKHZvcmlnZUJld2VnaW5nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHZhbFtpXSA9IHRoaXMubWFha0Jld2VnaW5nKHJpdGRlZWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dmFsW2ldLnZvbGdudW1tZXJCaW5uZW5SaXQgPSBpICsgMTtcbiAgICAgICAgICAgIHZvcmlnZUJld2VnaW5nID0gcml0ZGVlbC5iZXdlZ2luZztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmV0dmFsO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGJld2VnaW5nZW5aaWpuR2V3aWp6aWdkKHJpdERlbGVuOiBSaXRkZWVsW10sIG9yaWdpbmVsZUJld2VnaW5nZW46IEJld2VnaW5nW10pOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qgcml0RGVsZW5BcnJheSA9IHJpdERlbGVuXG4gICAgICAgICAgICAuZmlsdGVyKHIgPT4gci5iZXdlZ2luZz8uaWQpXG4gICAgICAgICAgICAubWFwKHIgPT4gci5iZXdlZ2luZyEuaWQpXG4gICAgICAgICAgICAuc29ydCgoYSwgYikgPT4gYSAtIGIpO1xuXG4gICAgICAgIGNvbnN0IGJld2VnaW5nZW5JZEFycmF5ID0gb3JpZ2luZWxlQmV3ZWdpbmdlbi5tYXAoYiA9PiBiLmlkKS5zb3J0KChhLCBiKSA9PiBhIC0gYik7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShyaXREZWxlbkFycmF5KSAhPT0gSlNPTi5zdHJpbmdpZnkoYmV3ZWdpbmdlbklkQXJyYXkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIHJlbW92ZUtlcmVuRXh0ZW5zaWUoYmV3ZWdpbmc6IEJld2VnaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIGlmIChiZXdlZ2luZyAmJiB0aGlzLmNvbnRhaW5zRXh0ZW5zaWUoJ19rJywgYmV3ZWdpbmcubmFhclNwb29yKSkge1xuICAgICAgICAgICAgYmV3ZWdpbmcubmFhclNwb29yID0gYmV3ZWdpbmcubmFhclNwb29yLnNwbGl0KCdfaycpWzBdO1xuICAgICAgICAgICAgYmV3ZWdpbmcud2lqemlnU3RhdHVzID0gdGhpcy5HRVdJSlpJR0Q7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdGF0aWMgY29udGFpbnNFeHRlbnNpZShtYXRjaDogc3RyaW5nLCBzdHJpbmdUb0NoZWNrOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHN0cmluZ1RvQ2hlY2suaW5kZXhPZihtYXRjaCkgIT09IC0xO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGlzR2V3aWp6aWdkKHJpdGRlZWw6IFJpdGRlZWwsIG5pZXV3RHdhbmdOdW1tZXI6IG51bWJlciwgb3JpZ2luZWxlQmV3ZWdpbmdlbk1hcDogQXJyYXlNdWx0aW1hcDxudW1iZXIsIG51bWJlcj4pOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZHdhbmdHZXdpanppZ2QgPSByaXRkZWVsLmJld2VnaW5nPy5kd2FuZ051bW1lciAhPT0gbmlldXdEd2FuZ051bW1lcjtcbiAgICAgICAgbGV0IGdld2lqemlnZCA9IGZhbHNlO1xuICAgICAgICBpZiAocml0ZGVlbC5iZXdlZ2luZz8ud2lqemlnU3RhdHVzID09PSB0aGlzLk5PUk1BQUwpIHtcbiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmVsZUJld2VnaW5nQWN0aWVzID0gb3JpZ2luZWxlQmV3ZWdpbmdlbk1hcC5nZXQocml0ZGVlbC5iZXdlZ2luZy5pZCk7XG4gICAgICAgICAgICBjb25zdCBodWlkaWdlQWN0aWVzID0gdGhpcy5jcmVhdGVTb3J0ZWRBY3RpZUlkTGlzdChyaXRkZWVsLmFjdGllcyk7XG4gICAgICAgICAgICBnZXdpanppZ2QgPSBKU09OLnN0cmluZ2lmeShodWlkaWdlQWN0aWVzKSAhPT0gSlNPTi5zdHJpbmdpZnkob3JpZ2luZWxlQmV3ZWdpbmdBY3RpZXMpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkd2FuZ0dld2lqemlnZCB8fCBnZXdpanppZ2Q7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBiZXBhYWxPcmlnaW5lbGVCZXdlZ2luZ01hcChvcmlnaW5lbGVCZXdlZ2luZ2VuOiBCZXdlZ2luZ1tdKTogQXJyYXlNdWx0aW1hcDxudW1iZXIsIG51bWJlcj4ge1xuICAgICAgICBjb25zdCBiZXdlZ2luZ01hcCA9IG5ldyBBcnJheU11bHRpbWFwPG51bWJlciwgbnVtYmVyPigpO1xuICAgICAgICBvcmlnaW5lbGVCZXdlZ2luZ2VuLmZvckVhY2goYiA9PiB7XG4gICAgICAgICAgICBjb25zdCBhY3RpZUlkcyA9IEJld2VnaW5nVXRpbHMuY3JlYXRlU29ydGVkQWN0aWVJZExpc3QoYi5yaXRBY3RpZXMpO1xuICAgICAgICAgICAgYmV3ZWdpbmdNYXAucHV0QWxsKGIuaWQsIGFjdGllSWRzKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBiZXdlZ2luZ01hcDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBjcmVhdGVTb3J0ZWRBY3RpZUlkTGlzdChhY3RpZXM6IEFjdGllW10pOiBudW1iZXJbXSB7XG4gICAgICAgIHJldHVybiBhY3RpZXMubWFwKGFjdGllID0+IGFjdGllLmlkKS5zb3J0KChhLCBiKSA9PiBhIC0gYik7XG4gICAgfVxuXG4gICAgcHVibGljIG1hYWtCZXdlZ2luZyhuZXdSaXRkZWVsOiBSaXRkZWVsKTogQmV3ZWdpbmcge1xuICAgICAgICBjb25zdCBlaW5kU2VpbiA9IG5ld1JpdGRlZWwuZ2V0Um91dGUoKS5nZXRFaW5kU2VpbigpO1xuXG4gICAgICAgIGxldCBuYWFyU2Vpbk5hYW07XG4gICAgICAgIGxldCBuYWFyU2VpblBwbGc7XG4gICAgICAgIGxldCBuYWFyU3Bvb3IgPSBuZXdSaXRkZWVsLmdldE5hYXJQcmxTcG9vcigpO1xuICAgICAgICBpZiAoZWluZFNlaW4uZ2V0VHlwZUFsc1N0cmluZygpID09PSBCZXdlZ2luZ1V0aWxzLlNFSU5fVFlQRV9GSUNUSUVGKSB7XG4gICAgICAgICAgICBpZiAobmV3Uml0ZGVlbC5oZWVmdFZyaWplYmFhbkluZm8oKSAmJiBuZXdSaXRkZWVsLmdldFZyaWplYmFhblJpandlZygpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmJFaW5kU2VpbiA9IG5ld1JpdGRlZWwuZ2V0VnJpamViYWFuUmlqd2VnKCkhLmdldEVpbmRTZWluKCk7XG4gICAgICAgICAgICAgICAgbmFhclNlaW5OYWFtID0gdmJFaW5kU2Vpbi5nZXROYW1lKCk7XG4gICAgICAgICAgICAgICAgbmFhclNlaW5QcGxnID0gdmJFaW5kU2Vpbi5nZXRQUExHKCk7XG4gICAgICAgICAgICAgICAgbmFhclNwb29yICs9IEJld2VnaW5nVXRpbHMuU1BPT1JfTkFBUl9WUklKRUJBQU5fUE9TVEZJWDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgcmlqd2VncGxhbiA9IHRoaXMuZWRpdG9yU2VydmljZS5nZXRSaWp3ZWdwbGFuKG5ld1JpdGRlZWwuZ2V0UHBsZygpKTtcbiAgICAgICAgICAgICAgICBjb25zdCByaWp3ZWdBbmRlcmVSaWNodGluZyA9IHJpandlZ3BsYW4uZ2V0Umlqd2VnKG5ld1JpdGRlZWwuZ2V0VmlzdWVlbE5hYXJQcmxTcG9vcigpLCBuZXdSaXRkZWVsLmdldFZhblBybFNwb29yKCkpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0U2VpbkluQW5kZXJlUmljaHRpbmcgPSByaWp3ZWdBbmRlcmVSaWNodGluZy5nZXRCZWdpblNlaW4oKTtcbiAgICAgICAgICAgICAgICBuYWFyU2Vpbk5hYW0gPSBzdGFydFNlaW5JbkFuZGVyZVJpY2h0aW5nLmdldE5hbWUoKTtcbiAgICAgICAgICAgICAgICBuYWFyU2VpblBwbGcgPSBzdGFydFNlaW5JbkFuZGVyZVJpY2h0aW5nLmdldFBQTEcoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5hYXJTZWluTmFhbSA9IGVpbmRTZWluLmdldE5hbWUoKTtcbiAgICAgICAgICAgIG5hYXJTZWluUHBsZyA9IGVpbmRTZWluLmdldFBQTEcoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gQmV3ZWdpbmdVdGlscy52dWxCZXdlZ2luZyhuZXdSaXRkZWVsLCBuYWFyU2Vpbk5hYW0sIG5hYXJTZWluUHBsZywgbmFhclNwb29yKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyB2dWxCZXdlZ2luZyhuZXdSaXRkZWVsOiBSaXRkZWVsLCBuYWFyU2Vpbk5hYW06IHN0cmluZywgbmFhclNlaW5QcGxnOiBzdHJpbmcsIG5hYXJTcG9vcjogc3RyaW5nKTogQmV3ZWdpbmcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IDAsXG4gICAgICAgICAgICByaXRJZDogMCxcbiAgICAgICAgICAgIHZvbGdudW1tZXJCaW5uZW5SaXQ6IC0xLFxuICAgICAgICAgICAgdmFuU2VpblR5cGU6ICdCRURfU0VJTicsXG4gICAgICAgICAgICB2YW5TZWluTmFhbTogbmV3Uml0ZGVlbC5nZXRSb3V0ZSgpLmdldEJlZ2luU2VpbigpLmdldE5hbWUoKSxcbiAgICAgICAgICAgIHZhblNlaW5QcGxnOiBuZXdSaXRkZWVsLmdldFJvdXRlKCkuZ2V0QmVnaW5TZWluKCkuZ2V0UFBMRygpLFxuICAgICAgICAgICAgbmFhclNlaW5UeXBlOiAnQkVEX1NFSU4nLFxuICAgICAgICAgICAgbmFhclNlaW5OYWFtLFxuICAgICAgICAgICAgbmFhclNlaW5QcGxnLFxuICAgICAgICAgICAgZHdhbmdOdW1tZXI6IEJld2VnaW5nVXRpbHMudG9Sb3V0ZUZpbGVEd2FuZ051bW1lcihuZXdSaXRkZWVsLmdldER3YW5nTnVtbWVyKCkpLFxuICAgICAgICAgICAgdmFuUHBsZzogbmV3Uml0ZGVlbC5nZXRQcGxnKCksXG4gICAgICAgICAgICB2YW5TcG9vcjogbmV3Uml0ZGVlbC5nZXRWYW5QcmxTcG9vcigpLFxuICAgICAgICAgICAgbmFhclBwbGc6IG5ld1JpdGRlZWwuZ2V0UHBsZygpLFxuICAgICAgICAgICAgbmFhclNwb29yLFxuICAgICAgICAgICAgcml0QWN0aWVzOiBbXSxcbiAgICAgICAgICAgIHdpanppZ1N0YXR1czogdGhpcy5UT0VHRVZPRUdEXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgdG9Sb3V0ZUZpbGVEd2FuZ051bW1lcihkd2FuZ051bW1lcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIChkd2FuZ051bW1lciA9PT0gMCkgPyAtMSA6IGR3YW5nTnVtbWVyO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { HttpHeaders } from '@angular/common/http';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { catchError } from 'rxjs/operators';
|
|
4
|
+
import { ClearProgress } from '../state/actions/actions';
|
|
5
|
+
import { BaseRestService } from './base-rest.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class BewegingVerrijkerService extends BaseRestService {
|
|
8
|
+
getBewegingen(bewegingen, ongeplandeActies) {
|
|
9
|
+
return this.httpClient.put(this.getUrl(this.iaVersie), { bewegingen, ongeplandeActies }, { headers: new HttpHeaders().set('Accept', 'application/json').append('Content-Type', 'application/json') })
|
|
10
|
+
.pipe(catchError((err, _caught) => this.errorHandler(err)));
|
|
11
|
+
}
|
|
12
|
+
getUrl(iaVersie) {
|
|
13
|
+
return `${this.baseUrl}/mst/rest/beweging/${iaVersie}`;
|
|
14
|
+
}
|
|
15
|
+
errorHandler(error) {
|
|
16
|
+
// eslint-disable-next-line no-console
|
|
17
|
+
console.log('error bij verrijken', error);
|
|
18
|
+
this.store.dispatch(ClearProgress());
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BewegingVerrijkerService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
22
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BewegingVerrijkerService, providedIn: 'root' }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BewegingVerrijkerService, decorators: [{
|
|
25
|
+
type: Injectable,
|
|
26
|
+
args: [{
|
|
27
|
+
providedIn: 'root'
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmV3ZWdpbmctdmVycmlqa2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvc2VydmljZXMvYmV3ZWdpbmctdmVycmlqa2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBS3RELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxlQUFlO0lBRWxELGFBQWEsQ0FBQyxVQUFzQixFQUFFLGdCQUF5QjtRQUNsRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDMUIsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsRUFDaEMsRUFBRSxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7YUFDcEcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFTyxNQUFNLENBQUMsUUFBZ0I7UUFDM0IsT0FBTyxHQUFJLElBQUksQ0FBQyxPQUFRLHNCQUF1QixRQUFTLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQVU7UUFDbkIsc0NBQXNDO1FBQ3RDLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUNyQyxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7K0dBbkJRLHdCQUF3QjttSEFBeEIsd0JBQXdCLGNBRnJCLE1BQU07OzRGQUVULHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBY3RpZSwgQmV3ZWdpbmcgfSBmcm9tICcuLi9vcHRpbW8nO1xuaW1wb3J0IHsgQ2xlYXJQcm9ncmVzcyB9IGZyb20gJy4uL3N0YXRlL2FjdGlvbnMvYWN0aW9ucyc7XG5pbXBvcnQgeyBCYXNlUmVzdFNlcnZpY2UgfSBmcm9tICcuL2Jhc2UtcmVzdC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCZXdlZ2luZ1ZlcnJpamtlclNlcnZpY2UgZXh0ZW5kcyBCYXNlUmVzdFNlcnZpY2Uge1xuXG4gICAgcHVibGljIGdldEJld2VnaW5nZW4oYmV3ZWdpbmdlbjogQmV3ZWdpbmdbXSwgb25nZXBsYW5kZUFjdGllczogQWN0aWVbXSk6IE9ic2VydmFibGU8QmV3ZWdpbmdbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnB1dDxCZXdlZ2luZ1tdPihcbiAgICAgICAgICAgIHRoaXMuZ2V0VXJsKHRoaXMuaWFWZXJzaWUpLFxuICAgICAgICAgICAgeyBiZXdlZ2luZ2VuLCBvbmdlcGxhbmRlQWN0aWVzIH0sXG4gICAgICAgICAgICB7IGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldCgnQWNjZXB0JywgJ2FwcGxpY2F0aW9uL2pzb24nKS5hcHBlbmQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJykgfSlcbiAgICAgICAgICAgICAgICAgICAucGlwZShjYXRjaEVycm9yKChlcnIsIF9jYXVnaHQpID0+IHRoaXMuZXJyb3JIYW5kbGVyKGVycikpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFVybChpYVZlcnNpZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAkeyB0aGlzLmJhc2VVcmwgfS9tc3QvcmVzdC9iZXdlZ2luZy8keyBpYVZlcnNpZSB9YDtcbiAgICB9XG5cbiAgICBlcnJvckhhbmRsZXIoZXJyb3I6IGFueSk6IFtdIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgY29uc29sZS5sb2coJ2Vycm9yIGJpaiB2ZXJyaWprZW4nLCBlcnJvcik7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ2xlYXJQcm9ncmVzcygpKTtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { catchError } from 'rxjs/operators';
|
|
3
|
+
import { ClearProgress } from '../state/actions/actions';
|
|
4
|
+
import { BaseRestService } from './base-rest.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class ConnectorService extends BaseRestService {
|
|
7
|
+
getOtherRand(puic) {
|
|
8
|
+
return this.httpClient.get(this.getUrl(this.iaVersie, puic))
|
|
9
|
+
.pipe(catchError((err, _caught) => this.handleResult(err)));
|
|
10
|
+
}
|
|
11
|
+
getUrl(iaVersie, puic) {
|
|
12
|
+
return `${this.baseUrl}/mst/rest/connector/${iaVersie}/${puic}`;
|
|
13
|
+
}
|
|
14
|
+
handleResult(res) {
|
|
15
|
+
if (res.error) {
|
|
16
|
+
console.log('error bij ophalen connector-info', res.error);
|
|
17
|
+
}
|
|
18
|
+
this.store.dispatch(ClearProgress());
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConnectorService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
22
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConnectorService, providedIn: 'root' }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConnectorService, decorators: [{
|
|
25
|
+
type: Injectable,
|
|
26
|
+
args: [{
|
|
27
|
+
providedIn: 'root'
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvc2VydmljZXMvY29ubmVjdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFLdEQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGVBQWU7SUFFMUMsWUFBWSxDQUFDLElBQVk7UUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sTUFBTSxDQUFDLFFBQWdCLEVBQUUsSUFBWTtRQUN6QyxPQUFPLEdBQUksSUFBSSxDQUFDLE9BQVEsdUJBQXVCLFFBQVEsSUFBSyxJQUFLLEVBQUUsQ0FBQztJQUN4RSxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQVE7UUFDakIsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWixPQUFPLENBQUMsR0FBRyxDQUFDLGtDQUFrQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUNyQyxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7K0dBbEJRLGdCQUFnQjttSEFBaEIsZ0JBQWdCLGNBRmIsTUFBTTs7NEZBRVQsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDbGVhclByb2dyZXNzIH0gZnJvbSAnLi4vc3RhdGUvYWN0aW9ucy9hY3Rpb25zJztcbmltcG9ydCB7IEJhc2VSZXN0U2VydmljZSB9IGZyb20gJy4vYmFzZS1yZXN0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbm5lY3RvclNlcnZpY2UgZXh0ZW5kcyBCYXNlUmVzdFNlcnZpY2Uge1xuXG4gICAgcHVibGljIGdldE90aGVyUmFuZChwdWljOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxzdHJpbmc+KFxuICAgICAgICAgICAgdGhpcy5nZXRVcmwodGhpcy5pYVZlcnNpZSwgcHVpYykpXG4gICAgICAgICAgICAgICAgICAgLnBpcGUoY2F0Y2hFcnJvcigoZXJyLCBfY2F1Z2h0KSA9PiB0aGlzLmhhbmRsZVJlc3VsdChlcnIpKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRVcmwoaWFWZXJzaWU6IHN0cmluZywgcHVpYzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAkeyB0aGlzLmJhc2VVcmwgfS9tc3QvcmVzdC9jb25uZWN0b3IvJHtpYVZlcnNpZX0vJHsgcHVpYyB9YDtcbiAgICB9XG5cbiAgICBoYW5kbGVSZXN1bHQocmVzOiBhbnkpOiBbXSB7XG4gICAgICAgIGlmIChyZXMuZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdlcnJvciBiaWogb3BoYWxlbiBjb25uZWN0b3ItaW5mbycsIHJlcy5lcnJvcik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDbGVhclByb2dyZXNzKCkpO1xuICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuXG4iXX0=
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { JsJavaUtil } from '@loxia/rijwegen';
|
|
3
|
+
import { SetDebug } from '../state/actions/actions';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@ngrx/store";
|
|
6
|
+
import * as i2 from "./signalerings-beeld-manager.service";
|
|
7
|
+
export class DebugService {
|
|
8
|
+
constructor(store, sbmService) {
|
|
9
|
+
this.store = store;
|
|
10
|
+
this.sbmService = sbmService;
|
|
11
|
+
this.listener = this.debugEventListener();
|
|
12
|
+
}
|
|
13
|
+
setDebugFlag(debug) {
|
|
14
|
+
this.store.dispatch(SetDebug(debug));
|
|
15
|
+
if (debug) {
|
|
16
|
+
document.getElementById('svgContainer')?.addEventListener('mouseover', this.listener);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
document.getElementById('svgContainer')?.removeEventListener('mouseover', this.listener);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
debugEventListener() {
|
|
23
|
+
return (event) => {
|
|
24
|
+
let elem = event.target;
|
|
25
|
+
let id;
|
|
26
|
+
let found = false;
|
|
27
|
+
do {
|
|
28
|
+
id = elem.id;
|
|
29
|
+
if (id.startsWith('p')) {
|
|
30
|
+
const tp = this.sbmService.getTopologyElementByPuic(id.substring(1));
|
|
31
|
+
if (tp) {
|
|
32
|
+
this.printKmInfo(tp);
|
|
33
|
+
found = true;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
elem = elem.parentElement;
|
|
37
|
+
} while (!found && elem);
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
printKmInfo(tp) {
|
|
41
|
+
const kms = JsJavaUtil.listToArray(tp.getKilometreringen());
|
|
42
|
+
if (kms.length > 0) {
|
|
43
|
+
let logline = 'Kminfo: ' + tp.getComponentName() + ', ';
|
|
44
|
+
for (const km of kms) {
|
|
45
|
+
logline += km.getKmLint() + ' ' + km.getKmWaarde() + ' ';
|
|
46
|
+
}
|
|
47
|
+
console.log(logline);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DebugService, deps: [{ token: i1.Store }, { token: i2.SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
51
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DebugService, providedIn: 'root' }); }
|
|
52
|
+
}
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DebugService, decorators: [{
|
|
54
|
+
type: Injectable,
|
|
55
|
+
args: [{
|
|
56
|
+
providedIn: 'root'
|
|
57
|
+
}]
|
|
58
|
+
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.SignaleringsBeeldManagerService }] });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdC12aWV3ZXIvc3JjL2xpYi9zZXJ2aWNlcy9kZWJ1Zy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBRXJELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQU9wRCxNQUFNLE9BQU8sWUFBWTtJQUdyQixZQUFvQixLQUE0QixFQUM1QixVQUEyQztRQUQzQyxVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1QixlQUFVLEdBQVYsVUFBVSxDQUFpQztRQUg5QyxhQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFJdEQsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRXJDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUYsQ0FBQzthQUFNLENBQUM7WUFDSixRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0YsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0I7UUFDdEIsT0FBTyxDQUFDLEtBQUssRUFBUSxFQUFFO1lBQ25CLElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDeEIsSUFBSSxFQUFVLENBQUM7WUFDZixJQUFJLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDbEIsR0FBRyxDQUFDO2dCQUNBLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNiLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUNyQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDckUsSUFBSSxFQUFFLEVBQUUsQ0FBQzt3QkFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUNyQixLQUFLLEdBQUcsSUFBSSxDQUFDO29CQUNqQixDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDOUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRTtRQUM3QixDQUFDLENBQUM7SUFDTixDQUFDO0lBRU8sV0FBVyxDQUFDLEVBQTBCO1FBQzFDLE1BQU0sR0FBRyxHQUEyQixVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDcEYsSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2pCLElBQUksT0FBTyxHQUFHLFVBQVUsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUM7WUFDeEQsS0FBSyxNQUFNLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQztZQUM3RCxDQUFDO1lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQzsrR0E3Q1EsWUFBWTttSEFBWixZQUFZLGNBRlQsTUFBTTs7NEZBRVQsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBKc0phdmFVdGlsLCBzYmJsYWQgfSBmcm9tICdAbG94aWEvcmlqd2VnZW4nO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBTZXREZWJ1ZyB9IGZyb20gJy4uL3N0YXRlL2FjdGlvbnMvYWN0aW9ucyc7XG5pbXBvcnQgeyBNc3RFZGl0b3JTdGF0ZSB9IGZyb20gJy4uL3N0YXRlL21zdC1lZGl0b3Itc3RhdGUnO1xuaW1wb3J0IHsgU2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vc2lnbmFsZXJpbmdzLWJlZWxkLW1hbmFnZXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGVidWdTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RlbmVyID0gdGhpcy5kZWJ1Z0V2ZW50TGlzdGVuZXIoKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPE1zdEVkaXRvclN0YXRlPixcbiAgICAgICAgICAgICAgICBwcml2YXRlIHNibVNlcnZpY2U6IFNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlclNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBzZXREZWJ1Z0ZsYWcoZGVidWc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChTZXREZWJ1ZyhkZWJ1ZykpO1xuXG4gICAgICAgIGlmIChkZWJ1Zykge1xuICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3N2Z0NvbnRhaW5lcicpPy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW92ZXInLCB0aGlzLmxpc3RlbmVyKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzdmdDb250YWluZXInKT8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2VvdmVyJywgdGhpcy5saXN0ZW5lcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGRlYnVnRXZlbnRMaXN0ZW5lcigpOiAoZTogYW55KSA9PiB2b2lkIHtcbiAgICAgICAgcmV0dXJuIChldmVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgbGV0IGVsZW0gPSBldmVudC50YXJnZXQ7XG4gICAgICAgICAgICBsZXQgaWQ6IHN0cmluZztcbiAgICAgICAgICAgIGxldCBmb3VuZCA9IGZhbHNlO1xuICAgICAgICAgICAgZG8ge1xuICAgICAgICAgICAgICAgIGlkID0gZWxlbS5pZDtcbiAgICAgICAgICAgICAgICBpZiAoaWQuc3RhcnRzV2l0aCgncCcpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRwID0gdGhpcy5zYm1TZXJ2aWNlLmdldFRvcG9sb2d5RWxlbWVudEJ5UHVpYyhpZC5zdWJzdHJpbmcoMSkpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodHApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJpbnRLbUluZm8odHApO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsZW0gPSBlbGVtLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgICAgICB9IHdoaWxlICghZm91bmQgJiYgZWxlbSk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcmludEttSW5mbyh0cDogc2JibGFkLlRvcG9sb2d5RWxlbWVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBrbXM6IHNiYmxhZC5LaWxvbWV0cmVyaW5nW10gPSBKc0phdmFVdGlsLmxpc3RUb0FycmF5KHRwLmdldEtpbG9tZXRyZXJpbmdlbigpKTtcbiAgICAgICAgaWYgKGttcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBsZXQgbG9nbGluZSA9ICdLbWluZm86ICcgKyB0cC5nZXRDb21wb25lbnROYW1lKCkgKyAnLCAnO1xuICAgICAgICAgICAgZm9yIChjb25zdCBrbSBvZiBrbXMpIHtcbiAgICAgICAgICAgICAgICBsb2dsaW5lICs9IGttLmdldEttTGludCgpICsgJyAnICsga20uZ2V0S21XYWFyZGUoKSArICcgJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGxvZ2xpbmUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { from } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./signalerings-beeld-manager.service";
|
|
5
|
+
export class EditorService {
|
|
6
|
+
constructor(signaleringsBeeldManagerService) {
|
|
7
|
+
this.signaleringsBeeldManagerService = signaleringsBeeldManagerService;
|
|
8
|
+
this.initReadyPromise();
|
|
9
|
+
}
|
|
10
|
+
// Called from GWT only, can be removed when GWT is gone. any is used because it will be removed with GWT
|
|
11
|
+
setEditor(editor) {
|
|
12
|
+
this.editor = editor;
|
|
13
|
+
this.resolveReadyPromise();
|
|
14
|
+
}
|
|
15
|
+
isReady() {
|
|
16
|
+
return this.promise;
|
|
17
|
+
}
|
|
18
|
+
// Called from GWT only, can be removed when GWT is gone
|
|
19
|
+
setSignaleringsBeeldManager(signaleringsBeeldManager) {
|
|
20
|
+
this.signaleringsBeeldManagerService.set(signaleringsBeeldManager);
|
|
21
|
+
}
|
|
22
|
+
laadSignaleringsbeelden(iaVersie, dtos) {
|
|
23
|
+
const laadSignaleringsbeelden = this.editor.laadSignaleringsbeelden(iaVersie, dtos);
|
|
24
|
+
return from(laadSignaleringsbeelden);
|
|
25
|
+
}
|
|
26
|
+
laadRouteFiles(iaVersie, pplgs) {
|
|
27
|
+
return this.editor.laadRouteFiles(iaVersie, pplgs);
|
|
28
|
+
}
|
|
29
|
+
getRijwegplan(pplg) {
|
|
30
|
+
return this.editor.getRijwegplan(pplg);
|
|
31
|
+
}
|
|
32
|
+
getVrijebaanRijwegplan(pplg, vanSpoor) {
|
|
33
|
+
return this.editor.getVrijebaanRijwegplan(pplg, vanSpoor);
|
|
34
|
+
}
|
|
35
|
+
getRijwegplannen() {
|
|
36
|
+
return this.editor.getRijwegplannen();
|
|
37
|
+
}
|
|
38
|
+
initReadyPromise() {
|
|
39
|
+
const that = this;
|
|
40
|
+
this.promise = this.promise === undefined ? new Promise(function (resolve, _reject) {
|
|
41
|
+
that.resolveReadyPromise = resolve;
|
|
42
|
+
}) : this.promise;
|
|
43
|
+
}
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditorService, deps: [{ token: i1.SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
45
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditorService }); }
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditorService, decorators: [{
|
|
48
|
+
type: Injectable
|
|
49
|
+
}], ctorParameters: () => [{ type: i1.SignaleringsBeeldManagerService }] });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvc2VydmljZXMvZWRpdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7QUFLeEMsTUFBTSxPQUFPLGFBQWE7SUFLdEIsWUFBb0IsK0JBQWdFO1FBQWhFLG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBaUM7UUFDaEYsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELHlHQUF5RztJQUN6RyxTQUFTLENBQUMsTUFBVztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUVyQixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsT0FBTztRQUNILE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRUQsd0RBQXdEO0lBQ3hELDJCQUEyQixDQUFDLHdCQUE2QjtRQUNyRCxJQUFJLENBQUMsK0JBQStCLENBQUMsR0FBRyxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELHVCQUF1QixDQUFDLFFBQWdCLEVBQUUsSUFBNEI7UUFDbEUsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwRixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxjQUFjLENBQUMsUUFBZ0IsRUFBRSxLQUFlO1FBQzVDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxhQUFhLENBQUMsSUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxJQUFZLEVBQUUsUUFBZ0I7UUFDakQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBUyxPQUFPLEVBQUUsT0FBTztZQUM3RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7K0dBbkRRLGFBQWE7bUhBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRvbWVpbiB9IGZyb20gJ0Bsb3hpYS9yaWp3ZWdlbic7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi9zaWduYWxlcmluZ3MtYmVlbGQtbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7U2lnbmFsZXJpbmdzYmVlbGREdG99IGZyb20gXCIuLi8uLi9nZW5lcmF0ZWQvb3BlbmFwaVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRWRpdG9yU2VydmljZSB7XG4gICAgcHJpdmF0ZSBlZGl0b3I6IGFueTtcbiAgICBwcml2YXRlIHJlc29sdmVSZWFkeVByb21pc2U6IGFueTtcbiAgICBwcml2YXRlIHByb21pc2U6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZTogU2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZSkge1xuICAgICAgICB0aGlzLmluaXRSZWFkeVByb21pc2UoKTtcbiAgICB9XG5cbiAgICAvLyBDYWxsZWQgZnJvbSBHV1Qgb25seSwgY2FuIGJlIHJlbW92ZWQgd2hlbiBHV1QgaXMgZ29uZS4gYW55IGlzIHVzZWQgYmVjYXVzZSBpdCB3aWxsIGJlIHJlbW92ZWQgd2l0aCBHV1RcbiAgICBzZXRFZGl0b3IoZWRpdG9yOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lZGl0b3IgPSBlZGl0b3I7XG5cbiAgICAgICAgdGhpcy5yZXNvbHZlUmVhZHlQcm9taXNlKCk7XG4gICAgfVxuXG4gICAgaXNSZWFkeSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvbWlzZTtcbiAgICB9XG5cbiAgICAvLyBDYWxsZWQgZnJvbSBHV1Qgb25seSwgY2FuIGJlIHJlbW92ZWQgd2hlbiBHV1QgaXMgZ29uZVxuICAgIHNldFNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlcihzaWduYWxlcmluZ3NCZWVsZE1hbmFnZXI6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlclNlcnZpY2Uuc2V0KHNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlcik7XG4gICAgfVxuXG4gICAgbGFhZFNpZ25hbGVyaW5nc2JlZWxkZW4oaWFWZXJzaWU6IHN0cmluZywgZHRvczogU2lnbmFsZXJpbmdzYmVlbGREdG9bXSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGNvbnN0IGxhYWRTaWduYWxlcmluZ3NiZWVsZGVuID0gdGhpcy5lZGl0b3IubGFhZFNpZ25hbGVyaW5nc2JlZWxkZW4oaWFWZXJzaWUsIGR0b3MpO1xuICAgICAgICByZXR1cm4gZnJvbShsYWFkU2lnbmFsZXJpbmdzYmVlbGRlbik7XG4gICAgfVxuXG4gICAgbGFhZFJvdXRlRmlsZXMoaWFWZXJzaWU6IHN0cmluZywgcHBsZ3M6IHN0cmluZ1tdKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yLmxhYWRSb3V0ZUZpbGVzKGlhVmVyc2llLCBwcGxncyk7XG4gICAgfVxuXG4gICAgZ2V0Umlqd2VncGxhbihwcGxnOiBzdHJpbmcpOiBkb21laW4uUmlqd2VncGxhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRvci5nZXRSaWp3ZWdwbGFuKHBwbGcpO1xuICAgIH1cblxuICAgIGdldFZyaWplYmFhblJpandlZ3BsYW4ocHBsZzogc3RyaW5nLCB2YW5TcG9vcjogc3RyaW5nKTogZG9tZWluLlZyaWplYmFhblJpandlZ3BsYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lZGl0b3IuZ2V0VnJpamViYWFuUmlqd2VncGxhbihwcGxnLCB2YW5TcG9vcik7XG4gICAgfVxuXG4gICAgZ2V0Umlqd2VncGxhbm5lbigpOiBkb21laW4uUmlqd2VncGxhbltdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yLmdldFJpandlZ3BsYW5uZW4oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRSZWFkeVByb21pc2UoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICB0aGlzLnByb21pc2UgPSB0aGlzLnByb21pc2UgPT09IHVuZGVmaW5lZCA/IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIF9yZWplY3QpIHtcbiAgICAgICAgICAgIHRoYXQucmVzb2x2ZVJlYWR5UHJvbWlzZSA9IHJlc29sdmU7XG4gICAgICAgIH0pIDogdGhpcy5wcm9taXNlO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { take, tap } from 'rxjs/operators';
|
|
3
|
+
import * as MstActions from '../state/actions/actions';
|
|
4
|
+
import { ClearProgress, ShowProgress } from '../state/actions/actions';
|
|
5
|
+
import { navigeerVanaf, setZichtbaarheidAlleRitdelen, toggleZichtbaarheidVoorBewegingen } from '../state/actions/ritdelen.actions';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@ngrx/store";
|
|
8
|
+
import * as i2 from "./viewer-control.service";
|
|
9
|
+
import * as i3 from "./signalerings-beeld-manager.service";
|
|
10
|
+
export class PrintBewegingService {
|
|
11
|
+
constructor(store, viewerControlService, sbmService) {
|
|
12
|
+
this.store = store;
|
|
13
|
+
this.viewerControlService = viewerControlService;
|
|
14
|
+
this.sbmService = sbmService;
|
|
15
|
+
}
|
|
16
|
+
printBeweging(bewegingId, paginationSize) {
|
|
17
|
+
return new Promise((resolve, reject) => {
|
|
18
|
+
this.store.select('ritDelen').pipe(take(1), tap(ritdelen => {
|
|
19
|
+
const gevondenRitdeel = ritdelen.filter(r => Number.parseInt(r.getBewegingId(), 10) === bewegingId);
|
|
20
|
+
// hide/show de knoppen
|
|
21
|
+
const printing = !!bewegingId && gevondenRitdeel.length === 1;
|
|
22
|
+
this.viewerControlService.setPrinting(printing);
|
|
23
|
+
if (!printing) {
|
|
24
|
+
reject(new Error('Geen beweging gevonden voor ' + bewegingId));
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const ritdeel = gevondenRitdeel[0];
|
|
28
|
+
if (ritdeel.isNietBeschikbaar()) {
|
|
29
|
+
this.store.dispatch(navigeerVanaf(paginationSize, ritdeel));
|
|
30
|
+
this.store.dispatch(ShowProgress());
|
|
31
|
+
setTimeout(() => this.focusOpBeweging(ritdeel, resolve), 1000);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.focusOpBeweging(ritdeel, resolve);
|
|
35
|
+
}
|
|
36
|
+
})).subscribe();
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
focusOpBeweging(ritdeel, resolve) {
|
|
40
|
+
// deselecteer alles
|
|
41
|
+
this.store.dispatch(setZichtbaarheidAlleRitdelen(false));
|
|
42
|
+
// enable ritacties (checkbox) voor alle ritdelen met beweging die matched met bewegingId(s)
|
|
43
|
+
this.store.dispatch(toggleZichtbaarheidVoorBewegingen([parseInt(ritdeel.getBewegingId(), 10)]));
|
|
44
|
+
setTimeout(() => {
|
|
45
|
+
// dit neemt niet de vrijebaan elementen mee
|
|
46
|
+
const topoElementen = this.sbmService.bepaalRouteElementen(ritdeel.getRoute());
|
|
47
|
+
const dwangPuics = this.getPuics(topoElementen);
|
|
48
|
+
this.store.dispatch(MstActions.focusOpIds(dwangPuics));
|
|
49
|
+
setTimeout(() => {
|
|
50
|
+
// resolve de promise, om aan te geven dat focus klaar is
|
|
51
|
+
resolve(true);
|
|
52
|
+
this.viewerControlService.setPrinting(false);
|
|
53
|
+
this.store.dispatch(ClearProgress());
|
|
54
|
+
}, 1000);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
getPuics(topoElementen) {
|
|
58
|
+
return topoElementen.map(e => e.getPuic());
|
|
59
|
+
}
|
|
60
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PrintBewegingService, deps: [{ token: i1.Store }, { token: i2.ViewerControlService }, { token: i3.SignaleringsBeeldManagerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
61
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PrintBewegingService, providedIn: 'root' }); }
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PrintBewegingService, decorators: [{
|
|
64
|
+
type: Injectable,
|
|
65
|
+
args: [{
|
|
66
|
+
providedIn: 'root'
|
|
67
|
+
}]
|
|
68
|
+
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.ViewerControlService }, { type: i3.SignaleringsBeeldManagerService }] });
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbnQtYmV3ZWdpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdC12aWV3ZXIvc3JjL2xpYi9zZXJ2aWNlcy9wcmludC1iZXdlZ2luZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEtBQUssVUFBVSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSw0QkFBNEIsRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7OztBQVFuSSxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLFlBQTZCLEtBQTRCLEVBQzVCLG9CQUEwQyxFQUMxQyxVQUEyQztRQUYzQyxVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGVBQVUsR0FBVixVQUFVLENBQWlDO0lBQUcsQ0FBQztJQUU1RSxhQUFhLENBQUMsVUFBa0IsRUFBRSxjQUFzQjtRQUNwRCxPQUFPLElBQUksT0FBTyxDQUFVLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FDOUIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBRSxRQUFRLENBQUMsRUFBRTtnQkFDaEIsTUFBTSxlQUFlLEdBQWMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLFVBQVUsQ0FBQyxDQUFDO2dCQUUvRyx1QkFBdUI7Z0JBQ3ZCLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxVQUFVLElBQUksZUFBZSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7Z0JBQzlELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWhELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDWixNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsOEJBQThCLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQztvQkFDL0QsT0FBTztnQkFDWCxDQUFDO2dCQUVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbkMsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO29CQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7b0JBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7b0JBQ3BDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDbkUsQ0FBQztxQkFBTSxDQUFDO29CQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUMzQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxlQUFlLENBQUMsT0FBZ0IsRUFBRSxPQUFpQjtRQUN2RCxvQkFBb0I7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN6RCw0RkFBNEY7UUFDNUYsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsaUNBQWlDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFFWiw0Q0FBNEM7WUFDNUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUMvRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUV2RCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNaLHlEQUF5RDtnQkFDekQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNkLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7WUFDekMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sUUFBUSxDQUFDLGFBQXFDO1FBQ2xELE9BQU8sYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7K0dBeERRLG9CQUFvQjttSEFBcEIsb0JBQW9CLGNBRmpCLE1BQU07OzRGQUVULG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzYmJsYWQgfSBmcm9tICdAbG94aWEvcmlqd2VnZW4nO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBSaXRkZWVsIH0gZnJvbSAnLi4vbW9kZWwvcml0ZGVlbCc7XG5pbXBvcnQgKiBhcyBNc3RBY3Rpb25zIGZyb20gJy4uL3N0YXRlL2FjdGlvbnMvYWN0aW9ucyc7XG5pbXBvcnQgeyBDbGVhclByb2dyZXNzLCBTaG93UHJvZ3Jlc3MgfSBmcm9tICcuLi9zdGF0ZS9hY3Rpb25zL2FjdGlvbnMnO1xuaW1wb3J0IHsgbmF2aWdlZXJWYW5hZiwgc2V0WmljaHRiYWFyaGVpZEFsbGVSaXRkZWxlbiwgdG9nZ2xlWmljaHRiYWFyaGVpZFZvb3JCZXdlZ2luZ2VuIH0gZnJvbSAnLi4vc3RhdGUvYWN0aW9ucy9yaXRkZWxlbi5hY3Rpb25zJztcbmltcG9ydCB7IE1zdEVkaXRvclN0YXRlIH0gZnJvbSAnLi4vc3RhdGUvbXN0LWVkaXRvci1zdGF0ZSc7XG5pbXBvcnQgeyBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi9zaWduYWxlcmluZ3MtYmVlbGQtbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IFZpZXdlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi92aWV3ZXItY29udHJvbC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQcmludEJld2VnaW5nU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdG9yZTogU3RvcmU8TXN0RWRpdG9yU3RhdGU+LFxuICAgICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld2VyQ29udHJvbFNlcnZpY2U6IFZpZXdlckNvbnRyb2xTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc2JtU2VydmljZTogU2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZSkge31cblxuICAgIHByaW50QmV3ZWdpbmcoYmV3ZWdpbmdJZDogbnVtYmVyLCBwYWdpbmF0aW9uU2l6ZTogbnVtYmVyKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgncml0RGVsZW4nKS5waXBlKFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgdGFwKCByaXRkZWxlbiA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZ2V2b25kZW5SaXRkZWVsOiBSaXRkZWVsW10gPSByaXRkZWxlbi5maWx0ZXIociA9PiBOdW1iZXIucGFyc2VJbnQoci5nZXRCZXdlZ2luZ0lkKCksIDEwKSA9PT0gYmV3ZWdpbmdJZCk7XG5cbiAgICAgICAgICAgICAgICAvLyBoaWRlL3Nob3cgZGUga25vcHBlblxuICAgICAgICAgICAgICAgIGNvbnN0IHByaW50aW5nID0gISFiZXdlZ2luZ0lkICYmIGdldm9uZGVuUml0ZGVlbC5sZW5ndGggPT09IDE7XG4gICAgICAgICAgICAgICAgdGhpcy52aWV3ZXJDb250cm9sU2VydmljZS5zZXRQcmludGluZyhwcmludGluZyk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIXByaW50aW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3IoJ0dlZW4gYmV3ZWdpbmcgZ2V2b25kZW4gdm9vciAnICsgYmV3ZWdpbmdJZCkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgcml0ZGVlbCA9IGdldm9uZGVuUml0ZGVlbFswXTtcbiAgICAgICAgICAgICAgICBpZiAocml0ZGVlbC5pc05pZXRCZXNjaGlrYmFhcigpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmF2aWdlZXJWYW5hZihwYWdpbmF0aW9uU2l6ZSwgcml0ZGVlbCkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFNob3dQcm9ncmVzcygpKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmZvY3VzT3BCZXdlZ2luZyhyaXRkZWVsLCByZXNvbHZlKSwgMTAwMCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb2N1c09wQmV3ZWdpbmcocml0ZGVlbCwgcmVzb2x2ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkpLnN1YnNjcmliZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzT3BCZXdlZ2luZyhyaXRkZWVsOiBSaXRkZWVsLCByZXNvbHZlOiBGdW5jdGlvbik6IHZvaWQge1xuICAgICAgICAvLyBkZXNlbGVjdGVlciBhbGxlc1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHNldFppY2h0YmFhcmhlaWRBbGxlUml0ZGVsZW4oZmFsc2UpKTtcbiAgICAgICAgLy8gZW5hYmxlIHJpdGFjdGllcyAoY2hlY2tib3gpIHZvb3IgYWxsZSByaXRkZWxlbiBtZXQgYmV3ZWdpbmcgZGllIG1hdGNoZWQgbWV0IGJld2VnaW5nSWQocylcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0b2dnbGVaaWNodGJhYXJoZWlkVm9vckJld2VnaW5nZW4oW3BhcnNlSW50KHJpdGRlZWwuZ2V0QmV3ZWdpbmdJZCgpLCAxMCldKSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuXG4gICAgICAgICAgICAvLyBkaXQgbmVlbXQgbmlldCBkZSB2cmlqZWJhYW4gZWxlbWVudGVuIG1lZVxuICAgICAgICAgICAgY29uc3QgdG9wb0VsZW1lbnRlbiA9IHRoaXMuc2JtU2VydmljZS5iZXBhYWxSb3V0ZUVsZW1lbnRlbihyaXRkZWVsLmdldFJvdXRlKCkpO1xuICAgICAgICAgICAgY29uc3QgZHdhbmdQdWljcyA9IHRoaXMuZ2V0UHVpY3ModG9wb0VsZW1lbnRlbik7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKE1zdEFjdGlvbnMuZm9jdXNPcElkcyhkd2FuZ1B1aWNzKSk7XG5cbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIHJlc29sdmUgZGUgcHJvbWlzZSwgb20gYWFuIHRlIGdldmVuIGRhdCBmb2N1cyBrbGFhciBpc1xuICAgICAgICAgICAgICAgIHJlc29sdmUodHJ1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy52aWV3ZXJDb250cm9sU2VydmljZS5zZXRQcmludGluZyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDbGVhclByb2dyZXNzKCkpO1xuICAgICAgICAgICAgfSwgMTAwMCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHVpY3ModG9wb0VsZW1lbnRlbjogc2JibGFkLkhhc0lkZW50aWZpZXJbXSk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRvcG9FbGVtZW50ZW4ubWFwKGUgPT4gZS5nZXRQdWljKCkpO1xuICAgIH1cblxufVxuIl19
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { JsJavaUtil } from '@loxia/rijwegen';
|
|
3
|
+
import { RijwegplanRijwegDwangCombinatie } from '../model/rijwegplan-rijweg-dwang-combinatie';
|
|
4
|
+
import { Ritdeel } from '../model/ritdeel';
|
|
5
|
+
import { MessageBuilder } from '../util/message-builder';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "./editor.service";
|
|
8
|
+
import * as i2 from "../atomic-components/services/messages.service";
|
|
9
|
+
const SPOOR_NAAR_VRIJEBAAN_POSTFIX = '_e';
|
|
10
|
+
const SPOOR_NAAR_VEERWISSEL_VRIJEBAAN_POSTFIX = '_v';
|
|
11
|
+
export class RitLezerService {
|
|
12
|
+
constructor(rijwegPlanEditorService, messagesService) {
|
|
13
|
+
this.rijwegPlanEditorService = rijwegPlanEditorService;
|
|
14
|
+
this.messagesService = messagesService;
|
|
15
|
+
}
|
|
16
|
+
parseRit(rit, ritGewijzigdToegestaan) {
|
|
17
|
+
const ritDelen = [];
|
|
18
|
+
const missingPplgs = [];
|
|
19
|
+
if (!this.ritBestandIsGewijzigd(rit, ritGewijzigdToegestaan)) {
|
|
20
|
+
rit.bewegingen.forEach(beweging => this.parseBeweging(beweging, ritDelen, missingPplgs));
|
|
21
|
+
}
|
|
22
|
+
return ritDelen;
|
|
23
|
+
}
|
|
24
|
+
parseBeweging(beweging, ritDelen, missingPplgs) {
|
|
25
|
+
const rijwegPlan = this.getRijwegPlan(beweging.vanPplg);
|
|
26
|
+
if (!rijwegPlan) {
|
|
27
|
+
if (!missingPplgs.includes(beweging.vanPplg)) {
|
|
28
|
+
this.messagesService.showMessage(MessageBuilder.rijwegplanNietGevonden(beweging));
|
|
29
|
+
missingPplgs.push(beweging.vanPplg);
|
|
30
|
+
}
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const rijweg = this.getRijweg(rijwegPlan, beweging.vanSpoor, beweging.naarSpoor);
|
|
34
|
+
if (!rijweg) {
|
|
35
|
+
this.messagesService.showMessage(MessageBuilder.rijwegNietGevonden(beweging));
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const dwang = this.getDwang(rijweg, beweging.dwangNummer);
|
|
39
|
+
if (!dwang) {
|
|
40
|
+
this.messagesService.showMessage(MessageBuilder.dwangNietGevonden(beweging));
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const { vrijebaanDwangInfo, vervolgSpoor } = this.extractVrijebaanDwangInfo(beweging, rijwegPlan, rijweg);
|
|
44
|
+
const dwangInfo = new RijwegplanRijwegDwangCombinatie(rijwegPlan, rijweg, dwang);
|
|
45
|
+
ritDelen.push(new Ritdeel(dwangInfo, beweging.ritActies, beweging, vrijebaanDwangInfo, vervolgSpoor, []));
|
|
46
|
+
}
|
|
47
|
+
extractVrijebaanDwangInfo(beweging, rijwegPlan, rijweg) {
|
|
48
|
+
let vrijebaanDwangInfo = undefined;
|
|
49
|
+
let vervolgSpoor;
|
|
50
|
+
if (beweging.naarSpoor.endsWith(SPOOR_NAAR_VRIJEBAAN_POSTFIX) ||
|
|
51
|
+
beweging.naarSpoor.endsWith(SPOOR_NAAR_VEERWISSEL_VRIJEBAAN_POSTFIX)) {
|
|
52
|
+
let vrijebaanRijweg;
|
|
53
|
+
let vrijebaanDwang;
|
|
54
|
+
const vrijebaanRijwegplan = this.rijwegPlanEditorService.getVrijebaanRijwegplan(rijwegPlan.getPPLG(), rijweg.getEindSein().getName());
|
|
55
|
+
if (vrijebaanRijwegplan) {
|
|
56
|
+
const rijwegenArray = JsJavaUtil.listToArray(vrijebaanRijwegplan.getRijwegen());
|
|
57
|
+
const vrijebaanRijwegen = rijwegenArray.filter(vbRijweg => vbRijweg.getBeginSein().getName() === rijweg.getEindSein().getName());
|
|
58
|
+
if (vrijebaanRijwegen.length > 0) {
|
|
59
|
+
vrijebaanRijweg = vrijebaanRijwegen[0];
|
|
60
|
+
vrijebaanDwang = vrijebaanRijweg.getDwangVoorDwangNummer(0);
|
|
61
|
+
vervolgSpoor = vrijebaanRijwegplan.getVervolgSpoor(vrijebaanRijweg);
|
|
62
|
+
vrijebaanDwangInfo =
|
|
63
|
+
new RijwegplanRijwegDwangCombinatie(vrijebaanRijwegplan, vrijebaanRijweg, vrijebaanDwang);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return { vrijebaanDwangInfo, vervolgSpoor };
|
|
68
|
+
}
|
|
69
|
+
getRijwegPlan(pplg) {
|
|
70
|
+
return this.rijwegPlanEditorService.getRijwegplan(pplg);
|
|
71
|
+
}
|
|
72
|
+
getDwang(rijweg, dwangNummer) {
|
|
73
|
+
return rijweg.getDwangVoorDwangNummer(this.converteerDwangNummer(dwangNummer));
|
|
74
|
+
}
|
|
75
|
+
getRijweg(rijwegPlan, vanSpoor, naarSpoor) {
|
|
76
|
+
const vanPrlSpoor = this.verwijderExtendedInformatie(vanSpoor);
|
|
77
|
+
const naarPrlSpoor = this.verwijderExtendedInformatie(naarSpoor);
|
|
78
|
+
return rijwegPlan.getRijweg(vanPrlSpoor, naarPrlSpoor);
|
|
79
|
+
}
|
|
80
|
+
ritBestandIsGewijzigd(rit, ritGewijzigdToegestaan) {
|
|
81
|
+
for (const beweging of rit.bewegingen) {
|
|
82
|
+
if (this.isGewijzigd(beweging) && !ritGewijzigdToegestaan) {
|
|
83
|
+
this.messagesService.showMessage(MessageBuilder.ritFileAlGewijzigdError(beweging));
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
verwijderExtendedInformatie(spoor) {
|
|
90
|
+
return spoor.split('_')[0];
|
|
91
|
+
}
|
|
92
|
+
converteerDwangNummer(dwangNummer) {
|
|
93
|
+
return (dwangNummer === -1) ? 0 : dwangNummer;
|
|
94
|
+
}
|
|
95
|
+
isGewijzigd(beweging) {
|
|
96
|
+
return beweging.wijzigStatus === 'Gewijzigd';
|
|
97
|
+
}
|
|
98
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitLezerService, deps: [{ token: i1.EditorService }, { token: i2.MessagesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
99
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitLezerService }); }
|
|
100
|
+
}
|
|
101
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitLezerService, decorators: [{
|
|
102
|
+
type: Injectable
|
|
103
|
+
}], ctorParameters: () => [{ type: i1.EditorService }, { type: i2.MessagesService }] });
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicml0LWxlemVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3Qtdmlld2VyL3NyYy9saWIvc2VydmljZXMvcml0LWxlemVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFckQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDOUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUd6RCxNQUFNLDRCQUE0QixHQUFHLElBQUksQ0FBQztBQUMxQyxNQUFNLHVDQUF1QyxHQUFHLElBQUksQ0FBQztBQUdyRCxNQUFNLE9BQU8sZUFBZTtJQUN4QixZQUE2Qix1QkFBc0MsRUFDdEMsZUFBZ0M7UUFEaEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFlO1FBQ3RDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtJQUM3RCxDQUFDO0lBRU0sUUFBUSxDQUFDLEdBQVEsRUFBRSxzQkFBK0I7UUFDckQsTUFBTSxRQUFRLEdBQWMsRUFBRSxDQUFDO1FBQy9CLE1BQU0sWUFBWSxHQUFhLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQyxFQUFFLENBQUM7WUFDM0QsR0FBRyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUM3RixDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztJQUVP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ZSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDbkYsT0FBTyxJQUFJLENBQUM7WUFDaEIsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU8sMkJBQTJCLENBQUMsS0FBYTtRQUM3QyxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVPLHFCQUFxQixDQUFDLFdBQW1CO1FBQzdDLE9BQU8sQ0FBQyxXQUFXLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDbEQsQ0FBQztJQUVPLFdBQVcsQ0FBQyxRQUFrQjtRQUNsQyxPQUFPLFFBQVEsQ0FBQyxZQUFZLEtBQUssV0FBVyxDQUFDO0lBQ2pELENBQUM7K0dBdEdRLGVBQWU7bUhBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRvbWVpbiwgSnNKYXZhVXRpbCB9IGZyb20gJ0Bsb3hpYS9yaWp3ZWdlbic7XG5pbXBvcnQgeyBNZXNzYWdlc1NlcnZpY2UgfSBmcm9tICcuLi9hdG9taWMtY29tcG9uZW50cy9zZXJ2aWNlcy9tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUgfSBmcm9tICcuLi9tb2RlbC9yaWp3ZWdwbGFuLXJpandlZy1kd2FuZy1jb21iaW5hdGllJztcbmltcG9ydCB7IFJpdGRlZWwgfSBmcm9tICcuLi9tb2RlbC9yaXRkZWVsJztcbmltcG9ydCB7IEJld2VnaW5nLCBSaXQgfSBmcm9tICcuLi9vcHRpbW8nO1xuaW1wb3J0IHsgTWVzc2FnZUJ1aWxkZXIgfSBmcm9tICcuLi91dGlsL21lc3NhZ2UtYnVpbGRlcic7XG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi9lZGl0b3Iuc2VydmljZSc7XG5cbmNvbnN0IFNQT09SX05BQVJfVlJJSkVCQUFOX1BPU1RGSVggPSAnX2UnO1xuY29uc3QgU1BPT1JfTkFBUl9WRUVSV0lTU0VMX1ZSSUpFQkFBTl9QT1NURklYID0gJ192JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJpdExlemVyU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByaWp3ZWdQbGFuRWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VzU2VydmljZTogTWVzc2FnZXNTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHVibGljIHBhcnNlUml0KHJpdDogUml0LCByaXRHZXdpanppZ2RUb2VnZXN0YWFuOiBib29sZWFuKTogUml0ZGVlbFtdIHtcbiAgICAgICAgY29uc3Qgcml0RGVsZW46IFJpdGRlZWxbXSA9IFtdO1xuICAgICAgICBjb25zdCBtaXNzaW5nUHBsZ3M6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGlmICghdGhpcy5yaXRCZXN0YW5kSXNHZXdpanppZ2Qocml0LCByaXRHZXdpanppZ2RUb2VnZXN0YWFuKSkge1xuICAgICAgICAgICAgcml0LmJld2VnaW5nZW4uZm9yRWFjaChiZXdlZ2luZyA9PiB0aGlzLnBhcnNlQmV3ZWdpbmcoYmV3ZWdpbmcsIHJpdERlbGVuLCBtaXNzaW5nUHBsZ3MpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcml0RGVsZW47XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZUJld2VnaW5nKGJld2VnaW5nOiBCZXdlZ2luZywgcml0RGVsZW46IFJpdGRlZWxbXSwgbWlzc2luZ1BwbGdzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCByaWp3ZWdQbGFuID0gdGhpcy5nZXRSaWp3ZWdQbGFuKGJld2VnaW5nLnZhblBwbGcpO1xuICAgICAgICBpZiAoIXJpandlZ1BsYW4pIHtcbiAgICAgICAgICAgIGlmICghbWlzc2luZ1BwbGdzLmluY2x1ZGVzKGJld2VnaW5nLnZhblBwbGcpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlc1NlcnZpY2Uuc2hvd01lc3NhZ2UoTWVzc2FnZUJ1aWxkZXIucmlqd2VncGxhbk5pZXRHZXZvbmRlbihiZXdlZ2luZykpO1xuICAgICAgICAgICAgICAgIG1pc3NpbmdQcGxncy5wdXNoKGJld2VnaW5nLnZhblBwbGcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJpandlZyA9IHRoaXMuZ2V0Umlqd2VnKHJpandlZ1BsYW4sIGJld2VnaW5nLnZhblNwb29yLCBiZXdlZ2luZy5uYWFyU3Bvb3IpO1xuICAgICAgICBpZiAoIXJpandlZykge1xuICAgICAgICAgICAgdGhpcy5tZXNzYWdlc1NlcnZpY2Uuc2hvd01lc3NhZ2UoTWVzc2FnZUJ1aWxkZXIucmlqd2VnTmlldEdldm9uZGVuKGJld2VnaW5nKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkd2FuZyA9IHRoaXMuZ2V0RHdhbmcocmlqd2VnLCBiZXdlZ2luZy5kd2FuZ051bW1lcik7XG4gICAgICAgIGlmICghZHdhbmcpIHtcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZXNTZXJ2aWNlLnNob3dNZXNzYWdlKE1lc3NhZ2VCdWlsZGVyLmR3YW5nTmlldEdldm9uZGVuKGJld2VnaW5nKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgeyB2cmlqZWJhYW5Ed2FuZ0luZm8sIHZlcnZvbGdTcG9vciB9ID0gdGhpcy5leHRyYWN0VnJpamViYWFuRHdhbmdJbmZvKGJld2VnaW5nLCByaWp3ZWdQbGFuLCByaWp3ZWcpO1xuICAgICAgICBjb25zdCBkd2FuZ0luZm8gPSBuZXcgUmlqd2VncGxhblJpandlZ0R3YW5nQ29tYmluYXRpZShyaWp3ZWdQbGFuLCByaWp3ZWcsIGR3YW5nKTtcbiAgICAgICAgcml0RGVsZW4ucHVzaChuZXcgUml0ZGVlbChkd2FuZ0luZm8sIGJld2VnaW5nLnJpdEFjdGllcywgYmV3ZWdpbmcsIHZyaWplYmFhbkR3YW5nSW5mbywgdmVydm9sZ1Nwb29yLCBbXSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZXh0cmFjdFZyaWplYmFhbkR3YW5nSW5mbyhiZXdlZ2luZzogQmV3ZWdpbmcsIHJpandlZ1BsYW46IGRvbWVpbi5SaWp3ZWdwbGFuLCByaWp3ZWc6IGRvbWVpbi5SaWp3ZWcpOiB7IHZyaWplYmFhbkR3YW5nSW5mbzogUmlqd2VncGxhblJpandlZ0R3YW5nQ29tYmluYXRpZSB8IHVuZGVmaW5lZCwgdmVydm9sZ1Nwb29yOiBzdHJpbmcgfCB1bmRlZmluZWQgfSB7XG4gICAgICAgIGxldCB2cmlqZWJhYW5Ed2FuZ0luZm86IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgICAgIGxldCB2ZXJ2b2xnU3Bvb3I7XG4gICAgICAgIGlmIChiZXdlZ2luZy5uYWFyU3Bvb3IuZW5kc1dpdGgoU1BPT1JfTkFBUl9WUklKRUJBQU5fUE9TVEZJWCkgfHxcbiAgICAgICAgICAgIGJld2VnaW5nLm5hYXJTcG9vci5lbmRzV2l0aChTUE9PUl9OQUFSX1ZFRVJXSVNTRUxfVlJJSkVCQUFOX1BPU1RGSVgpKSB7XG4gICAgICAgICAgICBsZXQgdnJpamViYWFuUmlqd2VnOiBkb21laW4uUmlqd2VnO1xuICAgICAgICAgICAgbGV0IHZyaWplYmFhbkR3YW5nO1xuICAgICAgICAgICAgY29uc3QgdnJpamViYWFuUmlqd2VncGxhbiA9XG4gICAgICAgICAgICAgICAgdGhpcy5yaWp3ZWdQbGFuRWRpdG9yU2VydmljZS5nZXRWcmlqZWJhYW5SaWp3ZWdwbGFuKHJpandlZ1BsYW4uZ2V0UFBMRygpLFxuICAgICAgICAgICAgICAgICAgICByaWp3ZWcuZ2V0RWluZFNlaW4oKS5nZXROYW1lKCkpO1xuICAgICAgICAgICAgaWYgKHZyaWplYmFhblJpandlZ3BsYW4pIHtcbiAgICAgICAgICAgICAgICBjb25zdCByaWp3ZWdlbkFycmF5OiBkb21laW4uUmlqd2VnW10gPSBKc0phdmFVdGlsLmxpc3RUb0FycmF5KHZyaWplYmFhblJpandlZ3BsYW4uZ2V0Umlqd2VnZW4oKSk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCB2cmlqZWJhYW5SaWp3ZWdlbiA9XG4gICAgICAgICAgICAgICAgICAgIHJpandlZ2VuQXJyYXkuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgdmJSaWp3ZWcgPT4gdmJSaWp3ZWcuZ2V0QmVnaW5TZWluKCkuZ2V0TmFtZSgpID09PSByaWp3ZWcuZ2V0RWluZFNlaW4oKS5nZXROYW1lKCkpO1xuICAgICAgICAgICAgICAgIGlmICh2cmlqZWJhYW5SaWp3ZWdlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHZyaWplYmFhblJpandlZyA9IHZyaWplYmFhblJpandlZ2VuWzBdO1xuICAgICAgICAgICAgICAgICAgICB2cmlqZWJhYW5Ed2FuZyA9IHZyaWplYmFhblJpandlZy5nZXREd2FuZ1Zvb3JEd2FuZ051bW1lcigwKTtcbiAgICAgICAgICAgICAgICAgICAgdmVydm9sZ1Nwb29yID0gdnJpamViYWFuUmlqd2VncGxhbi5nZXRWZXJ2b2xnU3Bvb3IodnJpamViYWFuUmlqd2VnKTtcblxuICAgICAgICAgICAgICAgICAgICB2cmlqZWJhYW5Ed2FuZ0luZm8gPVxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUodnJpamViYWFuUmlqd2VncGxhbiwgdnJpamViYWFuUmlqd2VnLCB2cmlqZWJhYW5Ed2FuZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7IHZyaWplYmFhbkR3YW5nSW5mbywgdmVydm9sZ1Nwb29yIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSaWp3ZWdQbGFuKHBwbGc6IHN0cmluZyk6IGRvbWVpbi5SaWp3ZWdwbGFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmlqd2VnUGxhbkVkaXRvclNlcnZpY2UuZ2V0Umlqd2VncGxhbihwcGxnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldER3YW5nKHJpandlZzogZG9tZWluLlJpandlZywgZHdhbmdOdW1tZXI6IG51bWJlcik6IGRvbWVpbi5Ed2FuZyB7XG4gICAgICAgIHJldHVybiByaWp3ZWcuZ2V0RHdhbmdWb29yRHdhbmdOdW1tZXIodGhpcy5jb252ZXJ0ZWVyRHdhbmdOdW1tZXIoZHdhbmdOdW1tZXIpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJpandlZyhyaWp3ZWdQbGFuOiBkb21laW4uUmlqd2VncGxhbiwgdmFuU3Bvb3I6IHN0cmluZywgbmFhclNwb29yOiBzdHJpbmcpOiBkb21laW4uUmlqd2VnIHtcbiAgICAgICAgY29uc3QgdmFuUHJsU3Bvb3IgPSB0aGlzLnZlcndpamRlckV4dGVuZGVkSW5mb3JtYXRpZSh2YW5TcG9vcik7XG4gICAgICAgIGNvbnN0IG5hYXJQcmxTcG9vciA9IHRoaXMudmVyd2lqZGVyRXh0ZW5kZWRJbmZvcm1hdGllKG5hYXJTcG9vcik7XG4gICAgICAgIHJldHVybiByaWp3ZWdQbGFuLmdldFJpandlZyh2YW5QcmxTcG9vciwgbmFhclBybFNwb29yKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJpdEJlc3RhbmRJc0dld2lqemlnZChyaXQ6IFJpdCwgcml0R2V3aWp6aWdkVG9lZ2VzdGFhbjogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAgICAgICBmb3IgKGNvbnN0IGJld2VnaW5nIG9mIHJpdC5iZXdlZ2luZ2VuKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0dld2lqemlnZChiZXdlZ2luZykgJiYgIXJpdEdld2lqemlnZFRvZWdlc3RhYW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VzU2VydmljZS5zaG93TWVzc2FnZShNZXNzYWdlQnVpbGRlci5yaXRGaWxlQWxHZXdpanppZ2RFcnJvcihiZXdlZ2luZykpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZlcndpamRlckV4dGVuZGVkSW5mb3JtYXRpZShzcG9vcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHNwb29yLnNwbGl0KCdfJylbMF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0ZWVyRHdhbmdOdW1tZXIoZHdhbmdOdW1tZXI6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoZHdhbmdOdW1tZXIgPT09IC0xKSA/IDAgOiBkd2FuZ051bW1lcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzR2V3aWp6aWdkKGJld2VnaW5nOiBCZXdlZ2luZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gYmV3ZWdpbmcud2lqemlnU3RhdHVzID09PSAnR2V3aWp6aWdkJztcbiAgICB9XG59XG4iXX0=
|