@golemio/pid 2.2.10-dev.590640408 → 2.2.10-dev.597228873

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 (66) hide show
  1. package/db/example/10_cancelledTrip_example.sql +6 -0
  2. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js +9 -20
  3. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js.map +1 -1
  4. package/dist/integration-engine/vehicle-positions/VehiclePositionsWorker.js +1 -1
  5. package/dist/integration-engine/vehicle-positions/VehiclePositionsWorker.js.map +1 -1
  6. package/dist/integration-engine/vehicle-positions/helpers/ValidToCalculator.d.ts +2 -1
  7. package/dist/integration-engine/vehicle-positions/helpers/ValidToCalculator.js +9 -3
  8. package/dist/integration-engine/vehicle-positions/helpers/ValidToCalculator.js.map +1 -1
  9. package/dist/output-gateway/pid/PIDRouter.d.ts +7 -17
  10. package/dist/output-gateway/pid/PIDRouter.js +33 -146
  11. package/dist/output-gateway/pid/PIDRouter.js.map +1 -1
  12. package/dist/output-gateway/pid/constants/index.d.ts +1 -0
  13. package/dist/output-gateway/pid/constants/index.js +18 -0
  14. package/dist/output-gateway/pid/constants/index.js.map +1 -0
  15. package/dist/output-gateway/pid/constants/validations.d.ts +7 -0
  16. package/dist/output-gateway/pid/constants/validations.js +29 -0
  17. package/dist/output-gateway/pid/constants/validations.js.map +1 -0
  18. package/dist/output-gateway/pid/controllers/DepartureBoardsController.d.ts +7 -0
  19. package/dist/output-gateway/pid/controllers/DepartureBoardsController.js +79 -0
  20. package/dist/output-gateway/pid/controllers/DepartureBoardsController.js.map +1 -0
  21. package/dist/output-gateway/pid/controllers/InfotextsController.d.ts +7 -0
  22. package/dist/output-gateway/pid/controllers/InfotextsController.js +36 -0
  23. package/dist/output-gateway/pid/controllers/InfotextsController.js.map +1 -0
  24. package/dist/output-gateway/pid/controllers/index.d.ts +2 -0
  25. package/dist/output-gateway/pid/controllers/index.js +19 -0
  26. package/dist/output-gateway/pid/controllers/index.js.map +1 -0
  27. package/dist/output-gateway/pid/dto/DepartureBoardsDTO.d.ts +17 -0
  28. package/dist/output-gateway/pid/dto/DepartureBoardsDTO.js +67 -0
  29. package/dist/output-gateway/pid/dto/DepartureBoardsDTO.js.map +1 -0
  30. package/dist/output-gateway/pid/dto/index.d.ts +1 -0
  31. package/dist/output-gateway/pid/dto/index.js +18 -0
  32. package/dist/output-gateway/pid/dto/index.js.map +1 -0
  33. package/dist/output-gateway/pid/middleware/checkTimeFromMiddleware.d.ts +6 -0
  34. package/dist/output-gateway/pid/middleware/checkTimeFromMiddleware.js +28 -0
  35. package/dist/output-gateway/pid/middleware/checkTimeFromMiddleware.js.map +1 -0
  36. package/dist/output-gateway/pid/middleware/index.d.ts +1 -0
  37. package/dist/output-gateway/pid/middleware/index.js +18 -0
  38. package/dist/output-gateway/pid/middleware/index.js.map +1 -0
  39. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.d.ts +1 -2
  40. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js +0 -6
  41. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js.map +1 -1
  42. package/dist/output-gateway/pid/models/RopidDeparturesDirectionsModel.d.ts +1 -17
  43. package/dist/output-gateway/pid/models/RopidDeparturesDirectionsModel.js +1 -17
  44. package/dist/output-gateway/pid/models/RopidDeparturesDirectionsModel.js.map +1 -1
  45. package/dist/output-gateway/pid/models/RopidVYMIEventsRoutesModel.d.ts +9 -0
  46. package/dist/output-gateway/pid/models/RopidVYMIEventsRoutesModel.js +21 -0
  47. package/dist/output-gateway/pid/models/RopidVYMIEventsRoutesModel.js.map +1 -0
  48. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.d.ts +28 -18
  49. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js +89 -26
  50. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js.map +1 -1
  51. package/dist/output-gateway/pid/models/index.d.ts +1 -0
  52. package/dist/output-gateway/pid/models/index.js +1 -0
  53. package/dist/output-gateway/pid/models/index.js.map +1 -1
  54. package/dist/output-gateway/ropid-gtfs/models/GTFSStopModel.d.ts +1 -1
  55. package/dist/output-gateway/shared/RopidRouterUtils.d.ts +5 -0
  56. package/dist/output-gateway/shared/RopidRouterUtils.js +7 -0
  57. package/dist/output-gateway/shared/RopidRouterUtils.js.map +1 -1
  58. package/dist/output-gateway/shared/decorators/index.d.ts +1 -0
  59. package/dist/output-gateway/shared/decorators/index.js +18 -0
  60. package/dist/output-gateway/shared/decorators/index.js.map +1 -0
  61. package/dist/output-gateway/shared/decorators/transformers.d.ts +2 -0
  62. package/dist/output-gateway/shared/decorators/transformers.js +9 -0
  63. package/dist/output-gateway/shared/decorators/transformers.js.map +1 -0
  64. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js +0 -1
  65. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js.map +1 -1
  66. package/package.json +2 -1
@@ -0,0 +1,6 @@
1
+ INSERT INTO vehiclepositions_trips (cis_line_id,cis_trip_number,sequence_id,cis_line_short_name,created_at,gtfs_route_id,gtfs_route_short_name,gtfs_trip_id,id,updated_at,start_cis_stop_id,start_cis_stop_platform_code,start_time,start_timestamp,vehicle_type_id,wheelchair_accessible,create_batch_id,created_by,update_batch_id,updated_by,agency_name_scheduled,origin_route_name,agency_name_real,vehicle_registration_number,gtfs_trip_headsign,start_asw_stop_id,gtfs_route_type,gtfs_block_id,last_position_id,is_canceled,end_timestamp,gtfs_trip_short_name) VALUES
2
+ (NULL,NULL,20,NULL,'2022-07-25 06:38:57.796','L9','9','9_4832_220502','2022-07-25T07:39:00+02:00_9_4832_220502_9366','2022-07-25 08:48:17.212',NULL,NULL,'07:39:00',1658727540000,2,true,NULL,NULL,NULL,NULL,'DP PRAHA','9','DP PRAHA',9366,'Sídliště Řepy',NULL,0,NULL,811532745,TRUE,1658730720000,NULL);
3
+
4
+ INSERT INTO vehiclepositions_positions (id, created_at,delay,delay_stop_arrival,delay_stop_departure,next_stop_id,shape_dist_traveled,is_canceled,lat,lng,origin_time,origin_timestamp,tracking,trips_id,create_batch_id,created_by,update_batch_id,updated_at,updated_by,bearing,cis_last_stop_id,cis_last_stop_sequence,last_stop_id,last_stop_sequence,next_stop_sequence,speed,last_stop_arrival_time,last_stop_departure_time,next_stop_arrival_time,next_stop_departure_time,asw_last_stop_id,state_process,state_position,this_stop_id,this_stop_sequence,tcp_event,last_stop_headsign,last_stop_name,next_stop_name,this_stop_name,valid_to) VALUES
5
+ (811532745,'2022-07-25 06:38:57.798',0,NULL,NULL,'U694Z1P',0,TRUE,50.06769,14.33621,'06:38:55',1658723935000,0,'2022-07-25T07:39:00+02:00_9_4832_220502_9366',NULL,NULL,NULL,'2022-07-25 06:38:58.089',NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,NULL,NULL,1658727540000,1658727540000,'06940002','processed','canceled','03940001',NULL,'P',NULL,NULL,NULL,NULL,1658732400000);
6
+
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.RopidVYMIEventsModel = void 0;
13
4
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
@@ -28,19 +19,17 @@ class RopidVYMIEventsModel extends models_1.PostgresModel {
28
19
  }, new golemio_validator_1.JSONSchemaValidator(ropid_vymi_1.RopidVYMI.events.name + "ModelValidator", ropid_vymi_1.RopidVYMI.events.outputJsonSchema));
29
20
  }
30
21
  getCurrentAlerts(currentDate) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- return yield this.find({
33
- where: {
34
- record_type: 1,
35
- expiration_date: {
36
- [sequelize_1.Op.or]: {
37
- [sequelize_1.Op.eq]: null,
38
- [sequelize_1.Op.gte]: currentDate,
39
- },
22
+ return this.find({
23
+ where: {
24
+ record_type: 1,
25
+ expiration_date: {
26
+ [sequelize_1.Op.or]: {
27
+ [sequelize_1.Op.eq]: null,
28
+ [sequelize_1.Op.gte]: currentDate,
40
29
  },
41
30
  },
42
- raw: true,
43
- });
31
+ },
32
+ raw: true,
44
33
  });
45
34
  }
46
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RopidVYMIEventsModel.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mFAAkF;AAClF,yEAAqF;AACrF,uEAAmE;AACnE,mEAAyD;AAEzD;;GAEG;AACH,MAAa,oBAAqB,SAAQ,sBAAa;IACnD;QACI,KAAK,CACD,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,EAC/B;YACI,WAAW,EAAE,IAAI;YACjB,yBAAyB,EAAE,sBAAS,CAAC,MAAM,CAAC,yBAAyB;YACrE,WAAW,EAAE,sBAAS,CAAC,MAAM,CAAC,WAAW;YACzC,QAAQ,EAAE,sBAAS,CAAC,QAAQ;YAC5B,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,gBAAgB,EAAE,sBAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CACvG,CAAC;IACN,CAAC;IAEY,gBAAgB,CAAC,WAAiB;;YAC3C,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE;oBACH,WAAW,EAAE,CAAC;oBACd,eAAe,EAAE;wBACb,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE;4BACL,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,IAAI;4BACb,CAAC,cAAE,CAAC,GAAG,CAAC,EAAE,WAAW;yBACxB;qBACJ;iBACJ;gBACD,GAAG,EAAE,IAAI;aACZ,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AA7BD,oDA6BC"}
1
+ {"version":3,"file":"RopidVYMIEventsModel.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.ts"],"names":[],"mappings":";;;AAAA,mFAAkF;AAClF,yEAAqF;AACrF,uEAAmE;AACnE,mEAAyD;AAEzD;;GAEG;AACH,MAAa,oBAAqB,SAAQ,sBAAa;IACnD;QACI,KAAK,CACD,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,EAC/B;YACI,WAAW,EAAE,IAAI;YACjB,yBAAyB,EAAE,sBAAS,CAAC,MAAM,CAAC,yBAAyB;YACrE,WAAW,EAAE,sBAAS,CAAC,MAAM,CAAC,WAAW;YACzC,QAAQ,EAAE,sBAAS,CAAC,QAAQ;YAC5B,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,gBAAgB,EAAE,sBAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CACvG,CAAC;IACN,CAAC;IAEM,gBAAgB,CAAC,WAAiB;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC;YACb,KAAK,EAAE;gBACH,WAAW,EAAE,CAAC;gBACd,eAAe,EAAE;oBACb,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE;wBACL,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,IAAI;wBACb,CAAC,cAAE,CAAC,GAAG,CAAC,EAAE,WAAW;qBACxB;iBACJ;aACJ;YACD,GAAG,EAAE,IAAI;SACZ,CAAC,CAAC;IACP,CAAC;CACJ;AA7BD,oDA6BC"}
@@ -792,7 +792,7 @@ class VehiclePositionsWorker extends workers_1.BaseWorker {
792
792
  }
793
793
  // if not null push to update
794
794
  if (positionToUpdate) {
795
- positionToUpdate.valid_to = ValidToCalculator_1.default.getValidToAttribute(positionToUpdate, position, gtfsRouteType, tripPositions.gtfsData, startTimestamp);
795
+ positionToUpdate.valid_to = ValidToCalculator_1.default.getValidToAttribute(positionToUpdate, position, gtfsRouteType, tripPositions.gtfsData, startTimestamp, startDayTimestamp);
796
796
  computedPositions.push(positionToUpdate);
797
797
  }
798
798
  // set if last position is AFTER_TRACK
@@ -1 +1 @@
1
- {"version":3,"file":"VehiclePositionsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/vehicle-positions/VehiclePositionsWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VehiclePositionsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/vehicle-positions/VehiclePositionsWorker.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { GTFSRouteTypeEnum, ITripPositionAttributes } from "../models";
2
2
  import { IComputationTrip, IPositionToUpdate } from "../VehiclePositionsInterfaces";
3
3
  export default class ValidToCalculator {
4
+ private static CANCELLED_ADDITION_TIME_IN_MS;
4
5
  /**
5
6
  * Calculates valid_to attribute value for updateDelay worker
6
7
  *
7
8
  */
8
- static getValidToAttribute: (positionToUpdate: IPositionToUpdate, tripPositionAttributes: ITripPositionAttributes, gtfsRouteType: GTFSRouteTypeEnum, gtfsData: IComputationTrip, startTimestamp: number) => number;
9
+ static getValidToAttribute: (positionToUpdate: IPositionToUpdate, tripPositionAttributes: ITripPositionAttributes, gtfsRouteType: GTFSRouteTypeEnum, gtfsData: IComputationTrip, startTimestamp: number, startDayTimestamp: number) => number;
9
10
  /**
10
11
  * Calculate default valid_to attribute
11
12
  * return 5min + `origin_timestamp`
@@ -11,13 +11,19 @@ class ValidToCalculator {
11
11
  }
12
12
  exports.default = ValidToCalculator;
13
13
  _a = ValidToCalculator;
14
+ ValidToCalculator.CANCELLED_ADDITION_TIME_IN_MS = 30 * 60 * 1000;
14
15
  /**
15
16
  * Calculates valid_to attribute value for updateDelay worker
16
17
  *
17
18
  */
18
- ValidToCalculator.getValidToAttribute = (positionToUpdate, tripPositionAttributes, gtfsRouteType, gtfsData, startTimestamp) => {
19
- // For TRAM only:
20
- if (gtfsRouteType === models_1.GTFSRouteTypeEnum.TRAM) {
19
+ ValidToCalculator.getValidToAttribute = (positionToUpdate, tripPositionAttributes, gtfsRouteType, gtfsData, startTimestamp, startDayTimestamp) => {
20
+ if (positionToUpdate.state_position === const_1.StatePositionEnum.CANCELED) {
21
+ return (startDayTimestamp +
22
+ gtfsData.stop_times[gtfsData.stop_times.length - 1].departure_time_seconds * 1000 +
23
+ ValidToCalculator.CANCELLED_ADDITION_TIME_IN_MS);
24
+ }
25
+ else if (gtfsRouteType === models_1.GTFSRouteTypeEnum.TRAM) {
26
+ // For TRAM only:
21
27
  // For all real stops:
22
28
  // return default valid to attribute + the time difference between departure and arrival
23
29
  if (positionToUpdate.state_position == const_1.StatePositionEnum.AT_STOP &&
@@ -1 +1 @@
1
- {"version":3,"file":"ValidToCalculator.js","sourceRoot":"","sources":["../../../../src/integration-engine/vehicle-positions/helpers/ValidToCalculator.ts"],"names":[],"mappings":";;;;;;AAAA,0CAA8C;AAC9C,sCAAuE;AAEvE,8EAAsD;AAEtD,MAAqB,iBAAiB;;AAAtC,oCAuDC;;AAtDG;;;GAGG;AACW,qCAAmB,GAAG,CAChC,gBAAmC,EACnC,sBAA+C,EAC/C,aAAgC,EAChC,QAA0B,EAC1B,cAAsB,EAChB,EAAE;IACR,iBAAiB;IACjB,IAAI,aAAa,KAAK,0BAAiB,CAAC,IAAI,EAAE;QAC1C,sBAAsB;QACtB,wFAAwF;QAExF,IACI,gBAAgB,CAAC,cAAc,IAAI,yBAAiB,CAAC,OAAO;YAC5D,gBAAgB,CAAC,sBAAsB,IAAI,gBAAgB,CAAC,wBAAwB;YACpF,gBAAgB,CAAC,sBAAsB;YACvC,gBAAgB,CAAC,wBAAwB,EAC3C;YACE,OAAO,CACH,EAAI,CAAC,0BAA0B,CAAC,sBAAsB,CAAC,gBAAgB,CAAC;gBACxE,CAAC,gBAAgB,CAAC,wBAAwB,GAAG,gBAAgB,CAAC,sBAAsB,CAAC,CACxF,CAAC;SACL;QAED,uBAAuB;QACvB,oGAAoG;QAEpG,IAAI,gBAAgB,CAAC,cAAc,IAAI,yBAAiB,CAAC,YAAY,EAAE;YACnE,MAAM,QAAQ,GAAG,4BAAkB,CAAC,uBAAuB,CACvD,CAAC,sBAAsB,CAAC,GAAG,EAAE,sBAAsB,CAAC,GAAG,CAAC,EACxD,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC/E,CAAC;YAEF,IAAI,QAAQ,IAAI,CAAC,EAAE;gBACf,OAAO,EAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;aAC7G;SACJ;KACJ;IAED,2BAA2B;IAC3B,OAAO,EAAI,CAAC,0BAA0B,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;AACpF,CAAE,CAAA;AAEF;;;GAGG;AACW,4CAA0B,GAAG,CAAC,gBAAwB,EAAU,EAAE;IAC5E,OAAO,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAC5C,CAAE,CAAA"}
1
+ {"version":3,"file":"ValidToCalculator.js","sourceRoot":"","sources":["../../../../src/integration-engine/vehicle-positions/helpers/ValidToCalculator.ts"],"names":[],"mappings":";;;;;;AAAA,0CAA8C;AAC9C,sCAAuE;AAEvE,8EAAsD;AAEtD,MAAqB,iBAAiB;;AAAtC,oCA+DC;;AA9DkB,+CAA6B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAK,CAAA;AAC9D;;;GAGG;AACW,qCAAmB,GAAG,CAChC,gBAAmC,EACnC,sBAA+C,EAC/C,aAAgC,EAChC,QAA0B,EAC1B,cAAsB,EACtB,iBAAyB,EACnB,EAAE;IACR,IAAI,gBAAgB,CAAC,cAAc,KAAK,yBAAiB,CAAC,QAAQ,EAAE;QAChE,OAAO,CACH,iBAAiB;YACjB,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,sBAAsB,GAAG,IAAI;YACjF,iBAAiB,CAAC,6BAA6B,CAClD,CAAC;KACL;SAAM,IAAI,aAAa,KAAK,0BAAiB,CAAC,IAAI,EAAE;QACjD,iBAAiB;QACjB,sBAAsB;QACtB,wFAAwF;QAExF,IACI,gBAAgB,CAAC,cAAc,IAAI,yBAAiB,CAAC,OAAO;YAC5D,gBAAgB,CAAC,sBAAsB,IAAI,gBAAgB,CAAC,wBAAwB;YACpF,gBAAgB,CAAC,sBAAsB;YACvC,gBAAgB,CAAC,wBAAwB,EAC3C;YACE,OAAO,CACH,EAAI,CAAC,0BAA0B,CAAC,sBAAsB,CAAC,gBAAgB,CAAC;gBACxE,CAAC,gBAAgB,CAAC,wBAAwB,GAAG,gBAAgB,CAAC,sBAAsB,CAAC,CACxF,CAAC;SACL;QAED,uBAAuB;QACvB,oGAAoG;QAEpG,IAAI,gBAAgB,CAAC,cAAc,IAAI,yBAAiB,CAAC,YAAY,EAAE;YACnE,MAAM,QAAQ,GAAG,4BAAkB,CAAC,uBAAuB,CACvD,CAAC,sBAAsB,CAAC,GAAG,EAAE,sBAAsB,CAAC,GAAG,CAAC,EACxD,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC/E,CAAC;YAEF,IAAI,QAAQ,IAAI,CAAC,EAAE;gBACf,OAAO,EAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;aAC7G;SACJ;KACJ;IAED,2BAA2B;IAC3B,OAAO,EAAI,CAAC,0BAA0B,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;AACpF,CAAE,CAAA;AAEF;;;GAGG;AACW,4CAA0B,GAAG,CAAC,gBAAwB,EAAU,EAAE;IAC5E,OAAO,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAC5C,CAAE,CAAA"}
@@ -3,26 +3,16 @@
3
3
  * Handles web logic (http request, response). Sets response headers, handles error responses.
4
4
  */
5
5
  /// <reference types="express" />
6
+ import { Router } from "@golemio/core/dist/shared/express";
6
7
  import { BaseRouter } from "@golemio/core/dist/output-gateway/routes/BaseRouter";
7
- import { NextFunction, Request, Response, Router } from "@golemio/core/dist/shared/express";
8
- import { PIDDepartureBoardsModel } from ".";
9
8
  export declare class PIDRouter extends BaseRouter {
10
- router: Router;
11
- protected departureBoardsModel: PIDDepartureBoardsModel;
12
- private defaultQueryParameters;
13
- private validationEnums;
9
+ readonly router: import("express-serve-static-core").Router;
10
+ private readonly departureBoardsController;
11
+ private readonly infotextsController;
14
12
  constructor();
15
- GetDepartureBoard: (req: Request, res: Response, next: NextFunction) => Promise<void>;
16
- /**
17
- * Performs a check if timeFrom query parameter is not too old or too much in future
18
- * @param routerName name passed to the returned Error object in case of fail
19
- */
20
- private checkTimeFromMiddleware;
21
- /**
22
- * Initiates all routes. Should respond with correct data to a HTTP requests to all routes.
23
- */
24
- private initRoutes;
25
- private initDepartureBoardsEndpoints;
13
+ private registerDepartureBoardsRoutes;
14
+ private registerInfotextsRoutes;
15
+ private commonMiddleware;
26
16
  }
27
17
  declare const pidRouter: Router;
28
18
  export { pidRouter };
@@ -3,156 +3,30 @@
3
3
  * Router /WEB LAYER/: maps routes to specific controller functions, passes request parameters and handles responses.
4
4
  * Handles web logic (http request, response). Sets response headers, handles error responses.
5
5
  */
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- var __importDefault = (this && this.__importDefault) || function (mod) {
16
- return (mod && mod.__esModule) ? mod : { "default": mod };
17
- };
18
6
  Object.defineProperty(exports, "__esModule", { value: true });
19
7
  exports.pidRouter = exports.PIDRouter = void 0;
20
- const shared_1 = require("../shared");
21
- const trace_provider_1 = require("@golemio/core/dist/monitoring/opentelemetry/trace-provider");
22
- const config_1 = require("@golemio/core/dist/output-gateway/config");
23
- const redis_1 = require("@golemio/core/dist/output-gateway/redis");
24
- const BaseRouter_1 = require("@golemio/core/dist/output-gateway/routes/BaseRouter");
25
- const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
26
8
  const express_1 = require("@golemio/core/dist/shared/express");
27
9
  const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
28
- const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
29
- const moment_timezone_1 = __importDefault(require("@golemio/core/dist/shared/moment-timezone"));
30
- const lodash_1 = require("lodash");
31
- const _1 = require(".");
10
+ const BaseRouter_1 = require("@golemio/core/dist/output-gateway/routes/BaseRouter");
11
+ const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
12
+ const redis_1 = require("@golemio/core/dist/output-gateway/redis");
13
+ const middleware_1 = require("./middleware");
14
+ const constants_1 = require("./constants");
15
+ const controllers_1 = require("./controllers");
32
16
  class PIDRouter extends BaseRouter_1.BaseRouter {
33
17
  constructor() {
34
18
  super();
35
- // Assign router to the express.Router() instance
36
19
  this.router = (0, express_1.Router)();
37
- this.defaultQueryParameters = {
38
- total: 20,
39
- limit: 20,
40
- offset: 0,
41
- minutesAfter: 180,
42
- minutesBefore: 0,
43
- timeFromValidRange: {
44
- hoursBefore: 6,
45
- hoursAfter: 7 * 24,
46
- },
47
- };
48
- this.validationEnums = {
49
- departureMode: ["departures", "arrivals", "mixed"],
50
- order: ["real", "timetable"],
51
- filter: [
52
- "none",
53
- "routeOnce",
54
- "routeHeadingOnce",
55
- "routeOnceFill",
56
- "routeHeadingOnceFill",
57
- "routeHeadingOnceNoGap",
58
- "routeHeadingOnceNoGapFill",
59
- ],
60
- skip: ["untracked", "canceled", "atStop" /*, "onInfotext"*/],
61
- // creates whitelist of timezone names
62
- prefferedTimezone: moment_timezone_1.default.tz.names().concat(moment_timezone_1.default.tz
63
- .names()
64
- // concats only those names that have character /
65
- .filter((name) => name.match(/\//g))
66
- // that is replaced with _
67
- .map((name) => name.replace(/\//g, "_"))),
68
- };
69
- this.GetDepartureBoard = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
70
- const aswIds = this.ConvertToArray(req.query.aswIds || []);
71
- const cisIds = this.ConvertToArray(req.query.cisIds || []);
72
- const gtfsIds = this.ConvertToArray(req.query.ids || []);
73
- const names = this.ConvertToArray(req.query.names || []);
74
- const skip = this.ConvertToArray(req.query.skip || []);
75
- const limit = parseInt(req.query.limit || this.defaultQueryParameters.limit, 10);
76
- const total = (0, lodash_1.toNumber)(req.query.total) || limit;
77
- const preferredTimezone = shared_1.RopidRouterUtils.validateAndReturnTimezone(req.query.preferredTimezone, this.constructor.name);
78
- // datetime is valid ISO 8601 (by express validator)
79
- // it matches:
80
- // 2020-10-10T10:00:00Z
81
- // 2020-10-10 10:00:00.00Z
82
- // 2020-10-10T10:00:00+02
83
- // 2020-10-10T10:00:00+02:00
84
- const timezoneDefinedRegexp = /[T ][\d:\.]+([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)/;
85
- // use timezone from ?preferredTimezone if not set in ?timeFrom
86
- const timeFrom = req.query.timeFrom
87
- ? req.query.timeFrom.match(timezoneDefinedRegexp)
88
- ? (0, moment_timezone_1.default)(req.query.timeFrom)
89
- : moment_timezone_1.default.tz(req.query.timeFrom, preferredTimezone)
90
- : undefined;
91
- const span = (0, trace_provider_1.createChildSpan)("PIDRouter.GetDepartureBoard", config_1.config.telemetry);
92
- try {
93
- const data = yield this.departureBoardsModel.GetAll({
94
- aswIds,
95
- cisIds,
96
- gtfsIds,
97
- names,
98
- minutesAfter: parseInt(req.query.minutesAfter || this.defaultQueryParameters.minutesAfter, 10),
99
- minutesBefore: parseInt(req.query.minutesBefore || this.defaultQueryParameters.minutesBefore, 10),
100
- timeFrom,
101
- mode: req.query.mode,
102
- order: req.query.order,
103
- filter: req.query.filter,
104
- skip,
105
- limit,
106
- offset: (0, lodash_1.toNumber)(req.query.offset) || undefined,
107
- total,
108
- timezone: preferredTimezone,
109
- });
110
- // allow access response Date header
111
- res.setHeader("access-control-expose-headers", "date");
112
- res.status(200).send({
113
- stops: data.stops,
114
- departures: data.departures,
115
- infotexts: data.infotexts,
116
- });
117
- }
118
- catch (err) {
119
- next(err);
120
- }
121
- finally {
122
- span === null || span === void 0 ? void 0 : span.end();
123
- }
124
- });
125
- /**
126
- * Performs a check if timeFrom query parameter is not too old or too much in future
127
- * @param routerName name passed to the returned Error object in case of fail
128
- */
129
- this.checkTimeFromMiddleware = (routerName) => {
130
- return (req, res, next) => {
131
- const currentMoment = (0, moment_timezone_1.default)();
132
- const timeFrom = req.query.timeFrom ? (0, moment_timezone_1.default)(req.query.timeFrom) : null;
133
- if (timeFrom &&
134
- !timeFrom.isBetween(currentMoment.clone().subtract(this.defaultQueryParameters.timeFromValidRange.hoursBefore, "hours"), currentMoment.clone().add(this.defaultQueryParameters.timeFromValidRange.hoursAfter, "hours"), undefined, "[]")) {
135
- return next(new golemio_errors_1.CustomError("Parameter timeFrom must be in interval [-6h; +7d]", true, routerName || "BaseRouter", 400));
136
- }
137
- return next();
138
- };
139
- };
140
- /**
141
- * Initiates all routes. Should respond with correct data to a HTTP requests to all routes.
142
- */
143
- this.initRoutes = () => {
144
- this.initDepartureBoardsEndpoints("5 seconds");
145
- };
146
- this.initDepartureBoardsEndpoints = (expire) => {
147
- // could be this generated from enum?
148
- this.router.get("/departureboards", [
20
+ this.registerDepartureBoardsRoutes = () => {
21
+ const { prefferedTimezone, departureMode, order, filter, skip } = constants_1.departureBoardsValidationArrays;
22
+ const validation = [
149
23
  (0, express_validator_1.oneOf)([
150
- (0, express_validator_1.query)("ids").exists().isArray(),
151
24
  (0, express_validator_1.query)("aswIds").exists().isArray(),
152
- (0, express_validator_1.query)("cisIds").exists().isArray(),
153
- (0, express_validator_1.query)("ids").exists().isString(),
154
25
  (0, express_validator_1.query)("aswIds").exists().isString(),
26
+ (0, express_validator_1.query)("cisIds").exists().isArray(),
155
27
  (0, express_validator_1.query)("cisIds").exists().isString(),
28
+ (0, express_validator_1.query)("ids").exists().isArray(),
29
+ (0, express_validator_1.query)("ids").exists().isString(),
156
30
  (0, express_validator_1.query)("names").exists().isArray(),
157
31
  (0, express_validator_1.query)("names").exists().isString(),
158
32
  ]),
@@ -162,19 +36,32 @@ class PIDRouter extends BaseRouter_1.BaseRouter {
162
36
  (0, express_validator_1.query)("names.*").optional().isString(),
163
37
  (0, express_validator_1.query)("minutesBefore").optional().isInt(),
164
38
  (0, express_validator_1.query)("minutesAfter").optional().isInt(),
165
- (0, express_validator_1.query)("preferredTimezone").optional().isString().isIn(this.validationEnums.prefferedTimezone),
166
- (0, express_validator_1.query)("mode").optional().isIn(this.validationEnums.departureMode),
167
- (0, express_validator_1.query)("order").optional().isString().isIn(this.validationEnums.order),
168
- (0, express_validator_1.query)("filter").optional().isString().isIn(this.validationEnums.filter),
169
- (0, express_validator_1.query)("skip").optional().isIn(this.validationEnums.skip),
39
+ (0, express_validator_1.query)("preferredTimezone").optional().isString().isIn(prefferedTimezone),
40
+ (0, express_validator_1.query)("mode").optional().isIn(departureMode),
41
+ (0, express_validator_1.query)("order").optional().isString().isIn(order),
42
+ (0, express_validator_1.query)("filter").optional().isString().isIn(filter),
43
+ (0, express_validator_1.query)("skip").optional().isIn(skip),
170
44
  (0, express_validator_1.query)("timeFrom").optional().isString().isISO8601(),
171
45
  (0, express_validator_1.query)("limit").optional().isInt(),
172
46
  (0, express_validator_1.query)("offset").optional().isInt(),
173
47
  (0, express_validator_1.query)("total").optional().isInt(),
174
- ], Validation_1.pagination, Validation_1.checkErrors, this.checkTimeFromMiddleware("DepartureBoardsRouter"), (0, Validation_1.paginationLimitMiddleware)("DepartureBoardsRouter"), (0, redis_1.useCacheMiddleware)(expire), this.GetDepartureBoard);
48
+ ];
49
+ this.router.get("/departureboards", validation, ...this.commonMiddleware("PIDDepartureBoards"), (0, middleware_1.checkTimeFromMiddleware)("PIDDepartureBoards"), this.departureBoardsController.getDepartureBoard);
50
+ };
51
+ this.registerInfotextsRoutes = () => {
52
+ this.router.get("/infotexts", ...this.commonMiddleware("PIDInfotexts"), this.infotextsController.getInfotexts);
175
53
  };
176
- this.departureBoardsModel = new _1.PIDDepartureBoardsModel();
177
- this.initRoutes();
54
+ this.commonMiddleware = (name) => [
55
+ Validation_1.pagination,
56
+ Validation_1.checkErrors,
57
+ (0, Validation_1.paginationLimitMiddleware)(name),
58
+ (0, redis_1.useCacheMiddleware)("5 seconds"),
59
+ ];
60
+ this.departureBoardsController = new controllers_1.DepartureBoardsController();
61
+ this.infotextsController = new controllers_1.InfotextsController();
62
+ // Register routes
63
+ this.registerDepartureBoardsRoutes();
64
+ this.registerInfotextsRoutes();
178
65
  }
179
66
  }
180
67
  exports.PIDRouter = PIDRouter;