@golemio/pid 4.3.2-dev.2136243350 → 4.3.2-rc.2136613967
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/helpers/GtfsStopParser.d.ts +0 -1
- package/dist/helpers/GtfsStopParser.js +1 -6
- package/dist/helpers/GtfsStopParser.js.map +1 -1
- package/dist/integration-engine/data-retention/helpers/SelectRepositoryFactory.js +2 -0
- package/dist/integration-engine/data-retention/helpers/SelectRepositoryFactory.js.map +1 -1
- package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.d.ts +1 -0
- package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.js +1 -0
- package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js +5 -4
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.js +2 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.js.map +1 -1
- package/dist/output-gateway/jis/controllers/v1/V1EventsController.js +1 -3
- package/dist/output-gateway/jis/controllers/v1/V1EventsController.js.map +1 -1
- package/dist/output-gateway/jis/routers/v1/V1JISRouter.js +1 -1
- package/dist/output-gateway/jis/routers/v1/V1JISRouter.js.map +1 -1
- package/dist/output-gateway/pid/controllers/v2/V2DepartureBoardsController.js +1 -3
- package/dist/output-gateway/pid/controllers/v2/V2DepartureBoardsController.js.map +1 -1
- package/dist/output-gateway/pid/controllers/v3/V3InfotextsController.js +1 -3
- package/dist/output-gateway/pid/controllers/v3/V3InfotextsController.js.map +1 -1
- package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js +4 -6
- package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js.map +1 -1
- package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.d.ts +1 -4
- package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js +7 -24
- package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js.map +1 -1
- package/dist/output-gateway/pid/helpers/TransferBoardFilter.d.ts +0 -3
- package/dist/output-gateway/pid/helpers/TransferBoardFilter.js +0 -17
- package/dist/output-gateway/pid/helpers/TransferBoardFilter.js.map +1 -1
- package/dist/output-gateway/pid/index.d.ts +0 -7
- package/dist/output-gateway/pid/index.js.map +1 -1
- package/dist/output-gateway/pid/routers/v2/V2PIDRouter.js +2 -2
- package/dist/output-gateway/pid/routers/v2/V2PIDRouter.js.map +1 -1
- package/dist/output-gateway/pid/service/facade/TransferFacade.d.ts +4 -24
- package/dist/output-gateway/pid/service/facade/TransferFacade.js +0 -171
- package/dist/output-gateway/pid/service/facade/TransferFacade.js.map +1 -1
- package/dist/output-gateway/public/controllers/v2/V2PublicDepartureBoardsController.js +1 -3
- package/dist/output-gateway/public/controllers/v2/V2PublicDepartureBoardsController.js.map +1 -1
- package/dist/output-gateway/public/controllers/v2/V2PublicGtfsController.js +3 -5
- package/dist/output-gateway/public/controllers/v2/V2PublicGtfsController.js.map +1 -1
- package/dist/output-gateway/public/controllers/v2/V2PublicVehiclePositionsController.js +4 -7
- package/dist/output-gateway/public/controllers/v2/V2PublicVehiclePositionsController.js.map +1 -1
- package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.d.ts +0 -2
- package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.js +0 -44
- package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.js.map +1 -1
- package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.d.ts +1 -1
- package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.js +20 -16
- package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.js.map +1 -1
- package/dist/output-gateway/ropid-gtfs/routers/v2/V2GTFSRouter.js +39 -48
- package/dist/output-gateway/ropid-gtfs/routers/v2/V2GTFSRouter.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/routers/v2/V2VehiclePositionsRouter.js +13 -16
- package/dist/output-gateway/vehicle-positions/routers/v2/V2VehiclePositionsRouter.js.map +1 -1
- package/docs/implementation_documentation.md +2 -2
- package/package.json +2 -2
|
@@ -4,8 +4,6 @@ exports.GtfsStopParser = void 0;
|
|
|
4
4
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
5
5
|
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
6
6
|
const const_1 = require("../const");
|
|
7
|
-
const aswNodeMatch = /\d+/;
|
|
8
|
-
const nonNumericRegExp = /[^\d]+/g;
|
|
9
7
|
class GtfsStopParser {
|
|
10
8
|
static isValidInteger(value) {
|
|
11
9
|
return value >= const_1.PG_INT_MIN && value <= const_1.PG_INT_MAX;
|
|
@@ -37,13 +35,10 @@ class GtfsStopParser {
|
|
|
37
35
|
}
|
|
38
36
|
static normalizedStopId(stopId) {
|
|
39
37
|
return stopId
|
|
40
|
-
.split(
|
|
38
|
+
.split(/[^\d]/g)
|
|
41
39
|
.filter((s) => !!s.length)
|
|
42
40
|
.join("/");
|
|
43
41
|
}
|
|
44
|
-
static normalizedNodeId(stopId) {
|
|
45
|
-
return (aswNodeMatch.exec(stopId) || [])[0] ?? "";
|
|
46
|
-
}
|
|
47
42
|
}
|
|
48
43
|
exports.GtfsStopParser = GtfsStopParser;
|
|
49
44
|
//# sourceMappingURL=GtfsStopParser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GtfsStopParser.js","sourceRoot":"","sources":["../../src/helpers/GtfsStopParser.ts"],"names":[],"mappings":";;;AAAA,6EAAwE;AACxE,mEAA8E;AAC9E,oCAAmD;AAEnD,
|
|
1
|
+
{"version":3,"file":"GtfsStopParser.js","sourceRoot":"","sources":["../../src/helpers/GtfsStopParser.ts"],"names":[],"mappings":";;;AAAA,6EAAwE;AACxE,mEAA8E;AAC9E,oCAAmD;AAEnD,MAAa,cAAc;IACf,MAAM,CAAC,cAAc,CAAC,KAAa;QACvC,OAAO,KAAK,IAAI,kBAAU,IAAI,KAAK,IAAI,kBAAU,CAAC;IACtD,CAAC;IAEM,MAAM,CAAC,sBAAsB,CAAC,MAAgB;QACjD,IAAI,eAAe,GAAmB,EAAE,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YACxB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAChE,IAAI,CAAC,OAAO,EAAE;gBACV,SAAS;aACZ;YACD,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;YAExD,eAAe,CAAC,IAAI,CAChB,qBAAS,CAAC,GAAG,CACT,qBAAS,CAAC,KAAK,CAAC,qBAAS,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAC3D,SAAS,IAAI,qBAAS,CAAC,KAAK,CAAC,qBAAS,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAC7E,CACJ,CAAC;SACL;QACD,OAAO,eAAe,CAAC;IAC3B,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,KAAa,EAAE,MAAc,EAAE,MAAe;QACvE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YACzG,MAAM,IAAI,6BAAY,CAAC,mBAAmB,KAAK,EAAE,EAAE,cAAc,CAAC,WAAW,CAAC,IAAI,EAAE,mBAAmB,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC;SACxH;IACL,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,KAAa;QAInC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAClC,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,KAAa;QACxC,OAAO,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,MAAc;QACzC,OAAO,MAAM;aACR,KAAK,CAAC,QAAQ,CAAC;aACf,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;aACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;CACJ;AAlDD,wCAkDC"}
|
|
@@ -29,6 +29,8 @@ class SelectRepositoryFactory {
|
|
|
29
29
|
return new CisStopRepository_1.CisStopRepository();
|
|
30
30
|
case RepositoryTableNameEnum_1.RepositoryTableName.StopTimesHistory:
|
|
31
31
|
return new StopTimesHistoryRepository_1.StopTimesHistoryRepository();
|
|
32
|
+
case RepositoryTableNameEnum_1.RepositoryTableName.Descriptor:
|
|
33
|
+
return Di_1.VPContainer.resolve(VPContainerToken_1.VPContainerToken.DescriptorRepository);
|
|
32
34
|
case RepositoryTableNameEnum_1.RepositoryTableName.Metro:
|
|
33
35
|
return new MetroRunsMessagesRepository_1.MetroRunsMessagesRepository();
|
|
34
36
|
case RepositoryTableNameEnum_1.RepositoryTableName.RegionalBus:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectRepositoryFactory.js","sourceRoot":"","sources":["../../../../src/integration-engine/data-retention/helpers/SelectRepositoryFactory.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AAEpE,uDAA2D;AAC3D,mFAA8E;AAC9E,uHAAkH;AAClH,yIAAoI;AACpI,yIAAoI;AACpI,iIAA4H;AAC5H,6EAAwE;AAExE,gHAA6G;AAC7G,8HAA2H;AAC3H,0IAAuI;
|
|
1
|
+
{"version":3,"file":"SelectRepositoryFactory.js","sourceRoot":"","sources":["../../../../src/integration-engine/data-retention/helpers/SelectRepositoryFactory.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AAEpE,uDAA2D;AAC3D,mFAA8E;AAC9E,uHAAkH;AAClH,yIAAoI;AACpI,yIAAoI;AACpI,iIAA4H;AAC5H,6EAAwE;AAExE,gHAA6G;AAC7G,8HAA2H;AAC3H,0IAAuI;AAEvI,2HAAwH;AAExH,0FAAmF;AAEnF,MAAa,uBAAuB;IACzB,MAAM,CAAC,IAAyB;QACnC,QAAQ,IAAI,EAAE;YACV,KAAK,6CAAmB,CAAC,KAAK;gBAC1B,OAAO,gBAAW,CAAC,OAAO,CAAkB,mCAAgB,CAAC,cAAc,CAAC,CAAC;YACjF,KAAK,6CAAmB,CAAC,YAAY;gBACjC,OAAO,IAAI,+CAAsB,EAAE,CAAC;YACxC,KAAK,6CAAmB,CAAC,SAAS;gBAC9B,OAAO,IAAI,yCAAmB,EAAE,CAAC;YACrC,KAAK,6CAAmB,CAAC,gBAAgB;gBACrC,OAAO,IAAI,uDAA0B,EAAE,CAAC;YAC5C,KAAK,6CAAmB,CAAC,QAAQ;gBAC7B,OAAO,IAAI,qCAAiB,EAAE,CAAC;YACnC,KAAK,6CAAmB,CAAC,gBAAgB;gBACrC,OAAO,IAAI,uDAA0B,EAAE,CAAC;YAC5C,KAAK,6CAAmB,CAAC,UAAU;gBAC/B,OAAO,gBAAW,CAAC,OAAO,CAAuB,mCAAgB,CAAC,oBAAoB,CAAC,CAAC;YAC5F,KAAK,6CAAmB,CAAC,KAAK;gBAC1B,OAAO,IAAI,yDAA2B,EAAE,CAAC;YAC7C,KAAK,6CAAmB,CAAC,WAAW;gBAChC,OAAO,IAAI,qEAAiC,EAAE,CAAC;YACnD,KAAK,6CAAmB,CAAC,UAAU;gBAC/B,OAAO,IAAI,2CAAoB,EAAE,CAAC;YACtC,KAAK,6CAAmB,CAAC,IAAI;gBACzB,OAAO,gBAAW,CAAC,OAAO,CAAuB,2CAAoB,CAAC,mBAAmB,CAAC,CAAC;YAC/F;gBACI,MAAM,IAAI,6BAAY,CAAC,4BAA4B,CAAC,CAAC;SAC5D;IACL,CAAC;IAEM,6BAA6B,CAAC,IAAyB;QAC1D,QAAQ,IAAI,EAAE;YACV,KAAK,6CAAmB,CAAC,KAAK;gBAC1B,OAAO,mBAAmB,CAAC;YAC/B,KAAK,6CAAmB,CAAC,WAAW;gBAChC,OAAO,mBAAmB,CAAC;YAC/B,KAAK,6CAAmB,CAAC,UAAU;gBAC/B,OAAO,oBAAoB,CAAC;YAChC;gBACI,OAAO,EAAE,CAAC;SACjB;IACL,CAAC;CACJ;AA1CD,0DA0CC"}
|
package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare enum RepositoryTableName {
|
|
|
5
5
|
PositionsHistory = "PositionsHistoryRepository",
|
|
6
6
|
CisStops = "CisStopRepository",
|
|
7
7
|
StopTimesHistory = "StopTimesHistoryRepository",
|
|
8
|
+
Descriptor = "DescriptorRepository",
|
|
8
9
|
Metro = "MetroRunsMessagesRepository",
|
|
9
10
|
RegionalBus = "RegionalBusRunsMessagesRepository",
|
|
10
11
|
CommonRuns = "CommonRunsRepository",
|
|
@@ -9,6 +9,7 @@ var RepositoryTableName;
|
|
|
9
9
|
RepositoryTableName["PositionsHistory"] = "PositionsHistoryRepository";
|
|
10
10
|
RepositoryTableName["CisStops"] = "CisStopRepository";
|
|
11
11
|
RepositoryTableName["StopTimesHistory"] = "StopTimesHistoryRepository";
|
|
12
|
+
RepositoryTableName["Descriptor"] = "DescriptorRepository";
|
|
12
13
|
RepositoryTableName["Metro"] = "MetroRunsMessagesRepository";
|
|
13
14
|
RepositoryTableName["RegionalBus"] = "RegionalBusRunsMessagesRepository";
|
|
14
15
|
RepositoryTableName["CommonRuns"] = "CommonRunsRepository";
|
package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepositoryTableNameEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"RepositoryTableNameEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,mBAYX;AAZD,WAAY,mBAAmB;IAC3B,gDAAyB,CAAA;IACzB,8DAAuC,CAAA;IACvC,wDAAiC,CAAA;IACjC,sEAA+C,CAAA;IAC/C,qDAA8B,CAAA;IAC9B,sEAA+C,CAAA;IAC/C,0DAAmC,CAAA;IACnC,4DAAqC,CAAA;IACrC,wEAAiD,CAAA;IACjD,0DAAmC,CAAA;IACnC,mDAA4B,CAAA;AAChC,CAAC,EAZW,mBAAmB,mCAAnB,mBAAmB,QAY9B"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { GTFSRouteTypeEnum } from "../../../../../helpers/RouteTypeEnums";
|
|
2
2
|
import { DescriptorModel } from "../../../../../schema-definitions/vehicle-descriptors/models";
|
|
3
|
+
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
3
4
|
import { IDescriptorOutputDto } from "../../../../../schema-definitions/vehicle-descriptors/models/interfaces";
|
|
4
5
|
import { ILogger } from "@golemio/core/dist/helpers/logger/LoggerProvider";
|
|
5
|
-
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
6
6
|
export declare class DescriptorRepository extends PostgresModel implements IModel {
|
|
7
7
|
private logger;
|
|
8
8
|
private static REPOSITORY_NAME;
|
|
9
9
|
constructor(logger: ILogger);
|
|
10
10
|
findAccessDescByRegistrationNumbers(registrationNumbers: number[], gtfsRouteType: GTFSRouteTypeEnum): Promise<DescriptorModel[]>;
|
|
11
|
-
|
|
11
|
+
saveData(descriptors: IDescriptorOutputDto[]): Promise<void>;
|
|
12
12
|
deleteNHoursOldData: (hours: number) => Promise<number>;
|
|
13
13
|
}
|
|
@@ -37,15 +37,14 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
37
37
|
var DescriptorRepository_1;
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.DescriptorRepository = void 0;
|
|
40
|
-
const RepositoryUtils_1 = require("../../../../shared/RepositoryUtils");
|
|
41
40
|
const const_1 = require("../../../../../schema-definitions/const");
|
|
42
41
|
const models_1 = require("../../../../../schema-definitions/vehicle-descriptors/models");
|
|
43
|
-
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
44
42
|
const models_2 = require("@golemio/core/dist/integration-engine/models");
|
|
45
43
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
46
44
|
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
47
45
|
const sequelize_1 = __importStar(require("@golemio/core/dist/shared/sequelize"));
|
|
48
46
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
47
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
49
48
|
let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1 = class DescriptorRepository extends models_2.PostgresModel {
|
|
50
49
|
constructor(logger) {
|
|
51
50
|
super(DescriptorRepository_1.REPOSITORY_NAME, {
|
|
@@ -84,7 +83,7 @@ let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1
|
|
|
84
83
|
throw new golemio_errors_1.GeneralError("findAccessDescByRegistrationNumbers: failed to get descriptors", this.name, err);
|
|
85
84
|
}
|
|
86
85
|
}
|
|
87
|
-
async
|
|
86
|
+
async saveData(descriptors) {
|
|
88
87
|
let transaction;
|
|
89
88
|
try {
|
|
90
89
|
await this.validate(descriptors);
|
|
@@ -98,8 +97,10 @@ let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1
|
|
|
98
97
|
await transaction?.commit();
|
|
99
98
|
}
|
|
100
99
|
catch (err) {
|
|
100
|
+
const exception = new golemio_errors_1.GeneralError(`[${this.constructor.name}] Could not save data: ${err.message}`, this.constructor.name, err);
|
|
101
|
+
this.logger.error(exception);
|
|
101
102
|
await transaction?.rollback();
|
|
102
|
-
|
|
103
|
+
throw exception;
|
|
103
104
|
}
|
|
104
105
|
}
|
|
105
106
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DescriptorRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"DescriptorRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,7 @@ let RefreshDescriptorsTask = exports.RefreshDescriptorsTask = class RefreshDescr
|
|
|
41
41
|
this.logger.warn(`${this.queueName}: no descriptors out of ${descriptorsResult.length} were transformed or were filtered out`);
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
44
|
-
await this.descriptorRepository.
|
|
44
|
+
await this.descriptorRepository.saveData(descriptorsFiltered);
|
|
45
45
|
this.logger.info(`${this.queueName}: ${descriptorsFiltered.length}/${descriptorsResult.length} vehicle descriptors were saved`);
|
|
46
46
|
}
|
|
47
47
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshDescriptorsTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oEAA8E;
|
|
1
|
+
{"version":3,"file":"RefreshDescriptorsTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oEAA8E;AAG9E,8EAA0E;AAC1E,6FAA0F;AAC1F,iEAAwE;AACxE,4CAA2C;AAC3C,8EAA2E;AAC3E,4FAA6G;AAE7G,0FAAuF;AAGhF,IAAM,sBAAsB,oCAA5B,MAAM,sBAAuB,SAAQ,sCAAiB;IAIzD,YAEI,iBAAsD,EAEtD,gBAA2C,EAE3C,oBAAkD,EAElD,wBAA0D,EAC3B,MAAuB;QAEtD,KAAK,CAAC,uBAAW,CAAC,CAAC;QATX,sBAAiB,GAAjB,iBAAiB,CAA6B;QAE9C,qBAAgB,GAAhB,gBAAgB,CAAmB;QAEnC,yBAAoB,GAApB,oBAAoB,CAAsB;QAE1C,6BAAwB,GAAxB,wBAAwB,CAA0B;QACnB,WAAM,GAAN,MAAM,CAAS;QAZ1C,cAAS,GAAG,oBAAoB,CAAC;QACjC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;IAcxD,CAAC;IAES,KAAK,CAAC,OAAO;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,gDAAkB,CAAC,cAAc,CAAC,CAAC;QAC3F,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QACpD,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAChG,MAAM,mBAAmB,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAExG,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,SAAS,2BAA2B,iBAAiB,CAAC,MAAM,wCAAwC,CAC/G,CAAC;YACF,OAAO;SACV;QAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,SAAS,KAAK,mBAAmB,CAAC,MAAM,IAAI,iBAAiB,CAAC,MAAM,iCAAiC,CAChH,CAAC;IACN,CAAC;CACJ,CAAA;iCApCY,sBAAsB;IADlC,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,2BAA2B,CAAC,CAAA;IAEpD,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,gBAAgB,CAAC,CAAA;IAEzC,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,oBAAoB,CAAC,CAAA;IAE7C,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,wBAAwB,CAAC,CAAA;IAEjD,WAAA,IAAA,iBAAM,EAAC,+BAAc,CAAC,MAAM,CAAC,CAAA;qCAPH,yDAA2B,UAIxB,2CAAoB;QAEhB,mDAAwB;GAZrD,sBAAsB,CAoClC"}
|
|
@@ -30,17 +30,13 @@ let PublicStopTimeCacheRepository = exports.PublicStopTimeCacheRepository = Publ
|
|
|
30
30
|
this.log = log;
|
|
31
31
|
}
|
|
32
32
|
async createOrUpdate(data, ttlInSeconds) {
|
|
33
|
-
let currentStopTimes;
|
|
34
|
-
let currentTripId;
|
|
35
33
|
try {
|
|
36
|
-
for (const
|
|
37
|
-
currentStopTimes = stopTimes;
|
|
38
|
-
currentTripId = id;
|
|
34
|
+
for (const stopTimes of data.values()) {
|
|
39
35
|
await this.validator.Validate(stopTimes);
|
|
40
36
|
}
|
|
41
37
|
}
|
|
42
38
|
catch (err) {
|
|
43
|
-
throw new golemio_errors_1.GeneralError(`PublicStopTimeCacheRepository: data validation failed: ${err.message}`, this.constructor.name,
|
|
39
|
+
throw new golemio_errors_1.GeneralError(`PublicStopTimeCacheRepository: data validation failed: ${err.message}`, this.constructor.name, err);
|
|
44
40
|
}
|
|
45
41
|
try {
|
|
46
42
|
const stringifiedData = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicStopTimeCacheRepository.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8FAA6F;AAE7F,oJAAiH;AAEjH,wEAAqE;AACrE,wFAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAClF,iEAAwE;AAGjE,IAAM,6BAA6B,6EAAnC,MAAM,6BAA8B,SAAQ,uBAAU;IAGzD,YAA8C,GAAY;QACtD,KAAK,CACD,+BAA+B,EAC/B;YACI,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,+BAA6B,CAAC,gBAAgB;SACzD,EACD,IAAI,uCAAmB,CAAC,+BAA+B,EAAE,2DAA4B,CAAC,CACzF,CAAC;QARwC,QAAG,GAAH,GAAG,CAAS;IAS1D,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,IAA4C,EAAE,YAAoB;QAC1F,IAAI
|
|
1
|
+
{"version":3,"file":"PublicStopTimeCacheRepository.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,16 +20,14 @@ const JISEventsCustomFormatTransformation_1 = require("../../transformations/JIS
|
|
|
20
20
|
const monitoring_1 = require("@golemio/core/dist/monitoring");
|
|
21
21
|
const EventsDto_1 = require("../../dto/EventsDto");
|
|
22
22
|
const shared_1 = require("../../../shared");
|
|
23
|
-
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
24
23
|
let V1EventsController = exports.V1EventsController = class V1EventsController {
|
|
25
24
|
constructor(jisEventsRepository, eventsCustomFormatTransformation) {
|
|
26
25
|
this.jisEventsRepository = jisEventsRepository;
|
|
27
26
|
this.eventsCustomFormatTransformation = eventsCustomFormatTransformation;
|
|
28
27
|
this.getAllEventsInCustomFormat = async (req, res, next) => {
|
|
29
28
|
const span = (0, monitoring_1.createChildSpan)("V1EventsController.getAllEventsInCustomFormat");
|
|
30
|
-
const queryData = (0, express_validator_1.matchedData)(req);
|
|
31
29
|
try {
|
|
32
|
-
const { displayPeriodEnd, displayPeriodStart, organizationNames } = shared_1.RopidRouterUtils.mapObjectToDTOInstance(EventsDto_1.EventsCustomFormatQueryDto,
|
|
30
|
+
const { displayPeriodEnd, displayPeriodStart, organizationNames } = shared_1.RopidRouterUtils.mapObjectToDTOInstance(EventsDto_1.EventsCustomFormatQueryDto, req.query);
|
|
33
31
|
const events = await this.jisEventsRepository.getAllForCustomFormat(organizationNames, displayPeriodStart, displayPeriodEnd);
|
|
34
32
|
const transformedEvents = this.eventsCustomFormatTransformation.transformArray(events);
|
|
35
33
|
return res.status(200).json(transformedEvents);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V1EventsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/jis/controllers/v1/V1EventsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qDAAoD;AACpD,iEAAwE;AAExE,+EAA4E;AAC5E,mHAAkH;AAClH,8DAAgE;AAChE,mDAAmE;AACnE,4CAA8C;
|
|
1
|
+
{"version":3,"file":"V1EventsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/jis/controllers/v1/V1EventsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qDAAoD;AACpD,iEAAwE;AAExE,+EAA4E;AAC5E,mHAAkH;AAClH,8DAAgE;AAChE,mDAAmE;AACnE,4CAA8C;AAGvC,IAAM,kBAAkB,gCAAxB,MAAM,kBAAkB;IAC3B,YAC4C,mBAAgD,EAExF,gCAA6E;QAF7B,wBAAmB,GAAnB,mBAAmB,CAAqB;QAEhF,qCAAgC,GAAhC,gCAAgC,CAAqC;QAG1E,+BAA0B,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACzE,MAAM,IAAI,GAAG,IAAA,4BAAe,EAAC,+CAA+C,CAAC,CAAC;YAC9E,IAAI;gBACA,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,yBAAgB,CAAC,sBAAsB,CACvG,sCAA0B,EAC1B,GAAG,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAC/D,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,CACnB,CAAC;gBACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,gCAAgC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAEvF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;aAClD;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;oBAAS;gBACN,IAAI,EAAE,GAAG,EAAE,CAAC;aACf;QACL,CAAC,CAAC;IAvBC,CAAC;CAwBP,CAAA;6BA7BY,kBAAkB;IAD9B,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,CAAA;IACtC,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,mCAAmC,CAAC,CAAA;qCADc,yCAAmB;QAE9C,yEAAmC;GAJxE,kBAAkB,CA6B9B"}
|
|
@@ -17,7 +17,7 @@ class V1JISRouter extends AbstractRouter_1.AbstractRouter {
|
|
|
17
17
|
this.router.get("/events/custom-format", [
|
|
18
18
|
(0, express_validator_1.query)("displayPeriodStart").optional().isISO8601(),
|
|
19
19
|
(0, express_validator_1.query)("displayPeriodEnd").optional().isISO8601(),
|
|
20
|
-
(0, express_validator_1.query)("organizationNames").optional().isArray(),
|
|
20
|
+
(0, express_validator_1.query)("organizationNames[]").optional().isArray(),
|
|
21
21
|
], Validation_1.checkErrors,
|
|
22
22
|
// // max-age 5 seconds, stale-while-revalidate 5 seconds
|
|
23
23
|
this.cacheHeaderMiddleware.getMiddleware(5, 5), this.eventsController.getAllEventsInCustomFormat);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V1JISRouter.js","sourceRoot":"","sources":["../../../../../src/output-gateway/jis/routers/v1/V1JISRouter.ts"],"names":[],"mappings":";;;AACA,qCAAgD;AAChD,qDAAoD;AACpD,yDAAoD;AACpD,sFAAmF;AAEnF,+DAAuE;AACvE,6EAA2E;AAC3E,+DAA2D;AAC3D,mFAAoE;AAEpE,MAAa,WAAY,SAAQ,+BAAc;IAK3C;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QALlB,WAAM,GAAW,IAAA,gBAAM,GAAE,CAAC;QAUhC,eAAU,GAAG,GAAS,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,uBAAuB,EACvB;gBACI,IAAA,yBAAK,EAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE;gBAClD,IAAA,yBAAK,EAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE;gBAChD,IAAA,yBAAK,EAAC,
|
|
1
|
+
{"version":3,"file":"V1JISRouter.js","sourceRoot":"","sources":["../../../../../src/output-gateway/jis/routers/v1/V1JISRouter.ts"],"names":[],"mappings":";;;AACA,qCAAgD;AAChD,qDAAoD;AACpD,yDAAoD;AACpD,sFAAmF;AAEnF,+DAAuE;AACvE,6EAA2E;AAC3E,+DAA2D;AAC3D,mFAAoE;AAEpE,MAAa,WAAY,SAAQ,+BAAc;IAK3C;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QALlB,WAAM,GAAW,IAAA,gBAAM,GAAE,CAAC;QAUhC,eAAU,GAAG,GAAS,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,uBAAuB,EACvB;gBACI,IAAA,yBAAK,EAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE;gBAClD,IAAA,yBAAK,EAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE;gBAChD,IAAA,yBAAK,EAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE;aACpD,EACD,wBAAW;YACX,yDAAyD;YACzD,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9C,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CACnD,CAAC;QACN,CAAC,CAAC;QAjBE,IAAI,CAAC,gBAAgB,GAAG,mBAAc,CAAC,OAAO,CAAqB,uBAAU,CAAC,kBAAkB,CAAC,CAAC;QAClG,IAAI,CAAC,qBAAqB,GAAG,mBAAc,CAAC,OAAO,CAAwB,oBAAc,CAAC,qBAAqB,CAAC,CAAC;QACjH,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;CAeJ;AAzBD,kCAyBC;AAED,MAAM,WAAW,GAAmB,IAAI,WAAW,EAAE,CAAC;AAE7C,kCAAW"}
|
|
@@ -9,12 +9,10 @@ const PIDDepartureBoardsModel_1 = require("../../models/PIDDepartureBoardsModel"
|
|
|
9
9
|
const shared_1 = require("../../../shared");
|
|
10
10
|
const trace_provider_1 = require("@golemio/core/dist/monitoring/opentelemetry/trace-provider");
|
|
11
11
|
const moment_timezone_1 = __importDefault(require("@golemio/core/dist/shared/moment-timezone"));
|
|
12
|
-
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
13
12
|
class V2DepartureBoardsController {
|
|
14
13
|
constructor() {
|
|
15
14
|
this.getDepartureBoard = async (req, res, next) => {
|
|
16
|
-
const
|
|
17
|
-
const query = shared_1.RopidRouterUtils.mapObjectToDTOInstance(dto_1.DepartureBoardsQueryDTO, queryData);
|
|
15
|
+
const query = shared_1.RopidRouterUtils.mapObjectToDTOInstance(dto_1.DepartureBoardsQueryDTO, req.query);
|
|
18
16
|
const preferredTimezone = shared_1.RopidRouterUtils.getPreferredTimezone(query.preferredTimezone);
|
|
19
17
|
// datetime is valid ISO 8601 (by express validator)
|
|
20
18
|
// it matches:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2DepartureBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v2/V2DepartureBoardsController.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAkF;AAClF,kFAAiF;AACjF,4CAA8C;AAC9C,+FAA6F;AAE7F,gGAA2E;
|
|
1
|
+
{"version":3,"file":"V2DepartureBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v2/V2DepartureBoardsController.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAkF;AAClF,kFAAiF;AACjF,4CAA8C;AAC9C,+FAA6F;AAE7F,gGAA2E;AAE3E,MAAa,2BAA2B;IAGpC;QAIO,sBAAiB,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAChE,MAAM,KAAK,GAAG,yBAAgB,CAAC,sBAAsB,CAAC,6BAAuB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1F,MAAM,iBAAiB,GAAG,yBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAEzF,oDAAoD;YACpD,cAAc;YACd,uBAAuB;YACvB,0BAA0B;YAC1B,yBAAyB;YACzB,4BAA4B;YAC5B,MAAM,qBAAqB,GAAW,uDAAuD,CAAC;YAC9F,+DAA+D;YAC/D,MAAM,QAAQ,GAAuB,KAAK,CAAC,QAAQ;gBAC/C,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC;oBACzC,CAAC,CAAC,IAAA,yBAAM,EAAC,KAAK,CAAC,QAAQ,CAAC;oBACxB,CAAC,CAAC,yBAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,IAAI,GAAG,IAAA,gCAAe,EAAC,+CAA+C,CAAC,CAAC;YAC9E,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;oBAChD,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,KAAK,CAAC,GAAG;oBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,aAAa,EAAE,KAAK,CAAC,aAAa;oBAClC,QAAQ;oBACR,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;oBACjC,QAAQ,EAAE,iBAAiB;oBAC3B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,YAAY,EAAE,KAAK,CAAC,YAAY;iBACnC,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,yBAAgB,CAAC,sBAAsB,CAAC,gCAA0B,EAAE,IAAI,CAAC,CAAC,CAAC;aACnG;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;oBAAS;gBACN,IAAI,EAAE,GAAG,EAAE,CAAC;aACf;QACL,CAAC,CAAC;QAhDE,IAAI,CAAC,oBAAoB,GAAG,IAAI,iDAAuB,EAAE,CAAC;IAC9D,CAAC;CAgDJ;AArDD,kEAqDC"}
|
|
@@ -18,15 +18,13 @@ const InfotextFacade_1 = require("../../service/facade/InfotextFacade");
|
|
|
18
18
|
const trace_provider_1 = require("@golemio/core/dist/monitoring/opentelemetry/trace-provider");
|
|
19
19
|
const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
20
20
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
21
|
-
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
22
21
|
let V3InfotextsController = exports.V3InfotextsController = class V3InfotextsController {
|
|
23
22
|
constructor(infotextFacade) {
|
|
24
23
|
this.infotextFacade = infotextFacade;
|
|
25
24
|
this.getJisInfotexts = async (req, res, next) => {
|
|
26
25
|
const span = (0, trace_provider_1.createChildSpan)("V3InfotextsController.getJisInfotexts");
|
|
27
|
-
const queryData = (0, express_validator_1.matchedData)(req);
|
|
28
26
|
try {
|
|
29
|
-
const outputDto = await this.infotextFacade.getInfotextsForOverview((0, output_gateway_1.parseBooleanQueryParam)(
|
|
27
|
+
const outputDto = await this.infotextFacade.getInfotextsForOverview((0, output_gateway_1.parseBooleanQueryParam)(req.query.includeFuture));
|
|
30
28
|
return res.status(200).send(outputDto);
|
|
31
29
|
}
|
|
32
30
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V3InfotextsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3InfotextsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qDAAoD;AACpD,wEAAuE;AACvE,+FAA6F;AAC7F,sEAA2E;AAE3E,iEAAwE;
|
|
1
|
+
{"version":3,"file":"V3InfotextsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3InfotextsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qDAAoD;AACpD,wEAAuE;AACvE,+FAA6F;AAC7F,sEAA2E;AAE3E,iEAAwE;AAGjE,IAAM,qBAAqB,mCAA3B,MAAM,qBAAqB;IAC9B,YAA+C,cAAsC;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAE9E,oBAAe,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC9D,MAAM,IAAI,GAAG,IAAA,gCAAe,EAAC,uCAAuC,CAAC,CAAC;YAEtE,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAC/D,IAAA,uCAAsB,EAAC,GAAG,CAAC,KAAK,CAAC,aAAuB,CAAC,CAC5D,CAAC;gBACF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC1C;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;oBAAS;gBACN,IAAI,EAAE,GAAG,EAAE,CAAC;aACf;QACL,CAAC,CAAC;IAhBsF,CAAC;CAiB5F,CAAA;gCAlBY,qBAAqB;IADjC,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,cAAc,CAAC,CAAA;qCAAyB,+BAAc;GAD5E,qBAAqB,CAkBjC"}
|
|
@@ -25,17 +25,15 @@ const trace_provider_1 = require("@golemio/core/dist/monitoring/opentelemetry/tr
|
|
|
25
25
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
26
26
|
const moment_timezone_1 = __importDefault(require("@golemio/core/dist/shared/moment-timezone"));
|
|
27
27
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
28
|
-
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
29
28
|
let V3TransferBoardsController = exports.V3TransferBoardsController = class V3TransferBoardsController {
|
|
30
29
|
constructor(stopFacade, infotextFacade, transferFacade) {
|
|
31
30
|
this.stopFacade = stopFacade;
|
|
32
31
|
this.infotextFacade = infotextFacade;
|
|
33
32
|
this.transferFacade = transferFacade;
|
|
34
33
|
this.getTransferDepartures = async (req, res, next) => {
|
|
35
|
-
const queryData = (0, express_validator_1.matchedData)(req);
|
|
36
34
|
const span = (0, trace_provider_1.createChildSpan)("V3TransferBoardsController.getTransferDepartures");
|
|
37
|
-
const cisId =
|
|
38
|
-
const tripNumber =
|
|
35
|
+
const cisId = req.query.cisId;
|
|
36
|
+
const tripNumber = req.query.tripNumber ?? null;
|
|
39
37
|
span?.setAttributes({ cisId, tripNumber });
|
|
40
38
|
// Additional type check for query string parameters
|
|
41
39
|
if (!this.isValidQueryStringParam(cisId)) {
|
|
@@ -47,8 +45,8 @@ let V3TransferBoardsController = exports.V3TransferBoardsController = class V3Tr
|
|
|
47
45
|
const currentMoment = (0, moment_timezone_1.default)();
|
|
48
46
|
let timeFrom = null;
|
|
49
47
|
let minutesOffset = 0;
|
|
50
|
-
if (
|
|
51
|
-
timeFrom = moment_timezone_1.default.tz(
|
|
48
|
+
if (req.query.timeFrom) {
|
|
49
|
+
timeFrom = moment_timezone_1.default.tz(req.query.timeFrom, RopidRouterUtils_1.RopidRouterUtils.TIMEZONE);
|
|
52
50
|
minutesOffset = timeFrom.diff(currentMoment, "minutes");
|
|
53
51
|
}
|
|
54
52
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V3TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3TransferBoardsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,qDAAoD;AACpD,wEAAuE;AACvE,gEAA+D;AAC/D,wEAAuE;AACvE,uEAA+D;AAC/D,+FAA6F;AAE7F,6EAAwE;AACxE,gGAA2E;AAE3E,iEAAwE;
|
|
1
|
+
{"version":3,"file":"V3TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3TransferBoardsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,qDAAoD;AACpD,wEAAuE;AACvE,gEAA+D;AAC/D,wEAAuE;AACvE,uEAA+D;AAC/D,+FAA6F;AAE7F,6EAAwE;AACxE,gGAA2E;AAE3E,iEAAwE;AAIjE,IAAM,0BAA0B,wCAAhC,MAAM,0BAA0B;IACnC,YACmC,UAA8B,EAC1B,cAAsC,EACtC,cAAsC;QAFlC,eAAU,GAAV,UAAU,CAAY;QAClB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,mBAAc,GAAd,cAAc,CAAgB;QAGtE,0BAAqB,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACpE,MAAM,IAAI,GAAG,IAAA,gCAAe,EAAC,kDAAkD,CAAC,CAAC;YAEjF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9B,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC;YAChD,IAAI,EAAE,aAAa,CAAC,EAAE,KAAK,EAAE,UAAU,EAAgB,CAAC,CAAC;YAEzD,oDAAoD;YACpD,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE;gBACtC,OAAO,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC,CAAC;aAC3E;iBAAM,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,EAAE;gBAChE,OAAO,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC,CAAC;aAChF;YAED,MAAM,aAAa,GAAG,IAAA,yBAAM,GAAE,CAAC;YAC/B,IAAI,QAAQ,GAAkB,IAAI,CAAC;YACnC,IAAI,aAAa,GAAG,CAAC,CAAC;YAEtB,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACpB,QAAQ,GAAG,yBAAM,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAkB,EAAE,mCAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC9E,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;aAC3D;YAED,IAAI;gBACA,oBAAoB;gBACpB,IAAI,OAAO,GAAa,EAAE,CAAC;gBAC3B,IAAI;oBACA,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;iBACtE;gBAAC,OAAO,KAAK,EAAE;oBACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;oBAC7B,MAAM,KAAK,CAAC;iBACf;gBACD,YAAY;gBAEZ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACxB,UAAU,EAAE,EAAE;wBACd,SAAS,EAAE,EAAE;qBAChB,CAAC,CAAC;iBACN;gBAED,2CAA2C;gBAC3C,IAAI,mBAAmB,GAAyB,EAAE,CAAC;gBACnD,IAAI,kBAAkB,GAAiC,EAAE,CAAC;gBAC1D,IAAI;oBACA,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;wBAC9C,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,CAAC;wBAC5F,IAAI,CAAC,cAAc,CAAC,6BAA6B,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC;qBACtF,CAAC,CAAC;oBAEH,mBAAmB,GAAG,UAAU,CAAC;oBACjC,kBAAkB,GAAG,SAAS,CAAC;iBAClC;gBAAC,OAAO,KAAK,EAAE;oBACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;oBAC7B,MAAM,KAAK,CAAC;iBACf;gBACD,YAAY;gBAEZ,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACxB,UAAU,EAAE,mBAAmB;oBAC/B,SAAS,EAAE,kBAAkB;iBAChC,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;oBAAS;gBACN,IAAI,EAAE,GAAG,EAAE,CAAC;aACf;QACL,CAAC,CAAC;QAEM,8BAAyB,GAAG,CAAC,YAAoB,EAAE,IAAsB,EAAgB,EAAE;YAC/F,MAAM,SAAS,GAAG,IAAI,6BAAY,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YACxF,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;YACjC,OAAO,SAAS,CAAC;QACrB,CAAC,CAAC;QAEM,4BAAuB,GAAG,CAAC,KAAuB,EAAmB,EAAE;YAC3E,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC;QACrC,CAAC,CAAC;IA/EC,CAAC;CAgFP,CAAA;qCArFY,0BAA0B;IADtC,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,UAAU,CAAC,CAAA;IAC7B,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,cAAc,CAAC,CAAA;IACjC,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,cAAc,CAAC,CAAA;qCAFiB,uBAAU;QACF,+BAAc;QACd,+BAAc;GAJpE,0BAA0B,CAqFtC"}
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
/// <reference types="express" />
|
|
2
|
-
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
3
2
|
import { InfotextFacade } from "../../service/facade/InfotextFacade";
|
|
4
3
|
import { StopFacade } from "../../service/facade/StopFacade";
|
|
5
4
|
import { TransferFacade } from "../../service/facade/TransferFacade";
|
|
6
5
|
import { RequestHandler } from "@golemio/core/dist/shared/express";
|
|
7
6
|
import { TransferDepartureCacheTransformation } from "../../service/transformations/TransferDepartureCacheTransformation";
|
|
8
7
|
export declare class V4TransferBoardsController {
|
|
9
|
-
private config;
|
|
10
8
|
private stopFacade;
|
|
11
9
|
private infotextFacade;
|
|
12
10
|
private transferFacade;
|
|
13
11
|
private transformation;
|
|
14
12
|
private static readonly NO_TRANSFERS;
|
|
15
13
|
private readonly defaultTransferBoardsLimit;
|
|
16
|
-
|
|
17
|
-
constructor(config: ISimpleConfig, stopFacade: StopFacade, infotextFacade: InfotextFacade, transferFacade: TransferFacade, transformation: TransferDepartureCacheTransformation);
|
|
14
|
+
constructor(stopFacade: StopFacade, infotextFacade: InfotextFacade, transferFacade: TransferFacade, transformation: TransferDepartureCacheTransformation);
|
|
18
15
|
getTransferBoardData: RequestHandler;
|
|
19
16
|
private accessibilityForStops;
|
|
20
17
|
private enhanceWithTimeAndInfo;
|
|
@@ -19,7 +19,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
19
19
|
exports.V4TransferBoardsController = void 0;
|
|
20
20
|
const TransferBoardFilter_1 = require("../../helpers/TransferBoardFilter");
|
|
21
21
|
const TransferBoardSorter_1 = require("../../helpers/TransferBoardSorter");
|
|
22
|
-
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
23
22
|
const OgPidToken_1 = require("../../ioc/OgPidToken");
|
|
24
23
|
const InfotextFacade_1 = require("../../service/facade/InfotextFacade");
|
|
25
24
|
const StopFacade_1 = require("../../service/facade/StopFacade");
|
|
@@ -33,24 +32,20 @@ const DepartureCalculator_1 = require("../../../shared/DepartureCalculator");
|
|
|
33
32
|
const GtfsStopParser_1 = require("../../../../helpers/GtfsStopParser");
|
|
34
33
|
const DepartureBoardMapper_1 = __importDefault(require("../../helpers/DepartureBoardMapper"));
|
|
35
34
|
const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
|
|
36
|
-
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
37
35
|
const DEFAULT_TRANSFER_BOARDS_LIMIT = 8;
|
|
38
|
-
const DEFAULT_PREVIOUS_STOPS_TO_ALLOW = "0";
|
|
39
36
|
const METRO_TRAIN_ACCESSIBILITY = true; // metro trains are always considered wheelchair accessible vehicle
|
|
40
37
|
const DEFAULT_VEHICLE_ACCESSIBILITY = null; // unknown, possibly due to not knowing the vehicle running the trip
|
|
41
38
|
let V4TransferBoardsController = exports.V4TransferBoardsController = V4TransferBoardsController_1 = class V4TransferBoardsController {
|
|
42
|
-
constructor(
|
|
43
|
-
this.config = config;
|
|
39
|
+
constructor(stopFacade, infotextFacade, transferFacade, transformation) {
|
|
44
40
|
this.stopFacade = stopFacade;
|
|
45
41
|
this.infotextFacade = infotextFacade;
|
|
46
42
|
this.transferFacade = transferFacade;
|
|
47
43
|
this.transformation = transformation;
|
|
48
44
|
this.defaultTransferBoardsLimit = DEFAULT_TRANSFER_BOARDS_LIMIT;
|
|
49
45
|
this.getTransferBoardData = async (req, res, next) => {
|
|
50
|
-
const queryData = (0, express_validator_1.matchedData)(req);
|
|
51
46
|
const span = (0, trace_provider_1.createChildSpan)("V4TransferBoardsController.getTransferBoardData");
|
|
52
47
|
try {
|
|
53
|
-
const params = this.parseTransferBoardsParams(
|
|
48
|
+
const params = this.parseTransferBoardsParams(req.query);
|
|
54
49
|
span?.setAttributes(Object.fromEntries(Object.entries(params).filter(([_, value]) => value !== null)));
|
|
55
50
|
const now = new Date();
|
|
56
51
|
let timeFrom = null;
|
|
@@ -110,16 +105,6 @@ let V4TransferBoardsController = exports.V4TransferBoardsController = V4Transfer
|
|
|
110
105
|
transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.minimalTransferTime(transferCacheDto.transfers, transferCacheDto.delayedTimeFrom);
|
|
111
106
|
TransferBoardSorter_1.TransferBoardSorter.sortDepartures(transferCacheDto.transfers);
|
|
112
107
|
transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.sameStopNameTransfer(transferCacheDto.transfers, transferStop, sameNameStopIds);
|
|
113
|
-
const tripIdsToReadStopsUsingDelay = new Set(TransferBoardFilter_1.TransferBoardFilter.filterOutKeepAlwaysTransfer(transferCacheDto.transfers).map((transfer) => transfer.departure.trip_id));
|
|
114
|
-
const stopTimeIdsTuples = transferCacheDto.transfers.reduce((prev, t) => {
|
|
115
|
-
if (tripIdsToReadStopsUsingDelay.has(t.departure.trip_id) && t.position?.vehicle_id != null) {
|
|
116
|
-
tripIdsToReadStopsUsingDelay.delete(t.departure.trip_id);
|
|
117
|
-
prev.push([t.position.vehicle_id, t.departure.trip_id]);
|
|
118
|
-
}
|
|
119
|
-
return prev;
|
|
120
|
-
}, []);
|
|
121
|
-
const tripIdsToKeep = new Set(await this.transferFacade.findRelevantTripIdsFromLines(tripIdsToReadStopsUsingDelay, transferCacheDto.currentStop, transferCacheDto.currentTripId, stopTimeIdsTuples, this.countPreviousStopsToAllow));
|
|
122
|
-
transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.keepAlwaysLinesAndTripIds(transferCacheDto.transfers, tripIdsToKeep);
|
|
123
108
|
const transformedData = this.transformation.transformArray(transferCacheDto.transfers);
|
|
124
109
|
const filteredData = TransferBoardFilter_1.TransferBoardFilter.filterDepartures(transformedData, params.limit, transferCacheDto.delayedTimeFrom.getTime(), now.getTime());
|
|
125
110
|
const output = {
|
|
@@ -139,7 +124,6 @@ let V4TransferBoardsController = exports.V4TransferBoardsController = V4Transfer
|
|
|
139
124
|
span?.end();
|
|
140
125
|
}
|
|
141
126
|
};
|
|
142
|
-
this.countPreviousStopsToAllow = parseInt(config.getValue("env.VEHICLE_POSITIONS_COUNT_PREVIOUS_STOPS_TO_ALLOW", DEFAULT_PREVIOUS_STOPS_TO_ALLOW));
|
|
143
127
|
}
|
|
144
128
|
accessibilityForStops(stopsInfo) {
|
|
145
129
|
const accessibilityStopIdsMap = new Map();
|
|
@@ -187,12 +171,11 @@ let V4TransferBoardsController = exports.V4TransferBoardsController = V4Transfer
|
|
|
187
171
|
V4TransferBoardsController.NO_TRANSFERS = { departures: [], infotexts: [] };
|
|
188
172
|
exports.V4TransferBoardsController = V4TransferBoardsController = V4TransferBoardsController_1 = __decorate([
|
|
189
173
|
(0, tsyringe_1.injectable)(),
|
|
190
|
-
__param(0, (0, tsyringe_1.inject)(
|
|
191
|
-
__param(1, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.
|
|
192
|
-
__param(2, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.
|
|
193
|
-
__param(3, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.
|
|
194
|
-
|
|
195
|
-
__metadata("design:paramtypes", [Object, StopFacade_1.StopFacade,
|
|
174
|
+
__param(0, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.StopFacade)),
|
|
175
|
+
__param(1, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.InfotextFacade)),
|
|
176
|
+
__param(2, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.TransferFacade)),
|
|
177
|
+
__param(3, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.TransferDepartureCacheTransformation)),
|
|
178
|
+
__metadata("design:paramtypes", [StopFacade_1.StopFacade,
|
|
196
179
|
InfotextFacade_1.InfotextFacade,
|
|
197
180
|
TransferFacade_1.TransferFacade,
|
|
198
181
|
TransferDepartureCacheTransformation_1.TransferDepartureCacheTransformation])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V4TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v4/V4TransferBoardsController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAEA,2EAA0E;AAC1E,2EAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"V4TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v4/V4TransferBoardsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,6 @@ import { IStopCacheDto } from "../../../schema-definitions/ropid-gtfs/interfaces
|
|
|
2
2
|
import { IDepartureWithPosition, IV4TransferDepartureOutputDto } from "../index";
|
|
3
3
|
export declare class TransferBoardFilter {
|
|
4
4
|
static filterDepartures(transfers: IV4TransferDepartureOutputDto[], limit: number, arrivalTimeMs: number, requestTimeFromMs: number): IV4TransferDepartureOutputDto[];
|
|
5
|
-
private static shouldKeepTransferAlways;
|
|
6
|
-
static filterOutKeepAlwaysTransfer(transfers: IDepartureWithPosition[]): IDepartureWithPosition[];
|
|
7
|
-
static keepAlwaysLinesAndTripIds(transfers: IDepartureWithPosition[], tripIdsToKeep: Set<string>): IDepartureWithPosition[];
|
|
8
5
|
static minimalTransferTime(transfers: IDepartureWithPosition[], delayedTimeFrom: Date): IDepartureWithPosition[];
|
|
9
6
|
static sameStopNameTransfer(transfers: IDepartureWithPosition[], currentStop: IStopCacheDto, allowedStopIds: string[]): IDepartureWithPosition[];
|
|
10
7
|
private static isInRange;
|
|
@@ -24,12 +24,6 @@ const DIFFERENT_STOP_NAME_ALLOWED = new Map([
|
|
|
24
24
|
[RouteTypeEnums_1.GTFSRouteTypeEnum.TRAM, false],
|
|
25
25
|
[RouteTypeEnums_1.GTFSRouteTypeEnum.TROLLEYBUS, false],
|
|
26
26
|
]);
|
|
27
|
-
const TRANSFER_LINE_TYPES_TO_KEEP = new Set([
|
|
28
|
-
RouteTypeEnums_1.GTFSRouteTypeEnum.FERRY,
|
|
29
|
-
RouteTypeEnums_1.GTFSRouteTypeEnum.FUNICULAR,
|
|
30
|
-
RouteTypeEnums_1.GTFSRouteTypeEnum.METRO,
|
|
31
|
-
RouteTypeEnums_1.GTFSRouteTypeEnum.TRAIN,
|
|
32
|
-
]);
|
|
33
27
|
const ONE_HOUR_IN_MS = 60 * 60 * 1000;
|
|
34
28
|
class TransferBoardFilter {
|
|
35
29
|
static filterDepartures(transfers, limit, arrivalTimeMs, requestTimeFromMs) {
|
|
@@ -54,17 +48,6 @@ class TransferBoardFilter {
|
|
|
54
48
|
// Departures are already sorted so that metro ones are first
|
|
55
49
|
return filteredDepartures;
|
|
56
50
|
}
|
|
57
|
-
static shouldKeepTransferAlways(transfer) {
|
|
58
|
-
return TRANSFER_LINE_TYPES_TO_KEEP.has(transfer.departure.route_type);
|
|
59
|
-
}
|
|
60
|
-
static filterOutKeepAlwaysTransfer(transfers) {
|
|
61
|
-
return transfers.filter((t) => !TransferBoardFilter.shouldKeepTransferAlways(t));
|
|
62
|
-
}
|
|
63
|
-
static keepAlwaysLinesAndTripIds(transfers, tripIdsToKeep) {
|
|
64
|
-
return transfers.filter((t) => {
|
|
65
|
-
return TransferBoardFilter.shouldKeepTransferAlways(t) || tripIdsToKeep.has(t.departure.trip_id);
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
51
|
static minimalTransferTime(transfers, delayedTimeFrom) {
|
|
69
52
|
const arrivalTime = delayedTimeFrom.getTime();
|
|
70
53
|
return transfers.filter((t) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransferBoardFilter.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/helpers/TransferBoardFilter.ts"],"names":[],"mappings":";;;AAAA,oEAAyD;AACzD,oEAA4D;AAI5D,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C,MAAM,iBAAiB,GAAmC,IAAI,GAAG,CAAC;IAC9D,CAAC,kCAAiB,CAAC,GAAG,EAAE,KAAM,CAAC;IAC/B,CAAC,kCAAiB,CAAC,iBAAiB,EAAE,KAAM,CAAC;IAC7C,CAAC,kCAAiB,CAAC,KAAK,EAAE,MAAO,CAAC;IAClC,CAAC,kCAAiB,CAAC,SAAS,EAAE,MAAO,CAAC;IACtC,CAAC,kCAAiB,CAAC,KAAK,EAAE,MAAO,CAAC;IAClC,CAAC,kCAAiB,CAAC,KAAK,EAAE,MAAO,CAAC;IAClC,CAAC,kCAAiB,CAAC,IAAI,EAAE,KAAM,CAAC;IAChC,CAAC,kCAAiB,CAAC,UAAU,EAAE,KAAM,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,
|
|
1
|
+
{"version":3,"file":"TransferBoardFilter.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/helpers/TransferBoardFilter.ts"],"names":[],"mappings":"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"}
|