@golemio/pid 2.12.5-dev.1236445909 → 2.12.5-dev.1237259538

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.
@@ -16,6 +16,7 @@ exports.TramMessageFilter = void 0;
16
16
  const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
17
17
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
18
18
  const const_1 = require("../../../../../const");
19
+ const TRAM_VINTAGE_ROUTE_ID = 42;
19
20
  const TRAM_SERVICING_ROUTE_ID_MIN = 50;
20
21
  const TRAM_SERVICING_ROUTE_ID_MAX = 89;
21
22
  const TRAM_UNUSUAL_RUN_NUMBER_MIN = 80;
@@ -46,6 +47,7 @@ let TramMessageFilter = exports.TramMessageFilter = class TramMessageFilter {
46
47
  isRouteIdValid(routeId) {
47
48
  const parsedRouteId = Number.parseInt(routeId);
48
49
  return (!Number.isNaN(parsedRouteId) &&
50
+ parsedRouteId !== TRAM_VINTAGE_ROUTE_ID &&
49
51
  (parsedRouteId < TRAM_SERVICING_ROUTE_ID_MIN || parsedRouteId > TRAM_SERVICING_ROUTE_ID_MAX));
50
52
  }
51
53
  isRunNumberValid(runNumber) {
@@ -1 +1 @@
1
- {"version":3,"file":"TramMessageFilter.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/helpers/TramMessageFilter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,wEAAqE;AAErE,iEAAwE;AACxE,gDAA8D;AAG9D,MAAM,2BAA2B,GAAG,EAAE,CAAC;AACvC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AACvC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAGhC,IAAM,iBAAiB,+BAAvB,MAAM,iBAAiB;IAC1B,YAA8C,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;IAAG,CAAC;IAEjE;;;;;OAKG;IACI,CAAC,qBAAqB,CAAC,QAAoC;QAC9D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC5B,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;YAElE,IACI,yCAAiC,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBAC/D,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,EACtE;gBACE,MAAM,OAAO,CAAC;aACjB;iBAAM;gBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,cAAc,QAAQ,kBAAkB,UAAU,aAAa,CAAC,CAAC;gBAC1G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3B,SAAS;aACZ;SACJ;IACL,CAAC;IAEO,cAAc,CAAC,OAAe;QAClC,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,CACH,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;YAC5B,CAAC,aAAa,GAAG,2BAA2B,IAAI,aAAa,GAAG,2BAA2B,CAAC,CAC/F,CAAC;IACN,CAAC;IAEO,gBAAgB,CAAC,SAAiB;QACtC,OAAO,SAAS,GAAG,2BAA2B,CAAC;IACnD,CAAC;CACJ,CAAA;4BArCY,iBAAiB;IAD7B,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;;GAD5B,iBAAiB,CAqC7B"}
1
+ {"version":3,"file":"TramMessageFilter.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/helpers/TramMessageFilter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,wEAAqE;AAErE,iEAAwE;AACxE,gDAA8D;AAG9D,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACjC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AACvC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AACvC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAGhC,IAAM,iBAAiB,+BAAvB,MAAM,iBAAiB;IAC1B,YAA8C,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;IAAG,CAAC;IAEjE;;;;;OAKG;IACI,CAAC,qBAAqB,CAAC,QAAoC;QAC9D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC5B,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;YAElE,IACI,yCAAiC,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBAC/D,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,EACtE;gBACE,MAAM,OAAO,CAAC;aACjB;iBAAM;gBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,cAAc,QAAQ,kBAAkB,UAAU,aAAa,CAAC,CAAC;gBAC1G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3B,SAAS;aACZ;SACJ;IACL,CAAC;IAEO,cAAc,CAAC,OAAe;QAClC,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,CACH,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;YAC5B,aAAa,KAAK,qBAAqB;YACvC,CAAC,aAAa,GAAG,2BAA2B,IAAI,aAAa,GAAG,2BAA2B,CAAC,CAC/F,CAAC;IACN,CAAC;IAEO,gBAAgB,CAAC,SAAiB;QACtC,OAAO,SAAS,GAAG,2BAA2B,CAAC;IACnD,CAAC;CACJ,CAAA;4BAtCY,iBAAiB;IAD7B,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;;GAD5B,iBAAiB,CAsC7B"}
@@ -8,4 +8,5 @@ export default class MetroDelayAtStop extends AbstractDelayAtStop {
8
8
  constructor();
9
9
  updateContext(context: IVPTripsLastPositionContext, positionToUpdate: IPositionToUpdate | null, position: IVPTripsPositionAttributes): IVPTripsLastPositionContext;
10
10
  updatePosition(context: IVPTripsLastPositionContext, positionToUpdate: IPositionToUpdate, position: IVPTripsPositionAttributes | undefined): IPositionToUpdate;
11
+ private roundToNearestMultipleOfFive;
11
12
  }
@@ -43,18 +43,26 @@ class MetroDelayAtStop extends AbstractDelayAtStop_1.default {
43
43
  else {
44
44
  const delayAtStopInSeconds = this.calcDelayAtStop(position.origin_timestamp.getTime(), positionToUpdate.last_stop_arrival_time);
45
45
  positionToUpdate.delay_stop_arrival = delayAtStopInSeconds
46
- ? delayAtStopInSeconds + this.metroArrivalDelayAddition
46
+ ? this.roundToNearestMultipleOfFive(delayAtStopInSeconds + this.metroArrivalDelayAddition)
47
47
  : null;
48
48
  }
49
49
  }
50
50
  else if (positionToUpdate.state_position === const_1.StatePositionEnum.ON_TRACK && context.atStopStreak.stop_sequence) {
51
51
  const delayAtStopInSeconds = this.calcDelayAtStop(position.origin_timestamp.getTime(), positionToUpdate.last_stop_departure_time);
52
52
  positionToUpdate.delay_stop_departure = delayAtStopInSeconds
53
- ? delayAtStopInSeconds + this.metroDepartureDelayAddition
53
+ ? this.roundToNearestMultipleOfFive(delayAtStopInSeconds + this.metroDepartureDelayAddition)
54
54
  : null;
55
55
  }
56
56
  return positionToUpdate;
57
57
  }
58
+ // [-2,2] -> 0
59
+ // [3,7] -> 5
60
+ // [8,12] -> 10
61
+ // [13,17] -> 15
62
+ // etc.
63
+ roundToNearestMultipleOfFive(value) {
64
+ return Math.round(value / 5) * 5;
65
+ }
58
66
  }
59
67
  exports.default = MetroDelayAtStop;
60
68
  //# sourceMappingURL=MetroDelayAtStop.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MetroDelayAtStop.js","sourceRoot":"","sources":["../../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetroDelayAtStop.js","sourceRoot":"","sources":["../../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/pid",
3
- "version": "2.12.5-dev.1236445909",
3
+ "version": "2.12.5-dev.1237259538",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",