@golemio/pid 4.0.1 → 4.0.2-dev.1982076656

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 (182) hide show
  1. package/README.md +1 -1
  2. package/db/example/redis/gtfsStopsCacheMock.json +8 -0
  3. package/db/example/redis/jisCacheMock.json +31 -0
  4. package/db/migrations/postgresql/20250716143052-add-stop-name-to-combined-stop-times.js +53 -0
  5. package/db/migrations/postgresql/sqls/20250716143052-add-stop-name-to-combined-stop-times-down.sql +47 -0
  6. package/db/migrations/postgresql/sqls/20250716143052-add-stop-name-to-combined-stop-times-up.sql +47 -0
  7. package/dist/helpers/GtfsStopParser.d.ts +2 -0
  8. package/dist/helpers/GtfsStopParser.js +11 -8
  9. package/dist/helpers/GtfsStopParser.js.map +1 -1
  10. package/dist/helpers/jis/JISInfotextSeverityLevelPriority.d.ts +6 -0
  11. package/dist/helpers/jis/JISInfotextSeverityLevelPriority.js +11 -0
  12. package/dist/helpers/jis/JISInfotextSeverityLevelPriority.js.map +1 -0
  13. package/dist/input-gateway/vehicle-positions/VehiclePositionsController.js +0 -1
  14. package/dist/input-gateway/vehicle-positions/VehiclePositionsController.js.map +1 -1
  15. package/dist/integration-engine/jis/ioc/Di.js +10 -0
  16. package/dist/integration-engine/jis/ioc/Di.js.map +1 -1
  17. package/dist/integration-engine/jis/ioc/JISContainerToken.d.ts +4 -0
  18. package/dist/integration-engine/jis/ioc/JISContainerToken.js +5 -0
  19. package/dist/integration-engine/jis/ioc/JISContainerToken.js.map +1 -1
  20. package/dist/integration-engine/jis/repositories/JISInfotextsRedisRepository.d.ts +9 -0
  21. package/dist/integration-engine/jis/repositories/JISInfotextsRedisRepository.js +86 -0
  22. package/dist/integration-engine/jis/repositories/JISInfotextsRedisRepository.js.map +1 -0
  23. package/dist/integration-engine/jis/repositories/JISInfotextsRepository.d.ts +6 -1
  24. package/dist/integration-engine/jis/repositories/JISInfotextsRepository.js +50 -2
  25. package/dist/integration-engine/jis/repositories/JISInfotextsRepository.js.map +1 -1
  26. package/dist/integration-engine/jis/transformations/JISInfotextCacheTranformation.d.ts +7 -0
  27. package/dist/integration-engine/jis/transformations/JISInfotextCacheTranformation.js +37 -0
  28. package/dist/integration-engine/jis/transformations/JISInfotextCacheTranformation.js.map +1 -0
  29. package/dist/integration-engine/jis/workers/JISWorker.js +1 -0
  30. package/dist/integration-engine/jis/workers/JISWorker.js.map +1 -1
  31. package/dist/integration-engine/jis/workers/tasks/RefreshJISInfotextsCacheTask.d.ts +13 -0
  32. package/dist/integration-engine/jis/workers/tasks/RefreshJISInfotextsCacheTask.js +47 -0
  33. package/dist/integration-engine/jis/workers/tasks/RefreshJISInfotextsCacheTask.js.map +1 -0
  34. package/dist/integration-engine/jis/workers/tasks/RefreshJISInfotextsTask.d.ts +1 -2
  35. package/dist/integration-engine/jis/workers/tasks/RefreshJISInfotextsTask.js +5 -4
  36. package/dist/integration-engine/jis/workers/tasks/RefreshJISInfotextsTask.js.map +1 -1
  37. package/dist/integration-engine/ropid-gtfs/RopidGTFSCisStopsModel.d.ts +18 -0
  38. package/dist/integration-engine/ropid-gtfs/RopidGTFSCisStopsModel.js +44 -0
  39. package/dist/integration-engine/ropid-gtfs/RopidGTFSCisStopsModel.js.map +1 -0
  40. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopsModel.d.ts +5 -1
  41. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopsModel.js +24 -0
  42. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopsModel.js.map +1 -1
  43. package/dist/integration-engine/ropid-gtfs/data-access/cache/DelayComputationRedisRepository.js.map +1 -1
  44. package/dist/integration-engine/ropid-gtfs/index.d.ts +1 -0
  45. package/dist/integration-engine/ropid-gtfs/index.js +1 -0
  46. package/dist/integration-engine/ropid-gtfs/index.js.map +1 -1
  47. package/dist/integration-engine/ropid-gtfs/ioc/Di.js +8 -0
  48. package/dist/integration-engine/ropid-gtfs/ioc/Di.js.map +1 -1
  49. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.d.ts +3 -0
  50. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js +3 -0
  51. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js.map +1 -1
  52. package/dist/integration-engine/ropid-gtfs/transformations/RopidDeparturesPresetsTransformation.js +1 -1
  53. package/dist/integration-engine/ropid-gtfs/transformations/RopidDeparturesPresetsTransformation.js.map +1 -1
  54. package/dist/integration-engine/ropid-gtfs/workers/timetables/TimetableWorker.js +1 -0
  55. package/dist/integration-engine/ropid-gtfs/workers/timetables/TimetableWorker.js.map +1 -1
  56. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.js +8 -5
  57. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.js.map +1 -1
  58. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/RefreshGtfsStopsCacheTask.d.ts +12 -0
  59. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/RefreshGtfsStopsCacheTask.js +44 -0
  60. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/RefreshGtfsStopsCacheTask.js.map +1 -0
  61. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/data-access/cache/GtfsStopsRedisRepository.d.ts +12 -0
  62. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/data-access/cache/GtfsStopsRedisRepository.js +87 -0
  63. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/data-access/cache/GtfsStopsRedisRepository.js.map +1 -0
  64. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +1 -0
  65. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
  66. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/TripRepositoryInterfaces.d.ts +2 -1
  67. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.js.map +1 -1
  68. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.js +1 -0
  69. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.js.map +1 -1
  70. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.js +2 -0
  71. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.js.map +1 -1
  72. package/dist/output-gateway/index.js +1 -0
  73. package/dist/output-gateway/index.js.map +1 -1
  74. package/dist/output-gateway/jis/data-access/cache/JISInfotextsRedisRepository.d.ts +17 -0
  75. package/dist/output-gateway/jis/data-access/cache/JISInfotextsRedisRepository.js +113 -0
  76. package/dist/output-gateway/jis/data-access/cache/JISInfotextsRedisRepository.js.map +1 -0
  77. package/dist/output-gateway/jis/ioc/Di.js +2 -2
  78. package/dist/output-gateway/jis/ioc/Di.js.map +1 -1
  79. package/dist/output-gateway/jis/ioc/OgJisToken.d.ts +2 -0
  80. package/dist/output-gateway/jis/ioc/OgJisToken.js +2 -0
  81. package/dist/output-gateway/jis/ioc/OgJisToken.js.map +1 -1
  82. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js.map +1 -1
  83. package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.d.ts +17 -0
  84. package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js +147 -0
  85. package/dist/output-gateway/pid/controllers/v4/V4TransferBoardsController.js.map +1 -0
  86. package/dist/output-gateway/pid/controllers/v4/interfaces/ITransferBoardsParams.d.ts +14 -0
  87. package/dist/output-gateway/pid/controllers/v4/interfaces/ITransferBoardsParams.js +3 -0
  88. package/dist/output-gateway/pid/controllers/v4/interfaces/ITransferBoardsParams.js.map +1 -0
  89. package/dist/output-gateway/pid/domain/InfotextInterfaces.d.ts +5 -0
  90. package/dist/output-gateway/pid/helpers/JISInfotextStopSuppressionFilter.d.ts +4 -1
  91. package/dist/output-gateway/pid/helpers/JISInfotextStopSuppressionFilter.js +7 -1
  92. package/dist/output-gateway/pid/helpers/JISInfotextStopSuppressionFilter.js.map +1 -1
  93. package/dist/output-gateway/pid/helpers/TransferBoardFilter.d.ts +5 -0
  94. package/dist/output-gateway/pid/helpers/TransferBoardFilter.js +33 -0
  95. package/dist/output-gateway/pid/helpers/TransferBoardFilter.js.map +1 -0
  96. package/dist/output-gateway/pid/helpers/TransferBoardSorter.d.ts +6 -0
  97. package/dist/output-gateway/pid/helpers/TransferBoardSorter.js +65 -0
  98. package/dist/output-gateway/pid/helpers/TransferBoardSorter.js.map +1 -0
  99. package/dist/output-gateway/pid/index.d.ts +47 -0
  100. package/dist/output-gateway/pid/index.js.map +1 -1
  101. package/dist/output-gateway/pid/ioc/Di.js +62 -6
  102. package/dist/output-gateway/pid/ioc/Di.js.map +1 -1
  103. package/dist/output-gateway/pid/ioc/OgPidToken.d.ts +11 -0
  104. package/dist/output-gateway/pid/ioc/OgPidToken.js +11 -0
  105. package/dist/output-gateway/pid/ioc/OgPidToken.js.map +1 -1
  106. package/dist/output-gateway/pid/routers/index.d.ts +1 -0
  107. package/dist/output-gateway/pid/routers/index.js +3 -1
  108. package/dist/output-gateway/pid/routers/index.js.map +1 -1
  109. package/dist/output-gateway/pid/routers/v4/V4PIDRouter.d.ts +16 -0
  110. package/dist/output-gateway/pid/routers/v4/V4PIDRouter.js +67 -0
  111. package/dist/output-gateway/pid/routers/v4/V4PIDRouter.js.map +1 -0
  112. package/dist/output-gateway/pid/service/facade/InfotextFacade.d.ts +7 -2
  113. package/dist/output-gateway/pid/service/facade/InfotextFacade.js +29 -4
  114. package/dist/output-gateway/pid/service/facade/InfotextFacade.js.map +1 -1
  115. package/dist/output-gateway/pid/service/facade/StopFacade.d.ts +12 -3
  116. package/dist/output-gateway/pid/service/facade/StopFacade.js +43 -7
  117. package/dist/output-gateway/pid/service/facade/StopFacade.js.map +1 -1
  118. package/dist/output-gateway/pid/service/facade/TransferFacade.d.ts +11 -9
  119. package/dist/output-gateway/pid/service/facade/TransferFacade.js +117 -14
  120. package/dist/output-gateway/pid/service/facade/TransferFacade.js.map +1 -1
  121. package/dist/output-gateway/pid/service/helpers/PlatformCodeResolver.d.ts +7 -1
  122. package/dist/output-gateway/pid/service/helpers/PlatformCodeResolver.js +12 -0
  123. package/dist/output-gateway/pid/service/helpers/PlatformCodeResolver.js.map +1 -1
  124. package/dist/output-gateway/pid/service/transformations/JISInfotextCacheTransferTransformation.d.ts +13 -0
  125. package/dist/output-gateway/pid/service/transformations/JISInfotextCacheTransferTransformation.js +31 -0
  126. package/dist/output-gateway/pid/service/transformations/JISInfotextCacheTransferTransformation.js.map +1 -0
  127. package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.d.ts +27 -0
  128. package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.js +75 -0
  129. package/dist/output-gateway/pid/service/transformations/TransferDepartureCacheTransformation.js.map +1 -0
  130. package/dist/output-gateway/public/data-access/redis/PublicGtfsDepartureRepository.d.ts +1 -1
  131. package/dist/output-gateway/public/data-access/redis/PublicGtfsDepartureRepository.js +4 -4
  132. package/dist/output-gateway/public/data-access/redis/PublicGtfsDepartureRepository.js.map +1 -1
  133. package/dist/output-gateway/public/ioc/Di.js +1 -1
  134. package/dist/output-gateway/public/ioc/Di.js.map +1 -1
  135. package/dist/output-gateway/ropid-gtfs/data-access/redis/GtfsStopsRedisRepository.d.ts +13 -0
  136. package/dist/output-gateway/ropid-gtfs/data-access/redis/GtfsStopsRedisRepository.js +83 -0
  137. package/dist/output-gateway/ropid-gtfs/data-access/redis/GtfsStopsRedisRepository.js.map +1 -0
  138. package/dist/output-gateway/shared/constants/route-version.d.ts +2 -1
  139. package/dist/output-gateway/shared/constants/route-version.js +1 -0
  140. package/dist/output-gateway/shared/constants/route-version.js.map +1 -1
  141. package/dist/output-gateway/{public → shared}/service/VPSubscriber.d.ts +4 -2
  142. package/dist/output-gateway/{public → shared}/service/VPSubscriber.js +1 -1
  143. package/dist/output-gateway/shared/service/VPSubscriber.js.map +1 -0
  144. package/dist/schema-definitions/jis/redis/const.d.ts +1 -0
  145. package/dist/schema-definitions/jis/redis/const.js +2 -1
  146. package/dist/schema-definitions/jis/redis/const.js.map +1 -1
  147. package/dist/schema-definitions/jis/redis/interfaces/IJISInfotextDto.d.ts +17 -0
  148. package/dist/schema-definitions/jis/redis/interfaces/IJISInfotextDto.js +3 -0
  149. package/dist/schema-definitions/jis/redis/interfaces/IJISInfotextDto.js.map +1 -0
  150. package/dist/schema-definitions/jis/redis/schemas/JISInfotextDtoSchema.d.ts +3 -0
  151. package/dist/schema-definitions/jis/redis/schemas/JISInfotextDtoSchema.js +59 -0
  152. package/dist/schema-definitions/jis/redis/schemas/JISInfotextDtoSchema.js.map +1 -0
  153. package/dist/schema-definitions/ropid-departures-presets/index.d.ts +1 -0
  154. package/dist/schema-definitions/ropid-departures-presets/index.js +3 -0
  155. package/dist/schema-definitions/ropid-departures-presets/index.js.map +1 -1
  156. package/dist/schema-definitions/ropid-gtfs/interfaces/IStopCisDto.d.ts +16 -0
  157. package/dist/schema-definitions/ropid-gtfs/interfaces/IStopCisDto.js +3 -0
  158. package/dist/schema-definitions/ropid-gtfs/interfaces/IStopCisDto.js.map +1 -0
  159. package/dist/schema-definitions/ropid-gtfs/interfaces/IStopDto.d.ts +1 -0
  160. package/dist/schema-definitions/ropid-gtfs/models/StopCisDto.d.ts +58 -0
  161. package/dist/schema-definitions/ropid-gtfs/models/StopCisDto.js +69 -0
  162. package/dist/schema-definitions/ropid-gtfs/models/StopCisDto.js.map +1 -0
  163. package/dist/schema-definitions/ropid-gtfs/redis/const.d.ts +1 -0
  164. package/dist/schema-definitions/ropid-gtfs/redis/const.js +2 -1
  165. package/dist/schema-definitions/ropid-gtfs/redis/const.js.map +1 -1
  166. package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.d.ts +3 -2
  167. package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.js +4 -0
  168. package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.js.map +1 -1
  169. package/dist/schema-definitions/vehicle-positions/models/views/interfaces/IPublicStopTimeDto.d.ts +1 -0
  170. package/dist/schema-definitions/vehicle-positions/redis/interfaces/IPublicApiCacheDto.d.ts +2 -0
  171. package/dist/schema-definitions/vehicle-positions/redis/interfaces/IPublicStopTimeCacheDto.d.ts +1 -0
  172. package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicApiCacheDtoSchema.js +8 -0
  173. package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicApiCacheDtoSchema.js.map +1 -1
  174. package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.js +4 -1
  175. package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.js.map +1 -1
  176. package/docs/asyncapi.yaml +45 -0
  177. package/docs/cache/types/redis.md +82 -2
  178. package/docs/jis/index.md +15 -5
  179. package/docs/openapi-input.yaml +13 -2
  180. package/docs/openapi-output.yaml +326 -4
  181. package/package.json +2 -2
  182. package/dist/output-gateway/public/service/VPSubscriber.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JIS_METADATA_NAMESPACE_PREFIX = void 0;
3
+ exports.JIS_NAMESPACE_PREFIX = exports.JIS_METADATA_NAMESPACE_PREFIX = void 0;
4
4
  exports.JIS_METADATA_NAMESPACE_PREFIX = "jisMetadata";
5
+ exports.JIS_NAMESPACE_PREFIX = "jisCache";
5
6
  //# sourceMappingURL=const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/schema-definitions/jis/redis/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,6BAA6B,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/schema-definitions/jis/redis/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAC9C,QAAA,oBAAoB,GAAG,UAAU,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { JISInfotextSeverityLevel } from "../../../../helpers/jis/JISInfotextSeverityLevelEnum";
2
+ export interface IJISInfotextDto {
3
+ id: string;
4
+ severity_level: JISInfotextSeverityLevel;
5
+ display_type: string;
6
+ active_period_start: string;
7
+ active_period_end: string | null;
8
+ description_text: {
9
+ cs: string;
10
+ en: string | null;
11
+ };
12
+ created_timestamp: string;
13
+ updated_timestamp: string;
14
+ stops: Array<{
15
+ stop_id: string;
16
+ }>;
17
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IJISInfotextDto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IJISInfotextDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/jis/redis/interfaces/IJISInfotextDto.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
2
+ import { IJISInfotextDto } from "../interfaces/IJISInfotextDto";
3
+ export declare const JISInfotextDtoSchema: JSONSchemaType<IJISInfotextDto[]>;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JISInfotextDtoSchema = void 0;
4
+ exports.JISInfotextDtoSchema = {
5
+ $schema: "http://json-schema.org/draft-04/schema#",
6
+ title: "JISInfotextDto",
7
+ type: "array",
8
+ items: {
9
+ type: "object",
10
+ properties: {
11
+ id: { type: "string" },
12
+ severity_level: { type: "string" },
13
+ display_type: { type: "string" },
14
+ active_period_start: { type: "string", format: "date-time" },
15
+ active_period_end: {
16
+ oneOf: [
17
+ { type: "string", format: "date-time" },
18
+ { type: "null", nullable: true },
19
+ ],
20
+ },
21
+ description_text: {
22
+ type: "object",
23
+ properties: {
24
+ cs: { type: "string" },
25
+ en: {
26
+ oneOf: [{ type: "string" }, { type: "null", nullable: true }],
27
+ },
28
+ },
29
+ required: ["cs", "en"],
30
+ additionalProperties: false,
31
+ },
32
+ created_timestamp: { type: "string", format: "date-time" },
33
+ updated_timestamp: { type: "string", format: "date-time" },
34
+ stops: {
35
+ type: "array",
36
+ items: {
37
+ type: "object",
38
+ properties: {
39
+ stop_id: { type: "string" },
40
+ },
41
+ required: ["stop_id"],
42
+ additionalProperties: false,
43
+ },
44
+ },
45
+ },
46
+ required: [
47
+ "id",
48
+ "severity_level",
49
+ "display_type",
50
+ "active_period_start",
51
+ "description_text",
52
+ "created_timestamp",
53
+ "updated_timestamp",
54
+ "stops",
55
+ ],
56
+ additionalProperties: false,
57
+ },
58
+ };
59
+ //# sourceMappingURL=JISInfotextDtoSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JISInfotextDtoSchema.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/jis/redis/schemas/JISInfotextDtoSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,oBAAoB,GAAsC;IACnE,OAAO,EAAE,yCAAyC;IAClD,KAAK,EAAE,gBAAgB;IACvB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAClC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,mBAAmB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;YAC5D,iBAAiB,EAAE;gBACf,KAAK,EAAE;oBACH,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;oBACvC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;iBACnC;aACJ;YACD,gBAAgB,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACtB,EAAE,EAAE;wBACA,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;qBAChE;iBACJ;gBACD,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;gBACtB,oBAAoB,EAAE,KAAK;aAC9B;YACD,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;YAC1D,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;YAC1D,KAAK,EAAE;gBACH,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACR,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qBAC9B;oBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;oBACrB,oBAAoB,EAAE,KAAK;iBAC9B;aACJ;SACJ;QACD,QAAQ,EAAE;YACN,IAAI;YACJ,gBAAgB;YAChB,cAAc;YACd,qBAAqB;YACrB,kBAAkB;YAClB,mBAAmB;YACnB,mBAAmB;YACnB,OAAO;SACV;QACD,oBAAoB,EAAE,KAAK;KAC9B;CACJ,CAAC"}
@@ -6,6 +6,7 @@ interface IRopidDeparturesPreset {
6
6
  route: string;
7
7
  query: string;
8
8
  note: string;
9
+ isTesting?: boolean;
9
10
  }
10
11
  declare const forExport: {
11
12
  name: string;
@@ -33,6 +33,9 @@ const datasourceJsonSchema = {
33
33
  type: "string",
34
34
  maxLength: 1000,
35
35
  },
36
+ isTesting: {
37
+ type: "boolean",
38
+ },
36
39
  },
37
40
  },
38
41
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema-definitions/ropid-departures-presets/index.ts"],"names":[],"mappings":";;;AAAA,iDAAiD;AACjD,+CAA6C;AAE7C,+FAAgF;AAChF,6EAAgG;AAUhG,MAAM,oBAAoB,GAAG;IACzB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAA6C;YACnD,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;aACjB;YACD,UAAU,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,gBAAgB,EAAE,GAAG;aACxB;YACD,KAAK,EAAE;gBACH,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;aACjB;YACD,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;aACjB;YACD,IAAI,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,IAAI;aAClB;SACJ;KACJ;CACJ,CAAC;AAEF,MAAM,SAAS,GAAG;IACd,IAAI,EAAE,wBAAwB;IAC9B,oBAAoB;IACpB,gBAAgB,EAAE,6DAAuB;IACzC,yBAAyB,EAAE,8CAAiB;IAC5C,WAAW,EAAE,0BAA0B;CAC1C,CAAC;AAEoB,2CAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema-definitions/ropid-departures-presets/index.ts"],"names":[],"mappings":";;;AAAA,iDAAiD;AACjD,+CAA6C;AAE7C,+FAAgF;AAChF,6EAAgG;AAWhG,MAAM,oBAAoB,GAAG;IACzB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAA6C;YACnD,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;aACjB;YACD,UAAU,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,gBAAgB,EAAE,GAAG;aACxB;YACD,KAAK,EAAE;gBACH,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;aACjB;YACD,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;aACjB;YACD,IAAI,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,IAAI;aAClB;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,SAAS;aAClB;SACJ;KACJ;CACJ,CAAC;AAEF,MAAM,SAAS,GAAG;IACd,IAAI,EAAE,wBAAwB;IAC9B,oBAAoB;IACpB,gBAAgB,EAAE,6DAAuB;IACzC,yBAAyB,EAAE,8CAAiB;IAC5C,WAAW,EAAE,0BAA0B;CAC1C,CAAC;AAEoB,2CAAsB"}
@@ -0,0 +1,16 @@
1
+ import { IStopDto } from "./IStopDto";
2
+ export interface IStopCisDto {
3
+ alt_idos_name: string;
4
+ cis: number;
5
+ id: string;
6
+ jtsk_x: number;
7
+ jtsk_y: number;
8
+ lat: number;
9
+ lon: number;
10
+ platform: string;
11
+ wheelchair_access: string;
12
+ zone: string;
13
+ created_at: Date;
14
+ updated_at: Date;
15
+ gtfs_stop?: IStopDto;
16
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IStopCisDto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IStopCisDto.js","sourceRoot":"","sources":["../../../../src/schema-definitions/ropid-gtfs/interfaces/IStopCisDto.ts"],"names":[],"mappings":""}
@@ -19,3 +19,4 @@ export interface IStopDto {
19
19
  export interface IStopComputedDto {
20
20
  computed_cis_stop_id: string | null;
21
21
  }
22
+ export type IAwsNodeIdGtfsStopIdDto = Pick<IStopDto, "asw_node_id" | "stop_id">;
@@ -0,0 +1,58 @@
1
+ import { IStopCisDto } from "../interfaces/IStopCisDto";
2
+ import { Model, CreationOptional, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
3
+ export declare class StopCisDto extends Model<IStopCisDto> implements IStopCisDto {
4
+ static tableName: string;
5
+ alt_idos_name: string;
6
+ cis: number;
7
+ id: string;
8
+ jtsk_x: number;
9
+ jtsk_y: number;
10
+ lat: number;
11
+ lon: number;
12
+ platform: string;
13
+ wheelchair_access: string;
14
+ zone: string;
15
+ created_at: CreationOptional<Date>;
16
+ updated_at: CreationOptional<Date>;
17
+ stop_id?: string;
18
+ static attributeModel: ModelAttributes<StopCisDto>;
19
+ static jsonSchema: {
20
+ type: string;
21
+ properties: {
22
+ type: string;
23
+ properties: {
24
+ alt_idos_name: {
25
+ type: string;
26
+ };
27
+ cis: {
28
+ type: string;
29
+ };
30
+ id: {
31
+ type: string;
32
+ };
33
+ jtsk_x: {
34
+ type: string;
35
+ };
36
+ jtsk_y: {
37
+ type: string;
38
+ };
39
+ lat: {
40
+ type: string;
41
+ };
42
+ lon: {
43
+ type: string;
44
+ };
45
+ platform: {
46
+ type: string;
47
+ };
48
+ wheelchair_access: {
49
+ type: string;
50
+ };
51
+ zone: {
52
+ type: string;
53
+ };
54
+ };
55
+ required: string[];
56
+ };
57
+ };
58
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StopCisDto = void 0;
4
+ const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
5
+ class StopCisDto extends sequelize_1.Model {
6
+ }
7
+ exports.StopCisDto = StopCisDto;
8
+ StopCisDto.tableName = "ropidgtfs_cis_stops";
9
+ StopCisDto.attributeModel = {
10
+ alt_idos_name: {
11
+ type: sequelize_1.DataTypes.STRING,
12
+ },
13
+ cis: {
14
+ type: sequelize_1.DataTypes.INTEGER,
15
+ },
16
+ id: {
17
+ primaryKey: true,
18
+ type: sequelize_1.DataTypes.STRING,
19
+ },
20
+ jtsk_x: {
21
+ type: sequelize_1.DataTypes.DOUBLE,
22
+ },
23
+ jtsk_y: {
24
+ type: sequelize_1.DataTypes.DOUBLE,
25
+ },
26
+ lat: {
27
+ type: sequelize_1.DataTypes.DOUBLE,
28
+ },
29
+ lon: {
30
+ type: sequelize_1.DataTypes.DOUBLE,
31
+ },
32
+ platform: {
33
+ type: sequelize_1.DataTypes.STRING,
34
+ },
35
+ wheelchair_access: {
36
+ type: sequelize_1.DataTypes.STRING,
37
+ },
38
+ zone: {
39
+ type: sequelize_1.DataTypes.STRING,
40
+ },
41
+ created_at: {
42
+ type: sequelize_1.DataTypes.DATE,
43
+ allowNull: false,
44
+ },
45
+ updated_at: {
46
+ type: sequelize_1.DataTypes.DATE,
47
+ allowNull: false,
48
+ },
49
+ };
50
+ StopCisDto.jsonSchema = {
51
+ type: "array",
52
+ properties: {
53
+ type: "object",
54
+ properties: {
55
+ alt_idos_name: { type: "string" },
56
+ cis: { type: "integer" },
57
+ id: { type: "string" },
58
+ jtsk_x: { type: "number" },
59
+ jtsk_y: { type: "number" },
60
+ lat: { type: "number" },
61
+ lon: { type: "number" },
62
+ platform: { type: "string" },
63
+ wheelchair_access: { type: "string" },
64
+ zone: { type: "string" },
65
+ },
66
+ required: ["cis", "id"],
67
+ },
68
+ };
69
+ //# sourceMappingURL=StopCisDto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StopCisDto.js","sourceRoot":"","sources":["../../../../src/schema-definitions/ropid-gtfs/models/StopCisDto.ts"],"names":[],"mappings":";;;AACA,mEAA0G;AAE1G,MAAa,UAAW,SAAQ,iBAAkB;;AAAlD,gCAkFC;AAjFiB,oBAAS,GAAG,qBAAqB,CAAC;AAoBlC,yBAAc,GAAgC;IACxD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,EAAE,EAAE;QACA,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,iBAAiB,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;KACnB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEY,qBAAU,GAAG;IACvB,IAAI,EAAE,OAAO;IACb,UAAU,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACjC,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACxB,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACrC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3B;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;KAC1B;CACJ,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export declare const GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = "gtfsRunSchedule";
2
2
  export declare const PUBLIC_DEPARTURE_NAMESPACE_PREFIX = "gtfsPublicDepartureCache";
3
+ export declare const GTFS_STOPS_NAMESPACE_PREFIX = "gtfsStopsCache";
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PUBLIC_DEPARTURE_NAMESPACE_PREFIX = exports.GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = void 0;
3
+ exports.GTFS_STOPS_NAMESPACE_PREFIX = exports.PUBLIC_DEPARTURE_NAMESPACE_PREFIX = exports.GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = void 0;
4
4
  exports.GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = "gtfsRunSchedule";
5
5
  exports.PUBLIC_DEPARTURE_NAMESPACE_PREFIX = "gtfsPublicDepartureCache";
6
+ exports.GTFS_STOPS_NAMESPACE_PREFIX = "gtfsStopsCache";
6
7
  //# sourceMappingURL=const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/schema-definitions/ropid-gtfs/redis/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,kCAAkC,GAAG,iBAAiB,CAAC;AACvD,QAAA,iCAAiC,GAAG,0BAA0B,CAAC"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/schema-definitions/ropid-gtfs/redis/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,kCAAkC,GAAG,iBAAiB,CAAC;AACvD,QAAA,iCAAiC,GAAG,0BAA0B,CAAC;AAC/D,QAAA,2BAA2B,GAAG,gBAAgB,CAAC"}
@@ -1,7 +1,7 @@
1
- import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
2
- import { IPublicStopTimeDto } from "./interfaces/IPublicStopTimeDto";
3
1
  import { GTFSRouteTypeEnum } from "../../../../helpers/RouteTypeEnums";
4
2
  import { ProviderSourceTypeEnum } from "../../../../integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ProviderSourceTypeEnum";
3
+ import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
4
+ import { IPublicStopTimeDto } from "./interfaces/IPublicStopTimeDto";
5
5
  export declare class PublicStopTimeModel extends Model<PublicStopTimeModel> implements IPublicStopTimeDto {
6
6
  static tableName: string;
7
7
  rt_trip_id: string;
@@ -19,5 +19,6 @@ export declare class PublicStopTimeModel extends Model<PublicStopTimeModel> impl
19
19
  cis_stop_platform_code: string | null;
20
20
  platform_code: string | null;
21
21
  stop_id: string;
22
+ stop_name: string;
22
23
  static attributeModel: ModelAttributes<PublicStopTimeModel>;
23
24
  }
@@ -69,5 +69,9 @@ PublicStopTimeModel.attributeModel = {
69
69
  type: sequelize_1.DataTypes.STRING,
70
70
  allowNull: false,
71
71
  },
72
+ stop_name: {
73
+ type: sequelize_1.DataTypes.STRING,
74
+ allowNull: false,
75
+ },
72
76
  };
73
77
  //# sourceMappingURL=PublicStopTimeModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PublicStopTimeModel.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.ts"],"names":[],"mappings":";;;AAAA,mEAAwF;AAKxF,MAAa,mBAAoB,SAAQ,iBAA0B;;AAAnE,kDAmFC;AAlFiB,6BAAS,GAAG,+CAA+C,CAAC;AAkB5D,kCAAc,GAAyC;IACjE,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,YAAY,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACnB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,qBAAqB,EAAE;QACnB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,mBAAmB,EAAE;QACjB,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACzB,SAAS,EAAE,KAAK;KACnB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,2BAA2B,EAAE;QACzB,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,sBAAsB,EAAE;QACpB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC"}
1
+ {"version":3,"file":"PublicStopTimeModel.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.ts"],"names":[],"mappings":";;;AAEA,mEAAwF;AAGxF,MAAa,mBAAoB,SAAQ,iBAA0B;;AAAnE,kDAwFC;AAvFiB,6BAAS,GAAG,+CAA+C,CAAC;AAmB5D,kCAAc,GAAyC;IACjE,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,YAAY,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACnB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,qBAAqB,EAAE;QACnB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,mBAAmB,EAAE;QACjB,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACzB,SAAS,EAAE,KAAK;KACnB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,2BAA2B,EAAE;QACzB,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,sBAAsB,EAAE;QACpB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACnB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC"}
@@ -16,4 +16,5 @@ export interface IPublicStopTimeDto {
16
16
  cis_stop_platform_code: string | null;
17
17
  platform_code: string | null;
18
18
  stop_id: string;
19
+ stop_name: string;
19
20
  }
@@ -14,8 +14,10 @@ export interface IPublicApiCacheDto {
14
14
  is_wheelchair_accessible: boolean | null;
15
15
  origin_route_name: string | null;
16
16
  shape_id: string | null;
17
+ trip_number: number | null;
17
18
  run_number: number | null;
18
19
  trip_headsign: string | null;
20
+ direction_id: number;
19
21
  shape_dist_traveled: number | null;
20
22
  last_stop_sequence: number | null;
21
23
  origin_timestamp: string;
@@ -5,4 +5,5 @@ export interface IPublicStopTimeCacheDto {
5
5
  cis_stop_platform_code: string | null;
6
6
  platform_code: string | null;
7
7
  stop_id: string;
8
+ stop_name: string;
8
9
  }
@@ -61,12 +61,18 @@ const publicApiCacheDtoSchema = {
61
61
  shape_id: {
62
62
  oneOf: [{ type: "string" }, { type: "null", nullable: true }],
63
63
  },
64
+ trip_number: {
65
+ oneOf: [{ type: "number" }, { type: "null", nullable: true }],
66
+ },
64
67
  run_number: {
65
68
  oneOf: [{ type: "number" }, { type: "null", nullable: true }],
66
69
  },
67
70
  trip_headsign: {
68
71
  oneOf: [{ type: "string" }, { type: "null", nullable: true }],
69
72
  },
73
+ direction_id: {
74
+ type: "number",
75
+ },
70
76
  shape_dist_traveled: {
71
77
  oneOf: [{ type: "number" }, { type: "null", nullable: true }],
72
78
  },
@@ -85,8 +91,10 @@ const publicApiCacheDtoSchema = {
85
91
  "origin_timestamp",
86
92
  "origin_route_name",
87
93
  "shape_id",
94
+ "trip_number",
88
95
  "run_number",
89
96
  "trip_headsign",
97
+ "direction_id",
90
98
  "shape_dist_traveled",
91
99
  "last_stop_sequence",
92
100
  "registration_number",
@@ -1 +1 @@
1
- {"version":3,"file":"PublicApiCacheDtoSchema.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/redis/schemas/PublicApiCacheDtoSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PublicApiCacheDtoSchema.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/redis/schemas/PublicApiCacheDtoSchema.ts"],"names":[],"mappings":"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"}
@@ -58,8 +58,11 @@ const publicStopTimeCacheDtoSchema = {
58
58
  stop_id: {
59
59
  type: "string",
60
60
  },
61
+ stop_name: {
62
+ type: "string",
63
+ },
61
64
  },
62
- required: ["sequence", "arr_delay", "dep_delay", "cis_stop_platform_code", "platform_code", "stop_id"],
65
+ required: ["sequence", "arr_delay", "dep_delay", "cis_stop_platform_code", "platform_code", "stop_id", "stop_name"],
63
66
  },
64
67
  };
65
68
  exports.PublicStopTimeCacheDtoSchema = publicStopTimeCacheDtoSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"PublicStopTimeCacheDtoSchema.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.ts"],"names":[],"mappings":";;;AAGA,MAAM,4BAA4B,GAA8C;IAC5E,OAAO,EAAE,yCAAyC;IAClD,KAAK,EAAE,mBAAmB;IAC1B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB;YACD,SAAS,EAAE;gBACP,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,SAAS,EAAE;gBACP,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,sBAAsB,EAAE;gBACpB,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,aAAa,EAAE;gBACX,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,wBAAwB,EAAE,eAAe,EAAE,SAAS,CAAC;KACzG;CACJ,CAAC;AACuC,oEAA4B"}
1
+ {"version":3,"file":"PublicStopTimeCacheDtoSchema.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.ts"],"names":[],"mappings":";;;AAGA,MAAM,4BAA4B,GAA8C;IAC5E,OAAO,EAAE,yCAAyC;IAClD,KAAK,EAAE,mBAAmB;IAC1B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB;YACD,SAAS,EAAE;gBACP,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,SAAS,EAAE;gBACP,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,sBAAsB,EAAE;gBACpB,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,aAAa,EAAE;gBACX,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,QAAQ;qBACjB;oBACD;wBACI,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;qBACjB;iBACJ;aACJ;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;aACjB;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,wBAAwB,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,CAAC;KACtH;CACJ,CAAC;AACuC,oEAA4B"}
@@ -48,6 +48,39 @@ channels:
48
48
  messages:
49
49
  empty:
50
50
  $ref: "#/components/messages/JISInfotexts"
51
+ jis.refreshJISInfotextsCache:
52
+ address: vehicle-positions.jis.refreshJISInfotextsCache
53
+ description: Refresh JIS infotexts cache in Redis (Valkey)
54
+ bindings:
55
+ amqp:
56
+ is: queue
57
+ queue:
58
+ durable: true
59
+ messages:
60
+ empty:
61
+ $ref: "#/components/messages/emptyMessage"
62
+ ropidgtfs.refreshPublicGtfsDepartureCache:
63
+ address: vehicle-positions.ropidgtfs.refreshPublicGtfsDepartureCache
64
+ description: Refresh PublicGtfsDepartureCache
65
+ bindings:
66
+ amqp:
67
+ is: queue
68
+ queue:
69
+ durable: true
70
+ messages:
71
+ empty:
72
+ $ref: "#/components/messages/emptyMessage"
73
+ ropidgtfs.refreshGtfsStopsCache:
74
+ address: vehicle-positions.ropidgtfs.refreshGtfsStopsCache
75
+ description: Refresh GtfsStopsCache
76
+ bindings:
77
+ amqp:
78
+ is: queue
79
+ queue:
80
+ durable: true
81
+ messages:
82
+ empty:
83
+ $ref: "#/components/messages/emptyMessage"
51
84
  updateGTFSTripId:
52
85
  address: vehicle-positions.vehiclepositions.updateGTFSTripId
53
86
  description: some description
@@ -294,6 +327,18 @@ operations:
294
327
  action: "send"
295
328
  channel:
296
329
  $ref: "#/channels/jis.refreshJISInfotexts"
330
+ jis.refreshJISInfotextsCache:
331
+ action: "send"
332
+ channel:
333
+ $ref: "#/channels/jis.refreshJISInfotextsCache"
334
+ ropidgtfs.refreshPublicGtfsDepartureCache:
335
+ action: "send"
336
+ channel:
337
+ $ref: "#/channels/ropidgtfs.refreshPublicGtfsDepartureCache"
338
+ ropidgtfs.refreshGtfsStopsCache:
339
+ action: "send"
340
+ channel:
341
+ $ref: "#/channels/ropidgtfs.refreshGtfsStopsCache"
297
342
  updateGTFSTripId:
298
343
  action: "send"
299
344
  channel:
@@ -62,7 +62,7 @@ flowchart TD;
62
62
  - Pomocný timestamp se načte pomocí `GET` a vrátí se jako hodnota hlavičky `Last-Modified` převedená na ISO string. Pokud timestamp neexistuje, hodnota hlavičky bude unix timestamp 0 jako ISO string. Využívá se především pro monitoring a alerting
63
63
  - Feedy se generují nejméně 3x za minutu (rabín 2x) pomocí queue-message
64
64
  - Používají redis-mutex na zamykání, aby neběželo více shodných tasků v jeden okamžik
65
- - Pokud generování stíhá běžet rychleji, task se snaží do ±7 vteřin svého běhu spustit nové generování souborů (opět přes queue-message).
65
+ - Pokud generování stíhá běžet rychleji, task se snaží do ±7 vteřin svého běhu spustit nové generování souborů (opět přes queue-message).
66
66
 
67
67
  ### Flowchart
68
68
 
@@ -152,6 +152,7 @@ flowchart TD;
152
152
  - `cis_stop_platform_code` - nástupiště/kolej podle CIS u vlakových zastávek, jinde null
153
153
  - `platform_code` - označení zastávky podle GTFS
154
154
  - `stop_id` - GTFS id zastávky
155
+ - `stop_name` - název zastávky
155
156
  - TTL 1 hodina a 5 minut
156
157
  - Automatické promazání dat po úspěšném načtení GTFS jíždních řádů
157
158
  - Cca jednou za 5 vteřin se přenačtou stop times pro všechny aktivní spoje. Generování může běžet pouze jednou, po dokončení tasku se spustí znovu (max čekání 4.8 vteřin)
@@ -313,4 +314,83 @@ flowchart TD;
313
314
  rt_info["Obohacení o RT informace"];
314
315
  get_departures--"Alespoň jedno vozidlo připadá nějakému spoji (aktivní, budoucí i zrušené) na odjezdu"-->rt_info;
315
316
  rt_info--"RT informace o spoji"-->redis_repository<-->redis_public_cache;
316
- ```
317
+ ```
318
+
319
+ ## Cache pro API přestupních tabulí (transfer boards)
320
+
321
+ *(přestupní tabule využívají také cache pro Public API, která je již popsána výše)*
322
+
323
+ ### gtfsStopsCache:*
324
+
325
+ - Jednotlivé komponenty cache jsou členěny do sad s `$setId`
326
+ - `$setId` je id vygenerované datové sady (4 náhodné bajty reprezentované hexadecimálně)
327
+ - Nová sada je vytvořena při každém přenačtení cache
328
+ - Id `$setId` nejnovější datové sady se propaguje přes PubSub channel `gtfsStopsCache` a je také uloženo v cache jako hodnota položky `gtfsStopsCache:activeSetName`
329
+ - Komponenty:
330
+ - `gtfsStopsCache:$setId:aswNodeToGtfsStops` - Hash mapa, mapující daný ASW node na seznam pod něj spadajících zastávek (GTFS ids zastávek, odděleny čárkami)
331
+ - `gtfsStopsCache:$setId:cisToAswNode` - Hash mapa, mapující dané CIS id zastávky na příslušný ASW node
332
+ - TTL žádné (mimo přenačtení cache, kdy je namísto okamžitého promazání původnímu setu nastaveno TTL 1 minuta)
333
+ - Cache je celá přenačtena vždy po přenačtení jízdních řádů (tedy 1-2x denně při stavu k červenci 2025)
334
+
335
+ ### jisCache:*
336
+
337
+ - Jednotlivé komponenty cache jsou členěny do sad s `$setId`
338
+ - `$setId` je id vygenerované datové sady (4 náhodné bajty reprezentované hexadecimálně)
339
+ - Nová sada je vytvořena při každém přenačtení cache
340
+ - Id `$setId` nejnovější datové sady se propaguje přes PubSub channel `jisCache` a je také uloženo v cache jako hodnota položky `jisCache:activeSetName`
341
+ - Komponenty:
342
+ - `jisCache:$setId:infotexts` - Hash mapa, mapující dané id infotextu na informace o onom infotextu (JSON jako string)
343
+ - `jisCache:$setId:stops-infotexts` - Hash mapa, mapující dané GTFS id zástavky na seznam infotextů s ní asociovaných (ids infotextů, odděleny čárkami)
344
+ - TTL žádné (mimo přenačtení cache, kdy je namísto okamžitého promazání původnímu setu nastaveno TTL 1 minuta)
345
+ - Cache je celá přenačtena při každé aktualizaci infotextů (tento proces je více popsán v [Dokumentaci propisu VYMI (JIS) dat do datové platformy](../../jis/index.md))
346
+
347
+ ### Flowchart (refresh gtfsStopsCache:*)
348
+
349
+ ```mermaid
350
+ flowchart LR
351
+ finish_up_gtfs("`Dokončení zpracování GTFS JŘ`");
352
+
353
+ psql_ropidgtfs_cis_stops[("`PSQL ropidgtfs_cis_stops`")];
354
+ psql_ropidgtfs_stops[("`PSQL ropidgtfs_stops`")];
355
+
356
+ redis_gtfsStopsCache[("`Redis gtfsStopsCache:\*`")];
357
+
358
+ amqp_refreshGtfsStopsCache["`AMQP refreshGtfsStopsCache`"];
359
+
360
+ task_RefreshGtfsStopsCacheTask["`RefreshGtfsStopsCacheTask`"];
361
+
362
+ finish_up_gtfs --> amqp_refreshGtfsStopsCache;
363
+ amqp_refreshGtfsStopsCache --> task_RefreshGtfsStopsCacheTask;
364
+ task_RefreshGtfsStopsCacheTask <-- "`ASW ids a CIS ids zastávek`" --> psql_ropidgtfs_cis_stops;
365
+ task_RefreshGtfsStopsCacheTask <-- "`ASW nodes a GTFS ids zastávek`" --> psql_ropidgtfs_stops;
366
+ task_RefreshGtfsStopsCacheTask -- "`HSET gtfsStopsCache:$setId:aswNodeToGtfsStops a gtfsStopsCache:$setId:cisToAswNode, EXPIRE staré sady`" --> redis_gtfsStopsCache;
367
+ ```
368
+
369
+ ### Flowchart (refresh jisCache:*)
370
+
371
+ ```mermaid
372
+ flowchart LR
373
+ refresh_infotexts("`Aktualizace infotextů`");
374
+
375
+ psql_jis_infotexts[("`PSQL jis_infotexts`")];
376
+ psql_jis_infotexts_ropidgtfs_stops[("`PSQL jis_infotexts_ropidgtfs_stops`")];
377
+
378
+ redis_jisCache[("`Redis jisCache:\*`")];
379
+
380
+ amqp_refreshJISInfotextsCache["`AMQP refreshJISInfotextsCache`"];
381
+
382
+ task_RefreshJISInfotextsTask["`RefreshJISInfotextsTask`"];
383
+
384
+ refresh_infotexts --> amqp_refreshJISInfotextsCache;
385
+ amqp_refreshJISInfotextsCache --> task_RefreshJISInfotextsTask;
386
+ task_RefreshJISInfotextsTask <-- "`Data infotextů`" --> psql_jis_infotexts;
387
+ task_RefreshJISInfotextsTask <-- "`GTFS ids zastávek a ids infotextů`" --> psql_jis_infotexts_ropidgtfs_stops;
388
+ task_RefreshJISInfotextsTask -- "`HSET jisCache:$setId:infotexts a jisCache:$setId:stops-infotexts, EXPIRE staré sady`" --> redis_jisCache;
389
+ ```
390
+
391
+ ### Flowchart (v4 transferboards API)
392
+
393
+ ```mermaid
394
+ flowchart TD;
395
+ todo["TODO"];
396
+ ```