@golemio/parkings 1.22.5 → 1.22.6-dev.2011057324

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 (127) hide show
  1. package/db/example/00_clear_test_data.sql +1 -1
  2. package/db/example/01_sql_dump.sql +2 -2
  3. package/db/example/04_tsk_parking_v2.sql +1 -2
  4. package/db/migrations/postgresql/20250804104739-legacy-api-allowed.js +53 -0
  5. package/db/migrations/postgresql/20250828092217-tsk-v2-router.js +53 -0
  6. package/db/migrations/postgresql/sqls/20250804104739-legacy-api-allowed-down.sql +44 -0
  7. package/db/migrations/postgresql/sqls/20250804104739-legacy-api-allowed-up.sql +6 -0
  8. package/db/migrations/postgresql/sqls/20250828092217-tsk-v2-router-down.sql +1 -0
  9. package/db/migrations/postgresql/sqls/20250828092217-tsk-v2-router-up.sql +54 -0
  10. package/dist/helpers/constants/SourceEnum.d.ts +0 -1
  11. package/dist/helpers/constants/SourceEnum.js +0 -1
  12. package/dist/helpers/constants/SourceEnum.js.map +1 -1
  13. package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js +0 -1
  14. package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js.map +1 -1
  15. package/dist/integration-engine/helpers/GeodataHelper.d.ts +1 -3
  16. package/dist/integration-engine/helpers/GeodataHelper.js +1 -26
  17. package/dist/integration-engine/helpers/GeodataHelper.js.map +1 -1
  18. package/dist/integration-engine/index.d.ts +1 -1
  19. package/dist/integration-engine/ioc/Di.js +0 -6
  20. package/dist/integration-engine/ioc/Di.js.map +1 -1
  21. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +0 -1
  22. package/dist/integration-engine/ioc/ModuleContainerToken.js +0 -1
  23. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  24. package/dist/integration-engine/workers/NewParkingsWorker.js +0 -2
  25. package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
  26. package/dist/output-gateway/index.js +0 -1
  27. package/dist/output-gateway/index.js.map +1 -1
  28. package/dist/output-gateway/ioc/Di.js +1 -1
  29. package/dist/output-gateway/ioc/Di.js.map +1 -1
  30. package/dist/output-gateway/models/ParkingsMeasurementsModels.d.ts +0 -5
  31. package/dist/output-gateway/models/ParkingsMeasurementsModels.js +1 -49
  32. package/dist/output-gateway/models/ParkingsMeasurementsModels.js.map +1 -1
  33. package/dist/output-gateway/models/ParkingsModel.d.ts +9 -8
  34. package/dist/output-gateway/models/ParkingsModel.js +7 -7
  35. package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
  36. package/dist/output-gateway/models/helpers/DetailAttributesHelper.js +11 -9
  37. package/dist/output-gateway/models/helpers/DetailAttributesHelper.js.map +1 -1
  38. package/dist/output-gateway/routers/constants.d.ts +0 -1
  39. package/dist/output-gateway/routers/constants.js +0 -1
  40. package/dist/output-gateway/routers/constants.js.map +1 -1
  41. package/dist/output-gateway/routers/index.d.ts +0 -1
  42. package/dist/output-gateway/routers/index.js +0 -1
  43. package/dist/output-gateway/routers/index.js.map +1 -1
  44. package/dist/output-gateway/routers/v2/V2ParkingRouter.js +32 -11
  45. package/dist/output-gateway/routers/v2/V2ParkingRouter.js.map +1 -1
  46. package/dist/output-gateway/transformations/ParkingsTransformationFabric.d.ts +8 -0
  47. package/dist/output-gateway/transformations/ParkingsTransformationFabric.js +36 -5
  48. package/dist/output-gateway/transformations/ParkingsTransformationFabric.js.map +1 -1
  49. package/dist/schema-definitions/index.d.ts +4 -0
  50. package/dist/schema-definitions/index.js +10 -0
  51. package/dist/schema-definitions/index.js.map +1 -1
  52. package/docs/implementation_documentation.md +0 -28
  53. package/docs/openapi-output.yaml +258 -611
  54. package/package.json +1 -1
  55. package/db/example/99_refresh_views.sql +0 -1
  56. package/dist/integration-engine/businessRules/AbstractTariffChecker.d.ts +0 -10
  57. package/dist/integration-engine/businessRules/AbstractTariffChecker.js +0 -26
  58. package/dist/integration-engine/businessRules/AbstractTariffChecker.js.map +0 -1
  59. package/dist/integration-engine/businessRules/TariffCheckerFactory.d.ts +0 -8
  60. package/dist/integration-engine/businessRules/TariffCheckerFactory.js +0 -22
  61. package/dist/integration-engine/businessRules/TariffCheckerFactory.js.map +0 -1
  62. package/dist/integration-engine/businessRules/TskTariffChecker.d.ts +0 -6
  63. package/dist/integration-engine/businessRules/TskTariffChecker.js +0 -13
  64. package/dist/integration-engine/businessRules/TskTariffChecker.js.map +0 -1
  65. package/dist/integration-engine/businessRules/interfaces/ITariffChecker.d.ts +0 -4
  66. package/dist/integration-engine/businessRules/interfaces/ITariffChecker.js +0 -3
  67. package/dist/integration-engine/businessRules/interfaces/ITariffChecker.js.map +0 -1
  68. package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.d.ts +0 -6
  69. package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.js +0 -3
  70. package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.js.map +0 -1
  71. package/dist/integration-engine/businessRules/interfaces/ITariffInfo.d.ts +0 -7
  72. package/dist/integration-engine/businessRules/interfaces/ITariffInfo.js +0 -3
  73. package/dist/integration-engine/businessRules/interfaces/ITariffInfo.js.map +0 -1
  74. package/dist/integration-engine/businessRules/rules/IRule.d.ts +0 -3
  75. package/dist/integration-engine/businessRules/rules/IRule.js +0 -3
  76. package/dist/integration-engine/businessRules/rules/IRule.js.map +0 -1
  77. package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.d.ts +0 -5
  78. package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.js +0 -17
  79. package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.js.map +0 -1
  80. package/dist/integration-engine/businessRules/rules/MaxPriceRule.d.ts +0 -5
  81. package/dist/integration-engine/businessRules/rules/MaxPriceRule.js +0 -15
  82. package/dist/integration-engine/businessRules/rules/MaxPriceRule.js.map +0 -1
  83. package/dist/integration-engine/businessRules/rules/RuleEnum.d.ts +0 -5
  84. package/dist/integration-engine/businessRules/rules/RuleEnum.js +0 -10
  85. package/dist/integration-engine/businessRules/rules/RuleEnum.js.map +0 -1
  86. package/dist/integration-engine/businessRules/rules/RuleFactory.d.ts +0 -7
  87. package/dist/integration-engine/businessRules/rules/RuleFactory.js +0 -23
  88. package/dist/integration-engine/businessRules/rules/RuleFactory.js.map +0 -1
  89. package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.d.ts +0 -5
  90. package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.js +0 -10
  91. package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.js.map +0 -1
  92. package/dist/integration-engine/helpers/LocationBuilderHelper.d.ts +0 -6
  93. package/dist/integration-engine/helpers/LocationBuilderHelper.js +0 -60
  94. package/dist/integration-engine/helpers/LocationBuilderHelper.js.map +0 -1
  95. package/dist/integration-engine/helpers/TskCalculationHelper.d.ts +0 -6
  96. package/dist/integration-engine/helpers/TskCalculationHelper.js +0 -36
  97. package/dist/integration-engine/helpers/TskCalculationHelper.js.map +0 -1
  98. package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.d.ts +0 -7
  99. package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.js +0 -26
  100. package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.js.map +0 -1
  101. package/dist/integration-engine/transformations/IPRParkingTransformation.d.ts +0 -21
  102. package/dist/integration-engine/transformations/IPRParkingTransformation.js +0 -44
  103. package/dist/integration-engine/transformations/IPRParkingTransformation.js.map +0 -1
  104. package/dist/integration-engine/transformations/TSKParkingTariffTransformation.d.ts +0 -20
  105. package/dist/integration-engine/transformations/TSKParkingTariffTransformation.js +0 -135
  106. package/dist/integration-engine/transformations/TSKParkingTariffTransformation.js.map +0 -1
  107. package/dist/integration-engine/transformations/TSKParkingTransformation.d.ts +0 -19
  108. package/dist/integration-engine/transformations/TSKParkingTransformation.js +0 -78
  109. package/dist/integration-engine/transformations/TSKParkingTransformation.js.map +0 -1
  110. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.d.ts +0 -39
  111. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js +0 -182
  112. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js.map +0 -1
  113. package/dist/output-gateway/data-access/TskDistrictsRepository.d.ts +0 -6
  114. package/dist/output-gateway/data-access/TskDistrictsRepository.js +0 -21
  115. package/dist/output-gateway/data-access/TskDistrictsRepository.js.map +0 -1
  116. package/dist/output-gateway/data-access/TskParkingLotsRepository.d.ts +0 -17
  117. package/dist/output-gateway/data-access/TskParkingLotsRepository.js +0 -159
  118. package/dist/output-gateway/data-access/TskParkingLotsRepository.js.map +0 -1
  119. package/dist/output-gateway/data-access/helpers/TskFeatureMapper.d.ts +0 -11
  120. package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js +0 -37
  121. package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js.map +0 -1
  122. package/dist/output-gateway/routers/v1/V1ParkingRouter.d.ts +0 -3
  123. package/dist/output-gateway/routers/v1/V1ParkingRouter.js +0 -46
  124. package/dist/output-gateway/routers/v1/V1ParkingRouter.js.map +0 -1
  125. package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.d.ts +0 -15
  126. package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.js +0 -3
  127. package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.js.map +0 -1
@@ -1,159 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TskParkingLotsRepository = void 0;
7
- const ParkingPaymentsRepository_1 = require("./ParkingPaymentsRepository");
8
- const _sch_1 = require("../../schema-definitions");
9
- const ParkingMeasurementsDtoSchema_1 = require("../../schema-definitions/datasources/ParkingMeasurementsDtoSchema");
10
- const output_gateway_1 = require("@golemio/core/dist/output-gateway");
11
- const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
12
- const ParkingsMeasurementsModels_1 = require("../models/ParkingsMeasurementsModels");
13
- const TskFeatureMapper_1 = require("./helpers/TskFeatureMapper");
14
- const TskAverageOccupancyRepository_1 = require("./TskAverageOccupancyRepository");
15
- const TskDistrictsRepository_1 = require("./TskDistrictsRepository");
16
- class TskParkingLotsRepository extends output_gateway_1.SequelizeModel {
17
- constructor() {
18
- super(_sch_1.Parkings.name, _sch_1.Parkings.parkings.pgTableName, _sch_1.Parkings.parkings.outputSequelizeAttributes, {
19
- schema: _sch_1.Parkings.pgSchema,
20
- });
21
- this.GetAll = async (options = {}) => {
22
- let whereAttributes = {
23
- source: { [sequelize_1.default.Op.in]: ["tsk", "TSK"] },
24
- [sequelize_1.default.Op.and]: [sequelize_1.default.where(sequelize_1.default.fn("ST_GeometryType", sequelize_1.default.col("centroid")), "ST_Point")],
25
- };
26
- let order = [];
27
- if (options.updatedSince) {
28
- whereAttributes.updated_at = {
29
- [sequelize_1.default.Op.gt]: options?.updatedSince,
30
- };
31
- }
32
- if (options.lat && options.lng) {
33
- if (options.range) {
34
- whereAttributes.range = sequelize_1.default.where(sequelize_1.default.fn("ST_DWithin", sequelize_1.default.col("centroid"), sequelize_1.default.cast(sequelize_1.default.fn("ST_SetSRID", sequelize_1.default.fn("ST_MakePoint", options.lng, options.lat), 4326), "geography"), options.range, true), "true");
35
- }
36
- order.push(sequelize_1.default.fn("ST_Distance", sequelize_1.default.col("centroid"), sequelize_1.default.cast(sequelize_1.default.fn("ST_SetSRID", sequelize_1.default.fn("ST_MakePoint", options.lng, options.lat), 4326), "geography")));
37
- }
38
- const result = await this.sequelizeModel.findAll({
39
- attributes: this.attributeOptions,
40
- include: [
41
- ...this.includeOptions,
42
- {
43
- as: "tsk_districts",
44
- model: this.tskDistrictsRepository.sequelizeModel,
45
- attributes: [],
46
- where: options.districts && options.districts.length > 0
47
- ? {
48
- district: options.districts,
49
- }
50
- : undefined,
51
- },
52
- {
53
- model: this.paymentsRepository.sequelizeModel,
54
- as: "parking_payments",
55
- required: false,
56
- subQuery: false,
57
- },
58
- ],
59
- where: whereAttributes,
60
- limit: options?.limit,
61
- offset: Number.isInteger(options?.offset) ? options?.offset : undefined,
62
- order,
63
- });
64
- return (0, output_gateway_1.buildGeojsonFeatureCollection)(result.map((record) => {
65
- return TskFeatureMapper_1.TskFeatureMapper.formatOutput(record);
66
- }));
67
- };
68
- this.GetOne = async (id) => {
69
- const result = await this.sequelizeModel.findOne({
70
- attributes: this.attributeOptions,
71
- where: {
72
- source_id: id,
73
- source: {
74
- [sequelize_1.default.Op.in]: ["tsk", "TSK"],
75
- },
76
- [sequelize_1.default.Op.and]: [sequelize_1.default.where(sequelize_1.default.fn("ST_GeometryType", sequelize_1.default.col("centroid")), "ST_Point")],
77
- },
78
- include: [
79
- ...this.includeOptions,
80
- {
81
- as: "tsk_districts",
82
- model: this.tskDistrictsRepository.sequelizeModel,
83
- attributes: [],
84
- },
85
- ],
86
- });
87
- return result && TskFeatureMapper_1.TskFeatureMapper.formatOutput(result);
88
- };
89
- this.GetProperties = async () => {
90
- return [];
91
- };
92
- this.measurementsRepository = new ParkingsMeasurementsModels_1.ParkingsMeasurementsModels({
93
- ..._sch_1.Parkings.measurementsActual,
94
- outputJsonSchema: ParkingMeasurementsDtoSchema_1.ParkingMeasurementsDtoSchema,
95
- });
96
- this.tskDistrictsRepository = new TskDistrictsRepository_1.TskDistrictsRepository();
97
- this.tskAverageRepository = new TskAverageOccupancyRepository_1.TskAverageOccupancyRepository();
98
- this.paymentsRepository = new ParkingPaymentsRepository_1.ParkingPaymentsRepository();
99
- this.sequelizeModel.hasOne(this.measurementsRepository.sequelizeModel, {
100
- as: "measurements",
101
- foreignKey: "source_id",
102
- sourceKey: "source_id",
103
- });
104
- this.sequelizeModel.hasOne(this.tskDistrictsRepository.sequelizeModel, {
105
- as: "tsk_districts",
106
- foreignKey: "source_id",
107
- sourceKey: "source_id",
108
- });
109
- this.sequelizeModel.hasOne(this.tskAverageRepository.sequelizeModel, {
110
- as: "tsk_average_occupancy",
111
- foreignKey: "source_id",
112
- sourceKey: "source_id",
113
- });
114
- this.sequelizeModel.hasOne(this.paymentsRepository.sequelizeModel, {
115
- as: "parking_payments",
116
- foreignKey: "parking_id",
117
- sourceKey: "id",
118
- });
119
- }
120
- IsPrimaryIdNumber(_idKey) {
121
- return Promise.resolve(false);
122
- }
123
- PrimaryIdentifierSelection(id) {
124
- return { id };
125
- }
126
- get attributeOptions() {
127
- return [
128
- "centroid",
129
- "parking_type",
130
- [sequelize_1.default.col("parkings.source_id"), "id"],
131
- "name",
132
- [sequelize_1.default.col("measurements.available_spot_number"), "num_of_free_places"],
133
- [sequelize_1.default.col("measurements.occupied_spot_number"), "num_of_taken_places"],
134
- [sequelize_1.default.col("measurements.updated_at"), "updated_at"],
135
- [sequelize_1.default.col("parkings.total_spot_number"), "total_num_of_places"],
136
- "address",
137
- [sequelize_1.default.col("tsk_average_occupancy.average_occupancy"), "average_occupancy"],
138
- [sequelize_1.default.col("tsk_districts.district"), "district"],
139
- [sequelize_1.default.col("measurements.date_modified"), "last_updated"],
140
- ];
141
- }
142
- get includeOptions() {
143
- return [
144
- {
145
- as: "measurements",
146
- model: this.measurementsRepository.sequelizeModel,
147
- attributes: [],
148
- },
149
- {
150
- as: "tsk_average_occupancy",
151
- model: this.tskAverageRepository.sequelizeModel,
152
- attributes: [],
153
- required: true,
154
- },
155
- ];
156
- }
157
- }
158
- exports.TskParkingLotsRepository = TskParkingLotsRepository;
159
- //# sourceMappingURL=TskParkingLotsRepository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TskParkingLotsRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/data-access/TskParkingLotsRepository.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { Model } from "@golemio/core/dist/shared/sequelize";
2
- import { ITskParkingLotFeature } from "../interfaces/ITskParkingLotFeature";
3
- export declare enum ParkingTypeEnum {
4
- ParkAndRide = "park_and_ride",
5
- ParkPaidPrivate = "park_paid_private"
6
- }
7
- export declare class TskFeatureMapper {
8
- static formatOutput(record: Model): ITskParkingLotFeature | undefined;
9
- private static createParkingTypeObject;
10
- private static getPaymentAttributes;
11
- }
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TskFeatureMapper = exports.ParkingTypeEnum = void 0;
4
- const output_gateway_1 = require("@golemio/core/dist/output-gateway");
5
- var ParkingTypeEnum;
6
- (function (ParkingTypeEnum) {
7
- ParkingTypeEnum["ParkAndRide"] = "park_and_ride";
8
- ParkingTypeEnum["ParkPaidPrivate"] = "park_paid_private";
9
- })(ParkingTypeEnum || (exports.ParkingTypeEnum = ParkingTypeEnum = {}));
10
- class TskFeatureMapper {
11
- static formatOutput(record) {
12
- const { parking_type, id, last_updated, payment_link, ...rest } = record.get({ plain: true });
13
- return (0, output_gateway_1.buildGeojsonFeatureType)("centroid", {
14
- parking_type: this.createParkingTypeObject(parking_type),
15
- id: Number.isNaN(parseInt(id)) ? id : parseInt(id),
16
- last_updated: last_updated ? new Date(last_updated).getTime() : null,
17
- ...rest,
18
- ...this.getPaymentAttributes(payment_link),
19
- });
20
- }
21
- static createParkingTypeObject(parkingType) {
22
- return parkingType === ParkingTypeEnum.ParkAndRide
23
- ? { description: "P+R parkoviště", id: 1 }
24
- : { description: "placené parkoviště", id: 2 };
25
- }
26
- static getPaymentAttributes(paymentLink) {
27
- if (!paymentLink) {
28
- return {};
29
- }
30
- return {
31
- payment_link: paymentLink,
32
- payment_shortname: paymentLink.split("?shortname=").pop(),
33
- };
34
- }
35
- }
36
- exports.TskFeatureMapper = TskFeatureMapper;
37
- //# sourceMappingURL=TskFeatureMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TskFeatureMapper.js","sourceRoot":"","sources":["../../../../src/output-gateway/data-access/helpers/TskFeatureMapper.ts"],"names":[],"mappings":";;;AAAA,sEAA4E;AAI5E,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,gDAA6B,CAAA;IAC7B,wDAAqC,CAAA;AACzC,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,MAAa,gBAAgB;IAClB,MAAM,CAAC,YAAY,CAAC,MAAa;QACpC,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9F,OAAO,IAAA,wCAAuB,EAAC,UAAU,EAAE;YACvC,YAAY,EAAE,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC;YACxD,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;YACpE,GAAG,IAAI;YACP,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC;SAC7C,CAA0B,CAAC;IAChC,CAAC;IAEO,MAAM,CAAC,uBAAuB,CAAC,WAA4B;QAI/D,OAAO,WAAW,KAAK,eAAe,CAAC,WAAW;YAC9C,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,EAAE;YAC1C,CAAC,CAAC,EAAE,WAAW,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,WAA0B;QAI1D,IAAI,CAAC,WAAW,EAAE;YACd,OAAO,EAAE,CAAC;SACb;QAED,OAAO;YACH,YAAY,EAAE,WAAW;YACzB,iBAAiB,EAAE,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE;SAC5D,CAAC;IACN,CAAC;CACJ;AAlCD,4CAkCC"}
@@ -1,3 +0,0 @@
1
- import { AbstractRouter } from "@golemio/core/dist/helpers/routing/AbstractRouter";
2
- declare const v1ParkingRouter: AbstractRouter;
3
- export { v1ParkingRouter };
@@ -1,46 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.v1ParkingRouter = void 0;
4
- const TskParkingLotsRepository_1 = require("../../data-access/TskParkingLotsRepository");
5
- const models_1 = require("../../models");
6
- const constants_1 = require("../constants");
7
- const AbstractGeoJsonRouter_1 = require("@golemio/core/dist/helpers/routing/AbstractGeoJsonRouter");
8
- const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
9
- const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
10
- const CACHE_MAX_AGE = 5 * 60;
11
- const CACHE_STALE_WHILE_REVALIDATE = 5;
12
- /**
13
- * @deprecated Legacy router, use Parking Spaces /parking endpoints instead
14
- */
15
- class V1ParkingRouter extends AbstractGeoJsonRouter_1.AbstractGeoJsonRouter {
16
- constructor() {
17
- super(constants_1.RouteVersion.v1, "parkings", new TskParkingLotsRepository_1.TskParkingLotsRepository());
18
- this.GetAllTskMeasurements = async (req, res, next) => {
19
- const timestampFrom = req.query.from ? new Date(req.query.from).toISOString() : undefined;
20
- const timestampTo = req.query.to ? new Date(req.query.to).toISOString() : undefined;
21
- try {
22
- const data = await this.measurementsHistoryRepository.GetAllTskMeasurements({
23
- limit: req.query.limit ? parseInt(req.query.limit) : undefined,
24
- offset: req.query.offset ? parseInt(req.query.offset) : undefined,
25
- from: timestampFrom,
26
- to: timestampTo,
27
- sensorId: req.query.sensorId,
28
- });
29
- res.status(200).send(data);
30
- }
31
- catch (err) {
32
- next(err);
33
- }
34
- };
35
- this.measurementsHistoryRepository = models_1.models.ParkingsMeasurementsModel;
36
- this.initRoutes({ maxAge: CACHE_MAX_AGE, staleWhileRevalidate: CACHE_STALE_WHILE_REVALIDATE });
37
- this.router.get("/history", [
38
- (0, express_validator_1.query)("from").optional().isISO8601().not().isArray(),
39
- (0, express_validator_1.query)("to").optional().isISO8601().not().isArray(),
40
- (0, express_validator_1.query)("sensorId").optional().not().isEmpty({ ignore_whitespace: true }).not().isArray(),
41
- ], Validation_1.pagination, (0, Validation_1.paginationLimitMiddleware)("TskParkingLotsLegacyRouter"), Validation_1.checkErrors, this.cacheHeaderMiddleware.getMiddleware(CACHE_MAX_AGE, CACHE_STALE_WHILE_REVALIDATE), this.GetAllTskMeasurements);
42
- }
43
- }
44
- const v1ParkingRouter = new V1ParkingRouter();
45
- exports.v1ParkingRouter = v1ParkingRouter;
46
- //# sourceMappingURL=V1ParkingRouter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"V1ParkingRouter.js","sourceRoot":"","sources":["../../../../src/output-gateway/routers/v1/V1ParkingRouter.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AACpF,yCAAoC;AAEpC,4CAAqD;AACrD,oGAAiG;AAEjG,6EAAkH;AAElH,mFAAoE;AAEpE,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,CAAC;AAC7B,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;GAEG;AACH,MAAM,eAAgB,SAAQ,6CAAqB;IAG/C;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,mDAAwB,EAAE,CAAC,CAAC;QAkBhE,0BAAqB,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACpE,MAAM,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACpG,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAY,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAE9F,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,qBAAqB,CAAC;oBACxE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,SAAS;oBACxE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC3E,IAAI,EAAE,aAAa;oBACnB,EAAE,EAAE,WAAW;oBACf,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAkB;iBACzC,CAAC,CAAC;gBAEH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9B;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAC;QAlCE,IAAI,CAAC,6BAA6B,GAAG,eAAM,CAAC,yBAAyB,CAAC;QACtE,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,UAAU,EACV;YACI,IAAA,yBAAK,EAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACpD,IAAA,yBAAK,EAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAClD,IAAA,yBAAK,EAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;SAC1F,EACD,uBAAU,EACV,IAAA,sCAAyB,EAAC,4BAA4B,CAAC,EACvD,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,aAAa,EAAE,4BAA4B,CAAC,EACrF,IAAI,CAAC,qBAAqB,CAC7B,CAAC;IACN,CAAC;CAoBJ;AAED,MAAM,eAAe,GAAmB,IAAI,eAAe,EAAE,CAAC;AAErD,0CAAe"}
@@ -1,15 +0,0 @@
1
- import { IGeoCoordinatesMultiPolygon, IGeoCoordinatesPolygon } from "@golemio/core/dist/output-gateway/Geo";
2
- export interface IIPRParkingJsonFeature {
3
- type: string;
4
- id: number;
5
- geometry: IGeoCoordinatesPolygon | IGeoCoordinatesMultiPolygon;
6
- properties: {
7
- OBJECTID: number;
8
- PS_ZPS: string;
9
- TARIFTAB: string;
10
- TYPZONY: string;
11
- ZPS_ID: string;
12
- SHAPE__Area: number;
13
- SHAPE__Length: number;
14
- };
15
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IIPRParkingJsonSchema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IIPRParkingJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.ts"],"names":[],"mappings":""}