@golemio/pid 4.3.2 → 5.0.0-rc.2149588470

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.
Files changed (54) hide show
  1. package/dist/helpers/GtfsStopParser.d.ts +1 -0
  2. package/dist/helpers/GtfsStopParser.js +6 -1
  3. package/dist/helpers/GtfsStopParser.js.map +1 -1
  4. package/dist/integration-engine/data-retention/helpers/SelectRepositoryFactory.js +0 -2
  5. package/dist/integration-engine/data-retention/helpers/SelectRepositoryFactory.js.map +1 -1
  6. package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.d.ts +0 -1
  7. package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.js +0 -1
  8. package/dist/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.js.map +1 -1
  9. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.d.ts +2 -2
  10. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js +4 -5
  11. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js.map +1 -1
  12. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.js +1 -1
  13. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.js.map +1 -1
  14. package/dist/output-gateway/jis/controllers/v1/V1EventsController.js +3 -1
  15. package/dist/output-gateway/jis/controllers/v1/V1EventsController.js.map +1 -1
  16. package/dist/output-gateway/jis/routers/v1/V1JISRouter.js +1 -1
  17. package/dist/output-gateway/jis/routers/v1/V1JISRouter.js.map +1 -1
  18. package/dist/output-gateway/pid/controllers/v2/V2DepartureBoardsController.js +3 -1
  19. package/dist/output-gateway/pid/controllers/v2/V2DepartureBoardsController.js.map +1 -1
  20. package/dist/output-gateway/pid/controllers/v3/V3InfotextsController.js +3 -1
  21. package/dist/output-gateway/pid/controllers/v3/V3InfotextsController.js.map +1 -1
  22. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js +6 -4
  23. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js.map +1 -1
  24. package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.d.ts +4 -1
  25. package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js +24 -7
  26. package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js.map +1 -1
  27. package/dist/output-gateway/pid/helpers/TransferBoardFilter.d.ts +3 -0
  28. package/dist/output-gateway/pid/helpers/TransferBoardFilter.js +17 -0
  29. package/dist/output-gateway/pid/helpers/TransferBoardFilter.js.map +1 -1
  30. package/dist/output-gateway/pid/index.d.ts +7 -0
  31. package/dist/output-gateway/pid/index.js.map +1 -1
  32. package/dist/output-gateway/pid/routers/v2/V2PIDRouter.js +2 -2
  33. package/dist/output-gateway/pid/routers/v2/V2PIDRouter.js.map +1 -1
  34. package/dist/output-gateway/pid/service/facade/TransferFacade.d.ts +26 -4
  35. package/dist/output-gateway/pid/service/facade/TransferFacade.js +214 -0
  36. package/dist/output-gateway/pid/service/facade/TransferFacade.js.map +1 -1
  37. package/dist/output-gateway/public/controllers/v2/V2PublicDepartureBoardsController.js +3 -1
  38. package/dist/output-gateway/public/controllers/v2/V2PublicDepartureBoardsController.js.map +1 -1
  39. package/dist/output-gateway/public/controllers/v2/V2PublicGtfsController.js +5 -3
  40. package/dist/output-gateway/public/controllers/v2/V2PublicGtfsController.js.map +1 -1
  41. package/dist/output-gateway/public/controllers/v2/V2PublicVehiclePositionsController.js +7 -4
  42. package/dist/output-gateway/public/controllers/v2/V2PublicVehiclePositionsController.js.map +1 -1
  43. package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.d.ts +2 -0
  44. package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.js +44 -0
  45. package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.js.map +1 -1
  46. package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.d.ts +1 -1
  47. package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.js +16 -20
  48. package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.js.map +1 -1
  49. package/dist/output-gateway/ropid-gtfs/routers/v2/V2GTFSRouter.js +48 -39
  50. package/dist/output-gateway/ropid-gtfs/routers/v2/V2GTFSRouter.js.map +1 -1
  51. package/dist/output-gateway/vehicle-positions/routers/v2/V2VehiclePositionsRouter.js +16 -13
  52. package/dist/output-gateway/vehicle-positions/routers/v2/V2VehiclePositionsRouter.js.map +1 -1
  53. package/docs/implementation_documentation.md +2 -2
  54. package/package.json +3 -3
@@ -6,4 +6,5 @@ export declare class GtfsStopParser {
6
6
  private static parseAswId;
7
7
  static getAswNodeFromId(aswId: string): string;
8
8
  static normalizedStopId(stopId: string): string;
9
+ static normalizedNodeId(stopId: string): string;
9
10
  }
@@ -4,6 +4,8 @@ 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;
7
9
  class GtfsStopParser {
8
10
  static isValidInteger(value) {
9
11
  return value >= const_1.PG_INT_MIN && value <= const_1.PG_INT_MAX;
@@ -35,10 +37,13 @@ class GtfsStopParser {
35
37
  }
36
38
  static normalizedStopId(stopId) {
37
39
  return stopId
38
- .split(/[^\d]/g)
40
+ .split(nonNumericRegExp)
39
41
  .filter((s) => !!s.length)
40
42
  .join("/");
41
43
  }
44
+ static normalizedNodeId(stopId) {
45
+ return (aswNodeMatch.exec(stopId) || [])[0] ?? "";
46
+ }
42
47
  }
43
48
  exports.GtfsStopParser = GtfsStopParser;
44
49
  //# 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,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"}
1
+ {"version":3,"file":"GtfsStopParser.js","sourceRoot":"","sources":["../../src/helpers/GtfsStopParser.ts"],"names":[],"mappings":";;;AAAA,6EAAwE;AACxE,mEAA8E;AAC9E,oCAAmD;AAEnD,MAAM,YAAY,GAAG,KAAK,CAAC;AAC3B,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEnC,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,gBAAgB,CAAC;aACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;aACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,MAAc;QACzC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;CACJ;AAtDD,wCAsDC"}
@@ -29,8 +29,6 @@ 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);
34
32
  case RepositoryTableNameEnum_1.RepositoryTableName.Metro:
35
33
  return new MetroRunsMessagesRepository_1.MetroRunsMessagesRepository();
36
34
  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;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"}
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;AACvI,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,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;AAxCD,0DAwCC"}
@@ -5,7 +5,6 @@ export declare enum RepositoryTableName {
5
5
  PositionsHistory = "PositionsHistoryRepository",
6
6
  CisStops = "CisStopRepository",
7
7
  StopTimesHistory = "StopTimesHistoryRepository",
8
- Descriptor = "DescriptorRepository",
9
8
  Metro = "MetroRunsMessagesRepository",
10
9
  RegionalBus = "RegionalBusRunsMessagesRepository",
11
10
  CommonRuns = "CommonRunsRepository",
@@ -9,7 +9,6 @@ var RepositoryTableName;
9
9
  RepositoryTableName["PositionsHistory"] = "PositionsHistoryRepository";
10
10
  RepositoryTableName["CisStops"] = "CisStopRepository";
11
11
  RepositoryTableName["StopTimesHistory"] = "StopTimesHistoryRepository";
12
- RepositoryTableName["Descriptor"] = "DescriptorRepository";
13
12
  RepositoryTableName["Metro"] = "MetroRunsMessagesRepository";
14
13
  RepositoryTableName["RegionalBus"] = "RegionalBusRunsMessagesRepository";
15
14
  RepositoryTableName["CommonRuns"] = "CommonRunsRepository";
@@ -1 +1 @@
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
+ {"version":3,"file":"RepositoryTableNameEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/data-retention/workers/constants/RepositoryTableNameEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,mBAWX;AAXD,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,4DAAqC,CAAA;IACrC,wEAAiD,CAAA;IACjD,0DAAmC,CAAA;IACnC,mDAA4B,CAAA;AAChC,CAAC,EAXW,mBAAmB,mCAAnB,mBAAmB,QAW9B"}
@@ -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";
4
3
  import { IDescriptorOutputDto } from "../../../../../schema-definitions/vehicle-descriptors/models/interfaces";
5
4
  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
- saveData(descriptors: IDescriptorOutputDto[]): Promise<void>;
11
+ refreshData(descriptors: IDescriptorOutputDto[]): Promise<void>;
12
12
  deleteNHoursOldData: (hours: number) => Promise<number>;
13
13
  }
@@ -37,14 +37,15 @@ 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");
40
41
  const const_1 = require("../../../../../schema-definitions/const");
41
42
  const models_1 = require("../../../../../schema-definitions/vehicle-descriptors/models");
43
+ const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
42
44
  const models_2 = require("@golemio/core/dist/integration-engine/models");
43
45
  const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
44
46
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
45
47
  const sequelize_1 = __importStar(require("@golemio/core/dist/shared/sequelize"));
46
48
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
47
- const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
48
49
  let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1 = class DescriptorRepository extends models_2.PostgresModel {
49
50
  constructor(logger) {
50
51
  super(DescriptorRepository_1.REPOSITORY_NAME, {
@@ -83,7 +84,7 @@ let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1
83
84
  throw new golemio_errors_1.GeneralError("findAccessDescByRegistrationNumbers: failed to get descriptors", this.name, err);
84
85
  }
85
86
  }
86
- async saveData(descriptors) {
87
+ async refreshData(descriptors) {
87
88
  let transaction;
88
89
  try {
89
90
  await this.validate(descriptors);
@@ -97,10 +98,8 @@ let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1
97
98
  await transaction?.commit();
98
99
  }
99
100
  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);
102
101
  await transaction?.rollback();
103
- throw exception;
102
+ RepositoryUtils_1.RepositoryUtils.mapSequelizeError(err, this.constructor.name, "refreshData");
104
103
  }
105
104
  }
106
105
  };
@@ -1 +1 @@
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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"}
1
+ {"version":3,"file":"DescriptorRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wEAA6D;AAC7D,mEAAuC;AACvC,yFAAkE;AAElE,wEAAqE;AAErE,yEAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAClF,iFAAiF;AACjF,iEAAwE;AAGjE,IAAM,oBAAoB,2DAA1B,MAAM,oBAAqB,SAAQ,sBAAa;IAGnD,YAAsC,MAAuB;QACzD,KAAK,CACD,sBAAoB,CAAC,eAAe,EACpC;YACI,WAAW,EAAE,wBAAe,CAAC,SAAS;YACtC,QAAQ,EAAE,iBAAS;YACnB,yBAAyB,EAAE,wBAAe,CAAC,cAAc;YACzD,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,sBAAoB,CAAC,eAAe,GAAG,WAAW,EAAE,wBAAe,CAAC,eAAe,CAAC,CAC/G,CAAC;QAVwC,WAAM,GAAN,MAAM,CAAS;QAkDtD,wBAAmB,GAAG,KAAK,EAAE,KAAa,EAAmB,EAAE;YAClE,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,KAAK,EAAE;wBACH,UAAU,EAAE;4BACR,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,mBAAS,CAAC,OAAO,CAAC,qBAAqB,KAAK,SAAS,CAAC;yBAClE;qBACJ;iBACJ,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,8BAA8B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACtF;QACL,CAAC,CAAC;IAnDF,CAAC;IAEM,KAAK,CAAC,mCAAmC,CAC5C,mBAA6B,EAC7B,aAAgC;QAEhC,IAAI;YACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAkB;gBACtD,UAAU,EAAE,CAAC,0BAA0B,EAAE,qBAAqB,CAAC;gBAC/D,KAAK,EAAE;oBACH,mBAAmB,EAAE,mBAAmB;oBACxC,eAAe,EAAE,aAAa;iBACjC;aACJ,CAAC,CAAC;SACN;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,6BAAY,CAAC,gEAAgE,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;SAC5G;IACL,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,WAAmC;QACxD,IAAI,WAAoC,CAAC;QAEzC,IAAI;YACA,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAEjC,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;YACjE,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC9D,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAkB,WAAW,EAAE;gBAC/D,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,KAAK;gBAChB,WAAW;aACd,CAAC,CAAC;YACH,MAAM,WAAW,EAAE,MAAM,EAAE,CAAC;SAC/B;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,WAAW,EAAE,QAAQ,EAAE,CAAC;YAC9B,iCAAe,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;SAChF;IACL,CAAC;;AAlDc,oCAAe,GAAG,wBAAwB,AAA3B,CAA4B;+BADjD,oBAAoB;IADhC,IAAA,qBAAU,GAAE;IAII,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;;GAH5B,oBAAoB,CAkEhC"}
@@ -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.saveData(descriptorsFiltered);
44
+ await this.descriptorRepository.refreshData(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;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"}
1
+ {"version":3,"file":"RefreshDescriptorsTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oEAA8E;AAE9E,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,WAAW,CAAC,mBAAmB,CAAC,CAAC;QACjE,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"}
@@ -20,14 +20,16 @@ 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");
23
24
  let V1EventsController = exports.V1EventsController = class V1EventsController {
24
25
  constructor(jisEventsRepository, eventsCustomFormatTransformation) {
25
26
  this.jisEventsRepository = jisEventsRepository;
26
27
  this.eventsCustomFormatTransformation = eventsCustomFormatTransformation;
27
28
  this.getAllEventsInCustomFormat = async (req, res, next) => {
28
29
  const span = (0, monitoring_1.createChildSpan)("V1EventsController.getAllEventsInCustomFormat");
30
+ const queryData = (0, express_validator_1.matchedData)(req);
29
31
  try {
30
- const { displayPeriodEnd, displayPeriodStart, organizationNames } = shared_1.RopidRouterUtils.mapObjectToDTOInstance(EventsDto_1.EventsCustomFormatQueryDto, req.query);
32
+ const { displayPeriodEnd, displayPeriodStart, organizationNames } = shared_1.RopidRouterUtils.mapObjectToDTOInstance(EventsDto_1.EventsCustomFormatQueryDto, queryData);
31
33
  const events = await this.jisEventsRepository.getAllForCustomFormat(organizationNames, displayPeriodStart, displayPeriodEnd);
32
34
  const transformedEvents = this.eventsCustomFormatTransformation.transformArray(events);
33
35
  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;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"}
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;AAC9C,mFAA0E;AAGnE,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,MAAM,SAAS,GAAG,IAAA,+BAAW,EAAC,GAAG,CAAC,CAAC;YACnC,IAAI;gBACA,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,yBAAgB,CAAC,sBAAsB,CACvG,sCAA0B,EAC1B,SAAS,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;IAxBC,CAAC;CAyBP,CAAA;6BA9BY,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,CA8B9B"}
@@ -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,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"}
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,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE;aAClD,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,10 +9,12 @@ 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");
12
13
  class V2DepartureBoardsController {
13
14
  constructor() {
14
15
  this.getDepartureBoard = async (req, res, next) => {
15
- const query = shared_1.RopidRouterUtils.mapObjectToDTOInstance(dto_1.DepartureBoardsQueryDTO, req.query);
16
+ const queryData = (0, express_validator_1.matchedData)(req);
17
+ const query = shared_1.RopidRouterUtils.mapObjectToDTOInstance(dto_1.DepartureBoardsQueryDTO, queryData);
16
18
  const preferredTimezone = shared_1.RopidRouterUtils.getPreferredTimezone(query.preferredTimezone);
17
19
  // datetime is valid ISO 8601 (by express validator)
18
20
  // 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;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"}
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;AAC3E,mFAA0E;AAC1E,MAAa,2BAA2B;IAGpC;QAIO,sBAAiB,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAChE,MAAM,SAAS,GAAG,IAAA,+BAAW,EAAC,GAAG,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,yBAAgB,CAAC,sBAAsB,CAAC,6BAAuB,EAAE,SAAS,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;QAjDE,IAAI,CAAC,oBAAoB,GAAG,IAAI,iDAAuB,EAAE,CAAC;IAC9D,CAAC;CAiDJ;AAtDD,kEAsDC"}
@@ -18,13 +18,15 @@ 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");
21
22
  let V3InfotextsController = exports.V3InfotextsController = class V3InfotextsController {
22
23
  constructor(infotextFacade) {
23
24
  this.infotextFacade = infotextFacade;
24
25
  this.getJisInfotexts = async (req, res, next) => {
25
26
  const span = (0, trace_provider_1.createChildSpan)("V3InfotextsController.getJisInfotexts");
27
+ const queryData = (0, express_validator_1.matchedData)(req);
26
28
  try {
27
- const outputDto = await this.infotextFacade.getInfotextsForOverview((0, output_gateway_1.parseBooleanQueryParam)(req.query.includeFuture));
29
+ const outputDto = await this.infotextFacade.getInfotextsForOverview((0, output_gateway_1.parseBooleanQueryParam)(queryData.includeFuture));
28
30
  return res.status(200).send(outputDto);
29
31
  }
30
32
  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;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"}
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;AACxE,mFAA0E;AAEnE,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;YACtE,MAAM,SAAS,GAAG,IAAA,+BAAW,EAAC,GAAG,CAAC,CAAC;YAEnC,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAC/D,IAAA,uCAAsB,EAAC,SAAS,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;IAjBsF,CAAC;CAkB5F,CAAA;gCAnBY,qBAAqB;IADjC,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,cAAc,CAAC,CAAA;qCAAyB,+BAAc;GAD5E,qBAAqB,CAmBjC"}
@@ -25,15 +25,17 @@ 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");
28
29
  let V3TransferBoardsController = exports.V3TransferBoardsController = class V3TransferBoardsController {
29
30
  constructor(stopFacade, infotextFacade, transferFacade) {
30
31
  this.stopFacade = stopFacade;
31
32
  this.infotextFacade = infotextFacade;
32
33
  this.transferFacade = transferFacade;
33
34
  this.getTransferDepartures = async (req, res, next) => {
35
+ const queryData = (0, express_validator_1.matchedData)(req);
34
36
  const span = (0, trace_provider_1.createChildSpan)("V3TransferBoardsController.getTransferDepartures");
35
- const cisId = req.query.cisId;
36
- const tripNumber = req.query.tripNumber ?? null;
37
+ const cisId = queryData.cisId;
38
+ const tripNumber = queryData.tripNumber ?? null;
37
39
  span?.setAttributes({ cisId, tripNumber });
38
40
  // Additional type check for query string parameters
39
41
  if (!this.isValidQueryStringParam(cisId)) {
@@ -45,8 +47,8 @@ let V3TransferBoardsController = exports.V3TransferBoardsController = class V3Tr
45
47
  const currentMoment = (0, moment_timezone_1.default)();
46
48
  let timeFrom = null;
47
49
  let minutesOffset = 0;
48
- if (req.query.timeFrom) {
49
- timeFrom = moment_timezone_1.default.tz(req.query.timeFrom, RopidRouterUtils_1.RopidRouterUtils.TIMEZONE);
50
+ if (queryData.timeFrom) {
51
+ timeFrom = moment_timezone_1.default.tz(queryData.timeFrom, RopidRouterUtils_1.RopidRouterUtils.TIMEZONE);
50
52
  minutesOffset = timeFrom.diff(currentMoment, "minutes");
51
53
  }
52
54
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"V3TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3TransferBoardsController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V3TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3TransferBoardsController.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,20 @@
1
1
  /// <reference types="express" />
2
+ import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
2
3
  import { InfotextFacade } from "../../service/facade/InfotextFacade";
3
4
  import { StopFacade } from "../../service/facade/StopFacade";
4
5
  import { TransferFacade } from "../../service/facade/TransferFacade";
5
6
  import { RequestHandler } from "@golemio/core/dist/shared/express";
6
7
  import { TransferDepartureCacheTransformation } from "../../service/transformations/TransferDepartureCacheTransformation";
7
8
  export declare class V4TransferBoardsController {
9
+ private config;
8
10
  private stopFacade;
9
11
  private infotextFacade;
10
12
  private transferFacade;
11
13
  private transformation;
12
14
  private static readonly NO_TRANSFERS;
13
15
  private readonly defaultTransferBoardsLimit;
14
- constructor(stopFacade: StopFacade, infotextFacade: InfotextFacade, transferFacade: TransferFacade, transformation: TransferDepartureCacheTransformation);
16
+ private countPreviousStopsToAllow;
17
+ constructor(config: ISimpleConfig, stopFacade: StopFacade, infotextFacade: InfotextFacade, transferFacade: TransferFacade, transformation: TransferDepartureCacheTransformation);
15
18
  getTransferBoardData: RequestHandler;
16
19
  private accessibilityForStops;
17
20
  private enhanceWithTimeAndInfo;
@@ -19,6 +19,7 @@ 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");
22
23
  const OgPidToken_1 = require("../../ioc/OgPidToken");
23
24
  const InfotextFacade_1 = require("../../service/facade/InfotextFacade");
24
25
  const StopFacade_1 = require("../../service/facade/StopFacade");
@@ -32,20 +33,24 @@ const DepartureCalculator_1 = require("../../../shared/DepartureCalculator");
32
33
  const GtfsStopParser_1 = require("../../../../helpers/GtfsStopParser");
33
34
  const DepartureBoardMapper_1 = __importDefault(require("../../helpers/DepartureBoardMapper"));
34
35
  const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
36
+ const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
35
37
  const DEFAULT_TRANSFER_BOARDS_LIMIT = 8;
38
+ const DEFAULT_PREVIOUS_STOPS_TO_ALLOW = "0";
36
39
  const METRO_TRAIN_ACCESSIBILITY = true; // metro trains are always considered wheelchair accessible vehicle
37
40
  const DEFAULT_VEHICLE_ACCESSIBILITY = null; // unknown, possibly due to not knowing the vehicle running the trip
38
41
  let V4TransferBoardsController = exports.V4TransferBoardsController = V4TransferBoardsController_1 = class V4TransferBoardsController {
39
- constructor(stopFacade, infotextFacade, transferFacade, transformation) {
42
+ constructor(config, stopFacade, infotextFacade, transferFacade, transformation) {
43
+ this.config = config;
40
44
  this.stopFacade = stopFacade;
41
45
  this.infotextFacade = infotextFacade;
42
46
  this.transferFacade = transferFacade;
43
47
  this.transformation = transformation;
44
48
  this.defaultTransferBoardsLimit = DEFAULT_TRANSFER_BOARDS_LIMIT;
45
49
  this.getTransferBoardData = async (req, res, next) => {
50
+ const queryData = (0, express_validator_1.matchedData)(req);
46
51
  const span = (0, trace_provider_1.createChildSpan)("V4TransferBoardsController.getTransferBoardData");
47
52
  try {
48
- const params = this.parseTransferBoardsParams(req.query);
53
+ const params = this.parseTransferBoardsParams(queryData);
49
54
  span?.setAttributes(Object.fromEntries(Object.entries(params).filter(([_, value]) => value !== null)));
50
55
  const now = new Date();
51
56
  let timeFrom = null;
@@ -105,6 +110,16 @@ let V4TransferBoardsController = exports.V4TransferBoardsController = V4Transfer
105
110
  transferCacheDto.transfers = TransferBoardFilter_1.TransferBoardFilter.minimalTransferTime(transferCacheDto.transfers, transferCacheDto.delayedTimeFrom);
106
111
  TransferBoardSorter_1.TransferBoardSorter.sortDepartures(transferCacheDto.transfers);
107
112
  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);
108
123
  const transformedData = this.transformation.transformArray(transferCacheDto.transfers);
109
124
  const filteredData = TransferBoardFilter_1.TransferBoardFilter.filterDepartures(transformedData, params.limit, transferCacheDto.delayedTimeFrom.getTime(), now.getTime());
110
125
  const output = {
@@ -124,6 +139,7 @@ let V4TransferBoardsController = exports.V4TransferBoardsController = V4Transfer
124
139
  span?.end();
125
140
  }
126
141
  };
142
+ this.countPreviousStopsToAllow = parseInt(config.getValue("env.VEHICLE_POSITIONS_COUNT_PREVIOUS_STOPS_TO_ALLOW", DEFAULT_PREVIOUS_STOPS_TO_ALLOW));
127
143
  }
128
144
  accessibilityForStops(stopsInfo) {
129
145
  const accessibilityStopIdsMap = new Map();
@@ -171,11 +187,12 @@ let V4TransferBoardsController = exports.V4TransferBoardsController = V4Transfer
171
187
  V4TransferBoardsController.NO_TRANSFERS = { departures: [], infotexts: [] };
172
188
  exports.V4TransferBoardsController = V4TransferBoardsController = V4TransferBoardsController_1 = __decorate([
173
189
  (0, tsyringe_1.injectable)(),
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,
190
+ __param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
191
+ __param(1, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.StopFacade)),
192
+ __param(2, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.InfotextFacade)),
193
+ __param(3, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.TransferFacade)),
194
+ __param(4, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.TransferDepartureCacheTransformation)),
195
+ __metadata("design:paramtypes", [Object, StopFacade_1.StopFacade,
179
196
  InfotextFacade_1.InfotextFacade,
180
197
  TransferFacade_1.TransferFacade,
181
198
  TransferDepartureCacheTransformation_1.TransferDepartureCacheTransformation])
@@ -1 +1 @@
1
- {"version":3,"file":"V4TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v4/V4TransferBoardsController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V4TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v4/V4TransferBoardsController.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,9 @@ 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[];
5
8
  static minimalTransferTime(transfers: IDepartureWithPosition[], delayedTimeFrom: Date): IDepartureWithPosition[];
6
9
  static sameStopNameTransfer(transfers: IDepartureWithPosition[], currentStop: IStopCacheDto, allowedStopIds: string[]): IDepartureWithPosition[];
7
10
  private static isInRange;
@@ -24,6 +24,12 @@ 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
+ ]);
27
33
  const ONE_HOUR_IN_MS = 60 * 60 * 1000;
28
34
  class TransferBoardFilter {
29
35
  static filterDepartures(transfers, limit, arrivalTimeMs, requestTimeFromMs) {
@@ -48,6 +54,17 @@ class TransferBoardFilter {
48
54
  // Departures are already sorted so that metro ones are first
49
55
  return filteredDepartures;
50
56
  }
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
+ }
51
68
  static minimalTransferTime(transfers, delayedTimeFrom) {
52
69
  const arrivalTime = delayedTimeFrom.getTime();
53
70
  return transfers.filter((t) => {
@@ -1 +1 @@
1
- {"version":3,"file":"TransferBoardFilter.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/helpers/TransferBoardFilter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransferBoardFilter.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/helpers/TransferBoardFilter.ts"],"names":[],"mappings":"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"}
@@ -122,6 +122,8 @@ export interface IV4TransferDto {
122
122
  transfers: IDepartureWithPosition[];
123
123
  delayedTimeFrom: Date;
124
124
  plannedTimeFrom: Date;
125
+ currentStop: IStop | null;
126
+ currentTripId: string | null;
125
127
  }
126
128
  export interface IDepartureWithPosition {
127
129
  departure: IPublicGtfsDepartureCacheDto & {
@@ -176,6 +178,11 @@ export interface IDepartureTime {
176
178
  scheduled: string | null;
177
179
  minutes?: string | null;
178
180
  }
181
+ export type TransferStops = {
182
+ stops: IStop[];
183
+ currentStopIndex: number;
184
+ };
185
+ export type TripsToTransfers = Map<string, TransferStops>;
179
186
  export declare enum DepartureMode {
180
187
  DEPARTURES = "departures",
181
188
  ARRIVALS = "arrivals",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAQA,4CAA0B;AAC1B,2CAAyB;AA8KzB,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;IACrB,gCAAe,CAAA;AACnB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,yCAAuB,CAAA;AAC3B,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,eAQX;AARD,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,2CAAwB,CAAA;IACxB,0DAAuC,CAAA;IACvC,oDAAiC,CAAA;IACjC,mEAAgD,CAAA;IAChD,qEAAkD,CAAA;IAClD,8EAA2D,CAAA;AAC/D,CAAC,EARW,eAAe,+BAAf,eAAe,QAQ1B;AAED,IAAY,aAMX;AAND,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;IACrB,mCAAkB,CAAA;IAClB,8BAA8B;AAClC,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAQA,4CAA0B;AAC1B,2CAAyB;AAuLzB,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;IACrB,gCAAe,CAAA;AACnB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,yCAAuB,CAAA;AAC3B,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,eAQX;AARD,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,2CAAwB,CAAA;IACxB,0DAAuC,CAAA;IACvC,oDAAiC,CAAA;IACjC,mEAAgD,CAAA;IAChD,qEAAkD,CAAA;IAClD,8EAA2D,CAAA;AAC/D,CAAC,EARW,eAAe,+BAAf,eAAe,QAQ1B;AAED,IAAY,aAMX;AAND,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;IACrB,mCAAkB,CAAA;IAClB,8BAA8B;AAClC,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB"}
@@ -60,11 +60,11 @@ class V2PIDRouter extends AbstractRouter_1.AbstractRouter {
60
60
  (0, express_validator_1.query)("airCondition").optional().isBoolean().not().isArray(),
61
61
  (0, express_validator_1.query)("total").optional().isInt().not().isArray(),
62
62
  ];
63
- this.router.get("/departureboards", validation, ...this.commonMiddleware("PIDDepartureBoards"),
63
+ this.router.get("/departureboards", validation, ...this.commonMiddleware("PIDDepartureBoards"), Validation_1.checkErrors,
64
64
  // max-age 5 seconds, stale-while-revalidate 5 seconds
65
65
  this.cacheHeaderMiddleware.getMiddleware(5, 5), this.departureBoardsController.getDepartureBoard);
66
66
  };
67
- this.commonMiddleware = (name) => [Validation_1.pagination, Validation_1.checkErrors, (0, Validation_1.paginationLimitMiddleware)(name)];
67
+ this.commonMiddleware = (name) => [(0, Validation_1.paginationLimitMiddleware)(name)];
68
68
  this.cacheHeaderMiddleware = ioc_1.OutputGatewayContainer.resolve(ioc_1.ContainerToken.CacheHeaderMiddleware);
69
69
  this.departureBoardsController = new V2DepartureBoardsController_1.V2DepartureBoardsController();
70
70
  this.initRoutes();