corequery-gtfs 0.2.0 → 0.3.0
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/corequery-types.d.ts +6 -6
- package/dist/corequeryify/service-conversion-iterator.d.ts +2 -2
- package/dist/corequeryify/service-converter.d.ts +6 -6
- package/dist/corequeryify/service-converter.js +2 -2
- package/dist/corequeryify/service-converter.js.map +1 -1
- package/dist/data/gtfs-feed.d.ts +5 -5
- package/dist/data/gtfs-feed.js +14 -6
- package/dist/data/gtfs-feed.js.map +1 -1
- package/dist/data/gtfs-schedule-data.d.ts +1 -0
- package/dist/data/gtfs-schedule-data.js +1 -0
- package/dist/data/gtfs-schedule-data.js.map +1 -1
- package/dist/departures/gtfs-scheduled-movements-index.d.ts +2 -1
- package/dist/departures/gtfs-scheduled-movements-index.js +2 -0
- package/dist/departures/gtfs-scheduled-movements-index.js.map +1 -1
- package/dist/gtfs-service-source.d.ts +5 -5
- package/dist/gtfs-service-source.js +4 -1
- package/dist/gtfs-service-source.js.map +1 -1
- package/dist/gtfs-system.d.ts +3 -3
- package/dist/gtfs-system.js +7 -6
- package/dist/gtfs-system.js.map +1 -1
- package/dist/parser/gtfs-feed-parser.d.ts +1 -1
- package/dist/parser/gtfs-feed-parser.js +2 -2
- package/dist/parser/gtfs-feed-parser.js.map +1 -1
- package/package.json +2 -2
|
@@ -11,18 +11,18 @@ export type DepartureFields<CorequeryServiceClass> = {
|
|
|
11
11
|
readonly service: CorequeryServiceClass;
|
|
12
12
|
readonly movementIndex: number;
|
|
13
13
|
};
|
|
14
|
-
export type ServiceFields<CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
14
|
+
export type ServiceFields<CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass> = {
|
|
15
15
|
readonly sourceId: string;
|
|
16
16
|
readonly intrasourceId: string;
|
|
17
17
|
readonly lineIds: readonly number[];
|
|
18
18
|
readonly tags: CorequeryTagsClass;
|
|
19
19
|
readonly color: Color | null;
|
|
20
20
|
readonly liveDataType: ServiceLiveDataType;
|
|
21
|
-
readonly movements: readonly CorequeryServiceMovementClasses<CorequeryServiceOriginatingMovementClass,
|
|
21
|
+
readonly movements: readonly CorequeryServiceMovementClasses<CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass>[];
|
|
22
22
|
readonly isCancelled: boolean;
|
|
23
23
|
readonly connections: readonly CorequeryServiceConnectionClass[];
|
|
24
24
|
};
|
|
25
|
-
type CorequeryServiceMovementClasses<CorequeryServiceOriginatingMovementClass,
|
|
25
|
+
type CorequeryServiceMovementClasses<CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass> = CorequeryServiceOriginatingMovementClass | CorequeryServiceRegularMovementClass | CorequeryServiceTerminatingMovementClass | CorequeryServicePassingMovementClass;
|
|
26
26
|
export type ServiceOriginatingMovementFields = {
|
|
27
27
|
readonly stopId: number;
|
|
28
28
|
readonly originalPositionId: number | null;
|
|
@@ -31,9 +31,6 @@ export type ServiceOriginatingMovementFields = {
|
|
|
31
31
|
readonly departureTime: Temporal.Instant;
|
|
32
32
|
readonly formerDepartureTime: Temporal.Instant | null;
|
|
33
33
|
};
|
|
34
|
-
export type ServicePassingMovementFields = {
|
|
35
|
-
readonly stopId: number;
|
|
36
|
-
};
|
|
37
34
|
export type ServiceRegularMovementFields = {
|
|
38
35
|
readonly stopId: number;
|
|
39
36
|
readonly originalPositionId: number | null;
|
|
@@ -55,6 +52,9 @@ export type ServiceTerminatingMovementFields = {
|
|
|
55
52
|
readonly arrivalTime: Temporal.Instant;
|
|
56
53
|
readonly formerArrivalTime: Temporal.Instant | null;
|
|
57
54
|
};
|
|
55
|
+
export type ServicePassingMovementFields = {
|
|
56
|
+
readonly stopId: number;
|
|
57
|
+
};
|
|
58
58
|
export type ServiceConnectionFields = {
|
|
59
59
|
readonly type: ServiceConnectionType;
|
|
60
60
|
readonly direction: ServiceConnectionDirection;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { DeparturesIterator } from "../departures/departures-iterator.js";
|
|
2
2
|
import type { ServiceConverter } from "./service-converter.js";
|
|
3
|
-
export declare class ServiceConversionIterator<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
3
|
+
export declare class ServiceConversionIterator<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass> {
|
|
4
4
|
private readonly _iterator;
|
|
5
5
|
private readonly _converter;
|
|
6
6
|
private readonly _timezone;
|
|
7
7
|
private _convertedNextDeparture;
|
|
8
|
-
constructor(_iterator: DeparturesIterator, _converter: ServiceConverter<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
8
|
+
constructor(_iterator: DeparturesIterator, _converter: ServiceConverter<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass>, _timezone: string);
|
|
9
9
|
peek(): Promise<CorequeryDepartureClass | null>;
|
|
10
10
|
take(): Promise<CorequeryDepartureClass>;
|
|
11
11
|
}
|
|
@@ -2,28 +2,28 @@ import type { DepartureFields, ServiceFields, ServiceOriginatingMovementFields,
|
|
|
2
2
|
import { GtfsScheduledTrip } from "../data/gtfs-scheduled-trip.js";
|
|
3
3
|
import type { DeparturesIteratorResult } from "../departures/departures-iterator.js";
|
|
4
4
|
import { GtfsUpdatedTrip } from "../data/gtfs-updated-trip.js";
|
|
5
|
-
export type ServiceConverterFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
5
|
+
export type ServiceConverterFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass> = {
|
|
6
6
|
readonly sourceId: string;
|
|
7
7
|
buildDeparture: (fields: DepartureFields<CorequeryServiceClass>) => CorequeryDepartureClass;
|
|
8
|
-
buildService: (fields: ServiceFields<CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
8
|
+
buildService: (fields: ServiceFields<CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass>) => CorequeryServiceClass;
|
|
9
9
|
buildTags: (tags: Set<number>) => CorequeryTagsClass;
|
|
10
10
|
buildServiceOriginatingMovement: (fields: ServiceOriginatingMovementFields) => CorequeryServiceOriginatingMovementClass;
|
|
11
|
-
buildServicePassingMovement: (fields: ServicePassingMovementFields) => CorequeryServicePassingMovementClass;
|
|
12
11
|
buildServiceRegularMovement: (fields: ServiceRegularMovementFields) => CorequeryServiceRegularMovementClass;
|
|
13
12
|
buildServiceTerminatingMovement: (fields: ServiceTerminatingMovementFields) => CorequeryServiceTerminatingMovementClass;
|
|
13
|
+
buildServicePassingMovement: (fields: ServicePassingMovementFields) => CorequeryServicePassingMovementClass;
|
|
14
14
|
buildServiceConnection: (fields: ServiceConnectionFields) => CorequeryServiceConnectionClass;
|
|
15
15
|
};
|
|
16
|
-
export declare class ServiceConverter<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
16
|
+
export declare class ServiceConverter<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass> {
|
|
17
17
|
private readonly _sourceId;
|
|
18
18
|
private readonly _buildDeparture;
|
|
19
19
|
private readonly _buildService;
|
|
20
20
|
private readonly _buildTags;
|
|
21
21
|
private readonly _buildServiceOriginatingMovement;
|
|
22
|
-
private readonly _buildServicePassingMovement;
|
|
23
22
|
private readonly _buildServiceRegularMovement;
|
|
24
23
|
private readonly _buildServiceTerminatingMovement;
|
|
24
|
+
private readonly _buildServicePassingMovement;
|
|
25
25
|
private readonly _buildServiceConnection;
|
|
26
|
-
constructor(fields: ServiceConverterFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
26
|
+
constructor(fields: ServiceConverterFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass>);
|
|
27
27
|
convertDeparture(result: DeparturesIteratorResult, timezone: string): CorequeryDepartureClass;
|
|
28
28
|
convertScheduledTrip(trip: GtfsScheduledTrip, serviceDay: Temporal.PlainDate, timezone: string): CorequeryServiceClass;
|
|
29
29
|
convertUpdatedTrip(trip: GtfsUpdatedTrip): CorequeryServiceClass;
|
|
@@ -8,9 +8,9 @@ export class ServiceConverter {
|
|
|
8
8
|
_buildService;
|
|
9
9
|
_buildTags;
|
|
10
10
|
_buildServiceOriginatingMovement;
|
|
11
|
-
_buildServicePassingMovement;
|
|
12
11
|
_buildServiceRegularMovement;
|
|
13
12
|
_buildServiceTerminatingMovement;
|
|
13
|
+
_buildServicePassingMovement;
|
|
14
14
|
_buildServiceConnection;
|
|
15
15
|
constructor(fields) {
|
|
16
16
|
this._sourceId = fields.sourceId;
|
|
@@ -19,10 +19,10 @@ export class ServiceConverter {
|
|
|
19
19
|
this._buildTags = fields.buildTags;
|
|
20
20
|
this._buildServiceOriginatingMovement =
|
|
21
21
|
fields.buildServiceOriginatingMovement;
|
|
22
|
-
this._buildServicePassingMovement = fields.buildServicePassingMovement;
|
|
23
22
|
this._buildServiceRegularMovement = fields.buildServiceRegularMovement;
|
|
24
23
|
this._buildServiceTerminatingMovement =
|
|
25
24
|
fields.buildServiceTerminatingMovement;
|
|
25
|
+
this._buildServicePassingMovement = fields.buildServicePassingMovement;
|
|
26
26
|
this._buildServiceConnection = fields.buildServiceConnection;
|
|
27
27
|
}
|
|
28
28
|
convertDeparture(result, timezone) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-converter.js","sourceRoot":"","sources":["../../src/corequeryify/service-converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAUlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAsDvE,MAAM,OAAO,gBAAgB;IAUV,SAAS,CAAS;IAElB,eAAe,CAEH;IAEZ,aAAa,CASH;IAEV,UAAU,CAA4C;IAEtD,gCAAgC,CAEH;IAE7B,4BAA4B,CAEH;IAEzB,
|
|
1
|
+
{"version":3,"file":"service-converter.js","sourceRoot":"","sources":["../../src/corequeryify/service-converter.ts"],"names":[],"mappings":"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"}
|
package/dist/data/gtfs-feed.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import type { TimezoneData } from "../config/timezone-data.js";
|
|
2
2
|
import { GtfsScheduledMovementsIndex } from "../departures/gtfs-scheduled-movements-index.js";
|
|
3
3
|
import { ZipperDeparturesIterator } from "../departures/zipper-departures-iterator.js";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
4
|
+
import { GtfsRealtimeData } from "./gtfs-realtime-data.js";
|
|
5
|
+
import { GtfsScheduleData } from "./gtfs-schedule-data.js";
|
|
6
6
|
import type { GtfsScheduledTrip } from "./gtfs-scheduled-trip.js";
|
|
7
7
|
import type { GtfsUpdatedTrip } from "./gtfs-updated-trip.js";
|
|
8
8
|
export declare class GtfsFeed {
|
|
9
|
-
readonly corequeryDataSourceId: string;
|
|
10
9
|
readonly scheduleData: GtfsScheduleData;
|
|
11
10
|
readonly realtimeData: GtfsRealtimeData;
|
|
12
11
|
readonly timezoneData: TimezoneData;
|
|
13
12
|
readonly scheduledMovementsIndex: GtfsScheduledMovementsIndex;
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
static readonly empty: GtfsFeed;
|
|
14
|
+
constructor(scheduleData: GtfsScheduleData, realtimeData: GtfsRealtimeData, timezoneData: TimezoneData, scheduledMovementsIndex: GtfsScheduledMovementsIndex);
|
|
15
|
+
static fromNewScheduleData(scheduleData: GtfsScheduleData, realtimeData: GtfsRealtimeData, timezoneData: TimezoneData): GtfsFeed;
|
|
16
16
|
withUpdatedRealtimeData(realtimeData: GtfsRealtimeData): GtfsFeed;
|
|
17
17
|
getTrip(gtfsTripId: string, serviceDay: Temporal.PlainDate): GtfsScheduledTrip | GtfsUpdatedTrip | null;
|
|
18
18
|
createDepartureIterator(stopId: number): ZipperDeparturesIterator;
|
package/dist/data/gtfs-feed.js
CHANGED
|
@@ -1,24 +1,32 @@
|
|
|
1
1
|
import { GtfsScheduledMovementsIndex } from "../departures/gtfs-scheduled-movements-index.js";
|
|
2
2
|
import { ZipperDeparturesIterator } from "../departures/zipper-departures-iterator.js";
|
|
3
|
+
import { GtfsRealtimeData } from "./gtfs-realtime-data.js";
|
|
4
|
+
import { GtfsScheduleData } from "./gtfs-schedule-data.js";
|
|
3
5
|
export class GtfsFeed {
|
|
4
|
-
corequeryDataSourceId;
|
|
5
6
|
scheduleData;
|
|
6
7
|
realtimeData;
|
|
7
8
|
timezoneData;
|
|
8
9
|
scheduledMovementsIndex;
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
static empty = new GtfsFeed(GtfsScheduleData.empty, GtfsRealtimeData.empty,
|
|
11
|
+
// Timezone data can be literally anything. Because there's no trips, we
|
|
12
|
+
// never create a ScheduledDeparturesBlocksBuilder, so it's unused.
|
|
13
|
+
{
|
|
14
|
+
timezone: "UTC",
|
|
15
|
+
minimumViableOffsetSeconds: 0,
|
|
16
|
+
maximumViableOffsetSeconds: 0,
|
|
17
|
+
}, GtfsScheduledMovementsIndex.empty);
|
|
18
|
+
constructor(scheduleData, realtimeData, timezoneData, scheduledMovementsIndex) {
|
|
11
19
|
this.scheduleData = scheduleData;
|
|
12
20
|
this.realtimeData = realtimeData;
|
|
13
21
|
this.timezoneData = timezoneData;
|
|
14
22
|
this.scheduledMovementsIndex = scheduledMovementsIndex;
|
|
15
23
|
}
|
|
16
|
-
static fromNewScheduleData(
|
|
24
|
+
static fromNewScheduleData(scheduleData, realtimeData, timezoneData) {
|
|
17
25
|
const scheduledMovementsIndex = GtfsScheduledMovementsIndex.build(scheduleData);
|
|
18
|
-
return new GtfsFeed(
|
|
26
|
+
return new GtfsFeed(scheduleData, realtimeData, timezoneData, scheduledMovementsIndex);
|
|
19
27
|
}
|
|
20
28
|
withUpdatedRealtimeData(realtimeData) {
|
|
21
|
-
return new GtfsFeed(this.
|
|
29
|
+
return new GtfsFeed(this.scheduleData, realtimeData, this.timezoneData, this.scheduledMovementsIndex);
|
|
22
30
|
}
|
|
23
31
|
getTrip(gtfsTripId, serviceDay) {
|
|
24
32
|
const realtimeTrip = this.realtimeData.getTrip(gtfsTripId, serviceDay);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtfs-feed.js","sourceRoot":"","sources":["../../src/data/gtfs-feed.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"gtfs-feed.js","sourceRoot":"","sources":["../../src/data/gtfs-feed.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAI3D,MAAM,OAAO,QAAQ;IAiBR;IACA;IACA;IACA;IAnBX,MAAM,CAAU,KAAK,GAAG,IAAI,QAAQ,CAClC,gBAAgB,CAAC,KAAK,EACtB,gBAAgB,CAAC,KAAK;IAEtB,wEAAwE;IACxE,mEAAmE;IACnE;QACE,QAAQ,EAAE,KAAK;QACf,0BAA0B,EAAE,CAAC;QAC7B,0BAA0B,EAAE,CAAC;KAC9B,EAED,2BAA2B,CAAC,KAAK,CAClC,CAAC;IAEF,YACW,YAA8B,EAC9B,YAA8B,EAC9B,YAA0B,EAC1B,uBAAoD;QAHpD,iBAAY,GAAZ,YAAY,CAAkB;QAC9B,iBAAY,GAAZ,YAAY,CAAkB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,4BAAuB,GAAvB,uBAAuB,CAA6B;IAC5D,CAAC;IAEJ,MAAM,CAAC,mBAAmB,CACxB,YAA8B,EAC9B,YAA8B,EAC9B,YAA0B;QAE1B,MAAM,uBAAuB,GAC3B,2BAA2B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAElD,OAAO,IAAI,QAAQ,CACjB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,uBAAuB,CACxB,CAAC;IACJ,CAAC;IAED,uBAAuB,CAAC,YAA8B;QACpD,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,YAAY,EACjB,YAAY,EACZ,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,uBAAuB,CAC7B,CAAC;IACJ,CAAC;IAED,OAAO,CACL,UAAkB,EAClB,UAA8B;QAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACvE,IAAI,YAAY,IAAI,IAAI;YAAE,OAAO,YAAY,CAAC;QAE9C,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,aAAa,IAAI,IAAI,IAAI,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACzE,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB,CAAC,MAAc;QACpC,OAAO,wBAAwB,CAAC,OAAO,CACrC,MAAM,EACN,IAAI,CAAC,uBAAuB,EAC5B,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,CAClB,CAAC;IACJ,CAAC"}
|
|
@@ -4,6 +4,7 @@ export declare class GtfsScheduleData {
|
|
|
4
4
|
private readonly _trips;
|
|
5
5
|
private readonly _tripsById;
|
|
6
6
|
private readonly _calendarsById;
|
|
7
|
+
static readonly empty: GtfsScheduleData;
|
|
7
8
|
constructor(_trips: readonly GtfsScheduledTrip[], calendars: readonly GtfsCalendar[]);
|
|
8
9
|
allTrips(): readonly GtfsScheduledTrip[];
|
|
9
10
|
getTrip(gtfsTripId: string): GtfsScheduledTrip | null;
|
|
@@ -2,6 +2,7 @@ export class GtfsScheduleData {
|
|
|
2
2
|
_trips;
|
|
3
3
|
_tripsById;
|
|
4
4
|
_calendarsById;
|
|
5
|
+
static empty = GtfsScheduleData.fromTrips([]);
|
|
5
6
|
constructor(_trips, calendars) {
|
|
6
7
|
// Arguably we should be taking the map as the constructor argument because
|
|
7
8
|
// the GtfsTransferConnector operates on a map, that it converts back to an
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtfs-schedule-data.js","sourceRoot":"","sources":["../../src/data/gtfs-schedule-data.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,gBAAgB;
|
|
1
|
+
{"version":3,"file":"gtfs-schedule-data.js","sourceRoot":"","sources":["../../src/data/gtfs-schedule-data.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,gBAAgB;IAOR;IANF,UAAU,CAAiC;IAC3C,cAAc,CAA4B;IAE3D,MAAM,CAAU,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAEvD,YACmB,MAAoC,EACrD,SAAkC;QAElC,2EAA2E;QAC3E,2EAA2E;QAC3E,yEAAyE;QACzE,8BAA8B;QANb,WAAM,GAAN,MAAM,CAA8B;QAQrD,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,CACvB,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAC9C,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAC3B,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CACjE,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,UAAkB;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IACjD,CAAC;IAED,WAAW,CAAC,cAAsB;QAChC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;IACzD,CAAC;IAED,eAAe,CAAC,cAAsB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,uBAAuB,cAAc,+BAA+B,CACrE,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAmC;QAClD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACjD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QACD,OAAO,IAAI,gBAAgB,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { GtfsScheduleData } from "../data/gtfs-schedule-data.js";
|
|
2
2
|
import { GtfsStopTime } from "../data/gtfs-stop-time.js";
|
|
3
3
|
import type { GtfsScheduledTrip } from "../data/gtfs-scheduled-trip.js";
|
|
4
4
|
import type { GtfsScheduledTripServicingMovement } from "../data/gtfs-scheduled-trip-movements.js";
|
|
@@ -12,6 +12,7 @@ export type GtfsScheduledMovementsIndexEntry = {
|
|
|
12
12
|
export declare class GtfsScheduledMovementsIndex {
|
|
13
13
|
private readonly _index;
|
|
14
14
|
private readonly _rangeEncompassingAllCalendarsByStop;
|
|
15
|
+
static readonly empty: GtfsScheduledMovementsIndex;
|
|
15
16
|
private constructor();
|
|
16
17
|
getMovementsForStop(stopId: number): readonly GtfsScheduledMovementsIndexEntry[];
|
|
17
18
|
getRangeEncompassingAllCalendarsForStop(stopId: number): PlainDateRange | null;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { itsOk } from "@dan-schel/js-utils";
|
|
2
|
+
import { GtfsScheduleData } from "../data/gtfs-schedule-data.js";
|
|
2
3
|
import { GtfsStopTime } from "../data/gtfs-stop-time.js";
|
|
3
4
|
import { PlainDateRange } from "../data/plain-date-range.js";
|
|
4
5
|
export class GtfsScheduledMovementsIndex {
|
|
5
6
|
_index;
|
|
6
7
|
_rangeEncompassingAllCalendarsByStop;
|
|
8
|
+
static empty = GtfsScheduledMovementsIndex.build(GtfsScheduleData.empty);
|
|
7
9
|
constructor(_index, _rangeEncompassingAllCalendarsByStop) {
|
|
8
10
|
this._index = _index;
|
|
9
11
|
this._rangeEncompassingAllCalendarsByStop = _rangeEncompassingAllCalendarsByStop;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtfs-scheduled-movements-index.js","sourceRoot":"","sources":["../../src/departures/gtfs-scheduled-movements-index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"gtfs-scheduled-movements-index.js","sourceRoot":"","sources":["../../src/departures/gtfs-scheduled-movements-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import type { DepartureFields, DeparturesIterationDirection, DeparturesIterator, ServiceConnectionFields, ServiceFields, ServiceOriginatingMovementFields, ServicePassingMovementFields, ServiceRegularMovementFields, ServiceSource, ServiceTerminatingMovementFields } from "./corequery-types.js";
|
|
2
2
|
import type { GtfsSystem } from "./gtfs-system.js";
|
|
3
|
-
type GtfsServiceSourceFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
3
|
+
type GtfsServiceSourceFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass> = {
|
|
4
4
|
readonly sourceId: string;
|
|
5
5
|
readonly gtfsSystem: GtfsSystem;
|
|
6
6
|
buildDeparture: (fields: DepartureFields<CorequeryServiceClass>) => CorequeryDepartureClass;
|
|
7
|
-
buildService: (fields: ServiceFields<CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
7
|
+
buildService: (fields: ServiceFields<CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass>) => CorequeryServiceClass;
|
|
8
8
|
buildTags: (tags: Set<number>) => CorequeryTagsClass;
|
|
9
9
|
buildServiceOriginatingMovement: (fields: ServiceOriginatingMovementFields) => CorequeryServiceOriginatingMovementClass;
|
|
10
|
-
buildServicePassingMovement: (fields: ServicePassingMovementFields) => CorequeryServicePassingMovementClass;
|
|
11
10
|
buildServiceRegularMovement: (fields: ServiceRegularMovementFields) => CorequeryServiceRegularMovementClass;
|
|
12
11
|
buildServiceTerminatingMovement: (fields: ServiceTerminatingMovementFields) => CorequeryServiceTerminatingMovementClass;
|
|
12
|
+
buildServicePassingMovement: (fields: ServicePassingMovementFields) => CorequeryServicePassingMovementClass;
|
|
13
13
|
buildServiceConnection: (fields: ServiceConnectionFields) => CorequeryServiceConnectionClass;
|
|
14
14
|
};
|
|
15
|
-
export declare class GtfsServiceSource<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
15
|
+
export declare class GtfsServiceSource<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass> {
|
|
16
16
|
readonly sourceId: string;
|
|
17
17
|
readonly gtfsSystem: GtfsSystem;
|
|
18
18
|
private readonly _converter;
|
|
19
|
-
constructor(fields: GtfsServiceSourceFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass,
|
|
19
|
+
constructor(fields: GtfsServiceSourceFields<CorequeryDepartureClass, CorequeryServiceClass, CorequeryTagsClass, CorequeryServiceOriginatingMovementClass, CorequeryServiceRegularMovementClass, CorequeryServiceTerminatingMovementClass, CorequeryServicePassingMovementClass, CorequeryServiceConnectionClass>);
|
|
20
20
|
asCorequeryServiceSource(): ServiceSource<CorequeryDepartureClass, CorequeryServiceClass>;
|
|
21
21
|
getService(intrasourceId: string): Promise<CorequeryServiceClass | null>;
|
|
22
22
|
getDeparturesIterator(stopId: number, instant: Temporal.Instant, direction: DeparturesIterationDirection): DeparturesIterator<CorequeryDepartureClass>;
|
|
@@ -17,12 +17,15 @@ export class GtfsServiceSource {
|
|
|
17
17
|
buildService: fields.buildService,
|
|
18
18
|
buildTags: fields.buildTags,
|
|
19
19
|
buildServiceOriginatingMovement: fields.buildServiceOriginatingMovement,
|
|
20
|
-
buildServicePassingMovement: fields.buildServicePassingMovement,
|
|
21
20
|
buildServiceRegularMovement: fields.buildServiceRegularMovement,
|
|
22
21
|
buildServiceTerminatingMovement: fields.buildServiceTerminatingMovement,
|
|
22
|
+
buildServicePassingMovement: fields.buildServicePassingMovement,
|
|
23
23
|
buildServiceConnection: fields.buildServiceConnection,
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
|
+
// This function mostly just exists to ensure this class satisfies the
|
|
27
|
+
// ServiceSource interface. Consumers are still expected to call it, even
|
|
28
|
+
// though behind the scenes it's a no-op.
|
|
26
29
|
asCorequeryServiceSource() {
|
|
27
30
|
return this;
|
|
28
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtfs-service-source.js","sourceRoot":"","sources":["../src/gtfs-service-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAalD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAqD1F,MAAM,OAAO,iBAAiB;IAUnB,QAAQ,CAAS;IACjB,UAAU,CAAa;IAEf,UAAU,CASzB;IAEF,YACE,MASC;QAED,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAEhC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,CASpC;YACA,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,+BAA+B,EAAE,MAAM,CAAC,+BAA+B;YACvE,2BAA2B,EAAE,MAAM,CAAC,2BAA2B;YAC/D,
|
|
1
|
+
{"version":3,"file":"gtfs-service-source.js","sourceRoot":"","sources":["../src/gtfs-service-source.ts"],"names":[],"mappings":"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"}
|
package/dist/gtfs-system.d.ts
CHANGED
|
@@ -8,7 +8,6 @@ import type { GtfsScheduleParsingError } from "./parser/schedule/gtfs-schedule-p
|
|
|
8
8
|
import type { RealtimeDataJson } from "./data/raw/realtime-data-json.js";
|
|
9
9
|
import type { GtfsFeedCsv } from "./data/raw/schedule-csvs.js";
|
|
10
10
|
export declare class GtfsSystem {
|
|
11
|
-
private readonly _corequeryDataSourceId;
|
|
12
11
|
private readonly _lineGtfsIdMapping;
|
|
13
12
|
private readonly _stopGtfsIdMapping;
|
|
14
13
|
private readonly _lineRoutesMapping;
|
|
@@ -18,14 +17,15 @@ export declare class GtfsSystem {
|
|
|
18
17
|
private _feed;
|
|
19
18
|
private _scheduleParsingErrors;
|
|
20
19
|
private _realtimeParsingErrors;
|
|
21
|
-
constructor(
|
|
22
|
-
static build(
|
|
20
|
+
constructor(_lineGtfsIdMapping: LineGtfsIdMapping, _stopGtfsIdMapping: StopGtfsIdMapping, _lineRoutesMapping: LineRoutesMapping, _bonusLinesMapping: BonusLinesMapping, _timezoneData: TimezoneData);
|
|
21
|
+
static build(config: GtfsConfig): GtfsSystem;
|
|
23
22
|
getFeed(): GtfsFeed | null;
|
|
24
23
|
requireFeed(): GtfsFeed;
|
|
25
24
|
get realtimeParsingErrors(): import("./index.js").GtfsTripUpdateParsingError[];
|
|
26
25
|
get scheduleParsingErrors(): GtfsScheduleParsingError[];
|
|
27
26
|
onNewScheduleData(scheduleCsvs: GtfsFeedCsv, realtimeJson: RealtimeDataJson): void;
|
|
28
27
|
onNewRealtimeData(realtimeJson: RealtimeDataJson): void;
|
|
28
|
+
setFeed(feed: GtfsFeed): void;
|
|
29
29
|
private _onScheduledParsingError;
|
|
30
30
|
private _onRealtimeParsingError;
|
|
31
31
|
}
|
package/dist/gtfs-system.js
CHANGED
|
@@ -4,7 +4,6 @@ import { BonusLinesMapping } from "./data/route/bonus-lines-mapping.js";
|
|
|
4
4
|
import { LineRoutesMapping } from "./data/route/line-routes-mapping.js";
|
|
5
5
|
import { GtfsFeedParser } from "./parser/gtfs-feed-parser.js";
|
|
6
6
|
export class GtfsSystem {
|
|
7
|
-
_corequeryDataSourceId;
|
|
8
7
|
_lineGtfsIdMapping;
|
|
9
8
|
_stopGtfsIdMapping;
|
|
10
9
|
_lineRoutesMapping;
|
|
@@ -34,8 +33,7 @@ export class GtfsSystem {
|
|
|
34
33
|
_feed;
|
|
35
34
|
_scheduleParsingErrors;
|
|
36
35
|
_realtimeParsingErrors;
|
|
37
|
-
constructor(
|
|
38
|
-
this._corequeryDataSourceId = _corequeryDataSourceId;
|
|
36
|
+
constructor(_lineGtfsIdMapping, _stopGtfsIdMapping, _lineRoutesMapping, _bonusLinesMapping, _timezoneData) {
|
|
39
37
|
this._lineGtfsIdMapping = _lineGtfsIdMapping;
|
|
40
38
|
this._stopGtfsIdMapping = _stopGtfsIdMapping;
|
|
41
39
|
this._lineRoutesMapping = _lineRoutesMapping;
|
|
@@ -46,8 +44,8 @@ export class GtfsSystem {
|
|
|
46
44
|
this._scheduleParsingErrors = [];
|
|
47
45
|
this._realtimeParsingErrors = [];
|
|
48
46
|
}
|
|
49
|
-
static build(
|
|
50
|
-
return new GtfsSystem(
|
|
47
|
+
static build(config) {
|
|
48
|
+
return new GtfsSystem(LineGtfsIdMapping.build(config.lineGtfsIds), StopGtfsIdMapping.build(config.stopGtfsIds), LineRoutesMapping.build(config.lineRoutesMapping), BonusLinesMapping.build(config.bonusLinesMapping ?? {}), config.timezoneData);
|
|
51
49
|
}
|
|
52
50
|
getFeed() {
|
|
53
51
|
return this._feed;
|
|
@@ -66,7 +64,7 @@ export class GtfsSystem {
|
|
|
66
64
|
onNewScheduleData(scheduleCsvs, realtimeJson) {
|
|
67
65
|
this._scheduleParsingErrors = [];
|
|
68
66
|
this._realtimeParsingErrors = [];
|
|
69
|
-
const result = this._parser.parse(
|
|
67
|
+
const result = this._parser.parse(scheduleCsvs, realtimeJson, this._lineGtfsIdMapping, this._stopGtfsIdMapping);
|
|
70
68
|
this._feed = result;
|
|
71
69
|
}
|
|
72
70
|
onNewRealtimeData(realtimeJson) {
|
|
@@ -76,6 +74,9 @@ export class GtfsSystem {
|
|
|
76
74
|
const result = this._parser.updateWithNewRealtimeData(this._feed, realtimeJson, this._stopGtfsIdMapping);
|
|
77
75
|
this._feed = result;
|
|
78
76
|
}
|
|
77
|
+
setFeed(feed) {
|
|
78
|
+
this._feed = feed;
|
|
79
|
+
}
|
|
79
80
|
_onScheduledParsingError(error) {
|
|
80
81
|
this._scheduleParsingErrors.push(error);
|
|
81
82
|
}
|
package/dist/gtfs-system.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtfs-system.js","sourceRoot":"","sources":["../src/gtfs-system.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAM9D,MAAM,OAAO,UAAU;IA4BF;IACA;IACA;IACA;IACA;
|
|
1
|
+
{"version":3,"file":"gtfs-system.js","sourceRoot":"","sources":["../src/gtfs-system.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,6 @@ export declare class GtfsFeedParser {
|
|
|
13
13
|
private readonly _scheduleParser;
|
|
14
14
|
private readonly _realtimeParser;
|
|
15
15
|
constructor(lineRoutesMapping: LineRoutesMapping, bonusLinesMapping: BonusLinesMapping, _timezoneData: TimezoneData, _onScheduleParsingError: (error: GtfsScheduleParsingError) => void, _onRealtimeParsingError: (error: GtfsRealtimeDataParsingError) => void);
|
|
16
|
-
parse(
|
|
16
|
+
parse(scheduleCsvs: GtfsFeedCsv, realtimeJson: RealtimeDataJson, lineGtfsIdMapping: LineGtfsIdMapping, stopGtfsIdMapping: StopGtfsIdMapping): GtfsFeed;
|
|
17
17
|
updateWithNewRealtimeData(gtfsFeed: GtfsFeed, realtimeData: RealtimeDataJson, stopGtfsIdMapping: StopGtfsIdMapping): GtfsFeed;
|
|
18
18
|
}
|
|
@@ -10,10 +10,10 @@ export class GtfsFeedParser {
|
|
|
10
10
|
this._scheduleParser = new GtfsScheduleParser(lineRoutesMapping, bonusLinesMapping, _onScheduleParsingError);
|
|
11
11
|
this._realtimeParser = new GtfsRealtimeDataParser(_timezoneData.timezone, _onRealtimeParsingError);
|
|
12
12
|
}
|
|
13
|
-
parse(
|
|
13
|
+
parse(scheduleCsvs, realtimeJson, lineGtfsIdMapping, stopGtfsIdMapping) {
|
|
14
14
|
const scheduleData = this._scheduleParser.parse(scheduleCsvs, lineGtfsIdMapping, stopGtfsIdMapping);
|
|
15
15
|
const realtimeData = this._realtimeParser.parse(realtimeJson, scheduleData, stopGtfsIdMapping);
|
|
16
|
-
return GtfsFeed.fromNewScheduleData(
|
|
16
|
+
return GtfsFeed.fromNewScheduleData(scheduleData, realtimeData, this._timezoneData);
|
|
17
17
|
}
|
|
18
18
|
updateWithNewRealtimeData(gtfsFeed, realtimeData, stopGtfsIdMapping) {
|
|
19
19
|
const updatedRealtime = this._realtimeParser.parse(realtimeData, gtfsFeed.scheduleData, stopGtfsIdMapping);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtfs-feed-parser.js","sourceRoot":"","sources":["../../src/parser/gtfs-feed-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMhD,OAAO,EACL,sBAAsB,GAEvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,kBAAkB,GAEnB,MAAM,oCAAoC,CAAC;AAI5C,MAAM,OAAO,cAAc;IAON;IANF,eAAe,CAAqB;IACpC,eAAe,CAAyB;IAEzD,YACE,iBAAoC,EACpC,iBAAoC,EACnB,aAA2B,EAC5C,uBAAkE,EAClE,uBAAsE;QAFrD,kBAAa,GAAb,aAAa,CAAc;QAI5C,IAAI,CAAC,eAAe,GAAG,IAAI,kBAAkB,CAC3C,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,CACxB,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAC/C,aAAa,CAAC,QAAQ,EACtB,uBAAuB,CACxB,CAAC;IACJ,CAAC;IAED,KAAK,CACH,
|
|
1
|
+
{"version":3,"file":"gtfs-feed-parser.js","sourceRoot":"","sources":["../../src/parser/gtfs-feed-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMhD,OAAO,EACL,sBAAsB,GAEvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,kBAAkB,GAEnB,MAAM,oCAAoC,CAAC;AAI5C,MAAM,OAAO,cAAc;IAON;IANF,eAAe,CAAqB;IACpC,eAAe,CAAyB;IAEzD,YACE,iBAAoC,EACpC,iBAAoC,EACnB,aAA2B,EAC5C,uBAAkE,EAClE,uBAAsE;QAFrD,kBAAa,GAAb,aAAa,CAAc;QAI5C,IAAI,CAAC,eAAe,GAAG,IAAI,kBAAkB,CAC3C,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,CACxB,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAC/C,aAAa,CAAC,QAAQ,EACtB,uBAAuB,CACxB,CAAC;IACJ,CAAC;IAED,KAAK,CACH,YAAyB,EACzB,YAA8B,EAC9B,iBAAoC,EACpC,iBAAoC;QAEpC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAC7C,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;QACF,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAC7C,YAAY,EACZ,YAAY,EACZ,iBAAiB,CAClB,CAAC;QAEF,OAAO,QAAQ,CAAC,mBAAmB,CACjC,YAAY,EACZ,YAAY,EACZ,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;IAED,yBAAyB,CACvB,QAAkB,EAClB,YAA8B,EAC9B,iBAAoC;QAEpC,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAChD,YAAY,EACZ,QAAQ,CAAC,YAAY,EACrB,iBAAiB,CAClB,CAAC;QAEF,OAAO,QAAQ,CAAC,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC3D,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "corequery-gtfs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist"
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"build": "rm -rf dist && tsc -p tsconfig.json",
|
|
12
12
|
"test": "vitest --run",
|
|
13
13
|
"test-coverage": "vitest --run --coverage",
|
|
14
|
-
"lint": "tsc -p tsconfig.json
|
|
14
|
+
"lint": "tsc -p tsconfig.eslint.json && eslint . --max-warnings 0 && knip",
|
|
15
15
|
"format": "prettier --write .",
|
|
16
16
|
"format-check": "prettier --check .",
|
|
17
17
|
"bump-check": "bump-check --ignore \"^renovate\\/\""
|