@golemio/pid 5.4.4-dev.2292037528 → 5.4.4-dev.2293779456
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/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.d.ts +2 -1
- package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js +33 -5
- package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js.map +1 -1
- package/dist/output-gateway/pid/helpers/TransferBoardFilter.d.ts +5 -2
- package/dist/output-gateway/pid/helpers/TransferBoardFilter.js +23 -3
- package/dist/output-gateway/pid/helpers/TransferBoardFilter.js.map +1 -1
- package/dist/output-gateway/pid/interfaces/IDepartureWithPosition.d.ts +1 -0
- package/dist/output-gateway/pid/interfaces/IV4TransferDepartureOutputDto.d.ts +1 -0
- package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.d.ts +1 -0
- package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.js +1 -0
- package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.js.map +1 -1
- package/docs/cache/types/redis.md +1 -0
- package/docs/openapi-output.yaml +17 -5
- package/package.json +1 -1
|
@@ -16,6 +16,7 @@ export declare class V4TransferBoardsController {
|
|
|
16
16
|
constructor(config: ISimpleConfig, stopFacade: StopFacade, infotextFacade: InfotextFacade, transferFacade: TransferFacade, transformation: TransferDepartureCacheTransformation);
|
|
17
17
|
getTransferBoardData: RequestHandler;
|
|
18
18
|
private accessibilityForStops;
|
|
19
|
-
private
|
|
19
|
+
private enhanceInPlaceWithTimeAndInfo;
|
|
20
|
+
private enhanceInPlaceWithGuaranteedTransfers;
|
|
20
21
|
private parseTransferBoardsParams;
|
|
21
22
|
}
|
|
@@ -111,19 +111,32 @@ let V4TransferBoardsController = V4TransferBoardsController_1 = class V4Transfer
|
|
|
111
111
|
const sameNameStopIds = stopsInfo.filter((stop) => stop.stop_name === transferStopName).map((stop) => stop.stop_id);
|
|
112
112
|
// add predictedDeparture date/timestamp to transfers
|
|
113
113
|
// compute accessibility for available transfers
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
this.enhanceInPlaceWithTimeAndInfo(transferCacheDto, stopsInfo);
|
|
115
|
+
const guaranteedTransferTripIds = new Set(TransferBoardFilter_1.TransferBoardFilter.havingConnectionFromTripId(transferCacheDto.currentTripId, transferCacheDto.transfers, transferCacheDto.delayedTimeFrom).flatMap((t) => t.departure.trip_id));
|
|
116
|
+
transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.minimalTransferTime(transferCacheDto.transfers, transferCacheDto.delayedTimeFrom, guaranteedTransferTripIds);
|
|
116
117
|
TransferBoardSorter_1.TransferBoardSorter.sortDepartures(transferCacheDto.transfers);
|
|
117
118
|
transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.sameStopNameTransfer(transferCacheDto.transfers, transferStop, sameNameStopIds);
|
|
118
119
|
const tripIdsToReadStopsUsingDelay = new Set(TransferBoardFilter_1.TransferBoardFilter.filterOutKeepAlwaysTransfer(transferCacheDto.transfers).map((transfer) => transfer.departure.trip_id));
|
|
120
|
+
for (const guaranteedTripId of guaranteedTransferTripIds) {
|
|
121
|
+
// No need to search stopTime / delayComputation Caches of guaranteed transfers,
|
|
122
|
+
// we consider them as "show always" (as long as max waiting time permits)
|
|
123
|
+
tripIdsToReadStopsUsingDelay.delete(guaranteedTripId);
|
|
124
|
+
}
|
|
125
|
+
this.enhanceInPlaceWithGuaranteedTransfers(transferCacheDto, guaranteedTransferTripIds);
|
|
126
|
+
// As long as we have position (with vehicle_id), we can read from stopTime Cache (cheap & fast)
|
|
127
|
+
// but otherwise we fallback to reading from delayComputation Cache (a bit costly JSON traverse) by trip_id(s)
|
|
119
128
|
const stopTimeIdsTuples = transferCacheDto.transfers.reduce((prev, t) => {
|
|
120
129
|
if (tripIdsToReadStopsUsingDelay.has(t.departure.trip_id) && t.position?.vehicle_id != null) {
|
|
121
130
|
tripIdsToReadStopsUsingDelay.delete(t.departure.trip_id);
|
|
131
|
+
// tuples are for stopTime Cache
|
|
122
132
|
prev.push([t.position.vehicle_id, t.departure.trip_id]);
|
|
123
133
|
}
|
|
124
134
|
return prev;
|
|
125
135
|
}, []);
|
|
126
136
|
const tripIdsToKeep = new Set(await this.transferFacade.findRelevantTripIdsFromLines(tripIdsToReadStopsUsingDelay, transferCacheDto.currentStop, transferCacheDto.currentTripId, stopTimeIdsTuples, this.countPreviousStopsToAllow));
|
|
137
|
+
guaranteedTransferTripIds.forEach((guaranteedTripId) => {
|
|
138
|
+
tripIdsToKeep.add(guaranteedTripId);
|
|
139
|
+
});
|
|
127
140
|
transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.keepAlwaysLinesAndTripIds(transferCacheDto.transfers, tripIdsToKeep);
|
|
128
141
|
const transformedData = this.transformation.transformArray(transferCacheDto.transfers);
|
|
129
142
|
const filteredData = TransferBoardFilter_1.TransferBoardFilter.filterDepartures(transformedData, params.limit, transferCacheDto.delayedTimeFrom.getTime(), now.getTime());
|
|
@@ -153,9 +166,9 @@ let V4TransferBoardsController = V4TransferBoardsController_1 = class V4Transfer
|
|
|
153
166
|
}
|
|
154
167
|
return accessibilityStopIdsMap;
|
|
155
168
|
}
|
|
156
|
-
|
|
169
|
+
enhanceInPlaceWithTimeAndInfo(transferCacheDto, stopsInfo) {
|
|
157
170
|
const accessibilityStopIdsMap = this.accessibilityForStops(stopsInfo);
|
|
158
|
-
|
|
171
|
+
transferCacheDto.transfers.forEach((t) => {
|
|
159
172
|
const accessibility = {
|
|
160
173
|
route_type: t.departure.route_type,
|
|
161
174
|
wheelchair_accessible: null,
|
|
@@ -174,7 +187,22 @@ let V4TransferBoardsController = V4TransferBoardsController_1 = class V4Transfer
|
|
|
174
187
|
t.departure.is_wheelchair_accessible = DepartureBoardMapper_1.default.resolveAccessibility(accessibility);
|
|
175
188
|
t.departure.predictedDepartureDate = shared_1.DepartureCalculator.getPredictedDepartureTime(new Date(t.departure.departure_datetime), t.departure.arrival_datetime ? new Date(t.departure.arrival_datetime) : null, t.position?.delay ?? null);
|
|
176
189
|
t.departure.predictedDepartureTimestamp = t.departure.predictedDepartureDate.getTime();
|
|
177
|
-
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
enhanceInPlaceWithGuaranteedTransfers(transferCacheDto, tripIds) {
|
|
193
|
+
// guaranteed transfers will show minutes as if they are departing at the time of current trip arrival
|
|
194
|
+
const predictedArrivalDate = new Date(transferCacheDto.delayedTimeFrom);
|
|
195
|
+
const predictedArrivalTimestamp = predictedArrivalDate.getTime();
|
|
196
|
+
transferCacheDto.transfers.forEach((t) => {
|
|
197
|
+
t.departure.is_guaranteed_transfer = tripIds.has(t.departure.trip_id);
|
|
198
|
+
if (t.departure.is_guaranteed_transfer) {
|
|
199
|
+
// Move predicted departure date to current-trip's, so we show minutes as
|
|
200
|
+
// if the vehicle is already there = people should exit the current trip's vehicle
|
|
201
|
+
if (predictedArrivalTimestamp < t.departure.predictedDepartureTimestamp) {
|
|
202
|
+
t.departure.predictedDepartureDate = predictedArrivalDate;
|
|
203
|
+
t.departure.predictedDepartureTimestamp = predictedArrivalTimestamp;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
178
206
|
});
|
|
179
207
|
}
|
|
180
208
|
parseTransferBoardsParams(query) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V4TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v4/V4TransferBoardsController.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"V4TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v4/V4TransferBoardsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,13 @@ import { IDepartureWithPosition } from "../interfaces/IDepartureWithPosition";
|
|
|
3
3
|
import { IV4TransferDepartureOutputDto } from "../interfaces/IV4TransferDepartureOutputDto";
|
|
4
4
|
export declare class TransferBoardFilter {
|
|
5
5
|
static filterDepartures(transfers: IV4TransferDepartureOutputDto[], limit: number, arrivalTimeMs: number, requestTimeFromMs: number): IV4TransferDepartureOutputDto[];
|
|
6
|
+
static havingConnectionFromTripId(fromTripId: string, transfers: IDepartureWithPosition[], delayedTimeFrom: Date): IDepartureWithPosition[];
|
|
7
|
+
private static hasConnectionWaitingTimeBeforeArrival;
|
|
8
|
+
private static shiftedDeparture;
|
|
6
9
|
private static shouldKeepTransferAlways;
|
|
7
10
|
static filterOutKeepAlwaysTransfer(transfers: IDepartureWithPosition[]): IDepartureWithPosition[];
|
|
8
11
|
static keepAlwaysLinesAndTripIds(transfers: IDepartureWithPosition[], tripIdsToKeep: Set<string>): IDepartureWithPosition[];
|
|
9
|
-
static minimalTransferTime(transfers: IDepartureWithPosition[], delayedTimeFrom: Date): IDepartureWithPosition[];
|
|
12
|
+
static minimalTransferTime(transfers: IDepartureWithPosition[], delayedTimeFrom: Date, keepTripIds: Set<string>): IDepartureWithPosition[];
|
|
10
13
|
static sameStopNameTransfer(transfers: IDepartureWithPosition[], currentStop: IStopCacheDto, allowedStopIds: string[]): IDepartureWithPosition[];
|
|
11
|
-
private static
|
|
14
|
+
private static isInRangeOrGuaranteed;
|
|
12
15
|
}
|
|
@@ -45,7 +45,7 @@ class TransferBoardFilter {
|
|
|
45
45
|
if (seenTripIds.has(transfer.trip.id)) {
|
|
46
46
|
continue;
|
|
47
47
|
}
|
|
48
|
-
if (!TransferBoardFilter.
|
|
48
|
+
if (!TransferBoardFilter.isInRangeOrGuaranteed(transfer, requestTimeFromMs, timeEndMs)) {
|
|
49
49
|
continue;
|
|
50
50
|
}
|
|
51
51
|
seenTripIds.add(transfer.trip.id);
|
|
@@ -54,6 +54,20 @@ class TransferBoardFilter {
|
|
|
54
54
|
// Departures are already sorted so that metro ones are first
|
|
55
55
|
return filteredDepartures;
|
|
56
56
|
}
|
|
57
|
+
static havingConnectionFromTripId(fromTripId, transfers, delayedTimeFrom) {
|
|
58
|
+
const delayedTimeFromMs = delayedTimeFrom.getTime();
|
|
59
|
+
return transfers.filter((t) => TransferBoardFilter.hasConnectionWaitingTimeBeforeArrival(t.departure, fromTripId, delayedTimeFromMs));
|
|
60
|
+
}
|
|
61
|
+
static hasConnectionWaitingTimeBeforeArrival(departure, tripId, arrivalTimeMs) {
|
|
62
|
+
return !!departure.connections?.some((con) => {
|
|
63
|
+
return (con.from_trip_id === tripId &&
|
|
64
|
+
arrivalTimeMs < TransferBoardFilter.shiftedDeparture(departure, con.max_wait_sec).getTime());
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
static shiftedDeparture(departure, maxWaitSec) {
|
|
68
|
+
const shiftedDeparture = new Date(new Date(departure.departure_datetime).getTime() + maxWaitSec * 1000);
|
|
69
|
+
return shiftedDeparture;
|
|
70
|
+
}
|
|
57
71
|
static shouldKeepTransferAlways(transfer) {
|
|
58
72
|
return TRANSFER_LINE_TYPES_TO_KEEP.has(transfer.departure.route_type);
|
|
59
73
|
}
|
|
@@ -65,9 +79,12 @@ class TransferBoardFilter {
|
|
|
65
79
|
return TransferBoardFilter.shouldKeepTransferAlways(t) || tripIdsToKeep.has(t.departure.trip_id);
|
|
66
80
|
});
|
|
67
81
|
}
|
|
68
|
-
static minimalTransferTime(transfers, delayedTimeFrom) {
|
|
82
|
+
static minimalTransferTime(transfers, delayedTimeFrom, keepTripIds) {
|
|
69
83
|
const arrivalTime = delayedTimeFrom.getTime();
|
|
70
84
|
return transfers.filter((t) => {
|
|
85
|
+
if (keepTripIds.has(t.departure.trip_id)) {
|
|
86
|
+
return true;
|
|
87
|
+
}
|
|
71
88
|
const transferTimeMs = TRANSFER_TIMES_MS.get(t.departure.route_type) || DEFAULT_TRANSFER_TIME_MS;
|
|
72
89
|
if (t.departure.predictedDepartureTimestamp == null) {
|
|
73
90
|
return false;
|
|
@@ -89,7 +106,10 @@ class TransferBoardFilter {
|
|
|
89
106
|
return allowedStopIdsAsws.includes(departureStopAsw);
|
|
90
107
|
});
|
|
91
108
|
}
|
|
92
|
-
static
|
|
109
|
+
static isInRangeOrGuaranteed(departure, timeRangeStart, timeRangeEnd) {
|
|
110
|
+
if (departure.trip.is_guaranteed_transfer) {
|
|
111
|
+
return true;
|
|
112
|
+
}
|
|
93
113
|
// departureMinutes are relative to timeFrom request parameter
|
|
94
114
|
const departureMinutes = departure.departure_timestamp.minutes[0] === "<1" ? 1 : Number(departure.departure_timestamp.minutes[0]);
|
|
95
115
|
if (isNaN(departureMinutes))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransferBoardFilter.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/helpers/TransferBoardFilter.ts"],"names":[],"mappings":";;;AAAA,oEAAyD;AACzD,oEAA4D;AAK5D,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C,MAAM,iBAAiB,GAAmC,IAAI,GAAG,CAAC;IAC9D,CAAC,kCAAiB,CAAC,GAAG,EAAE,MAAM,CAAC;IAC/B,CAAC,kCAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC7C,CAAC,kCAAiB,CAAC,KAAK,EAAE,OAAO,CAAC;IAClC,CAAC,kCAAiB,CAAC,SAAS,EAAE,OAAO,CAAC;IACtC,CAAC,kCAAiB,CAAC,KAAK,EAAE,OAAO,CAAC;IAClC,CAAC,kCAAiB,CAAC,KAAK,EAAE,OAAO,CAAC;IAClC,CAAC,kCAAiB,CAAC,IAAI,EAAE,MAAM,CAAC;IAChC,CAAC,kCAAiB,CAAC,UAAU,EAAE,MAAM,CAAC;CACzC,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAoC,IAAI,GAAG,CAAC;IACzE,CAAC,kCAAiB,CAAC,GAAG,EAAE,KAAK,CAAC;IAC9B,CAAC,kCAAiB,CAAC,iBAAiB,EAAE,IAAI,CAAC;IAC3C,CAAC,kCAAiB,CAAC,KAAK,EAAE,IAAI,CAAC;IAC/B,CAAC,kCAAiB,CAAC,SAAS,EAAE,IAAI,CAAC;IACnC,CAAC,kCAAiB,CAAC,KAAK,EAAE,IAAI,CAAC;IAC/B,CAAC,kCAAiB,CAAC,KAAK,EAAE,IAAI,CAAC;IAC/B,CAAC,kCAAiB,CAAC,IAAI,EAAE,KAAK,CAAC;IAC/B,CAAC,kCAAiB,CAAC,UAAU,EAAE,KAAK,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAA2B,IAAI,GAAG,CAAC;IAChE,kCAAiB,CAAC,KAAK;IACvB,kCAAiB,CAAC,SAAS;IAC3B,kCAAiB,CAAC,KAAK;IACvB,kCAAiB,CAAC,KAAK;CAC1B,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEtC,MAAa,mBAAmB;IACrB,MAAM,CAAC,gBAAgB,CAC1B,SAA0C,EAC1C,KAAa,EACb,aAAqB,EACrB,iBAAyB;QAEzB,MAAM,kBAAkB,GAAoC,EAAE,CAAC;QAE/D,oEAAoE;QACpE,MAAM,0BAA0B,GAAG,aAAa,GAAG,iBAAiB,CAAC;QACrE,MAAM,SAAS,GAAG,iBAAiB,GAAG,0BAA0B,GAAG,cAAc,CAAC;QAElF,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;QAC3C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,IAAI,kBAAkB,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBACtC,MAAM;YACV,CAAC;YACD,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBACpC,SAAS;YACb,CAAC;YACD,IAAI,CAAC,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"TransferBoardFilter.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/helpers/TransferBoardFilter.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export interface IDepartureWithPosition {
|
|
|
6
6
|
predictedDepartureDate?: Date;
|
|
7
7
|
predictedDepartureTimestamp?: number;
|
|
8
8
|
is_wheelchair_accessible?: boolean | null;
|
|
9
|
+
is_guaranteed_transfer?: boolean | null;
|
|
9
10
|
};
|
|
10
11
|
position: IPublicApiCacheDto | null;
|
|
11
12
|
stopTime: IPublicStopTimeCacheDto | null;
|
package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.js
CHANGED
|
@@ -66,6 +66,7 @@ let TransferDepartureCacheTransformation = class TransferDepartureCacheTransform
|
|
|
66
66
|
headsign: HeadsignFormatter_1.HeadsignFormatter.format(departure.trip_headsign),
|
|
67
67
|
id: departure.trip_id,
|
|
68
68
|
is_wheelchair_accessible: departure.is_wheelchair_accessible ?? null,
|
|
69
|
+
is_guaranteed_transfer: departure.is_guaranteed_transfer ?? false,
|
|
69
70
|
},
|
|
70
71
|
icons: TransferBoardIconsResolver_1.TransferBoardIconsResolver.headsignToIconsList(data.departure.trip_headsign_icons, departure.route_type, null),
|
|
71
72
|
substitution_text: null,
|
package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransferDepartureCacheTransformation.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TransferDepartureCacheTransformation.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.ts"],"names":[],"mappings":"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"}
|
|
@@ -301,6 +301,7 @@ flowchart TD
|
|
|
301
301
|
- Jednou za hodinu se vygenerují nové odjezdy pro všechny zastávky v intervalu +5 hodin až +7 hodin, po přenačtení JŘ se přegenerují všechny odjezdy v interval -3 hodiny až +7 hodin
|
|
302
302
|
- Ukládá se pomocí `ZADD`, čte se pomocí `ZRANGEBYSCORE` (-inf, now + `minutesAfter`)
|
|
303
303
|
- Využití v public odjezdech
|
|
304
|
+
- Využití v endpointu přestupních tabulí
|
|
304
305
|
|
|
305
306
|
### Flowchart (refresh)
|
|
306
307
|
|
package/docs/openapi-output.yaml
CHANGED
|
@@ -1462,6 +1462,7 @@ paths:
|
|
|
1462
1462
|
- stop_name
|
|
1463
1463
|
- departures
|
|
1464
1464
|
- infotexts
|
|
1465
|
+
- icons
|
|
1465
1466
|
properties:
|
|
1466
1467
|
platform_code:
|
|
1467
1468
|
type: string
|
|
@@ -1487,7 +1488,9 @@ paths:
|
|
|
1487
1488
|
required:
|
|
1488
1489
|
- departure_timestamp
|
|
1489
1490
|
- route
|
|
1491
|
+
- stop
|
|
1490
1492
|
- trip
|
|
1493
|
+
- icons
|
|
1491
1494
|
properties:
|
|
1492
1495
|
departure_timestamp:
|
|
1493
1496
|
type: object
|
|
@@ -1498,8 +1501,9 @@ paths:
|
|
|
1498
1501
|
type: array
|
|
1499
1502
|
items:
|
|
1500
1503
|
type: string
|
|
1501
|
-
nullable:
|
|
1504
|
+
nullable: false
|
|
1502
1505
|
example: ["<1", "8"]
|
|
1506
|
+
minItems: 1
|
|
1503
1507
|
route:
|
|
1504
1508
|
type: object
|
|
1505
1509
|
required:
|
|
@@ -1509,11 +1513,11 @@ paths:
|
|
|
1509
1513
|
short_name:
|
|
1510
1514
|
type: string
|
|
1511
1515
|
example: "B"
|
|
1512
|
-
nullable:
|
|
1516
|
+
nullable: false
|
|
1513
1517
|
type:
|
|
1514
1518
|
type: number
|
|
1515
1519
|
example: 1
|
|
1516
|
-
nullable:
|
|
1520
|
+
nullable: false
|
|
1517
1521
|
stop:
|
|
1518
1522
|
type: object
|
|
1519
1523
|
required:
|
|
@@ -1529,6 +1533,7 @@ paths:
|
|
|
1529
1533
|
- headsign
|
|
1530
1534
|
- id
|
|
1531
1535
|
- is_wheelchair_accessible
|
|
1536
|
+
- is_guaranteed_transfer
|
|
1532
1537
|
properties:
|
|
1533
1538
|
headsign:
|
|
1534
1539
|
type: string
|
|
@@ -1543,6 +1548,12 @@ paths:
|
|
|
1543
1548
|
is_wheelchair_accessible:
|
|
1544
1549
|
type: boolean
|
|
1545
1550
|
description: True if the vehicle being used on this trip is wheelchair accessible. Metro trips are deemed accessible if the station is accessible.
|
|
1551
|
+
nullable: true
|
|
1552
|
+
example: false
|
|
1553
|
+
is_guaranteed_transfer:
|
|
1554
|
+
type: boolean
|
|
1555
|
+
nullable: false
|
|
1556
|
+
description: True if the transfer is marked as guaranteed and it can be waiting for current arriving trip identified in request query parameters.
|
|
1546
1557
|
example: false
|
|
1547
1558
|
icons:
|
|
1548
1559
|
$ref: "#/components/schemas/Icons"
|
|
@@ -2956,10 +2967,11 @@ components:
|
|
|
2956
2967
|
|
|
2957
2968
|
Icons:
|
|
2958
2969
|
type: array
|
|
2959
|
-
example: ["metro"]
|
|
2970
|
+
example: ["metro", "c"]
|
|
2971
|
+
minItems: 0
|
|
2960
2972
|
items:
|
|
2961
2973
|
type: string
|
|
2962
|
-
nullable:
|
|
2974
|
+
nullable: false
|
|
2963
2975
|
enum:
|
|
2964
2976
|
- metro
|
|
2965
2977
|
- tram
|