@golemio/pid 2.12.1-rc.1208470381 → 2.12.2-dev.1208525749
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/db/example/12_metro_line_A_gtfs_trips.sql +0 -5
- package/db/example/18_metroRailtrack.sql +369 -0
- package/dist/helpers/RouteTypeEnums.d.ts +1 -0
- package/dist/helpers/RouteTypeEnums.js +1 -0
- package/dist/helpers/RouteTypeEnums.js.map +1 -1
- package/dist/input-gateway/vehicle-positions/VehiclePositionsController.js +1 -1
- package/dist/input-gateway/vehicle-positions/VehiclePositionsController.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/SaveMetroRailtrackDataToDBTask.js +4 -0
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/SaveMetroRailtrackDataToDBTask.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.js +16 -3
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/Di.js +8 -0
- package/dist/integration-engine/vehicle-positions/ioc/Di.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js +9 -0
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.js +12 -0
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/regional-bus/RegionalBusMessageFilter.d.ts +1 -4
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/regional-bus/RegionalBusMessageFilter.js +5 -21
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/regional-bus/RegionalBusMessageFilter.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.d.ts +9 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.js +59 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.js +13 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js +5 -22
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js +2 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.d.ts +12 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.js +121 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.js +89 -33
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js +7 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.d.ts +3 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.js +19 -25
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.MetroShapePointsFixer = void 0;
|
|
25
|
+
const GeoMeasurementHelper_1 = require("../../../../../../helpers/geo/GeoMeasurementHelper");
|
|
26
|
+
const ModuleContainerToken_1 = require("../../../../../ioc/ModuleContainerToken");
|
|
27
|
+
const VPContainerToken_1 = require("../../../../ioc/VPContainerToken");
|
|
28
|
+
const MetroRouteHelper_1 = require("../../../runs/helpers/MetroRouteHelper");
|
|
29
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
30
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
31
|
+
const CachedMetroRailtrackLookup_1 = require("../../data-access/metro/CachedMetroRailtrackLookup");
|
|
32
|
+
let MetroShapePointsFixer = exports.MetroShapePointsFixer = class MetroShapePointsFixer {
|
|
33
|
+
constructor(cachedMetroRailTrackLookup, geoMeasurementHelper) {
|
|
34
|
+
this.cachedMetroRailTrackLookup = cachedMetroRailTrackLookup;
|
|
35
|
+
this.geoMeasurementHelper = geoMeasurementHelper;
|
|
36
|
+
}
|
|
37
|
+
fix(data) {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
try {
|
|
40
|
+
const clonedData = structuredClone(data);
|
|
41
|
+
// load metro obvody
|
|
42
|
+
const metroRailtrackLookup = yield this.cachedMetroRailTrackLookup.getAllByRouteName(MetroRouteHelper_1.MetroRouteHelper.getRouteName(data.trip_id));
|
|
43
|
+
let lastKnownStopSequence = null;
|
|
44
|
+
const maxStopSequence = clonedData.stop_times.length;
|
|
45
|
+
for (let index = 0; index < clonedData.shapes_anchor_points.length; index++) {
|
|
46
|
+
const shape = clonedData.shapes_anchor_points[index];
|
|
47
|
+
const possibleStops = this.getPossibleStops(clonedData.stop_times, lastKnownStopSequence);
|
|
48
|
+
const closestMetroRailtrack = this.getClosestMetroRailtrack(shape, metroRailtrackLookup, possibleStops);
|
|
49
|
+
const thisStopSequence = this.getSequenceByStopId(closestMetroRailtrack.gtfs_stop_id, clonedData.stop_times);
|
|
50
|
+
if (thisStopSequence) {
|
|
51
|
+
lastKnownStopSequence = thisStopSequence;
|
|
52
|
+
}
|
|
53
|
+
shape.at_stop = closestMetroRailtrack.gtfs_stop_id && thisStopSequence ? true : false;
|
|
54
|
+
shape.this_stop_sequence = thisStopSequence;
|
|
55
|
+
shape.next_stop_sequence = lastKnownStopSequence ? Math.min(lastKnownStopSequence + 1, maxStopSequence) : 2;
|
|
56
|
+
shape.last_stop_sequence = lastKnownStopSequence && lastKnownStopSequence > 1 ? lastKnownStopSequence : 1;
|
|
57
|
+
if (shape.at_stop) {
|
|
58
|
+
shape.last_stop_sequence = shape.this_stop_sequence;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return clonedData;
|
|
62
|
+
}
|
|
63
|
+
catch (err) {
|
|
64
|
+
throw new golemio_errors_1.GeneralError("Unable to fix metro shape points: " + err.message, this.constructor.name, err);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
getSequenceByStopId(gtfs_stop_id, stop_times) {
|
|
69
|
+
var _a, _b, _c;
|
|
70
|
+
const regex = /U(?<node>.*)Z/;
|
|
71
|
+
const node = (_b = (_a = regex.exec(gtfs_stop_id || "")) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.node;
|
|
72
|
+
if (node && node.length > 0) {
|
|
73
|
+
return ((_c = stop_times.find((stop_time) => { var _a, _b; return ((_b = (_a = regex.exec(stop_time.stop_id)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.node) === node; })) === null || _c === void 0 ? void 0 : _c.stop_sequence) || null;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
getClosestMetroRailtrack(shape, metroRailtrackLookup, possibleStops) {
|
|
80
|
+
// find closest metroRailtrack for shape.coordinates
|
|
81
|
+
const result = metroRailtrackLookup
|
|
82
|
+
.map((metroRailtrack) => {
|
|
83
|
+
return Object.assign(Object.assign({}, metroRailtrack), { distance: this.geoMeasurementHelper.getDistanceInMeters(shape.coordinates, metroRailtrack.coordinates.coordinates) });
|
|
84
|
+
})
|
|
85
|
+
.sort((a, b) => a.distance - b.distance);
|
|
86
|
+
const resultsWithing15Meters = result.filter((el) => el.distance < 15);
|
|
87
|
+
if (resultsWithing15Meters.length > 0) {
|
|
88
|
+
for (const railtrack of resultsWithing15Meters) {
|
|
89
|
+
if (possibleStops.some((el) => el === railtrack.gtfs_stop_id)) {
|
|
90
|
+
return railtrack;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return resultsWithing15Meters[0];
|
|
94
|
+
}
|
|
95
|
+
// if no railtrack is within 15 meters, return closest railtrack without stop_id
|
|
96
|
+
return result.filter((el) => !el.gtfs_stop_id)[0];
|
|
97
|
+
}
|
|
98
|
+
getPossibleStops(stopTimes, lastKnownStopSequence) {
|
|
99
|
+
// since we dont know direction for railtrack data, we check concrete stops in one direction
|
|
100
|
+
// to ensure proper matching with shape
|
|
101
|
+
const result = [];
|
|
102
|
+
if (lastKnownStopSequence === null) {
|
|
103
|
+
result.push(stopTimes[0].stop_id);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
result.push(stopTimes[lastKnownStopSequence - 1].stop_id);
|
|
107
|
+
if (lastKnownStopSequence < stopTimes.length) {
|
|
108
|
+
result.push(stopTimes[lastKnownStopSequence].stop_id);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
exports.MetroShapePointsFixer = MetroShapePointsFixer = __decorate([
|
|
115
|
+
(0, tsyringe_1.injectable)(),
|
|
116
|
+
__param(0, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.CachedMetroRailTrackLookup)),
|
|
117
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.GeoMeasurementHelper)),
|
|
118
|
+
__metadata("design:paramtypes", [CachedMetroRailtrackLookup_1.CachedMetroRailTrackLookup,
|
|
119
|
+
GeoMeasurementHelper_1.GeoMeasurementHelper])
|
|
120
|
+
], MetroShapePointsFixer);
|
|
121
|
+
//# sourceMappingURL=MetroShapePointsFixer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetroShapePointsFixer.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,11 @@ export declare class SaveDataToDBTask extends AbstractTask<IMpvMessageInput> {
|
|
|
8
8
|
private readonly tripsRepository;
|
|
9
9
|
private readonly cisStopRepository;
|
|
10
10
|
private readonly messageTransformation;
|
|
11
|
+
private readonly logger;
|
|
11
12
|
constructor(queuePrefix: string);
|
|
12
13
|
protected execute(data: IMpvMessageInput): Promise<void>;
|
|
14
|
+
private saveStops;
|
|
13
15
|
private sendDataToUpdateGtfsTripId;
|
|
14
16
|
private sendDataToUpdateDelay;
|
|
17
|
+
private getTripDataAndSendToUpdateDelay;
|
|
15
18
|
}
|
|
@@ -13,8 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.SaveDataToDBTask = void 0;
|
|
16
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
17
|
+
const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
|
|
16
18
|
const queueprocessors_1 = require("@golemio/core/dist/integration-engine/queueprocessors");
|
|
17
19
|
const workers_1 = require("@golemio/core/dist/integration-engine/workers");
|
|
20
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
18
21
|
const CisStopRepository_1 = require("../data-access/CisStopRepository");
|
|
19
22
|
const TripsRepository_1 = require("../data-access/TripsRepository");
|
|
20
23
|
const TripsMapper_1 = __importDefault(require("../data-access/helpers/TripsMapper"));
|
|
@@ -26,10 +29,10 @@ class SaveDataToDBTask extends workers_1.AbstractTask {
|
|
|
26
29
|
this.queueName = "saveDataToDB";
|
|
27
30
|
this.queueTtl = 5 * 60 * 1000; // 5 minutes
|
|
28
31
|
this.schema = SaveDataToDBSchema_1.SaveDataToDBValidationSchema;
|
|
29
|
-
this.queueType = "classic";
|
|
30
32
|
this.tripsRepository = new TripsRepository_1.TripsRepository();
|
|
31
33
|
this.cisStopRepository = new CisStopRepository_1.CisStopRepository();
|
|
32
34
|
this.messageTransformation = new MpvMessageTransformation_1.MpvMessageTransformation();
|
|
35
|
+
this.logger = ioc_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.Logger);
|
|
33
36
|
}
|
|
34
37
|
execute(data) {
|
|
35
38
|
var _a;
|
|
@@ -43,58 +46,111 @@ class SaveDataToDBTask extends workers_1.AbstractTask {
|
|
|
43
46
|
.filter((key) => key !== "start_timestamp")
|
|
44
47
|
.concat("updated_at"), true);
|
|
45
48
|
const { inserted, updated } = TripsMapper_1.default.mapTripEntitiesToUpdateDto(tripEntities, taskStartTimestamp);
|
|
46
|
-
|
|
47
|
-
|
|
49
|
+
// At this point we want to send ACK to rabbit and let the rest of the processing to be done in the background
|
|
50
|
+
this.sendDataToUpdateGtfsTripId(inserted, positions);
|
|
51
|
+
this.sendDataToUpdateDelay(updated, positions);
|
|
48
52
|
// Save cis stops to later propagate platform codes to departure boards
|
|
49
|
-
|
|
53
|
+
this.saveStops(stops);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
saveStops(stops) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
try {
|
|
59
|
+
yield this.cisStopRepository.bulkSave(stops);
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
63
|
+
this.logger.error(error);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while saving stops", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
50
69
|
});
|
|
51
70
|
}
|
|
52
71
|
sendDataToUpdateGtfsTripId(insertedTrips, positions) {
|
|
53
72
|
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
73
|
+
try {
|
|
74
|
+
// send message for update GTFSTripIds
|
|
75
|
+
for (let i = 0, chunkSize = 50; i < insertedTrips.length; i += chunkSize) {
|
|
76
|
+
const insertedBatch = insertedTrips.slice(i, i + chunkSize);
|
|
77
|
+
const insertedIds = insertedBatch.map((ins) => {
|
|
78
|
+
return ins.id;
|
|
79
|
+
});
|
|
80
|
+
yield queueprocessors_1.QueueManager.sendMessageToExchange(this.queuePrefix, "updateGTFSTripId", {
|
|
81
|
+
trips: insertedBatch,
|
|
82
|
+
positions: positions.filter((position) => insertedIds.includes(position.trips_id)),
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
88
|
+
this.logger.error(error);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while sending data to update GTFS trip id", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
92
|
+
}
|
|
64
93
|
}
|
|
65
94
|
});
|
|
66
95
|
}
|
|
67
96
|
sendDataToUpdateDelay(updatedTrips, positions) {
|
|
68
97
|
return __awaiter(this, void 0, void 0, function* () {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
98
|
+
try {
|
|
99
|
+
// aggregate runs by origin_route_name & run_number to keep related messages in same bulk
|
|
100
|
+
const runTripMap = updatedTrips.length ? { unknown: [] } : {};
|
|
101
|
+
for (const trip of updatedTrips) {
|
|
102
|
+
if (!trip.origin_route_name || !trip.run_number) {
|
|
103
|
+
runTripMap.unknown.push(trip.id);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
const key = `${trip.origin_route_name}_${trip.run_number}`;
|
|
107
|
+
runTripMap[key] ? runTripMap[key].push(trip.id) : (runTripMap[key] = [trip.id]);
|
|
108
|
+
}
|
|
74
109
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
110
|
+
const chunks = [];
|
|
111
|
+
let idx = 0;
|
|
112
|
+
for (const key in runTripMap) {
|
|
113
|
+
if (!chunks[idx]) {
|
|
114
|
+
chunks[idx] = [];
|
|
115
|
+
}
|
|
116
|
+
chunks[idx] = chunks[idx].concat(runTripMap[key]);
|
|
117
|
+
if (chunks[idx].length > 200) {
|
|
118
|
+
idx++;
|
|
119
|
+
}
|
|
78
120
|
}
|
|
121
|
+
const promises = [];
|
|
122
|
+
for (const key in chunks) {
|
|
123
|
+
promises.push(this.getTripDataAndSendToUpdateDelay(chunks[key], positions));
|
|
124
|
+
}
|
|
125
|
+
yield Promise.all(promises);
|
|
79
126
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
if (!chunks[idx]) {
|
|
84
|
-
chunks[idx] = [];
|
|
127
|
+
catch (error) {
|
|
128
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
129
|
+
this.logger.error(error);
|
|
85
130
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
idx++;
|
|
131
|
+
else {
|
|
132
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while sending data to update delay", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
89
133
|
}
|
|
90
134
|
}
|
|
91
|
-
|
|
92
|
-
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
getTripDataAndSendToUpdateDelay(chunk, positions) {
|
|
138
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
139
|
+
try {
|
|
140
|
+
const updatedTrips = yield this.tripsRepository.findAllAssocTripIds(chunk);
|
|
93
141
|
yield queueprocessors_1.QueueManager.sendMessageToExchange(this.queuePrefix, "updateDelay", {
|
|
94
142
|
updatedTrips,
|
|
95
|
-
positions: positions.filter((position) =>
|
|
143
|
+
positions: positions.filter((position) => chunk.includes(position.trips_id)),
|
|
96
144
|
});
|
|
97
145
|
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
148
|
+
this.logger.error(error);
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while sending data to update delay", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
152
|
+
}
|
|
153
|
+
}
|
|
98
154
|
});
|
|
99
155
|
}
|
|
100
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaveDataToDBTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"SaveDataToDBTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export declare class UpdateDelayTask extends AbstractTask<IUpdateDelayInput> {
|
|
|
11
11
|
private readonly delayComputationRedisRepository;
|
|
12
12
|
private readonly tripStopsManager;
|
|
13
13
|
private readonly delayComputationManager;
|
|
14
|
+
private readonly metroShapePointsFixer;
|
|
14
15
|
constructor(queuePrefix: string);
|
|
15
16
|
protected execute(data: IUpdateDelayInput): Promise<void>;
|
|
16
17
|
private enrichTripWithGtfsComputationData;
|
package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js
CHANGED
|
@@ -19,6 +19,7 @@ const cache_1 = require("../../../../ropid-gtfs/data-access/cache");
|
|
|
19
19
|
const Di_1 = require("../../../../ropid-gtfs/ioc/Di");
|
|
20
20
|
const RopidGtfsContainerToken_1 = require("../../../../ropid-gtfs/ioc/RopidGtfsContainerToken");
|
|
21
21
|
const Di_2 = require("../../../ioc/Di");
|
|
22
|
+
const VPContainerToken_1 = require("../../../ioc/VPContainerToken");
|
|
22
23
|
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
23
24
|
const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
|
|
24
25
|
const queueprocessors_1 = require("@golemio/core/dist/integration-engine/queueprocessors");
|
|
@@ -31,6 +32,7 @@ const PositionsManager_1 = __importDefault(require("../helpers/PositionsManager"
|
|
|
31
32
|
const TripStopsManager_1 = require("../helpers/TripStopsManager");
|
|
32
33
|
const VPUtils_1 = require("../helpers/VPUtils");
|
|
33
34
|
const UpdateDelaySchema_1 = require("../schema/UpdateDelaySchema");
|
|
35
|
+
const RouteTypeEnums_1 = require("../../../../../helpers/RouteTypeEnums");
|
|
34
36
|
class UpdateDelayTask extends workers_1.AbstractTask {
|
|
35
37
|
constructor(queuePrefix) {
|
|
36
38
|
super(queuePrefix);
|
|
@@ -39,10 +41,13 @@ class UpdateDelayTask extends workers_1.AbstractTask {
|
|
|
39
41
|
this.schema = UpdateDelaySchema_1.UpdateDelayValidationSchema;
|
|
40
42
|
this.enrichTripWithGtfsComputationData = (trip) => __awaiter(this, void 0, void 0, function* () {
|
|
41
43
|
try {
|
|
42
|
-
|
|
44
|
+
let gtfsComputationData = yield this.delayComputationManager.getComputationObject(trip.gtfs_trip_id);
|
|
43
45
|
if (!gtfsComputationData) {
|
|
44
46
|
return trip;
|
|
45
47
|
}
|
|
48
|
+
if (trip.gtfs_route_type === RouteTypeEnums_1.GTFSRouteTypeEnum.METRO) {
|
|
49
|
+
gtfsComputationData = yield this.metroShapePointsFixer.fix(gtfsComputationData);
|
|
50
|
+
}
|
|
46
51
|
yield this.delayComputationRedisRepository.set("trip_id", gtfsComputationData, VPUtils_1.VPUtils.DELAY_COMPUTATION_CACHE_TTL);
|
|
47
52
|
trip.gtfsData = gtfsComputationData;
|
|
48
53
|
}
|
|
@@ -98,6 +103,7 @@ class UpdateDelayTask extends workers_1.AbstractTask {
|
|
|
98
103
|
const blockStopsRedisRepository = Di_1.RopidGtfsContainer.resolve(RopidGtfsContainerToken_1.RopidGtfsContainerToken.BlockStopsRedisRepository);
|
|
99
104
|
this.tripStopsManager = new TripStopsManager_1.TripStopsManager(gtfsStopTimesRepository, blockStopsRedisRepository);
|
|
100
105
|
this.delayComputationManager = new DelayComputationManager_1.DelayComputationManager(gtfsTripsRepository);
|
|
106
|
+
this.metroShapePointsFixer = Di_2.VPContainer.resolve(VPContainerToken_1.VPContainerToken.MetroShapePointsFixer);
|
|
101
107
|
}
|
|
102
108
|
execute(data) {
|
|
103
109
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4FAAiF;AACjF,oFAAyE;AACzE,oEAA8G;AAC9G,sDAA2D;AAC3D,gGAAqF;AACrF,wCAA2D;
|
|
1
|
+
{"version":3,"file":"UpdateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,10 @@ import { Moment } from "@golemio/core/dist/shared/moment-timezone";
|
|
|
3
3
|
import { IMpvPositionContent } from "../interfaces/MpvMessageInterfaces";
|
|
4
4
|
import { ITransformationElement, ITransformationResult } from "../interfaces/TransformationInterfaces";
|
|
5
5
|
export declare class MpvMessageTransformation extends BaseTransformation implements ITransformation {
|
|
6
|
+
private static ORIGIN_TIME_FORMAT;
|
|
6
7
|
name: string;
|
|
7
8
|
private config;
|
|
8
|
-
private
|
|
9
|
+
private skipAgencyNames;
|
|
9
10
|
constructor();
|
|
10
11
|
/**
|
|
11
12
|
* Overrides BaseTransformation::transform
|
|
@@ -31,6 +32,7 @@ export declare class MpvMessageTransformation extends BaseTransformation impleme
|
|
|
31
32
|
* @returns {number}
|
|
32
33
|
*/
|
|
33
34
|
private checkMidnight;
|
|
35
|
+
private isBlacklistedAgency;
|
|
34
36
|
/**
|
|
35
37
|
* Fix source negative bearing value due to overflow by adding 256
|
|
36
38
|
*
|
|
@@ -45,9 +47,4 @@ export declare class MpvMessageTransformation extends BaseTransformation impleme
|
|
|
45
47
|
* @returns {stringList}
|
|
46
48
|
*/
|
|
47
49
|
private formatASWStopId;
|
|
48
|
-
/**
|
|
49
|
-
* Returns list of vehicle reg numbers that should be excluded from MPVNet processing
|
|
50
|
-
* (already processed from another source)
|
|
51
|
-
*/
|
|
52
|
-
private get regionalBusRegNumberBlacklist();
|
|
53
50
|
}
|
|
@@ -22,6 +22,7 @@ const const_1 = require("../../../../../const");
|
|
|
22
22
|
const DPPUtils_1 = __importDefault(require("../helpers/DPPUtils"));
|
|
23
23
|
const ProviderSourceTypeEnum_1 = require("../helpers/ProviderSourceTypeEnum");
|
|
24
24
|
const MpvStopParser_1 = require("../helpers/mpv-net/MpvStopParser");
|
|
25
|
+
const RouteTypeEnums_1 = require("../../../../../helpers/RouteTypeEnums");
|
|
25
26
|
var PositionTrackingEnum;
|
|
26
27
|
(function (PositionTrackingEnum) {
|
|
27
28
|
PositionTrackingEnum["NOT_TRACKING"] = "0";
|
|
@@ -30,6 +31,7 @@ var PositionTrackingEnum;
|
|
|
30
31
|
class MpvMessageTransformation extends transformations_1.BaseTransformation {
|
|
31
32
|
constructor() {
|
|
32
33
|
super();
|
|
34
|
+
this.skipAgencyNames = [DPPUtils_1.default.DPP_AGENCY_NAME];
|
|
33
35
|
/**
|
|
34
36
|
* Overrides BaseTransformation::transform
|
|
35
37
|
*/
|
|
@@ -48,7 +50,9 @@ class MpvMessageTransformation extends transformations_1.BaseTransformation {
|
|
|
48
50
|
if (elemRes) {
|
|
49
51
|
res.positions.push(elemRes.position);
|
|
50
52
|
trips.set(elemRes.trip.id, elemRes.trip);
|
|
51
|
-
|
|
53
|
+
for (const [key, value] of elemRes.stops) {
|
|
54
|
+
stops.set(key, value);
|
|
55
|
+
}
|
|
52
56
|
}
|
|
53
57
|
}
|
|
54
58
|
res.trips = Array.from(trips.values());
|
|
@@ -58,14 +62,9 @@ class MpvMessageTransformation extends transformations_1.BaseTransformation {
|
|
|
58
62
|
this.transformElement = (element) => __awaiter(this, void 0, void 0, function* () {
|
|
59
63
|
var _a, _b;
|
|
60
64
|
const attributes = element.$;
|
|
61
|
-
// DPP and regional bus trips to be excluded in HTTP ingress
|
|
62
|
-
const isDPPTrip = attributes.dopr === DPPUtils_1.default.DPP_AGENCY_NAME;
|
|
63
|
-
const isRegionalBusTrip = !!attributes.vuzevc &&
|
|
64
|
-
this.regionalBusRegNumberBlacklist &&
|
|
65
|
-
this.regionalBusRegNumberBlacklist.includes(attributes.vuzevc);
|
|
66
65
|
// Trips with null cpoz (origin time) and falsy or "false" zrus (cancellation) attributes are excluded
|
|
67
66
|
const hasInvalidAttributes = !attributes.cpoz && (!attributes.zrus || attributes.zrus === "false");
|
|
68
|
-
if (
|
|
67
|
+
if (this.isBlacklistedAgency(attributes.dopr) || hasInvalidAttributes) {
|
|
69
68
|
return null;
|
|
70
69
|
}
|
|
71
70
|
attributes.lin = attributes.lin || "none";
|
|
@@ -160,11 +159,13 @@ class MpvMessageTransformation extends transformations_1.BaseTransformation {
|
|
|
160
159
|
(stop.$.zpoz_typ_prij && parseInt(stop.$.zpoz_typ_prij, 10) === 3))) {
|
|
161
160
|
res.position.cis_last_stop_sequence = cisStopSequence;
|
|
162
161
|
}
|
|
163
|
-
res.
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
162
|
+
if (res.trip.vehicle_type_id === RouteTypeEnums_1.MPVRouteTypesEnum.UNKNOWN || res.trip.vehicle_type_id === RouteTypeEnums_1.MPVRouteTypesEnum.TRAIN) {
|
|
163
|
+
res.stops.set(`${primaryKey}_${stop.$.zast}`, {
|
|
164
|
+
rt_trip_id: primaryKey,
|
|
165
|
+
cis_stop_group_id: parseInt(stop.$.zast, 10),
|
|
166
|
+
cis_stop_platform_code: MpvStopParser_1.MpvStopParser.parsePlatformCode(stop),
|
|
167
|
+
});
|
|
168
|
+
}
|
|
168
169
|
}
|
|
169
170
|
return res;
|
|
170
171
|
});
|
|
@@ -228,6 +229,12 @@ class MpvMessageTransformation extends transformations_1.BaseTransformation {
|
|
|
228
229
|
};
|
|
229
230
|
this.name = vehicle_positions_1.VehiclePositions.name;
|
|
230
231
|
this.config = Di_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.SimpleConfig);
|
|
232
|
+
this.skipAgencyNames = this.skipAgencyNames.concat(this.config
|
|
233
|
+
.getValue("module.pid.vehicle-positions.mpvIntegration.skipAgencyNames", "ARRIVA CITY,ARRIVA CITY (Neratovice)")
|
|
234
|
+
.split(","));
|
|
235
|
+
}
|
|
236
|
+
isBlacklistedAgency(agency) {
|
|
237
|
+
return agency && this.skipAgencyNames.includes(agency);
|
|
231
238
|
}
|
|
232
239
|
/**
|
|
233
240
|
* Fix source negative bearing value due to overflow by adding 256
|
|
@@ -250,19 +257,6 @@ class MpvMessageTransformation extends transformations_1.BaseTransformation {
|
|
|
250
257
|
const aswParsedStopPostId = parseInt(stopId, 10) - aswParsedStopNodeId * fixedRightPadFactor;
|
|
251
258
|
return aswParsedStopNodeId + "/" + aswParsedStopPostId;
|
|
252
259
|
}
|
|
253
|
-
/**
|
|
254
|
-
* Returns list of vehicle reg numbers that should be excluded from MPVNet processing
|
|
255
|
-
* (already processed from another source)
|
|
256
|
-
*/
|
|
257
|
-
get regionalBusRegNumberBlacklist() {
|
|
258
|
-
const valuePath = "old.datasources.pid.vehicle-positions.regNumberWhitelist.regionalBus";
|
|
259
|
-
const blacklistDict = this.config.getValue(valuePath, {});
|
|
260
|
-
const blacklist = Object.values(blacklistDict);
|
|
261
|
-
if (blacklist.length > 0 && blacklist[0] !== "*") {
|
|
262
|
-
return blacklist;
|
|
263
|
-
}
|
|
264
|
-
return null;
|
|
265
|
-
}
|
|
266
260
|
}
|
|
267
261
|
exports.MpvMessageTransformation = MpvMessageTransformation;
|
|
268
262
|
MpvMessageTransformation.ORIGIN_TIME_FORMAT = "HH:mm:ss";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MpvMessageTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2FAA0D;AAG1D,wEAAqE;AACrE,qEAA0F;AAC1F,2FAA4G;AAC5G,gGAA2E;AAC3E,gDAAgE;AAChE,mEAA2C;AAC3C,8EAA2E;AAC3E,oEAAiE;
|
|
1
|
+
{"version":3,"file":"MpvMessageTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2FAA0D;AAG1D,wEAAqE;AACrE,qEAA0F;AAC1F,2FAA4G;AAC5G,gGAA2E;AAC3E,gDAAgE;AAChE,mEAA2C;AAC3C,8EAA2E;AAC3E,oEAAiE;AAGjE,0EAA4D;AAE5D,IAAK,oBAGJ;AAHD,WAAK,oBAAoB;IACrB,0CAAkB,CAAA;IAClB,sCAAc,CAAA;AAClB,CAAC,EAHI,oBAAoB,KAApB,oBAAoB,QAGxB;AAED,MAAa,wBAAyB,SAAQ,oCAAkB;IAO5D;QACI,KAAK,EAAE,CAAC;QAHJ,oBAAe,GAAG,CAAC,kBAAQ,CAAC,eAAe,CAAC,CAAC;QAgBrD;;WAEG;QACI,cAAS,GAAG,CAAO,IAAiD,EAAkC,EAAE;YAC3G,IAAI,KAAK,GAAG,IAAI,GAAG,EAAqC,CAAC;YACzD,IAAI,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;YAC3C,IAAI,GAAG,GAA0B;gBAC7B,SAAS,EAAE,EAAE;gBACb,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;aACZ,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;YACxC,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;gBACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACrD,IAAI,OAAO,EAAE;oBACT,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACrC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE;wBACtC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;qBACzB;iBACJ;aACJ;YAED,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YACvC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YACvC,OAAO,GAAG,CAAC;QACf,CAAC,CAAA,CAAC;QAEQ,qBAAgB,GAAG,CAAO,OAA4B,EAA0C,EAAE;;YACxG,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;YAC7B,sGAAsG;YACtG,MAAM,oBAAoB,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAEnG,IAAI,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,oBAAoB,EAAE;gBACnE,OAAO,IAAI,CAAC;aACf;YAED,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,IAAI,MAAM,CAAC;YAC1C,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,MAAM,CAAC;YAC9C,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,yBAAM,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;YAEpH,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;YAC3B,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAErG,+EAA+E;YAC/E,IAAI,IAAA,yBAAM,EAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,IAAA,yBAAM,GAAE,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE;gBAC/D,OAAO,IAAI,CAAC;aACf;YAED,+EAA+E;YAC/E,gFAAgF;YAChF,MAAM,gBAAgB,GAClB,UAAU,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,UAAU,CAAC,KAAK,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YACzH,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,GAAG,gBAAgB,CAAC;YAEpE;;;;;;;;;;;;;;;;;;;;;cAqBE;YAEF,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC;YAClC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC;YAC3B,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC;YAEtC,IAAI,GAAG,GAA2B;gBAC9B,QAAQ,EAAE;oBACN,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC5E,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC9E,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACpE,sBAAsB,EAAE,IAAI;oBAC5B,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACpF,oBAAoB,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACpF,WAAW,EAAE,UAAU,CAAC,IAAI,KAAK,MAAM;oBACvC,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;oBACvD,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;oBACvD,WAAW,EAAE,UAAU,CAAC,IAAI;oBAC5B,gBAAgB,EAAE,iBAAiB,CAAC,MAAM,EAAE;oBAC5C,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACzC,cAAc,EAAE,yBAAiB,CAAC,OAAO;oBACzC,aAAa,EAAE,wBAAgB,CAAC,KAAK;oBACrC,UAAU,EAAE,UAAU,CAAC,IAAI,KAAK,oBAAoB,CAAC,QAAQ,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG;oBACrG,QAAQ,EAAE,UAAU;iBACvB;gBACD,KAAK,EAAE,IAAI,GAAG,EAAuB;gBACrC,IAAI,EAAE;oBACF,gBAAgB,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;oBAClE,qBAAqB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;oBAC/D,WAAW,EAAE,UAAU,CAAC,GAAG;oBAC3B,mBAAmB,EAAE,UAAU,CAAC,KAAK;oBACrC,eAAe,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC9C,EAAE,EAAE,UAAU;oBACd,WAAW,EAAE,UAAU,CAAC,IAAI,KAAK,MAAM;oBACvC,iBAAiB,EAAE,MAAA,UAAU,CAAC,KAAK,mCAAI,IAAI;oBAC3C,UAAU,EAAE,UAAU,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC5E,iBAAiB,EAAE,IAAI;oBACvB,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACzE,4BAA4B,EAAE,MAAA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,mCAAI,IAAI;oBACrD,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;oBAC9D,eAAe,EAAE,cAAc,CAAC,MAAM,EAAE;oBACxC,2BAA2B,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACvF,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;oBACjE,qBAAqB,EAAE,UAAU,CAAC,EAAE,KAAK,MAAM;oBAC/C,oBAAoB,EAAE,+CAAsB,CAAC,IAAI;iBACpD;aACJ,CAAC;YAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;oBACd,SAAS;iBACZ;gBAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;gBAC/C,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,CAAC;gBAE9B,IACI,GAAG,CAAC,QAAQ,CAAC,gBAAgB,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC3D,CAAC,CAAC,kBAAkB,IAAI,QAAQ,CAAC,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;wBAC3D,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EACzE;oBACE,GAAG,CAAC,QAAQ,CAAC,sBAAsB,GAAG,eAAe,CAAC;iBACzD;gBAED,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,KAAK,kCAAiB,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,KAAK,kCAAiB,CAAC,KAAK,EAAE;oBAChH,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC1C,UAAU,EAAE,UAAU;wBACtB,iBAAiB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC5C,sBAAsB,EAAE,6BAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC;qBAChE,CAAC,CAAC;iBACN;aACJ;YAED,OAAO,GAAG,CAAC;QACf,CAAC,CAAA,CAAC;QAEF;;;;;;WAMG;QACO,qBAAgB,GAAG,CACzB,YAAiB,EACjB,oBAA4B,EACkC,EAAE;YAChE,MAAM,GAAG,GAAG,yBAAM,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;YACvC,IAAI,cAAc,GAAG,CAAC,CAAC;YAEvB,8DAA8D;YAC9D,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;YACnC,IAAI,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;YAC/D,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3C,6CAA6C;YAC7C,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAEtH,oBAAoB;YACpB,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,qBAAqB;YAC/E,cAAc,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YAExC,MAAM,iBAAiB,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;YACtC,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvD,iBAAiB;iBACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iBACrC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iBACvC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iBACvC,WAAW,CAAC,CAAC,CAAC,CAAC;YAEpB,oBAAoB;YACpB,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,qBAAqB;YAClF,iBAAiB,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YAE3C,OAAO;gBACH,cAAc;gBACd,iBAAiB;aACpB,CAAC;QACN,CAAC,CAAA,CAAC;QAEF;;;;;;WAMG;QACK,kBAAa,GAAG,CAAC,GAAW,EAAE,KAAa,EAAU,EAAE;YAC3D,oBAAoB;YACpB,aAAa;YACb,+DAA+D;YAC/D,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;gBACzC,uBAAuB;gBACvB,OAAO,CAAC,CAAC,CAAC;aACb;YACD,oBAAoB;YACpB,aAAa;YACb,yFAAyF;iBACpF,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE;gBAC1C,qBAAqB;gBACrB,OAAO,CAAC,CAAC;aACZ;YACD,OAAO,CAAC,CAAC,CAAC,WAAW;QACzB,CAAC,CAAC;QAzOE,IAAI,CAAC,IAAI,GAAG,oCAAgB,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,+BAA0B,CAAC,OAAO,CAAgB,qBAAS,CAAC,YAAY,CAAC,CAAC;QACxF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAC9C,IAAI,CAAC,MAAM;aACN,QAAQ,CACL,6DAA6D,EAC7D,sCAAsC,CACzC;aACA,KAAK,CAAC,GAAG,CAAC,CAClB,CAAC;IACN,CAAC;IAiOO,mBAAmB,CAAC,MAA0B;QAClD,OAAO,MAAM,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;OAKG;IACK,wBAAwB,CAAC,OAAe;QAC5C,OAAO,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,MAAc;QAClC,MAAM,mBAAmB,GAAG,KAAK,CAAC;QAClC,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC;QACnF,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;QAC7F,OAAO,mBAAmB,GAAG,GAAG,GAAG,mBAAmB,CAAC;IAC3D,CAAC;;AA7QL,4DA8QC;AA7QkB,2CAAkB,GAAG,UAAU,AAAb,CAAc"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/pid",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.2-dev.1208525749",
|
|
4
4
|
"description": "Golemio PID Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"@golemio/core": ">=1.7.0"
|
|
78
78
|
},
|
|
79
79
|
"dependencies": {
|
|
80
|
-
"@golemio/ovapi-gtfs-realtime-bindings": "1.2.
|
|
80
|
+
"@golemio/ovapi-gtfs-realtime-bindings": "1.2.1-dev.943774882",
|
|
81
81
|
"@turf/turf": "^6.5.0",
|
|
82
82
|
"cheap-ruler": "^3.0.2",
|
|
83
83
|
"csv-parser": "^3.0.0",
|