@opentripplanner/core-utils 11.1.6 → 11.2.1
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/esm/itinerary.js +3 -1
- package/esm/itinerary.js.map +1 -1
- package/esm/query-gen.js +2 -1
- package/esm/query-gen.js.map +1 -1
- package/esm/route.js +4 -2
- package/esm/route.js.map +1 -1
- package/lib/itinerary.d.ts.map +1 -1
- package/lib/itinerary.js +3 -1
- package/lib/itinerary.js.map +1 -1
- package/lib/query-gen.d.ts +1 -0
- package/lib/query-gen.d.ts.map +1 -1
- package/lib/query-gen.js +2 -1
- package/lib/query-gen.js.map +1 -1
- package/lib/route.d.ts.map +1 -1
- package/lib/route.js +4 -2
- package/lib/route.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/query-params.ts +10 -0
- package/src/itinerary.ts +3 -0
- package/src/otpSchema.json +313 -4
- package/src/planQuery.graphql +1 -0
- package/src/query-gen.ts +1 -0
- package/src/route.ts +3 -1
- package/tsconfig.tsbuildinfo +1 -1
package/src/otpSchema.json
CHANGED
|
@@ -2013,7 +2013,7 @@
|
|
|
2013
2013
|
{
|
|
2014
2014
|
"kind": "OBJECT",
|
|
2015
2015
|
"name": "DepartureRow",
|
|
2016
|
-
"description": "Departure row is a
|
|
2016
|
+
"description": "Departure row is a combination of a pattern and a stop of that pattern.\n\nThey are de-duplicated so for each pattern there will only be a single departure row.\n\nThis is useful if you want to show a list of stop/pattern combinations but want each pattern to be\nlisted only once.",
|
|
2017
2017
|
"fields": [
|
|
2018
2018
|
{
|
|
2019
2019
|
"name": "id",
|
|
@@ -2173,6 +2173,29 @@
|
|
|
2173
2173
|
"enumValues": null,
|
|
2174
2174
|
"possibleTypes": null
|
|
2175
2175
|
},
|
|
2176
|
+
{
|
|
2177
|
+
"kind": "OBJECT",
|
|
2178
|
+
"name": "Emissions",
|
|
2179
|
+
"description": null,
|
|
2180
|
+
"fields": [
|
|
2181
|
+
{
|
|
2182
|
+
"name": "co2",
|
|
2183
|
+
"description": "CO₂ emissions in grams.",
|
|
2184
|
+
"args": [],
|
|
2185
|
+
"type": {
|
|
2186
|
+
"kind": "SCALAR",
|
|
2187
|
+
"name": "Grams",
|
|
2188
|
+
"ofType": null
|
|
2189
|
+
},
|
|
2190
|
+
"isDeprecated": false,
|
|
2191
|
+
"deprecationReason": null
|
|
2192
|
+
}
|
|
2193
|
+
],
|
|
2194
|
+
"inputFields": null,
|
|
2195
|
+
"interfaces": [],
|
|
2196
|
+
"enumValues": null,
|
|
2197
|
+
"possibleTypes": null
|
|
2198
|
+
},
|
|
2176
2199
|
{
|
|
2177
2200
|
"kind": "OBJECT",
|
|
2178
2201
|
"name": "FareMedium",
|
|
@@ -2586,6 +2609,16 @@
|
|
|
2586
2609
|
"enumValues": null,
|
|
2587
2610
|
"possibleTypes": null
|
|
2588
2611
|
},
|
|
2612
|
+
{
|
|
2613
|
+
"kind": "SCALAR",
|
|
2614
|
+
"name": "Grams",
|
|
2615
|
+
"description": "",
|
|
2616
|
+
"fields": null,
|
|
2617
|
+
"inputFields": null,
|
|
2618
|
+
"interfaces": null,
|
|
2619
|
+
"enumValues": null,
|
|
2620
|
+
"possibleTypes": null
|
|
2621
|
+
},
|
|
2589
2622
|
{
|
|
2590
2623
|
"kind": "SCALAR",
|
|
2591
2624
|
"name": "ID",
|
|
@@ -3149,6 +3182,18 @@
|
|
|
3149
3182
|
"isDeprecated": false,
|
|
3150
3183
|
"deprecationReason": null
|
|
3151
3184
|
},
|
|
3185
|
+
{
|
|
3186
|
+
"name": "emissionsPerPerson",
|
|
3187
|
+
"description": "Emissions of this itinerary per traveler.",
|
|
3188
|
+
"args": [],
|
|
3189
|
+
"type": {
|
|
3190
|
+
"kind": "OBJECT",
|
|
3191
|
+
"name": "Emissions",
|
|
3192
|
+
"ofType": null
|
|
3193
|
+
},
|
|
3194
|
+
"isDeprecated": false,
|
|
3195
|
+
"deprecationReason": null
|
|
3196
|
+
},
|
|
3152
3197
|
{
|
|
3153
3198
|
"name": "legs",
|
|
3154
3199
|
"description": "A list of Legs. Each Leg is either a walking (cycling, car) portion of the\nitinerary, or a transit leg on a particular vehicle. So a itinerary where the\nuser walks to the Q train, transfers to the 6, then walks to their\ndestination, has four legs.",
|
|
@@ -3237,6 +3282,22 @@
|
|
|
3237
3282
|
"isDeprecated": false,
|
|
3238
3283
|
"deprecationReason": null
|
|
3239
3284
|
},
|
|
3285
|
+
{
|
|
3286
|
+
"name": "numberOfTransfers",
|
|
3287
|
+
"description": "How many transfers are part of this itinerary.\n\nNotes:\n - Interlined/stay-seated transfers do not increase this count.\n - Transferring from a flex to a fixed schedule trip and vice versa increases this count.",
|
|
3288
|
+
"args": [],
|
|
3289
|
+
"type": {
|
|
3290
|
+
"kind": "NON_NULL",
|
|
3291
|
+
"name": null,
|
|
3292
|
+
"ofType": {
|
|
3293
|
+
"kind": "SCALAR",
|
|
3294
|
+
"name": "Int",
|
|
3295
|
+
"ofType": null
|
|
3296
|
+
}
|
|
3297
|
+
},
|
|
3298
|
+
"isDeprecated": false,
|
|
3299
|
+
"deprecationReason": null
|
|
3300
|
+
},
|
|
3240
3301
|
{
|
|
3241
3302
|
"name": "fares",
|
|
3242
3303
|
"description": "Information about the fares for this itinerary. This is primarily a GTFS Fares V1 interface\nwill be removed in the future.",
|
|
@@ -4201,6 +4262,65 @@
|
|
|
4201
4262
|
}
|
|
4202
4263
|
]
|
|
4203
4264
|
},
|
|
4265
|
+
{
|
|
4266
|
+
"kind": "ENUM",
|
|
4267
|
+
"name": "OccupancyStatus",
|
|
4268
|
+
"description": "Occupancy status of a vehicle.",
|
|
4269
|
+
"fields": null,
|
|
4270
|
+
"inputFields": null,
|
|
4271
|
+
"interfaces": null,
|
|
4272
|
+
"enumValues": [
|
|
4273
|
+
{
|
|
4274
|
+
"name": "NO_DATA_AVAILABLE",
|
|
4275
|
+
"description": "Default. There is no occupancy-data on this departure.",
|
|
4276
|
+
"isDeprecated": false,
|
|
4277
|
+
"deprecationReason": null
|
|
4278
|
+
},
|
|
4279
|
+
{
|
|
4280
|
+
"name": "EMPTY",
|
|
4281
|
+
"description": "The vehicle is considered empty by most measures, and has few or no passengers onboard, but is\nstill accepting passengers. There isn't a big difference between this and MANY_SEATS_AVAILABLE\nso it's possible to handle them as the same value, if one wants to limit the number of different\nvalues.\nSIRI nordic profile: merge these into `MANY_SEATS_AVAILABLE`.",
|
|
4282
|
+
"isDeprecated": false,
|
|
4283
|
+
"deprecationReason": null
|
|
4284
|
+
},
|
|
4285
|
+
{
|
|
4286
|
+
"name": "MANY_SEATS_AVAILABLE",
|
|
4287
|
+
"description": "The vehicle or carriage has a large number of seats available. The amount of free seats out of\nthe total seats available to be considered large enough to fall into this category is\ndetermined at the discretion of the producer. There isn't a big difference between this and\nEMPTY so it's possible to handle them as the same value, if one wants to limit the number of\ndifferent values.\nSIRI nordic profile: more than ~50% of seats available.",
|
|
4288
|
+
"isDeprecated": false,
|
|
4289
|
+
"deprecationReason": null
|
|
4290
|
+
},
|
|
4291
|
+
{
|
|
4292
|
+
"name": "FEW_SEATS_AVAILABLE",
|
|
4293
|
+
"description": "The vehicle or carriage has a small number of seats available. The amount of free seats out of\nthe total seats available to be considered small enough to fall into this category is\ndetermined at the discretion of the producer.\nSIRI nordic profile: less than ~50% of seats available.",
|
|
4294
|
+
"isDeprecated": false,
|
|
4295
|
+
"deprecationReason": null
|
|
4296
|
+
},
|
|
4297
|
+
{
|
|
4298
|
+
"name": "STANDING_ROOM_ONLY",
|
|
4299
|
+
"description": "The vehicle or carriage can currently accommodate only standing passengers.\nSIRI nordic profile: less than ~10% of seats available.",
|
|
4300
|
+
"isDeprecated": false,
|
|
4301
|
+
"deprecationReason": null
|
|
4302
|
+
},
|
|
4303
|
+
{
|
|
4304
|
+
"name": "CRUSHED_STANDING_ROOM_ONLY",
|
|
4305
|
+
"description": "The vehicle or carriage can currently accommodate only standing passengers and has limited\nspace for them. There isn't a big difference between this and FULL so it's possible to handle\nthem as the same value, if one wants to limit the number of different values.\nSIRI nordic profile: merge into `STANDING_ROOM_ONLY`.",
|
|
4306
|
+
"isDeprecated": false,
|
|
4307
|
+
"deprecationReason": null
|
|
4308
|
+
},
|
|
4309
|
+
{
|
|
4310
|
+
"name": "FULL",
|
|
4311
|
+
"description": "The vehicle is considered full by most measures, but may still be allowing passengers to\nboard.",
|
|
4312
|
+
"isDeprecated": false,
|
|
4313
|
+
"deprecationReason": null
|
|
4314
|
+
},
|
|
4315
|
+
{
|
|
4316
|
+
"name": "NOT_ACCEPTING_PASSENGERS",
|
|
4317
|
+
"description": "The vehicle or carriage is not accepting passengers.\nSIRI nordic profile: if vehicle/carriage is not in use / unavailable, or passengers are only allowed\nto alight due to e.g. crowding.",
|
|
4318
|
+
"isDeprecated": false,
|
|
4319
|
+
"deprecationReason": null
|
|
4320
|
+
}
|
|
4321
|
+
],
|
|
4322
|
+
"possibleTypes": null
|
|
4323
|
+
},
|
|
4204
4324
|
{
|
|
4205
4325
|
"kind": "OBJECT",
|
|
4206
4326
|
"name": "OpeningHours",
|
|
@@ -5912,7 +6032,7 @@
|
|
|
5912
6032
|
},
|
|
5913
6033
|
{
|
|
5914
6034
|
"name": "filterByPlaceTypes",
|
|
5915
|
-
"description": "Only return places that are one of these types, e.g. `STOP` or `
|
|
6035
|
+
"description": "Only return places that are one of these types, e.g. `STOP` or `VEHICLE_RENT`",
|
|
5916
6036
|
"type": {
|
|
5917
6037
|
"kind": "LIST",
|
|
5918
6038
|
"name": null,
|
|
@@ -7684,6 +7804,24 @@
|
|
|
7684
7804
|
"description": null,
|
|
7685
7805
|
"isDeprecated": false,
|
|
7686
7806
|
"deprecationReason": null
|
|
7807
|
+
},
|
|
7808
|
+
{
|
|
7809
|
+
"name": "ENTER_STATION",
|
|
7810
|
+
"description": null,
|
|
7811
|
+
"isDeprecated": false,
|
|
7812
|
+
"deprecationReason": null
|
|
7813
|
+
},
|
|
7814
|
+
{
|
|
7815
|
+
"name": "EXIT_STATION",
|
|
7816
|
+
"description": null,
|
|
7817
|
+
"isDeprecated": false,
|
|
7818
|
+
"deprecationReason": null
|
|
7819
|
+
},
|
|
7820
|
+
{
|
|
7821
|
+
"name": "FOLLOW_SIGNS",
|
|
7822
|
+
"description": null,
|
|
7823
|
+
"isDeprecated": false,
|
|
7824
|
+
"deprecationReason": null
|
|
7687
7825
|
}
|
|
7688
7826
|
],
|
|
7689
7827
|
"possibleTypes": null
|
|
@@ -7838,6 +7976,57 @@
|
|
|
7838
7976
|
"enumValues": null,
|
|
7839
7977
|
"possibleTypes": null
|
|
7840
7978
|
},
|
|
7979
|
+
{
|
|
7980
|
+
"kind": "OBJECT",
|
|
7981
|
+
"name": "RentalVehicleEntityCounts",
|
|
7982
|
+
"description": null,
|
|
7983
|
+
"fields": [
|
|
7984
|
+
{
|
|
7985
|
+
"name": "total",
|
|
7986
|
+
"description": "The total number of entities (e.g. vehicles, spaces).",
|
|
7987
|
+
"args": [],
|
|
7988
|
+
"type": {
|
|
7989
|
+
"kind": "NON_NULL",
|
|
7990
|
+
"name": null,
|
|
7991
|
+
"ofType": {
|
|
7992
|
+
"kind": "SCALAR",
|
|
7993
|
+
"name": "Int",
|
|
7994
|
+
"ofType": null
|
|
7995
|
+
}
|
|
7996
|
+
},
|
|
7997
|
+
"isDeprecated": false,
|
|
7998
|
+
"deprecationReason": null
|
|
7999
|
+
},
|
|
8000
|
+
{
|
|
8001
|
+
"name": "byType",
|
|
8002
|
+
"description": "The number of entities by type",
|
|
8003
|
+
"args": [],
|
|
8004
|
+
"type": {
|
|
8005
|
+
"kind": "NON_NULL",
|
|
8006
|
+
"name": null,
|
|
8007
|
+
"ofType": {
|
|
8008
|
+
"kind": "LIST",
|
|
8009
|
+
"name": null,
|
|
8010
|
+
"ofType": {
|
|
8011
|
+
"kind": "NON_NULL",
|
|
8012
|
+
"name": null,
|
|
8013
|
+
"ofType": {
|
|
8014
|
+
"kind": "OBJECT",
|
|
8015
|
+
"name": "RentalVehicleTypeCount",
|
|
8016
|
+
"ofType": null
|
|
8017
|
+
}
|
|
8018
|
+
}
|
|
8019
|
+
}
|
|
8020
|
+
},
|
|
8021
|
+
"isDeprecated": false,
|
|
8022
|
+
"deprecationReason": null
|
|
8023
|
+
}
|
|
8024
|
+
],
|
|
8025
|
+
"inputFields": null,
|
|
8026
|
+
"interfaces": [],
|
|
8027
|
+
"enumValues": null,
|
|
8028
|
+
"possibleTypes": null
|
|
8029
|
+
},
|
|
7841
8030
|
{
|
|
7842
8031
|
"kind": "OBJECT",
|
|
7843
8032
|
"name": "RentalVehicleType",
|
|
@@ -7873,6 +8062,49 @@
|
|
|
7873
8062
|
"enumValues": null,
|
|
7874
8063
|
"possibleTypes": null
|
|
7875
8064
|
},
|
|
8065
|
+
{
|
|
8066
|
+
"kind": "OBJECT",
|
|
8067
|
+
"name": "RentalVehicleTypeCount",
|
|
8068
|
+
"description": null,
|
|
8069
|
+
"fields": [
|
|
8070
|
+
{
|
|
8071
|
+
"name": "vehicleType",
|
|
8072
|
+
"description": "The type of the rental vehicle (scooter, bicycle, car...)",
|
|
8073
|
+
"args": [],
|
|
8074
|
+
"type": {
|
|
8075
|
+
"kind": "NON_NULL",
|
|
8076
|
+
"name": null,
|
|
8077
|
+
"ofType": {
|
|
8078
|
+
"kind": "OBJECT",
|
|
8079
|
+
"name": "RentalVehicleType",
|
|
8080
|
+
"ofType": null
|
|
8081
|
+
}
|
|
8082
|
+
},
|
|
8083
|
+
"isDeprecated": false,
|
|
8084
|
+
"deprecationReason": null
|
|
8085
|
+
},
|
|
8086
|
+
{
|
|
8087
|
+
"name": "count",
|
|
8088
|
+
"description": "The number of vehicles of this type",
|
|
8089
|
+
"args": [],
|
|
8090
|
+
"type": {
|
|
8091
|
+
"kind": "NON_NULL",
|
|
8092
|
+
"name": null,
|
|
8093
|
+
"ofType": {
|
|
8094
|
+
"kind": "SCALAR",
|
|
8095
|
+
"name": "Int",
|
|
8096
|
+
"ofType": null
|
|
8097
|
+
}
|
|
8098
|
+
},
|
|
8099
|
+
"isDeprecated": false,
|
|
8100
|
+
"deprecationReason": null
|
|
8101
|
+
}
|
|
8102
|
+
],
|
|
8103
|
+
"inputFields": null,
|
|
8104
|
+
"interfaces": [],
|
|
8105
|
+
"enumValues": null,
|
|
8106
|
+
"possibleTypes": null
|
|
8107
|
+
},
|
|
7876
8108
|
{
|
|
7877
8109
|
"kind": "OBJECT",
|
|
7878
8110
|
"name": "RideHailingEstimate",
|
|
@@ -10357,6 +10589,18 @@
|
|
|
10357
10589
|
},
|
|
10358
10590
|
"isDeprecated": false,
|
|
10359
10591
|
"deprecationReason": null
|
|
10592
|
+
},
|
|
10593
|
+
{
|
|
10594
|
+
"name": "occupancy",
|
|
10595
|
+
"description": "The latest realtime occupancy information for the latest occurance of this\ntrip.",
|
|
10596
|
+
"args": [],
|
|
10597
|
+
"type": {
|
|
10598
|
+
"kind": "OBJECT",
|
|
10599
|
+
"name": "TripOccupancy",
|
|
10600
|
+
"ofType": null
|
|
10601
|
+
},
|
|
10602
|
+
"isDeprecated": false,
|
|
10603
|
+
"deprecationReason": null
|
|
10360
10604
|
}
|
|
10361
10605
|
],
|
|
10362
10606
|
"inputFields": null,
|
|
@@ -10417,6 +10661,29 @@
|
|
|
10417
10661
|
],
|
|
10418
10662
|
"possibleTypes": null
|
|
10419
10663
|
},
|
|
10664
|
+
{
|
|
10665
|
+
"kind": "OBJECT",
|
|
10666
|
+
"name": "TripOccupancy",
|
|
10667
|
+
"description": "Occupancy of a vehicle on a trip. This should include the most recent occupancy information\navailable for a trip. Historic data might not be available.",
|
|
10668
|
+
"fields": [
|
|
10669
|
+
{
|
|
10670
|
+
"name": "occupancyStatus",
|
|
10671
|
+
"description": "Occupancy information mapped to a limited set of descriptive states.",
|
|
10672
|
+
"args": [],
|
|
10673
|
+
"type": {
|
|
10674
|
+
"kind": "ENUM",
|
|
10675
|
+
"name": "OccupancyStatus",
|
|
10676
|
+
"ofType": null
|
|
10677
|
+
},
|
|
10678
|
+
"isDeprecated": false,
|
|
10679
|
+
"deprecationReason": null
|
|
10680
|
+
}
|
|
10681
|
+
],
|
|
10682
|
+
"inputFields": null,
|
|
10683
|
+
"interfaces": [],
|
|
10684
|
+
"enumValues": null,
|
|
10685
|
+
"possibleTypes": null
|
|
10686
|
+
},
|
|
10420
10687
|
{
|
|
10421
10688
|
"kind": "OBJECT",
|
|
10422
10689
|
"name": "Unknown",
|
|
@@ -11018,8 +11285,8 @@
|
|
|
11018
11285
|
"name": "Int",
|
|
11019
11286
|
"ofType": null
|
|
11020
11287
|
},
|
|
11021
|
-
"isDeprecated":
|
|
11022
|
-
"deprecationReason":
|
|
11288
|
+
"isDeprecated": true,
|
|
11289
|
+
"deprecationReason": "Use `availableVehicles` instead, which also contains vehicle types"
|
|
11023
11290
|
},
|
|
11024
11291
|
{
|
|
11025
11292
|
"name": "spacesAvailable",
|
|
@@ -11030,6 +11297,30 @@
|
|
|
11030
11297
|
"name": "Int",
|
|
11031
11298
|
"ofType": null
|
|
11032
11299
|
},
|
|
11300
|
+
"isDeprecated": true,
|
|
11301
|
+
"deprecationReason": "Use `availableSpaces` instead, which also contains the space vehicle types"
|
|
11302
|
+
},
|
|
11303
|
+
{
|
|
11304
|
+
"name": "availableVehicles",
|
|
11305
|
+
"description": "Number of vehicles currently available on the rental station, grouped by vehicle type.",
|
|
11306
|
+
"args": [],
|
|
11307
|
+
"type": {
|
|
11308
|
+
"kind": "OBJECT",
|
|
11309
|
+
"name": "RentalVehicleEntityCounts",
|
|
11310
|
+
"ofType": null
|
|
11311
|
+
},
|
|
11312
|
+
"isDeprecated": false,
|
|
11313
|
+
"deprecationReason": null
|
|
11314
|
+
},
|
|
11315
|
+
{
|
|
11316
|
+
"name": "availableSpaces",
|
|
11317
|
+
"description": "Number of free spaces currently available on the rental station, grouped by vehicle type.",
|
|
11318
|
+
"args": [],
|
|
11319
|
+
"type": {
|
|
11320
|
+
"kind": "OBJECT",
|
|
11321
|
+
"name": "RentalVehicleEntityCounts",
|
|
11322
|
+
"ofType": null
|
|
11323
|
+
},
|
|
11033
11324
|
"isDeprecated": false,
|
|
11034
11325
|
"deprecationReason": null
|
|
11035
11326
|
},
|
|
@@ -12156,6 +12447,18 @@
|
|
|
12156
12447
|
"isDeprecated": false,
|
|
12157
12448
|
"deprecationReason": null
|
|
12158
12449
|
},
|
|
12450
|
+
{
|
|
12451
|
+
"name": "isOneOf",
|
|
12452
|
+
"description": "This field is considered experimental because it has not yet been ratified in the graphql specification",
|
|
12453
|
+
"args": [],
|
|
12454
|
+
"type": {
|
|
12455
|
+
"kind": "SCALAR",
|
|
12456
|
+
"name": "Boolean",
|
|
12457
|
+
"ofType": null
|
|
12458
|
+
},
|
|
12459
|
+
"isDeprecated": false,
|
|
12460
|
+
"deprecationReason": null
|
|
12461
|
+
},
|
|
12159
12462
|
{
|
|
12160
12463
|
"name": "specifiedByURL",
|
|
12161
12464
|
"description": null,
|
|
@@ -13057,6 +13360,12 @@
|
|
|
13057
13360
|
"defaultValue": null
|
|
13058
13361
|
}
|
|
13059
13362
|
]
|
|
13363
|
+
},
|
|
13364
|
+
{
|
|
13365
|
+
"name": "oneOf",
|
|
13366
|
+
"description": "Indicates an Input Object is a OneOf Input Object.",
|
|
13367
|
+
"locations": ["INPUT_OBJECT"],
|
|
13368
|
+
"args": []
|
|
13060
13369
|
}
|
|
13061
13370
|
]
|
|
13062
13371
|
}
|
package/src/planQuery.graphql
CHANGED
package/src/query-gen.ts
CHANGED
package/src/route.ts
CHANGED
|
@@ -184,6 +184,7 @@ function getSortValues(
|
|
|
184
184
|
const modeComparatorValue = {
|
|
185
185
|
SUBWAY: 1,
|
|
186
186
|
TRAM: 2,
|
|
187
|
+
TROLLEYBUS: 9,
|
|
187
188
|
RAIL: 3,
|
|
188
189
|
GONDOLA: 4,
|
|
189
190
|
FERRY: 5,
|
|
@@ -207,7 +208,8 @@ const routeTypeComparatorValue = {
|
|
|
207
208
|
// TODO: 11 and 12 are not a part of OTP as of 2019-02-14, but for now just
|
|
208
209
|
// associate them with bus/rail.
|
|
209
210
|
11: modeComparatorValue.BUS, // - Trolleybus.
|
|
210
|
-
12: modeComparatorValue.RAIL // - Monorail.
|
|
211
|
+
12: modeComparatorValue.RAIL, // - Monorail.
|
|
212
|
+
13: modeComparatorValue.TROLLEYBUS
|
|
211
213
|
};
|
|
212
214
|
|
|
213
215
|
// Gets a comparator value for a given route's type (OTP mode).
|