@golemio/parkings 1.8.0 → 1.8.1-dev.1199614289

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 (87) hide show
  1. package/db/migrations/postgresql/20240223144949-iptoict-up.js +53 -0
  2. package/db/migrations/postgresql/sqls/20240223144949-iptoict-up-down.sql +1 -0
  3. package/db/migrations/postgresql/sqls/20240223144949-iptoict-up-up.sql +8 -0
  4. package/dist/helpers/SourceEnum.d.ts +2 -1
  5. package/dist/helpers/SourceEnum.js +1 -0
  6. package/dist/helpers/SourceEnum.js.map +1 -1
  7. package/dist/input-gateway/controllers/IsphkParkingController.d.ts +9 -0
  8. package/dist/input-gateway/controllers/IsphkParkingController.js +41 -0
  9. package/dist/input-gateway/controllers/IsphkParkingController.js.map +1 -0
  10. package/dist/input-gateway/index.d.ts +1 -0
  11. package/dist/input-gateway/index.js +1 -0
  12. package/dist/input-gateway/index.js.map +1 -1
  13. package/dist/input-gateway/routers/IsphkParkingRouter.d.ts +12 -0
  14. package/dist/input-gateway/routers/IsphkParkingRouter.js +39 -0
  15. package/dist/input-gateway/routers/IsphkParkingRouter.js.map +1 -0
  16. package/dist/input-gateway/routers/ParkingSourcesRouter.d.ts +1 -1
  17. package/dist/input-gateway/routers/ParkingSourcesRouter.js +4 -4
  18. package/dist/input-gateway/routers/ParkingSourcesRouter.js.map +1 -1
  19. package/dist/integration-engine/constants/DataSources.d.ts +2 -1
  20. package/dist/integration-engine/constants/DataSources.js +1 -0
  21. package/dist/integration-engine/constants/DataSources.js.map +1 -1
  22. package/dist/integration-engine/datasources/interfaces/IGenericFeature.js.map +1 -0
  23. package/dist/integration-engine/datasources/manual/IptoictDataSource.d.ts +9 -0
  24. package/dist/integration-engine/datasources/manual/IptoictDataSource.js +53 -0
  25. package/dist/integration-engine/datasources/manual/IptoictDataSource.js.map +1 -0
  26. package/dist/integration-engine/datasources/osm/OsmDataSource.d.ts +1 -1
  27. package/dist/integration-engine/ioc/Di.js +11 -1
  28. package/dist/integration-engine/ioc/Di.js.map +1 -1
  29. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +5 -0
  30. package/dist/integration-engine/ioc/ModuleContainerToken.js +7 -0
  31. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  32. package/dist/integration-engine/repositories/ParkingsMeasurementRepository.d.ts +4 -0
  33. package/dist/integration-engine/repositories/ParkingsMeasurementRepository.js +32 -0
  34. package/dist/integration-engine/repositories/ParkingsMeasurementRepository.js.map +1 -0
  35. package/dist/integration-engine/repositories/ParkingsMeasurementsActualRepository.d.ts +4 -0
  36. package/dist/integration-engine/repositories/ParkingsMeasurementsActualRepository.js +32 -0
  37. package/dist/integration-engine/repositories/ParkingsMeasurementsActualRepository.js.map +1 -0
  38. package/dist/integration-engine/transformations/IptoictParkingSpaceTransformation.d.ts +8 -0
  39. package/dist/integration-engine/transformations/IptoictParkingSpaceTransformation.js +26 -0
  40. package/dist/integration-engine/transformations/IptoictParkingSpaceTransformation.js.map +1 -0
  41. package/dist/integration-engine/transformations/IptoictParkingTransformation.d.ts +10 -0
  42. package/dist/integration-engine/transformations/IptoictParkingTransformation.js +42 -0
  43. package/dist/integration-engine/transformations/IptoictParkingTransformation.js.map +1 -0
  44. package/dist/integration-engine/transformations/isphk/IIsphkParkingSchema.d.ts +9 -0
  45. package/dist/integration-engine/transformations/isphk/IIsphkParkingSchema.js +3 -0
  46. package/dist/integration-engine/transformations/isphk/IIsphkParkingSchema.js.map +1 -0
  47. package/dist/integration-engine/transformations/isphk/IsphkMeasurementTransformation.d.ts +9 -0
  48. package/dist/integration-engine/transformations/isphk/IsphkMeasurementTransformation.js +25 -0
  49. package/dist/integration-engine/transformations/isphk/IsphkMeasurementTransformation.js.map +1 -0
  50. package/dist/integration-engine/transformations/osm/OsmParkingSpaceTransformation.d.ts +1 -1
  51. package/dist/integration-engine/transformations/osm/OsmParkingTransformation.d.ts +1 -1
  52. package/dist/integration-engine/workers/NewParkingsWorker.js +2 -0
  53. package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
  54. package/dist/integration-engine/workers/tasks/SaveIptoictParkingDataTask.d.ts +15 -0
  55. package/dist/integration-engine/workers/tasks/SaveIptoictParkingDataTask.js +75 -0
  56. package/dist/integration-engine/workers/tasks/SaveIptoictParkingDataTask.js.map +1 -0
  57. package/dist/integration-engine/workers/tasks/SaveIsphkMeasurementsTask.d.ts +13 -0
  58. package/dist/integration-engine/workers/tasks/SaveIsphkMeasurementsTask.js +64 -0
  59. package/dist/integration-engine/workers/tasks/SaveIsphkMeasurementsTask.js.map +1 -0
  60. package/dist/schema-definitions/datasources/Iptoict/IptoictFeatureCollectionSchemaGenerator.d.ts +86 -0
  61. package/dist/schema-definitions/datasources/Iptoict/IptoictFeatureCollectionSchemaGenerator.js +44 -0
  62. package/dist/schema-definitions/datasources/Iptoict/IptoictFeatureCollectionSchemaGenerator.js.map +1 -0
  63. package/dist/schema-definitions/datasources/Iptoict/IptoictParkingSchema.d.ts +3 -0
  64. package/dist/schema-definitions/datasources/Iptoict/IptoictParkingSchema.js +78 -0
  65. package/dist/schema-definitions/datasources/Iptoict/IptoictParkingSchema.js.map +1 -0
  66. package/dist/schema-definitions/datasources/Iptoict/IptoictParkingSpacesSchema.d.ts +3 -0
  67. package/dist/schema-definitions/datasources/Iptoict/IptoictParkingSpacesSchema.js +39 -0
  68. package/dist/schema-definitions/datasources/Iptoict/IptoictParkingSpacesSchema.js.map +1 -0
  69. package/dist/schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingProperties.d.ts +28 -0
  70. package/dist/schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingProperties.js +9 -0
  71. package/dist/schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingProperties.js.map +1 -0
  72. package/dist/schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingSpacesProperties.d.ts +7 -0
  73. package/dist/schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingSpacesProperties.js +3 -0
  74. package/dist/schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingSpacesProperties.js.map +1 -0
  75. package/dist/schema-definitions/datasources/isphk/IInputIsphkParkings.d.ts +10 -0
  76. package/dist/schema-definitions/datasources/isphk/IInputIsphkParkings.js +3 -0
  77. package/dist/schema-definitions/datasources/isphk/IInputIsphkParkings.js.map +1 -0
  78. package/dist/schema-definitions/datasources/isphk/InputParkingIsphkSchema.d.ts +4 -0
  79. package/dist/schema-definitions/datasources/isphk/InputParkingIsphkSchema.js +27 -0
  80. package/dist/schema-definitions/datasources/isphk/InputParkingIsphkSchema.js.map +1 -0
  81. package/dist/schema-definitions/datasources/osm/FeatureCollectionSchemaGenerator.js.map +1 -1
  82. package/docs/implementation-documentation.md +39 -1
  83. package/docs/openapi-input.yaml +50 -8
  84. package/package.json +2 -2
  85. package/dist/integration-engine/datasources/osm/interfaces/IGenericFeature.js.map +0 -1
  86. /package/dist/integration-engine/datasources/{osm/interfaces → interfaces}/IGenericFeature.d.ts +0 -0
  87. /package/dist/integration-engine/datasources/{osm/interfaces → interfaces}/IGenericFeature.js +0 -0
@@ -0,0 +1,10 @@
1
+ import { IParking } from "../ParkingInterface";
2
+ import { IGenericFeature } from "../datasources/interfaces/IGenericFeature";
3
+ import { IIptoictParkingProperties } from "../../schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingProperties";
4
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
+ export declare class IptoictParkingTransformation extends AbstractTransformation<IGenericFeature<IIptoictParkingProperties>, IParking> {
6
+ private transformationDate;
7
+ name: string;
8
+ constructor(transformationDate: Date);
9
+ protected transformInternal: (element: IGenericFeature<IIptoictParkingProperties>) => IParking;
10
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IptoictParkingTransformation = void 0;
4
+ const GeodataHelper_1 = require("../helpers/GeodataHelper");
5
+ const IIptoictParkingProperties_1 = require("../../schema-definitions/datasources/Iptoict/interfaces/IIptoictParkingProperties");
6
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
7
+ class IptoictParkingTransformation extends AbstractTransformation_1.AbstractTransformation {
8
+ constructor(transformationDate) {
9
+ super();
10
+ this.transformationDate = transformationDate;
11
+ this.name = "IptoictParkingTransformation";
12
+ this.transformInternal = (element) => {
13
+ var _a, _b, _c, _d;
14
+ const transformed = {
15
+ id: element.properties.source_id,
16
+ source: element.properties.source,
17
+ source_id: element.properties.source_id,
18
+ data_provider: "manual",
19
+ location: element.geometry,
20
+ name: element.properties.name,
21
+ parking_type: element.properties.parking_structure ? element.properties.parking_structure : "other",
22
+ centroid: (0, GeodataHelper_1.getPointOnFeature)(element.geometry),
23
+ covered: element.properties.covered,
24
+ security: element.properties.supervised ? element.properties.supervised === IIptoictParkingProperties_1.SupervisedEnum.Yes : null,
25
+ contact: element.properties.email || element.properties.phone || element.properties.website
26
+ ? {
27
+ email: (_a = element.properties.email) !== null && _a !== void 0 ? _a : null,
28
+ phone: (_b = element.properties.phone) !== null && _b !== void 0 ? _b : null,
29
+ website: (_c = element.properties.website) !== null && _c !== void 0 ? _c : null,
30
+ }
31
+ : null,
32
+ date_modified: this.transformationDate.toISOString(),
33
+ total_spot_number: null,
34
+ max_vehicle_dimensions: null,
35
+ parking_policy: (_d = element.properties.parking_policy) !== null && _d !== void 0 ? _d : null,
36
+ };
37
+ return transformed;
38
+ };
39
+ }
40
+ }
41
+ exports.IptoictParkingTransformation = IptoictParkingTransformation;
42
+ //# sourceMappingURL=IptoictParkingTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IptoictParkingTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/IptoictParkingTransformation.ts"],"names":[],"mappings":";;;AAEA,4DAA8D;AAC9D,iIAA0H;AAC1H,6GAA0G;AAG1G,MAAa,4BAA6B,SAAQ,+CAA4E;IAG1H,YAAoB,kBAAwB;QACxC,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAM;QAFrC,SAAI,GAAW,8BAA8B,CAAC;QAM3C,sBAAiB,GAAG,CAAC,OAAmD,EAAE,EAAE;;YAClF,MAAM,WAAW,GAAa;gBAC1B,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;gBAChC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM;gBACjC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;gBACvC,aAAa,EAAE,QAAQ;gBACvB,QAAQ,EAAE,OAAO,CAAC,QAA2B;gBAC7C,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI;gBAC7B,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO;gBACnG,QAAQ,EAAE,IAAA,iCAAiB,EAAC,OAAO,CAAC,QAA2B,CAAC;gBAChE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;gBACnC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,KAAK,0CAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;gBACrG,OAAO,EACH,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO;oBAC9E,CAAC,CAAC;wBACI,KAAK,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,KAAK,mCAAI,IAAI;wBACvC,KAAK,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,KAAK,mCAAI,IAAI;wBACvC,OAAO,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,OAAO,mCAAI,IAAI;qBAC9C;oBACH,CAAC,CAAC,IAAI;gBACd,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACpD,iBAAiB,EAAE,IAAI;gBACvB,sBAAsB,EAAE,IAAI;gBAC5B,cAAc,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,cAAc,mCAAI,IAAI;aAC5D,CAAC;YAEF,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC;IA7BF,CAAC;CA8BJ;AAnCD,oEAmCC"}
@@ -0,0 +1,9 @@
1
+ export interface IIsphkParkingSchema {
2
+ source: string;
3
+ source_id: string;
4
+ available_spot_number: number;
5
+ occupied_spot_number: number;
6
+ total_spot_number: number;
7
+ date_modified: string;
8
+ parking_id: string;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IIsphkParkingSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IIsphkParkingSchema.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/isphk/IIsphkParkingSchema.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { IInputMeasurementItem } from "../../../schema-definitions/datasources/isphk/IInputIsphkParkings";
2
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
3
+ import { IIsphkParkingSchema } from "./IIsphkParkingSchema";
4
+ export declare class IsphkMeasurementTransformation extends AbstractTransformation<IInputMeasurementItem, IIsphkParkingSchema> {
5
+ private transformationDate;
6
+ name: string;
7
+ constructor(transformationDate: Date);
8
+ protected transformInternal: (data: IInputMeasurementItem) => IIsphkParkingSchema;
9
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IsphkMeasurementTransformation = void 0;
4
+ const DataSources_1 = require("../../constants/DataSources");
5
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
6
+ class IsphkMeasurementTransformation extends AbstractTransformation_1.AbstractTransformation {
7
+ constructor(transformationDate) {
8
+ super();
9
+ this.transformationDate = transformationDate;
10
+ this.name = "IsphkMeasurementTransformation";
11
+ this.transformInternal = (data) => {
12
+ return {
13
+ source: DataSources_1.DataSources.isphk,
14
+ source_id: data.id,
15
+ parking_id: data.id,
16
+ total_spot_number: data.capacity,
17
+ available_spot_number: data.free,
18
+ occupied_spot_number: data.capacity - data.free,
19
+ date_modified: this.transformationDate.toISOString(),
20
+ };
21
+ };
22
+ }
23
+ }
24
+ exports.IsphkMeasurementTransformation = IsphkMeasurementTransformation;
25
+ //# sourceMappingURL=IsphkMeasurementTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsphkMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/isphk/IsphkMeasurementTransformation.ts"],"names":[],"mappings":";;;AAAA,6DAAwD;AAExD,6GAA0G;AAE1G,MAAa,8BAA+B,SAAQ,+CAAkE;IAGlH,YAAoB,kBAAwB;QACxC,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAM;QAFrC,SAAI,GAAG,gCAAgC,CAAC;QAMrC,sBAAiB,GAAG,CAAC,IAA2B,EAAuB,EAAE;YAC/E,OAAO;gBACH,MAAM,EAAE,yBAAW,CAAC,KAAK;gBACzB,SAAS,EAAE,IAAI,CAAC,EAAE;gBAClB,UAAU,EAAE,IAAI,CAAC,EAAE;gBACnB,iBAAiB,EAAE,IAAI,CAAC,QAAQ;gBAChC,qBAAqB,EAAE,IAAI,CAAC,IAAI;gBAChC,oBAAoB,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI;gBAC/C,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;aACvD,CAAC;QACN,CAAC,CAAC;IAZF,CAAC;CAaJ;AAlBD,wEAkBC"}
@@ -1,4 +1,4 @@
1
- import { IGenericFeature } from "../../datasources/osm/interfaces/IGenericFeature";
1
+ import { IGenericFeature } from "../../datasources/interfaces/IGenericFeature";
2
2
  import { IOsmParkingSpacesProperties } from "../../../schema-definitions/datasources/osm/interfaces/IOsmParkingSpacesProperties";
3
3
  import { IParkingLocation } from "../../../schema-definitions/models/interfaces/IParkingLocation";
4
4
  import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
@@ -1,5 +1,5 @@
1
1
  import { IParking } from "../../ParkingInterface";
2
- import { IGenericFeature } from "../../datasources/osm/interfaces/IGenericFeature";
2
+ import { IGenericFeature } from "../../datasources/interfaces/IGenericFeature";
3
3
  import { IOsmParkingProperties } from "../../../schema-definitions/datasources/osm/interfaces/IOsmParkingProperties";
4
4
  import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
5
  export declare class OsmParkingTransformation extends AbstractTransformation<IGenericFeature<IOsmParkingProperties>, IParking> {
@@ -22,6 +22,8 @@ class NewParkingsWorker extends integration_engine_1.AbstractWorker {
22
22
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.CalculateAverageOccupancyTask));
23
23
  this.registerTask(new SaveParkingZonesPrague_1.SaveParkingZonesPrague(this.getQueuePrefix()));
24
24
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveOsmDataTask));
25
+ this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveIsphkMeasurementsTask));
26
+ this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveIptoictParkingDataTask));
25
27
  }
26
28
  }
27
29
  exports.NewParkingsWorker = NewParkingsWorker;
@@ -1 +1 @@
1
- {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAC/C,sEAAoE;AACpE,8EAAuE;AAEvE,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAGjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,oCAAwB,CAAC;QAezC,iBAAY,GAAG,CAAC,IAAW,EAAQ,EAAE;YACxC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAbE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;IAC9F,CAAC;CAMJ;AApBD,8CAoBC"}
1
+ {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAC/C,sEAAoE;AACpE,8EAAuE;AAEvE,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAGjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,oCAAwB,CAAC;QAiBzC,iBAAY,GAAG,CAAC,IAAW,EAAQ,EAAE;YACxC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAfE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACpG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACzG,CAAC;CAMJ;AAtBD,8CAsBC"}
@@ -0,0 +1,15 @@
1
+ import { IptoictDataSource } from "../../datasources/manual/IptoictDataSource";
2
+ import { ParkingsLocationRepository } from "../../repositories/ParkingsLocationRepository";
3
+ import { ParkingsRepository } from "../../repositories/ParkingsRepository";
4
+ import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine";
5
+ export declare class SaveIptoictParkingDataTask extends AbstractEmptyTask {
6
+ private iptoictDataSource;
7
+ private parkingRepository;
8
+ private parkingLocationRepository;
9
+ readonly queueName = "saveIptoictParkingData";
10
+ readonly queueTtl: number;
11
+ constructor(iptoictDataSource: IptoictDataSource, parkingRepository: ParkingsRepository, parkingLocationRepository: ParkingsLocationRepository);
12
+ execute(): Promise<void>;
13
+ private updateParkingData;
14
+ private updateParkingLocations;
15
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.SaveIptoictParkingDataTask = void 0;
25
+ const IptoictDataSource_1 = require("../../datasources/manual/IptoictDataSource");
26
+ const ModuleContainerToken_1 = require("../../ioc/ModuleContainerToken");
27
+ const ParkingsLocationRepository_1 = require("../../repositories/ParkingsLocationRepository");
28
+ const ParkingsRepository_1 = require("../../repositories/ParkingsRepository");
29
+ const IptoictParkingSpaceTransformation_1 = require("../../transformations/IptoictParkingSpaceTransformation");
30
+ const IptoictParkingTransformation_1 = require("../../transformations/IptoictParkingTransformation");
31
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
32
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
33
+ const constants_1 = require("../constants");
34
+ let SaveIptoictParkingDataTask = exports.SaveIptoictParkingDataTask = class SaveIptoictParkingDataTask extends integration_engine_1.AbstractEmptyTask {
35
+ constructor(iptoictDataSource, parkingRepository, parkingLocationRepository) {
36
+ super(constants_1.NEW_PARKINGS_WORKER_NAME);
37
+ this.iptoictDataSource = iptoictDataSource;
38
+ this.parkingRepository = parkingRepository;
39
+ this.parkingLocationRepository = parkingLocationRepository;
40
+ this.queueName = "saveIptoictParkingData";
41
+ this.queueTtl = 1 * 60 * 60 * 1000; // 1 hour
42
+ }
43
+ execute() {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ yield this.updateParkingData();
46
+ yield this.updateParkingLocations();
47
+ });
48
+ }
49
+ updateParkingData() {
50
+ return __awaiter(this, void 0, void 0, function* () {
51
+ const data = yield this.iptoictDataSource.getParkingsData();
52
+ const transformation = new IptoictParkingTransformation_1.IptoictParkingTransformation(new Date());
53
+ const transformedData = transformation.transformArray(data);
54
+ yield this.parkingRepository.bulkSave(transformedData);
55
+ });
56
+ }
57
+ updateParkingLocations() {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ const data = yield this.iptoictDataSource.getParkingsLocationData();
60
+ const transformation = new IptoictParkingSpaceTransformation_1.IptoictParkingSpaceTransformation();
61
+ const transformedData = transformation.transformArray(data);
62
+ yield this.parkingLocationRepository.bulkSave(transformedData);
63
+ });
64
+ }
65
+ };
66
+ exports.SaveIptoictParkingDataTask = SaveIptoictParkingDataTask = __decorate([
67
+ (0, tsyringe_1.injectable)(),
68
+ __param(0, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.IptoictDataSource)),
69
+ __param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsRepository)),
70
+ __param(2, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsLocationRepository)),
71
+ __metadata("design:paramtypes", [IptoictDataSource_1.IptoictDataSource,
72
+ ParkingsRepository_1.ParkingsRepository,
73
+ ParkingsLocationRepository_1.ParkingsLocationRepository])
74
+ ], SaveIptoictParkingDataTask);
75
+ //# sourceMappingURL=SaveIptoictParkingDataTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SaveIptoictParkingDataTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/SaveIptoictParkingDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,kFAA6E;AAC7E,yEAAoE;AACpE,8FAAyF;AACzF,8EAAyE;AACzE,+GAA0G;AAC1G,qGAAgG;AAChG,8EAA0E;AAC1E,iEAAwE;AACxE,4CAAwD;AAGjD,IAAM,0BAA0B,wCAAhC,MAAM,0BAA2B,SAAQ,sCAAiB;IAI7D,YACoD,iBAA4C,EAC3C,iBAA6C,EACrC,yBAA6D;QAEtH,KAAK,CAAC,oCAAwB,CAAC,CAAC;QAJwB,sBAAiB,GAAjB,iBAAiB,CAAmB;QACnC,sBAAiB,GAAjB,iBAAiB,CAAoB;QAC7B,8BAAyB,GAAzB,yBAAyB,CAA4B;QAN1G,cAAS,GAAG,wBAAwB,CAAC;QACrC,aAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;IAQxD,CAAC;IAEY,OAAO;;YAChB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACxC,CAAC;KAAA;IAEa,iBAAiB;;YAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;YAC5D,MAAM,cAAc,GAAG,IAAI,2DAA4B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACpE,MAAM,eAAe,GAAG,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAC3D,CAAC;KAAA;IAEa,sBAAsB;;YAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,EAAE,CAAC;YACpE,MAAM,cAAc,GAAG,IAAI,qEAAiC,EAAE,CAAC;YAC/D,MAAM,eAAe,GAAG,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC;KAAA;CACJ,CAAA;qCA9BY,0BAA0B;IADtC,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,iBAAiB,CAAC,CAAA;IAC9C,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,kBAAkB,CAAC,CAAA;IAC/C,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,0BAA0B,CAAC,CAAA;qCAFmB,qCAAiB;QAChB,uCAAkB;QACF,uDAA0B;GAPjH,0BAA0B,CA8BtC"}
@@ -0,0 +1,13 @@
1
+ import { PostgresModel } from "@golemio/core/dist/integration-engine";
2
+ import { AbstractTaskJsonSchema } from "@golemio/core/dist/integration-engine/workers/AbstractTaskJsonSchema";
3
+ import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
4
+ export declare class SaveIsphkMeasurementsTask extends AbstractTaskJsonSchema<any> {
5
+ private readonly parkingsMeasurementsRepository;
6
+ private readonly parkingsMeasurementsActualRepository;
7
+ readonly queueName = "saveIsphkMeasurements";
8
+ readonly queueTtl: number;
9
+ readonly schema: JSONSchemaValidator;
10
+ private isphkMeasurementTransformation;
11
+ constructor(parkingsMeasurementsRepository: PostgresModel, parkingsMeasurementsActualRepository: PostgresModel);
12
+ execute(inputData: any): Promise<void>;
13
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.SaveIsphkMeasurementsTask = void 0;
25
+ const ModuleContainerToken_1 = require("../../ioc/ModuleContainerToken");
26
+ const IsphkMeasurementTransformation_1 = require("../../transformations/isphk/IsphkMeasurementTransformation");
27
+ const constants_1 = require("../constants");
28
+ const InputParkingIsphkSchema_1 = require("../../../schema-definitions/datasources/isphk/InputParkingIsphkSchema");
29
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
30
+ const AbstractTaskJsonSchema_1 = require("@golemio/core/dist/integration-engine/workers/AbstractTaskJsonSchema");
31
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
32
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
33
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
34
+ let SaveIsphkMeasurementsTask = exports.SaveIsphkMeasurementsTask = class SaveIsphkMeasurementsTask extends AbstractTaskJsonSchema_1.AbstractTaskJsonSchema {
35
+ constructor(parkingsMeasurementsRepository, parkingsMeasurementsActualRepository) {
36
+ super(constants_1.NEW_PARKINGS_WORKER_NAME);
37
+ this.parkingsMeasurementsRepository = parkingsMeasurementsRepository;
38
+ this.parkingsMeasurementsActualRepository = parkingsMeasurementsActualRepository;
39
+ this.queueName = "saveIsphkMeasurements";
40
+ this.queueTtl = 15 * 60 * 1000;
41
+ this.schema = new golemio_validator_1.JSONSchemaValidator("SaveIsphkMeasurementsTaskValidation", InputParkingIsphkSchema_1.InputParkingIsphkSchema);
42
+ this.isphkMeasurementTransformation = new IsphkMeasurementTransformation_1.IsphkMeasurementTransformation(new Date());
43
+ }
44
+ execute(inputData) {
45
+ return __awaiter(this, void 0, void 0, function* () {
46
+ try {
47
+ const transformedData = yield this.isphkMeasurementTransformation.transformArray(inputData.data);
48
+ yield this.parkingsMeasurementsRepository.bulkSave(transformedData);
49
+ yield this.parkingsMeasurementsActualRepository.bulkSave(transformedData);
50
+ }
51
+ catch (err) {
52
+ throw new golemio_errors_1.GeneralError("Error while saving ISPHK measurements data", this.constructor.name, err);
53
+ }
54
+ });
55
+ }
56
+ };
57
+ exports.SaveIsphkMeasurementsTask = SaveIsphkMeasurementsTask = __decorate([
58
+ (0, tsyringe_1.injectable)(),
59
+ __param(0, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsMeasurementRepository)),
60
+ __param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsMeasurementsActualRepository)),
61
+ __metadata("design:paramtypes", [integration_engine_1.PostgresModel,
62
+ integration_engine_1.PostgresModel])
63
+ ], SaveIsphkMeasurementsTask);
64
+ //# sourceMappingURL=SaveIsphkMeasurementsTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SaveIsphkMeasurementsTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/SaveIsphkMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,yEAAoE;AACpE,+GAA0G;AAC1G,4CAAiE;AACjE,mHAAyF;AACzF,8EAAsE;AACtE,iHAA8G;AAC9G,6EAAwE;AACxE,mFAAkF;AAClF,iEAAwE;AAGjE,IAAM,yBAAyB,uCAA/B,MAAM,yBAA0B,SAAQ,+CAA2B;IAMtE,YAEI,8BAA8D,EAE9D,oCAAoE;QAEpE,KAAK,CAAC,oCAAwB,CAAC,CAAC;QAJf,mCAA8B,GAA9B,8BAA8B,CAAe;QAE7C,yCAAoC,GAApC,oCAAoC,CAAe;QATxD,cAAS,GAAG,uBAAuB,CAAC;QACpC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC1B,WAAM,GAAG,IAAI,uCAAmB,CAAC,qCAAqC,EAAE,iDAAuB,CAAC,CAAC;QAU7G,IAAI,CAAC,8BAA8B,GAAG,IAAI,+DAA8B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACzF,CAAC;IAEY,OAAO,CAAC,SAAc;;YAC/B,IAAI;gBACA,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACjG,MAAM,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;gBACpE,MAAM,IAAI,CAAC,oCAAoC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;aAC7E;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,4CAA4C,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACpG;QACL,CAAC;KAAA;CACJ,CAAA;oCAzBY,yBAAyB;IADrC,IAAA,qBAAU,GAAE;IAQJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,6BAA6B,CAAC,CAAA;IAE1D,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,oCAAoC,CAAC,CAAA;qCADjB,kCAAa;QAEP,kCAAa;GAV/D,yBAAyB,CAyBrC"}
@@ -0,0 +1,86 @@
1
+ import { IIptoictParkingProperties } from "./interfaces/IIptoictParkingProperties";
2
+ import { IIptoictParkingSpacesProperties } from "./interfaces/IIptoictParkingSpacesProperties";
3
+ import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
4
+ export declare class IptoictFeatureCollectionSchemaGenerator {
5
+ static getParkingSchema(): {
6
+ type: string;
7
+ properties: {
8
+ type: {
9
+ type: string;
10
+ enum: string[];
11
+ };
12
+ features: {
13
+ type: string;
14
+ items: {
15
+ type: string;
16
+ properties: {
17
+ type: {
18
+ type: string;
19
+ enum: string[];
20
+ };
21
+ geometry: {
22
+ type: string;
23
+ };
24
+ properties: JSONSchemaType<IIptoictParkingProperties>;
25
+ };
26
+ required: string[];
27
+ };
28
+ };
29
+ };
30
+ required: string[];
31
+ };
32
+ static getParkingSpacesSchema(): {
33
+ type: string;
34
+ properties: {
35
+ type: {
36
+ type: string;
37
+ enum: string[];
38
+ };
39
+ features: {
40
+ type: string;
41
+ items: {
42
+ type: string;
43
+ properties: {
44
+ type: {
45
+ type: string;
46
+ enum: string[];
47
+ };
48
+ geometry: {
49
+ type: string;
50
+ };
51
+ properties: JSONSchemaType<IIptoictParkingSpacesProperties>;
52
+ };
53
+ required: string[];
54
+ };
55
+ };
56
+ };
57
+ required: string[];
58
+ };
59
+ protected static getSchema<T>(propertiesSchema: JSONSchemaType<T>): {
60
+ type: string;
61
+ properties: {
62
+ type: {
63
+ type: string;
64
+ enum: string[];
65
+ };
66
+ features: {
67
+ type: string;
68
+ items: {
69
+ type: string;
70
+ properties: {
71
+ type: {
72
+ type: string;
73
+ enum: string[];
74
+ };
75
+ geometry: {
76
+ type: string;
77
+ };
78
+ properties: JSONSchemaType<T>;
79
+ };
80
+ required: string[];
81
+ };
82
+ };
83
+ };
84
+ required: string[];
85
+ };
86
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IptoictFeatureCollectionSchemaGenerator = void 0;
4
+ const IptoictParkingSchema_1 = require("./IptoictParkingSchema");
5
+ const IptoictParkingSpacesSchema_1 = require("./IptoictParkingSpacesSchema");
6
+ class IptoictFeatureCollectionSchemaGenerator {
7
+ static getParkingSchema() {
8
+ return this.getSchema(IptoictParkingSchema_1.iptoictParkingSchema);
9
+ }
10
+ static getParkingSpacesSchema() {
11
+ return this.getSchema(IptoictParkingSpacesSchema_1.iptoictParkingSpacesSchema);
12
+ }
13
+ static getSchema(propertiesSchema) {
14
+ return {
15
+ type: "object",
16
+ properties: {
17
+ type: {
18
+ type: "string",
19
+ enum: ["FeatureCollection"],
20
+ },
21
+ features: {
22
+ type: "array",
23
+ items: {
24
+ type: "object",
25
+ properties: {
26
+ type: {
27
+ type: "string",
28
+ enum: ["Feature"],
29
+ },
30
+ geometry: {
31
+ type: "object",
32
+ },
33
+ properties: propertiesSchema,
34
+ },
35
+ required: ["type", "geometry", "properties"],
36
+ },
37
+ },
38
+ },
39
+ required: ["type", "features"],
40
+ };
41
+ }
42
+ }
43
+ exports.IptoictFeatureCollectionSchemaGenerator = IptoictFeatureCollectionSchemaGenerator;
44
+ //# sourceMappingURL=IptoictFeatureCollectionSchemaGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IptoictFeatureCollectionSchemaGenerator.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/Iptoict/IptoictFeatureCollectionSchemaGenerator.ts"],"names":[],"mappings":";;;AAAA,iEAA8D;AAC9D,6EAA0E;AAK1E,MAAa,uCAAuC;IACzC,MAAM,CAAC,gBAAgB;QAC1B,OAAO,IAAI,CAAC,SAAS,CAA4B,2CAAoB,CAAC,CAAC;IAC3E,CAAC;IAEM,MAAM,CAAC,sBAAsB;QAChC,OAAO,IAAI,CAAC,SAAS,CAAkC,uDAA0B,CAAC,CAAC;IACvF,CAAC;IAES,MAAM,CAAC,SAAS,CAAI,gBAAmC;QAC7D,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,IAAI,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,mBAAmB,CAAC;iBAC9B;gBACD,QAAQ,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACR,IAAI,EAAE;gCACF,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,SAAS,CAAC;6BACpB;4BACD,QAAQ,EAAE;gCACN,IAAI,EAAE,QAAQ;6BACjB;4BACD,UAAU,EAAE,gBAAgB;yBAC/B;wBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC;qBAC/C;iBACJ;aACJ;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;SACjC,CAAC;IACN,CAAC;CACJ;AAtCD,0FAsCC"}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
2
+ import { IIptoictParkingProperties } from "./interfaces/IIptoictParkingProperties";
3
+ export declare const iptoictParkingSchema: JSONSchemaType<IIptoictParkingProperties>;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.iptoictParkingSchema = void 0;
4
+ exports.iptoictParkingSchema = {
5
+ type: "object",
6
+ properties: {
7
+ source: { type: "string" },
8
+ source_id: { type: "string" },
9
+ name: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
10
+ covered: { oneOf: [{ type: "boolean" }, { type: "null", nullable: true }] },
11
+ supervised: {
12
+ oneOf: [
13
+ { type: "string", enum: ["yes", "no"] },
14
+ { type: "null", nullable: true },
15
+ ],
16
+ },
17
+ start_date: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
18
+ end_date: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
19
+ charge: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
20
+ opening_hours: {
21
+ oneOf: [
22
+ {
23
+ type: "array",
24
+ items: {
25
+ type: "object",
26
+ properties: {
27
+ valid_from: {
28
+ oneOf: [
29
+ { type: "string", format: "date-time" },
30
+ { type: "null", nullable: true },
31
+ ],
32
+ },
33
+ valid_to: {
34
+ oneOf: [
35
+ { type: "string", format: "date-time" },
36
+ { type: "null", nullable: true },
37
+ ],
38
+ },
39
+ periods_of_time: {
40
+ type: "array",
41
+ items: {
42
+ type: "object",
43
+ properties: {
44
+ day_in_week: { type: "string" },
45
+ start: { type: "string" },
46
+ end: { type: "string" },
47
+ ph: { type: "string" },
48
+ },
49
+ required: ["day_in_week", "start", "end", "ph"],
50
+ },
51
+ },
52
+ },
53
+ required: ["periods_of_time"],
54
+ },
55
+ },
56
+ { type: "null", nullable: true },
57
+ ],
58
+ },
59
+ maxstay: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
60
+ email: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
61
+ phone: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
62
+ website: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
63
+ parking_policy: {
64
+ oneOf: [
65
+ { type: "string", enum: ["park_and_ride", "kiss_and_ride", "commercial", "customer_only"] },
66
+ { type: "null", nullable: true },
67
+ ],
68
+ },
69
+ parking_structure: {
70
+ oneOf: [
71
+ { type: "string", enum: ["on_street", "underground", "multi_storey", "surface", "rooftop"] },
72
+ { type: "null", nullable: true },
73
+ ],
74
+ },
75
+ },
76
+ required: ["source_id", "opening_hours", "source"],
77
+ };
78
+ //# sourceMappingURL=IptoictParkingSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IptoictParkingSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/Iptoict/IptoictParkingSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
2
+ import { IIptoictParkingSpacesProperties } from "./interfaces/IIptoictParkingSpacesProperties";
3
+ export declare const iptoictParkingSpacesSchema: JSONSchemaType<IIptoictParkingSpacesProperties>;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.iptoictParkingSpacesSchema = void 0;
4
+ exports.iptoictParkingSpacesSchema = {
5
+ type: "object",
6
+ properties: {
7
+ parking_id: { type: "string" },
8
+ id: { type: "string" },
9
+ name: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
10
+ capacity: { type: "integer" },
11
+ access: {
12
+ oneOf: [
13
+ {
14
+ type: "array",
15
+ items: {
16
+ type: "string",
17
+ enum: [
18
+ "disabled",
19
+ "designated",
20
+ "delivery",
21
+ "RV",
22
+ "charging",
23
+ "resident",
24
+ "customer",
25
+ "bus",
26
+ "motorcycle",
27
+ "parent",
28
+ "truck",
29
+ ],
30
+ },
31
+ },
32
+ { type: "null", nullable: true },
33
+ ],
34
+ },
35
+ },
36
+ required: ["id", "capacity", "parking_id"],
37
+ additionalProperties: false,
38
+ };
39
+ //# sourceMappingURL=IptoictParkingSpacesSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IptoictParkingSpacesSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/Iptoict/IptoictParkingSpacesSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,0BAA0B,GAAoD;IACvF,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtB,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE;QACvE,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC7B,MAAM,EAAE;YACJ,KAAK,EAAE;gBACH;oBACI,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE;4BACF,UAAU;4BACV,YAAY;4BACZ,UAAU;4BACV,IAAI;4BACJ,UAAU;4BACV,UAAU;4BACV,UAAU;4BACV,KAAK;4BACL,YAAY;4BACZ,QAAQ;4BACR,OAAO;yBACV;qBACJ;iBACJ;gBACD,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;aACnC;SACJ;KACJ;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC;IAC1C,oBAAoB,EAAE,KAAK;CAC9B,CAAC"}