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

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.
@@ -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":";;;;;AAGA,yEAAsE;AACtE,sDAA8C;AAC9C,gFAAwD;AAExD,MAAqB,gBAAiB,SAAQ,6BAAmB;IAI7D;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,yBAAyB,GAAG,eAAM,CAAC,gBAAgB,CAAC,yBAAyB,CAAC;QACnF,IAAI,CAAC,2BAA2B,GAAG,eAAM,CAAC,gBAAgB,CAAC,2BAA2B,CAAC;IAC3F,CAAC;IAEM,aAAa,CAChB,OAAoC,EACpC,gBAA0C,EAC1C,QAAoC;;QAEpC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;YACtB,OAAO,OAAO,CAAC;SAClB;QAED,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAEjE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,EAAE;YACxC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,GAAG,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,kBAAkB,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,kBAAkB,mCAAI,IAAI,CAAC;SACxH;QAED,IACI,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,cAAc,MAAK,yBAAiB,CAAC,OAAO;YAC9D,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,cAAc,MAAK,yBAAiB,CAAC,QAAQ,EACjE;YACE,OAAO,CAAC,oBAAoB,CAAC,aAAa,GAAG,MAAA,gBAAgB,CAAC,kBAAkB,mCAAI,IAAI,CAAC;YACzF,OAAO,CAAC,oBAAoB,CAAC,eAAe,GAAG,MAAA,gBAAgB,CAAC,oBAAoB,mCAAI,IAAI,CAAC;SAChG;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,cAAc,CACjB,OAAoC,EACpC,gBAAmC,EACnC,QAAgD;QAEhD,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAA,EAAE;YACvB,OAAO,gBAAgB,CAAC;SAC3B;QAED,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACjE,gBAAgB,CAAC,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC;QACjF,gBAAgB,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC;QAErF,IAAI,gBAAgB,CAAC,cAAc,KAAK,yBAAiB,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,KAAK,IAAI,EAAE;YAC9G,IAAI,gBAAgB,CAAC,kBAAkB,KAAK,CAAC,EAAE;gBAC3C,aAAa;gBACb,gBAAgB,CAAC,kBAAkB,GAAG,IAAI,CAAC;aAC9C;iBAAM;gBACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAC7C,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,EACnC,gBAAgB,CAAC,sBAAsB,CAC1C,CAAC;gBAEF,gBAAgB,CAAC,kBAAkB,GAAG,oBAAoB;oBACtD,CAAC,CAAC,oBAAoB,GAAG,IAAI,CAAC,yBAAyB;oBACvD,CAAC,CAAC,IAAI,CAAC;aACd;SACJ;aAAM,IAAI,gBAAgB,CAAC,cAAc,KAAK,yBAAiB,CAAC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;YAC7G,MAAM,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAC7C,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,EACnC,gBAAgB,CAAC,wBAAwB,CAC5C,CAAC;YAEF,gBAAgB,CAAC,oBAAoB,GAAG,oBAAoB;gBACxD,CAAC,CAAC,oBAAoB,GAAG,IAAI,CAAC,2BAA2B;gBACzD,CAAC,CAAC,IAAI,CAAC;SACd;QAED,OAAO,gBAAgB,CAAC;IAC5B,CAAC;CACJ;AA5ED,mCA4EC"}
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.1237054700",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",