@golemio/pid 3.9.4-dev.1714786001 → 3.9.4-dev.1722329768

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.
@@ -22,6 +22,16 @@ export declare class DateTimeUtils {
22
22
  * @param tripOriginTimestamp The ISO 8601 timestamp of the trip origin
23
23
  */
24
24
  static getStopDateTimeForTripOrigin(stopTime: string, tripOriginTimestamp: string): Date;
25
+ /**
26
+ * Get a `Date` object corresponding to a given GTFS stop time and a given trip origin timestamp
27
+ *
28
+ * @param stopTime Time in seconds. The time is measured from "noon minus 12h" of the
29
+ * service day (effectively midnight except for days on which daylight savings time changes occur). For times occurring after
30
+ * midnight on the service day, enter the time as a value greater than 24:00:00 in HH:MM:SS. See also
31
+ * <https://gtfs.org/schedule/reference/#:~:text=A%20phone%20number.-,Time,-%2D%20Time%20in%20the>.
32
+ * @param tripOriginTimestamp The ISO 8601 timestamp of the trip origin
33
+ */
34
+ static getStopDateTimeForTripOrigin(stopTime: number, tripOriginTimestamp: string): Date;
25
35
  /**
26
36
  * Get a `Date` object corresponding to a given GTFS stop time and a given start of the trip service day
27
37
  *
@@ -39,4 +49,11 @@ export declare class DateTimeUtils {
39
49
  * @param stopTime The stop time to format
40
50
  */
41
51
  static formatStopTime(stopTime: Date): string;
52
+ /**
53
+ * Get hours, minutes, and seconds from a given time
54
+ *
55
+ * @param time The time to get the segments from. Either a number in seconds, or a string in the HH:MM:SS format
56
+ * (H:MM:SS is also accepted)
57
+ */
58
+ private static getTimeSegments;
42
59
  }
@@ -20,17 +20,8 @@ class DateTimeUtils {
20
20
  static parseUTCTimeFromISO(isoTimestamp = new Date().toISOString()) {
21
21
  return luxon_1.DateTime.fromISO(isoTimestamp).setZone(this.TIMEZONE).toFormat(this.FORMAT_TIME);
22
22
  }
23
- /**
24
- * Get a `Date` object corresponding to a given GTFS stop time and a given trip origin timestamp
25
- *
26
- * @param stopTime Time in the HH:MM:SS format (H:MM:SS is also accepted). The time is measured from "noon minus 12h" of the
27
- * service day (effectively midnight except for days on which daylight savings time changes occur). For times occurring after
28
- * midnight on the service day, enter the time as a value greater than 24:00:00 in HH:MM:SS. See also
29
- * <https://gtfs.org/schedule/reference/#:~:text=A%20phone%20number.-,Time,-%2D%20Time%20in%20the>.
30
- * @param tripOriginTimestamp The ISO 8601 timestamp of the trip origin
31
- */
32
23
  static getStopDateTimeForTripOrigin(stopTime, tripOriginTimestamp) {
33
- const [stopTimeHours, stopTimeMinutes, stopTimeSeconds] = stopTime.split(":").map((e) => parseInt(e, 10));
24
+ const { hours: stopTimeHours, minutes: stopTimeMinutes, seconds: stopTimeSeconds } = this.getTimeSegments(stopTime);
34
25
  const tripOriginMoment = moment_timezone_1.default.utc(tripOriginTimestamp).tz(this.TIMEZONE);
35
26
  const isOvernight = stopTimeHours >= 24;
36
27
  const isOriginAfterMidnight = tripOriginMoment.hours() < 12;
@@ -72,6 +63,23 @@ class DateTimeUtils {
72
63
  static formatStopTime(stopTime) {
73
64
  return this.stopTimeFormatter.format(stopTime);
74
65
  }
66
+ /**
67
+ * Get hours, minutes, and seconds from a given time
68
+ *
69
+ * @param time The time to get the segments from. Either a number in seconds, or a string in the HH:MM:SS format
70
+ * (H:MM:SS is also accepted)
71
+ */
72
+ static getTimeSegments(time) {
73
+ if (typeof time === "string") {
74
+ const [hours, minutes, seconds] = time.split(":").map((e) => parseInt(e, 10));
75
+ return { hours, minutes, seconds };
76
+ }
77
+ const hours = Math.floor(time / 60 ** 2);
78
+ time %= 60 ** 2;
79
+ const minutes = Math.floor(time / 60);
80
+ const seconds = time % 60;
81
+ return { hours, minutes, seconds };
82
+ }
75
83
  }
76
84
  exports.DateTimeUtils = DateTimeUtils;
77
85
  _a = DateTimeUtils;
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimeUtils.js","sourceRoot":"","sources":["../../src/helpers/DateTimeUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DateTimeUtils.js","sourceRoot":"","sources":["../../src/helpers/DateTimeUtils.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,8 @@ let StopTimesTripScopeHandler = exports.StopTimesTripScopeHandler = class StopTi
33
33
  throw new golemio_errors_1.GeneralError("delay_computation_cache_not_found", this.constructor.name, undefined, 500);
34
34
  }
35
35
  const filteredStopTimes = this.filterNoStopWaypoints(delayComputationCache.stop_times);
36
- const stopTimes = this.tripStopTimesTransformation.transformArray(filteredStopTimes);
36
+ const vpAndFilteredStopTimes = filteredStopTimes.map((stopTime) => ({ stopTime, vehiclePosition }));
37
+ const stopTimes = this.tripStopTimesTransformation.transformArray(vpAndFilteredStopTimes);
37
38
  const stopTimesWithDelay = await this.stopTimeRepository.getPublicStopTimeCache(vehiclePosition.vehicle_id, vehiclePosition.gtfs_trip_id);
38
39
  if (stopTimesWithDelay.length > 0) {
39
40
  let prevStopArrivalTime = null;
@@ -1 +1 @@
1
- {"version":3,"file":"StopTimesTripScopeHandler.js","sourceRoot":"","sources":["../../../../../../../src/output-gateway/public/service/helpers/trip-scope/strategy/StopTimesTripScopeHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAMA,iEAA6D;AAC7D,6HAAoI;AAGpI,+DAAsF;AAEtF,6EAAwE;AACxE,2DAA2D;AAC3D,iEAAwE;AACxE,yFAAsF;AAG/E,IAAM,yBAAyB,uCAA/B,MAAM,yBAA0B,SAAQ,mEAAgC;IAG3E,YAC8D,0BAAuD,EACzD,kBAAuC;QAE/F,KAAK,EAAE,CAAC;QAHkD,+BAA0B,GAA1B,0BAA0B,CAA6B;QACzD,uBAAkB,GAAlB,kBAAkB,CAAqB;QAG/F,IAAI,CAAC,2BAA2B,GAAG,IAAI,yEAAmC,EAAE,CAAC;IACjF,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,MAA8B,EAAE,eAAmC;QACnF,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,wBAAwB,CACxF,eAAe,CAAC,YAAY,CAC/B,CAAC;QAEF,IAAI,CAAC,qBAAqB,EAAE;YACxB,MAAM,IAAI,6BAAY,CAAC,mCAAmC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;SACtG;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACvF,MAAM,SAAS,GAAG,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,iBAAiB,CAElF,CAAC;QAEF,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAC3E,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,YAAY,CAC/B,CAAC;QACF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,IAAI,mBAAmB,GAAoB,IAAI,CAAC;YAChD,IAAI,qBAAqB,GAAoB,IAAI,CAAC;YAElD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE;gBAChD,kDAAkD;gBAClD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC3B,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,aAAa,KAAK,iBAAiB,CAAC,QAAQ,CAC/F,CAAC;gBACF,IAAI,QAAQ,EAAE;oBACV,kGAAkG;oBAClG,MAAM,aAAa,GACf,iBAAiB,CAAC,SAAS,KAAK,IAAI;wBAChC,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,gBAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC;4BACnE,OAAO,EAAE,iBAAiB,CAAC,SAAS;yBACvC,CAAC,CAAC;oBAEb,IAAI,eAAe,GACf,iBAAiB,CAAC,SAAS,KAAK,IAAI;wBAChC,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,gBAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC;4BACrE,OAAO,EAAE,iBAAiB,CAAC,SAAS;yBACvC,CAAC,CAAC;oBACb,oFAAoF;oBACpF,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,sBAAsB,CACpE,aAAc,EACd,mBAAoB,EACpB,eAAgB,EAChB,qBAAsB,CACzB,CAAC;oBACF,mBAAmB,GAAG,cAAc,CAAC;oBACrC,qBAAqB,GAAG,gBAAgB,CAAC;oBAEzC,QAAQ,CAAC,UAAU,CAAC,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACxG,QAAQ,CAAC,UAAU,CAAC,uBAAuB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;iBACjH;aACJ;SACJ;QAED,MAAM,CAAC,UAAU,GAAG,IAAA,mCAA6B,EAAC,SAAS,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,qBAAqB,CAAC,SAAsB;QAChD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,QAAmB,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACpF,CAAC;IAEO,sBAAsB,CAC1B,SAAmB,EACnB,WAAqB,EACrB,WAAqB,EACrB,aAAuB;QAEvB,MAAM,WAAW,GAA2E;YACxF,cAAc,EAAE,SAAS;YACzB,gBAAgB,EAAE,WAAW;SAChC,CAAC;QACF,IAAI,SAAS,GAAG,WAAW,IAAI,aAAa,GAAG,WAAW,IAAI,WAAW,GAAG,WAAW,EAAE;YACrF,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAC;SACvC;QACD,IAAI,aAAa,GAAG,SAAS,IAAI,WAAW,GAAG,SAAS,EAAE;YACtD,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC;SACrC;QACD,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ,CAAA;oCA/FY,yBAAyB;IADrC,IAAA,qBAAU,GAAE;IAKJ,WAAA,IAAA,iBAAM,EAAC,6BAAa,CAAC,0BAA0B,CAAC,CAAA;IAChD,WAAA,IAAA,iBAAM,EAAC,6BAAa,CAAC,wBAAwB,CAAC,CAAA;;GAL1C,yBAAyB,CA+FrC"}
1
+ {"version":3,"file":"StopTimesTripScopeHandler.js","sourceRoot":"","sources":["../../../../../../../src/output-gateway/public/service/helpers/trip-scope/strategy/StopTimesTripScopeHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAMA,iEAA6D;AAC7D,6HAAoI;AAGpI,+DAAsF;AAEtF,6EAAwE;AACxE,2DAA2D;AAC3D,iEAAwE;AACxE,yFAAsF;AAG/E,IAAM,yBAAyB,uCAA/B,MAAM,yBAA0B,SAAQ,mEAAgC;IAG3E,YAC8D,0BAAuD,EACzD,kBAAuC;QAE/F,KAAK,EAAE,CAAC;QAHkD,+BAA0B,GAA1B,0BAA0B,CAA6B;QACzD,uBAAkB,GAAlB,kBAAkB,CAAqB;QAG/F,IAAI,CAAC,2BAA2B,GAAG,IAAI,yEAAmC,EAAE,CAAC;IACjF,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,MAA8B,EAAE,eAAmC;QACnF,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,wBAAwB,CACxF,eAAe,CAAC,YAAY,CAC/B,CAAC;QAEF,IAAI,CAAC,qBAAqB,EAAE;YACxB,MAAM,IAAI,6BAAY,CAAC,mCAAmC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;SACtG;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACvF,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAmB,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;QAC/G,MAAM,SAAS,GAAG,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,sBAAsB,CAEvF,CAAC;QAEF,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAC3E,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,YAAY,CAC/B,CAAC;QACF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,IAAI,mBAAmB,GAAoB,IAAI,CAAC;YAChD,IAAI,qBAAqB,GAAoB,IAAI,CAAC;YAElD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE;gBAChD,kDAAkD;gBAClD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC3B,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,aAAa,KAAK,iBAAiB,CAAC,QAAQ,CAC/F,CAAC;gBACF,IAAI,QAAQ,EAAE;oBACV,kGAAkG;oBAClG,MAAM,aAAa,GACf,iBAAiB,CAAC,SAAS,KAAK,IAAI;wBAChC,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,gBAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC;4BACnE,OAAO,EAAE,iBAAiB,CAAC,SAAS;yBACvC,CAAC,CAAC;oBAEb,IAAI,eAAe,GACf,iBAAiB,CAAC,SAAS,KAAK,IAAI;wBAChC,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,gBAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC;4BACrE,OAAO,EAAE,iBAAiB,CAAC,SAAS;yBACvC,CAAC,CAAC;oBACb,oFAAoF;oBACpF,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,sBAAsB,CACpE,aAAc,EACd,mBAAoB,EACpB,eAAgB,EAChB,qBAAsB,CACzB,CAAC;oBACF,mBAAmB,GAAG,cAAc,CAAC;oBACrC,qBAAqB,GAAG,gBAAgB,CAAC;oBAEzC,QAAQ,CAAC,UAAU,CAAC,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACxG,QAAQ,CAAC,UAAU,CAAC,uBAAuB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;iBACjH;aACJ;SACJ;QAED,MAAM,CAAC,UAAU,GAAG,IAAA,mCAA6B,EAAC,SAAS,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,qBAAqB,CAAC,SAAsB;QAChD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,QAAmB,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACpF,CAAC;IAEO,sBAAsB,CAC1B,SAAmB,EACnB,WAAqB,EACrB,WAAqB,EACrB,aAAuB;QAEvB,MAAM,WAAW,GAA2E;YACxF,cAAc,EAAE,SAAS;YACzB,gBAAgB,EAAE,WAAW;SAChC,CAAC;QACF,IAAI,SAAS,GAAG,WAAW,IAAI,aAAa,GAAG,WAAW,IAAI,WAAW,GAAG,WAAW,EAAE;YACrF,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAC;SACvC;QACD,IAAI,aAAa,GAAG,SAAS,IAAI,WAAW,GAAG,SAAS,EAAE;YACtD,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC;SACrC;QACD,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ,CAAA;oCAhGY,yBAAyB;IADrC,IAAA,qBAAU,GAAE;IAKJ,WAAA,IAAA,iBAAM,EAAC,6BAAa,CAAC,0BAA0B,CAAC,CAAA;IAChD,WAAA,IAAA,iBAAM,EAAC,6BAAa,CAAC,wBAAwB,CAAC,CAAA;;GAL1C,yBAAyB,CAgGrC"}
@@ -1,8 +1,14 @@
1
1
  import { IStopTime } from "../../../../../schema-definitions/ropid-gtfs/redis/interfaces/IDelayComputationDto";
2
+ import { IPublicApiCacheDto } from "../../../../../schema-definitions/vehicle-positions/redis/interfaces/IPublicApiCacheDto";
2
3
  import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
3
4
  import { IGeoJSONFeature } from "@golemio/core/dist/output-gateway";
4
- export declare class PublicVPTripStopTimesTransformation extends AbstractTransformation<IStopTime, IGeoJSONFeature> {
5
+ type TransformIn = {
6
+ stopTime: IStopTime;
7
+ vehiclePosition: IPublicApiCacheDto;
8
+ };
9
+ export declare class PublicVPTripStopTimesTransformation extends AbstractTransformation<TransformIn, IGeoJSONFeature> {
5
10
  name: string;
6
- protected transformInternal: ({ stop, ...stopTime }: IStopTime) => IGeoJSONFeature;
11
+ protected transformInternal: ({ stopTime, vehiclePosition }: TransformIn) => IGeoJSONFeature;
7
12
  private isStopWheelchairAccessible;
8
13
  }
14
+ export {};
@@ -9,15 +9,16 @@ class PublicVPTripStopTimesTransformation extends AbstractTransformation_1.Abstr
9
9
  constructor() {
10
10
  super(...arguments);
11
11
  this.name = "TripStopTimesTransformation";
12
- this.transformInternal = ({ stop, ...stopTime }) => {
12
+ this.transformInternal = ({ stopTime, vehiclePosition }) => {
13
+ const { stop } = stopTime;
13
14
  const properties = {
14
15
  stop_name: stop.stop_name,
15
16
  stop_sequence: stopTime.stop_sequence,
16
17
  zone_id: stop.zone_id,
17
18
  is_wheelchair_accessible: this.isStopWheelchairAccessible(stop),
18
19
  shape_dist_traveled: stopTime.shape_dist_traveled,
19
- arrival_time: DateTimeUtils_1.DateTimeUtils.formatStopTime(DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(stopTime.arrival_time_seconds)),
20
- departure_time: DateTimeUtils_1.DateTimeUtils.formatStopTime(DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(stopTime.departure_time_seconds)),
20
+ arrival_time: DateTimeUtils_1.DateTimeUtils.formatStopTime(DateTimeUtils_1.DateTimeUtils.getStopDateTimeForTripOrigin(stopTime.arrival_time_seconds, vehiclePosition.detailed_info.origin_timestamp)),
21
+ departure_time: DateTimeUtils_1.DateTimeUtils.formatStopTime(DateTimeUtils_1.DateTimeUtils.getStopDateTimeForTripOrigin(stopTime.departure_time_seconds, vehiclePosition.detailed_info.origin_timestamp)),
21
22
  realtime_arrival_time: null,
22
23
  realtime_departure_time: null,
23
24
  lng: stop.stop_lon,
@@ -1 +1 @@
1
- {"version":3,"file":"PublicVPTripStopTimesTransformation.js","sourceRoot":"","sources":["../../../../../../src/output-gateway/public/service/transformations/scopes/PublicVPTripStopTimesTransformation.ts"],"names":[],"mappings":";;;AAAA,kFAA6E;AAC7E,wEAAuD;AAGvD,6GAA0G;AAC1G,sEAAyF;AAEzF,MAAa,mCAAoC,SAAQ,+CAAkD;IAA3G;;QACW,SAAI,GAAG,6BAA6B,CAAC;QAElC,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAa,EAAE,EAAE;YAC/D,MAAM,UAAU,GAA6E;gBACzF,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,wBAAwB,EAAE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;gBAC/D,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;gBACjD,YAAY,EAAE,6BAAa,CAAC,cAAc,CAAC,6BAAa,CAAC,0BAA0B,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;gBACnH,cAAc,EAAE,6BAAa,CAAC,cAAc,CACxC,6BAAa,CAAC,0BAA0B,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAC5E;gBACD,qBAAqB,EAAE,IAAI;gBAC3B,uBAAuB,EAAE,IAAI;gBAC7B,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,GAAG,EAAE,IAAI,CAAC,QAAQ;aACrB,CAAC;YAEF,OAAO,IAAA,oCAAmB,EAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC,CAAC;QAEM,+BAA0B,GAAG,CAAC,EAAE,mBAAmB,EAAS,EAAkB,EAAE;YACpF,IAAI,mBAAmB,KAAK,IAAI,IAAI,mBAAmB,KAAK,mDAA8B,CAAC,aAAa,EAAE;gBACtG,OAAO,IAAI,CAAC;aACf;YAED,OAAO,mBAAmB,KAAK,mDAA8B,CAAC,iBAAiB,CAAC;QACpF,CAAC,CAAC;IACN,CAAC;CAAA;AA9BD,kFA8BC"}
1
+ {"version":3,"file":"PublicVPTripStopTimesTransformation.js","sourceRoot":"","sources":["../../../../../../src/output-gateway/public/service/transformations/scopes/PublicVPTripStopTimesTransformation.ts"],"names":[],"mappings":";;;AAAA,kFAA6E;AAC7E,wEAAuD;AAIvD,6GAA0G;AAC1G,sEAAyF;AAOzF,MAAa,mCAAoC,SAAQ,+CAAoD;IAA7G;;QACW,SAAI,GAAG,6BAA6B,CAAC;QAElC,sBAAiB,GAAG,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAe,EAAE,EAAE;YACzE,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;YAC1B,MAAM,UAAU,GAA6E;gBACzF,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,wBAAwB,EAAE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;gBAC/D,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;gBACjD,YAAY,EAAE,6BAAa,CAAC,cAAc,CACtC,6BAAa,CAAC,4BAA4B,CACtC,QAAQ,CAAC,oBAAoB,EAC7B,eAAe,CAAC,aAAa,CAAC,gBAAgB,CACjD,CACJ;gBACD,cAAc,EAAE,6BAAa,CAAC,cAAc,CACxC,6BAAa,CAAC,4BAA4B,CACtC,QAAQ,CAAC,sBAAsB,EAC/B,eAAe,CAAC,aAAa,CAAC,gBAAgB,CACjD,CACJ;gBACD,qBAAqB,EAAE,IAAI;gBAC3B,uBAAuB,EAAE,IAAI;gBAC7B,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,GAAG,EAAE,IAAI,CAAC,QAAQ;aACrB,CAAC;YAEF,OAAO,IAAA,oCAAmB,EAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC,CAAC;QAEM,+BAA0B,GAAG,CAAC,EAAE,mBAAmB,EAAS,EAAkB,EAAE;YACpF,IAAI,mBAAmB,KAAK,IAAI,IAAI,mBAAmB,KAAK,mDAA8B,CAAC,aAAa,EAAE;gBACtG,OAAO,IAAI,CAAC;aACf;YAED,OAAO,mBAAmB,KAAK,mDAA8B,CAAC,iBAAiB,CAAC;QACpF,CAAC,CAAC;IACN,CAAC;CAAA;AAvCD,kFAuCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/pid",
3
- "version": "3.9.4-dev.1714786001",
3
+ "version": "3.9.4-dev.1722329768",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",