@golemio/parkings 1.23.3-dev.2111016379 → 1.23.3-dev.2127899536
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.
- package/db/migrations/postgresql/20251024121247-smart-4-city-v-2.js +53 -0
- package/db/migrations/postgresql/sqls/20251024121247-smart-4-city-v-2-down.sql +3 -0
- package/db/migrations/postgresql/sqls/20251024121247-smart-4-city-v-2-up.sql +3 -0
- package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js +1 -0
- package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js.map +1 -1
- package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.d.ts +1 -3
- package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.js +3 -7
- package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.js.map +1 -1
- package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.d.ts +0 -2
- package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.js +0 -2
- package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.js.map +1 -1
- package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.d.ts +1 -5
- package/dist/integration-engine/datasources/smart4city/graphql/ISmart4CityGraphQLReponse.d.ts +43 -0
- package/dist/{schema-definitions/datasources/interfaces/ISmart4CityList.js → integration-engine/datasources/smart4city/graphql/ISmart4CityGraphQLReponse.js} +1 -1
- package/dist/integration-engine/datasources/smart4city/graphql/ISmart4CityGraphQLReponse.js.map +1 -0
- package/dist/integration-engine/datasources/smart4city/graphql/Smart4CityGraphQLDataSource.d.ts +17 -0
- package/dist/integration-engine/datasources/smart4city/graphql/Smart4CityGraphQLDataSource.js +102 -0
- package/dist/integration-engine/datasources/smart4city/graphql/Smart4CityGraphQLDataSource.js.map +1 -0
- package/dist/integration-engine/helpers/Smart4CityRoleHelper.d.ts +8 -0
- package/dist/integration-engine/helpers/Smart4CityRoleHelper.js +41 -0
- package/dist/integration-engine/helpers/Smart4CityRoleHelper.js.map +1 -0
- package/dist/integration-engine/ioc/Di.js +9 -11
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +3 -5
- package/dist/integration-engine/ioc/ModuleContainerToken.js +3 -5
- package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/integration-engine/transformations/smart4city/Smart4CityParkingMeasurementsTransformation.d.ts +10 -0
- package/dist/integration-engine/transformations/smart4city/Smart4CityParkingMeasurementsTransformation.js +30 -0
- package/dist/integration-engine/transformations/smart4city/Smart4CityParkingMeasurementsTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/smart4city/Smart4CityParkingTransformation.d.ts +19 -0
- package/dist/integration-engine/transformations/smart4city/Smart4CityParkingTransformation.js +91 -0
- package/dist/integration-engine/transformations/smart4city/Smart4CityParkingTransformation.js.map +1 -0
- package/dist/integration-engine/workers/NewParkingsWorker.js +1 -2
- package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
- package/dist/integration-engine/workers/schemas/UpdateSmart4CityDataSchema.d.ts +6 -0
- package/dist/integration-engine/workers/schemas/{Smart4CityTaskTypeSchema.js → UpdateSmart4CityDataSchema.js} +6 -6
- package/dist/integration-engine/workers/schemas/UpdateSmart4CityDataSchema.js.map +1 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityDataTask.d.ts +22 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityDataTask.js +91 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityDataTask.js.map +1 -0
- package/dist/schema-definitions/datasources/smart4city/Smart4CityGraphQLSchemas.d.ts +114 -0
- package/dist/schema-definitions/datasources/smart4city/Smart4CityGraphQLSchemas.js +118 -0
- package/dist/schema-definitions/datasources/smart4city/Smart4CityGraphQLSchemas.js.map +1 -0
- package/docs/asyncapi.yaml +7 -21
- package/docs/implementation_documentation.md +18 -50
- package/package.json +1 -1
- package/static-data/smart4cityLookup.json +47 -0
- package/dist/integration-engine/datasources/smart4city/Smart4CityListDataSourceProvider.d.ts +0 -11
- package/dist/integration-engine/datasources/smart4city/Smart4CityListDataSourceProvider.js +0 -45
- package/dist/integration-engine/datasources/smart4city/Smart4CityListDataSourceProvider.js.map +0 -1
- package/dist/integration-engine/datasources/smart4city/Smart4CityLocationDataSourceProvider.d.ts +0 -11
- package/dist/integration-engine/datasources/smart4city/Smart4CityLocationDataSourceProvider.js +0 -50
- package/dist/integration-engine/datasources/smart4city/Smart4CityLocationDataSourceProvider.js.map +0 -1
- package/dist/integration-engine/datasources/smart4city/SmartCityListDatasourceCache.d.ts +0 -10
- package/dist/integration-engine/datasources/smart4city/SmartCityListDatasourceCache.js +0 -41
- package/dist/integration-engine/datasources/smart4city/SmartCityListDatasourceCache.js.map +0 -1
- package/dist/integration-engine/transformations/Smart4CityMeasurementTransformation.d.ts +0 -10
- package/dist/integration-engine/transformations/Smart4CityMeasurementTransformation.js +0 -36
- package/dist/integration-engine/transformations/Smart4CityMeasurementTransformation.js.map +0 -1
- package/dist/integration-engine/workers/schemas/Smart4CityTaskTypeSchema.d.ts +0 -6
- package/dist/integration-engine/workers/schemas/Smart4CityTaskTypeSchema.js.map +0 -1
- package/dist/integration-engine/workers/schemas/UpdateSmart4CitySchema.d.ts +0 -6
- package/dist/integration-engine/workers/schemas/UpdateSmart4CitySchema.js +0 -21
- package/dist/integration-engine/workers/schemas/UpdateSmart4CitySchema.js.map +0 -1
- package/dist/integration-engine/workers/tasks/GenerateSmart4CityTaskListTask.d.ts +0 -16
- package/dist/integration-engine/workers/tasks/GenerateSmart4CityTaskListTask.js +0 -60
- package/dist/integration-engine/workers/tasks/GenerateSmart4CityTaskListTask.js.map +0 -1
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityMeasurementsTask.d.ts +0 -12
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityMeasurementsTask.js +0 -78
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityMeasurementsTask.js.map +0 -1
- package/dist/schema-definitions/datasources/Smart4CityListJsonSchema.d.ts +0 -3
- package/dist/schema-definitions/datasources/Smart4CityListJsonSchema.js +0 -20
- package/dist/schema-definitions/datasources/Smart4CityListJsonSchema.js.map +0 -1
- package/dist/schema-definitions/datasources/Smart4CityLocationJsonSchema.d.ts +0 -3
- package/dist/schema-definitions/datasources/Smart4CityLocationJsonSchema.js +0 -22
- package/dist/schema-definitions/datasources/Smart4CityLocationJsonSchema.js.map +0 -1
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityList.d.ts +0 -8
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityList.js.map +0 -1
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityLocation.d.ts +0 -10
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityLocation.js +0 -3
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityLocation.js.map +0 -1
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var dbm;
|
|
4
|
+
var type;
|
|
5
|
+
var seed;
|
|
6
|
+
var fs = require('fs');
|
|
7
|
+
var path = require('path');
|
|
8
|
+
var Promise;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* We receive the dbmigrate dependency from dbmigrate initially.
|
|
12
|
+
* This enables us to not have to rely on NODE_PATH.
|
|
13
|
+
*/
|
|
14
|
+
exports.setup = function(options, seedLink) {
|
|
15
|
+
dbm = options.dbmigrate;
|
|
16
|
+
type = dbm.dataType;
|
|
17
|
+
seed = seedLink;
|
|
18
|
+
Promise = options.Promise;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
exports.up = function(db) {
|
|
22
|
+
var filePath = path.join(__dirname, 'sqls', '20251024121247-smart-4-city-v-2-up.sql');
|
|
23
|
+
return new Promise( function( resolve, reject ) {
|
|
24
|
+
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
25
|
+
if (err) return reject(err);
|
|
26
|
+
console.log('received data: ' + data);
|
|
27
|
+
|
|
28
|
+
resolve(data);
|
|
29
|
+
});
|
|
30
|
+
})
|
|
31
|
+
.then(function(data) {
|
|
32
|
+
return db.runSql(data);
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
exports.down = function(db) {
|
|
37
|
+
var filePath = path.join(__dirname, 'sqls', '20251024121247-smart-4-city-v-2-down.sql');
|
|
38
|
+
return new Promise( function( resolve, reject ) {
|
|
39
|
+
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
40
|
+
if (err) return reject(err);
|
|
41
|
+
console.log('received data: ' + data);
|
|
42
|
+
|
|
43
|
+
resolve(data);
|
|
44
|
+
});
|
|
45
|
+
})
|
|
46
|
+
.then(function(data) {
|
|
47
|
+
return db.runSql(data);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
exports._meta = {
|
|
52
|
+
"version": 1
|
|
53
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
update parking_sources
|
|
2
|
+
set datasource_locations = 'https://iptoict.blob.core.windows.net/storage/Carparking/staticData/smart4city/parking_spaces.geojson', datasource_parking = 'https://iptoict.blob.core.windows.net/storage/Carparking/staticData/smart4city/parkings.geojson'
|
|
3
|
+
where source = 'smart4city'
|
|
@@ -11,6 +11,7 @@ class DataSourceIntegrationChecker {
|
|
|
11
11
|
[SourceEnum_1.SourceEnum.Mr_Parkit, ["parking", "locations", "prohibitions", "tariffs"]],
|
|
12
12
|
[SourceEnum_1.SourceEnum.TSK_V2, ["parking", "locations", "tariffs", "parking_machines"]],
|
|
13
13
|
[SourceEnum_1.SourceEnum.Manual, ["tariffs"]],
|
|
14
|
+
[SourceEnum_1.SourceEnum.Smart4City, ["parking", "locations"]],
|
|
14
15
|
]);
|
|
15
16
|
}
|
|
16
17
|
checkAllowedDataSources(inputData) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataSourceIntegrationChecker.js","sourceRoot":"","sources":["../../../src/integration-engine/businessRules/DataSourceIntegrationChecker.ts"],"names":[],"mappings":";;;AAAA,mEAA2D;AAE3D,6EAA2E;AAE3E,MAAa,4BAA4B;IAAzC;QACqB,0BAAqB,GAAG,IAAI,GAAG,CAAmB;YAC/D,CAAC,uBAAU,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC1C,CAAC,uBAAU,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YACvD,CAAC,uBAAU,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;YAC3E,CAAC,uBAAU,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;YAC5E,CAAC,uBAAU,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"DataSourceIntegrationChecker.js","sourceRoot":"","sources":["../../../src/integration-engine/businessRules/DataSourceIntegrationChecker.ts"],"names":[],"mappings":";;;AAAA,mEAA2D;AAE3D,6EAA2E;AAE3E,MAAa,4BAA4B;IAAzC;QACqB,0BAAqB,GAAG,IAAI,GAAG,CAAmB;YAC/D,CAAC,uBAAU,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC1C,CAAC,uBAAU,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YACvD,CAAC,uBAAU,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;YAC3E,CAAC,uBAAU,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;YAC5E,CAAC,uBAAU,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC;YAChC,CAAC,uBAAU,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;SACpD,CAAC,CAAC;IAWP,CAAC;IATU,uBAAuB,CAAC,SAAyB;QACpD,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QAEpC,MAAM,gBAAgB,GAAG,CAAC,UAAkB,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,UAAU,EAA0B,CAAC,IAAI,IAAI,CAAC;QACvH,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;YAC/D,MAAM,IAAI,gCAAe,CAAC,6BAA6B,UAAU,GAAG,EAAE,8BAA8B,CAAC,CAAC;SACzG;IACL,CAAC;CACJ;AAnBD,oEAmBC"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { IMrParkitGarageWithTariff } from "../../schema-definitions/datasources/interfaces/IMrParkitGarage";
|
|
2
|
-
import { ISmart4CityLocation } from "../../schema-definitions/datasources/interfaces/ISmart4CityLocation";
|
|
3
2
|
import { ParkingProvider } from "./helpers/ParkingProviderEnum";
|
|
4
3
|
import { IDataSourceProvider } from "./interfaces/IDataSourceProvider";
|
|
5
4
|
import { DataSourceProviderDict, DataSourceReturnType, IParkingProviderDataSourceFactory } from "./interfaces/IParkingProviderDataSourceFactory";
|
|
6
|
-
import { ISmart4CityList } from "../../schema-definitions/datasources/interfaces/ISmart4CityList";
|
|
7
5
|
import { IBedrichovParking } from "../../schema-definitions/datasources/interfaces/IBedrichovParking";
|
|
8
6
|
export declare class ParkingProviderDataSourceFactory implements IParkingProviderDataSourceFactory {
|
|
9
7
|
private readonly dataSourceProviderDict;
|
|
10
|
-
constructor(mrParkitDataSourceProvider: IDataSourceProvider<IMrParkitGarageWithTariff[]>,
|
|
8
|
+
constructor(mrParkitDataSourceProvider: IDataSourceProvider<IMrParkitGarageWithTariff[]>, bedrichovDataSource: IDataSourceProvider<IBedrichovParking[]>);
|
|
11
9
|
getDataSource<T extends ParkingProvider>(presetLogsProvider: T, ...params: Parameters<DataSourceProviderDict[T]["getDataSource"]>): DataSourceReturnType<T>;
|
|
12
10
|
}
|
|
@@ -17,11 +17,9 @@ const ModuleContainerToken_1 = require("../ioc/ModuleContainerToken");
|
|
|
17
17
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
18
18
|
const ParkingProviderEnum_1 = require("./helpers/ParkingProviderEnum");
|
|
19
19
|
let ParkingProviderDataSourceFactory = exports.ParkingProviderDataSourceFactory = class ParkingProviderDataSourceFactory {
|
|
20
|
-
constructor(mrParkitDataSourceProvider,
|
|
20
|
+
constructor(mrParkitDataSourceProvider, bedrichovDataSource) {
|
|
21
21
|
this.dataSourceProviderDict = {
|
|
22
22
|
[ParkingProviderEnum_1.ParkingProvider.MrParkit]: mrParkitDataSourceProvider,
|
|
23
|
-
[ParkingProviderEnum_1.ParkingProvider.Smart4CityList]: smart4CityListDataSourceProvider,
|
|
24
|
-
[ParkingProviderEnum_1.ParkingProvider.Smart4CityLocation]: smart4CityLocationDataSourceProvider,
|
|
25
23
|
[ParkingProviderEnum_1.ParkingProvider.Bedrichov]: bedrichovDataSource,
|
|
26
24
|
};
|
|
27
25
|
}
|
|
@@ -32,9 +30,7 @@ let ParkingProviderDataSourceFactory = exports.ParkingProviderDataSourceFactory
|
|
|
32
30
|
exports.ParkingProviderDataSourceFactory = ParkingProviderDataSourceFactory = __decorate([
|
|
33
31
|
(0, tsyringe_1.injectable)(),
|
|
34
32
|
__param(0, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.MrParkitDataSourceProvider)),
|
|
35
|
-
__param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.
|
|
36
|
-
|
|
37
|
-
__param(3, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.BedrichovDataSource)),
|
|
38
|
-
__metadata("design:paramtypes", [Object, Object, Object, Object])
|
|
33
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.BedrichovDataSource)),
|
|
34
|
+
__metadata("design:paramtypes", [Object, Object])
|
|
39
35
|
], ParkingProviderDataSourceFactory);
|
|
40
36
|
//# sourceMappingURL=ParkingProviderDataSourceFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../src/integration-engine/datasources/ParkingProviderDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sEAAoE;
|
|
1
|
+
{"version":3,"file":"ParkingProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../src/integration-engine/datasources/ParkingProviderDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sEAAoE;AAEpE,iEAAwE;AACxE,uEAAgE;AAUzD,IAAM,gCAAgC,8CAAtC,MAAM,gCAAgC;IAGzC,YAEI,0BAA4E,EAE5E,mBAA6D;QAE7D,IAAI,CAAC,sBAAsB,GAAG;YAC1B,CAAC,qCAAe,CAAC,QAAQ,CAAC,EAAE,0BAA0B;YACtD,CAAC,qCAAe,CAAC,SAAS,CAAC,EAAE,mBAAmB;SACnD,CAAC;IACN,CAAC;IAEM,aAAa,CAChB,kBAAqB,EACrB,GAAG,MAA8D;QAEjE,OAAO,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,CAA4B,CAAC;IAC/G,CAAC;CACJ,CAAA;2CArBY,gCAAgC;IAD5C,IAAA,qBAAU,GAAE;IAKJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,0BAA0B,CAAC,CAAA;IAEvD,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,mBAAmB,CAAC,CAAA;;GAN5C,gCAAgC,CAqB5C"}
|
|
@@ -4,8 +4,6 @@ exports.ParkingProvider = void 0;
|
|
|
4
4
|
var ParkingProvider;
|
|
5
5
|
(function (ParkingProvider) {
|
|
6
6
|
ParkingProvider["MrParkit"] = "MrParkit";
|
|
7
|
-
ParkingProvider["Smart4CityList"] = "Smart4CityList";
|
|
8
|
-
ParkingProvider["Smart4CityLocation"] = "Smart4CityLocation";
|
|
9
7
|
ParkingProvider["Bedrichov"] = "Bedrichov";
|
|
10
8
|
})(ParkingProvider || (exports.ParkingProvider = ParkingProvider = {}));
|
|
11
9
|
//# sourceMappingURL=ParkingProviderEnum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingProviderEnum.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/helpers/ParkingProviderEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"ParkingProviderEnum.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/helpers/ParkingProviderEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,wCAAqB,CAAA;IACrB,0CAAuB,CAAA;AAC3B,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B"}
|
package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.d.ts
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
1
|
+
import { IBedrichovParking } from "../../../schema-definitions/datasources/interfaces/IBedrichovParking";
|
|
1
2
|
import { IMrParkitGarageWithTariff } from "../../../schema-definitions/datasources/interfaces/IMrParkitGarage";
|
|
2
|
-
import { ISmart4CityLocation } from "../../../schema-definitions/datasources/interfaces/ISmart4CityLocation";
|
|
3
3
|
import { ParkingProvider } from "../helpers/ParkingProviderEnum";
|
|
4
4
|
import { IDataSourceProvider } from "./IDataSourceProvider";
|
|
5
|
-
import { ISmart4CityList } from "../../../schema-definitions/datasources/interfaces/ISmart4CityList";
|
|
6
|
-
import { IBedrichovParking } from "../../../schema-definitions/datasources/interfaces/IBedrichovParking";
|
|
7
5
|
export type DataSourceProviderDict = {
|
|
8
6
|
[ParkingProvider.MrParkit]: IDataSourceProvider<IMrParkitGarageWithTariff[]>;
|
|
9
|
-
[ParkingProvider.Smart4CityList]: IDataSourceProvider<ISmart4CityList[]>;
|
|
10
|
-
[ParkingProvider.Smart4CityLocation]: IDataSourceProvider<ISmart4CityLocation[]>;
|
|
11
7
|
[ParkingProvider.Bedrichov]: IDataSourceProvider<IBedrichovParking[]>;
|
|
12
8
|
};
|
|
13
9
|
export type DataSourceReturnType<T extends ParkingProvider> = ReturnType<DataSourceProviderDict[T]["getDataSource"]>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Point, Polygon } from "@golemio/core/dist/shared/geojson";
|
|
2
|
+
/**
|
|
3
|
+
* MongoDB ObjectId reference
|
|
4
|
+
*/
|
|
5
|
+
export interface MongoObjectId {
|
|
6
|
+
$oid: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Individual parking place within a location
|
|
10
|
+
*/
|
|
11
|
+
export interface Smart4CityParkingPlace {
|
|
12
|
+
placeID: number;
|
|
13
|
+
occ: number;
|
|
14
|
+
id: string;
|
|
15
|
+
lastStateChange: string | object;
|
|
16
|
+
roles: string[];
|
|
17
|
+
coords: Point;
|
|
18
|
+
actualRoleID: MongoObjectId;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Parking location with multiple parking places
|
|
22
|
+
*/
|
|
23
|
+
export interface Smart4CityParkingLocation {
|
|
24
|
+
_places: Smart4CityParkingPlace[];
|
|
25
|
+
capacity: number;
|
|
26
|
+
code: string;
|
|
27
|
+
definition: Polygon;
|
|
28
|
+
last_changes: string;
|
|
29
|
+
name: string;
|
|
30
|
+
total_occ: number;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* GraphQL response data wrapper
|
|
34
|
+
*/
|
|
35
|
+
export interface Smart4CityGraphQLData {
|
|
36
|
+
parking_locations: Smart4CityParkingLocation[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Complete GraphQL response structure
|
|
40
|
+
*/
|
|
41
|
+
export interface ISmart4CityGraphQLReponse {
|
|
42
|
+
data: Smart4CityGraphQLData;
|
|
43
|
+
}
|
package/dist/integration-engine/datasources/smart4city/graphql/ISmart4CityGraphQLReponse.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ISmart4CityGraphQLReponse.js","sourceRoot":"","sources":["../../../../../src/integration-engine/datasources/smart4city/graphql/ISmart4CityGraphQLReponse.ts"],"names":[],"mappings":""}
|
package/dist/integration-engine/datasources/smart4city/graphql/Smart4CityGraphQLDataSource.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IDataSourceProvider } from "../../interfaces/IDataSourceProvider";
|
|
2
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
3
|
+
import { IDataSource } from "@golemio/core/dist/integration-engine";
|
|
4
|
+
import { ISmart4CityGraphQLReponse } from "./ISmart4CityGraphQLReponse";
|
|
5
|
+
export declare class Smart4CityGraphQLDataSource implements IDataSourceProvider<ISmart4CityGraphQLReponse> {
|
|
6
|
+
private config;
|
|
7
|
+
private token;
|
|
8
|
+
private tokenExpireAt;
|
|
9
|
+
private readonly TOKEN_REFRESH_BUFFER_SECONDS;
|
|
10
|
+
private readonly GRANT_TYPE;
|
|
11
|
+
private credentialInfo;
|
|
12
|
+
private readonly QUERY;
|
|
13
|
+
constructor(config: ISimpleConfig);
|
|
14
|
+
private refreshToken;
|
|
15
|
+
getToken(): Promise<string>;
|
|
16
|
+
getDataSource(token: string): IDataSource<ISmart4CityGraphQLReponse>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Smart4CityGraphQLDataSource = void 0;
|
|
16
|
+
const Smart4CityGraphQLSchemas_1 = require("../../../../schema-definitions/datasources/smart4city/Smart4CityGraphQLSchemas");
|
|
17
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
18
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
19
|
+
const HTTPFetchProtocolStrategy_1 = require("@golemio/core/dist/integration-engine/datasources/protocol-strategy/HTTPFetchProtocolStrategy");
|
|
20
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
21
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
22
|
+
let Smart4CityGraphQLDataSource = exports.Smart4CityGraphQLDataSource = class Smart4CityGraphQLDataSource {
|
|
23
|
+
constructor(config) {
|
|
24
|
+
this.config = config;
|
|
25
|
+
this.token = null;
|
|
26
|
+
this.tokenExpireAt = null;
|
|
27
|
+
this.TOKEN_REFRESH_BUFFER_SECONDS = 60; // Refresh 60 seconds before expiry
|
|
28
|
+
this.GRANT_TYPE = "client_credentials";
|
|
29
|
+
this.QUERY = `query Parking_locations {
|
|
30
|
+
parking_locations {
|
|
31
|
+
_places
|
|
32
|
+
capacity
|
|
33
|
+
code
|
|
34
|
+
definition
|
|
35
|
+
last_changes
|
|
36
|
+
name
|
|
37
|
+
total_occ
|
|
38
|
+
}
|
|
39
|
+
}`;
|
|
40
|
+
this.credentialInfo = {
|
|
41
|
+
tokenUrl: config.getValue("module.parking.Smart4City.graphQL.tokenUrl"),
|
|
42
|
+
graphQLUrl: config.getValue("module.parking.Smart4City.graphQL.url"),
|
|
43
|
+
clientId: config.getValue("module.parking.Smart4City.graphQL.clientId"),
|
|
44
|
+
clientSecret: config.getValue("module.parking.Smart4City.graphQL.clientSecret"),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
async refreshToken() {
|
|
48
|
+
// Prepare form data
|
|
49
|
+
const params = new URLSearchParams();
|
|
50
|
+
params.append("grant_type", this.GRANT_TYPE);
|
|
51
|
+
params.append("client_id", this.credentialInfo.clientId);
|
|
52
|
+
params.append("client_secret", this.credentialInfo.clientSecret);
|
|
53
|
+
// Make token request
|
|
54
|
+
const response = await fetch(this.credentialInfo.tokenUrl, {
|
|
55
|
+
method: "POST",
|
|
56
|
+
headers: {
|
|
57
|
+
"Content-Type": "application/x-www-form-urlencoded",
|
|
58
|
+
Accept: "application/json",
|
|
59
|
+
},
|
|
60
|
+
body: params.toString(),
|
|
61
|
+
});
|
|
62
|
+
if (!response.ok) {
|
|
63
|
+
const errorText = await response.text();
|
|
64
|
+
throw new Error(`OAuth2 token request failed: ${response.status} ${response.statusText}. Response: ${errorText}`);
|
|
65
|
+
}
|
|
66
|
+
const tokenResponse = await response.json();
|
|
67
|
+
if (!tokenResponse.access_token) {
|
|
68
|
+
throw new Error("OAuth2 token response missing access_token");
|
|
69
|
+
}
|
|
70
|
+
// Cache the token with expiration
|
|
71
|
+
const expiresIn = tokenResponse.expires_in || 3600; // Default 1 hour if not specified
|
|
72
|
+
const expiresAt = Date.now() + (expiresIn - this.TOKEN_REFRESH_BUFFER_SECONDS) * 1000;
|
|
73
|
+
this.token = tokenResponse.access_token;
|
|
74
|
+
this.tokenExpireAt = expiresAt;
|
|
75
|
+
return tokenResponse.access_token;
|
|
76
|
+
}
|
|
77
|
+
async getToken() {
|
|
78
|
+
const now = Date.now();
|
|
79
|
+
if (this.token && this.tokenExpireAt && this.tokenExpireAt > now) {
|
|
80
|
+
return this.token;
|
|
81
|
+
}
|
|
82
|
+
await this.refreshToken();
|
|
83
|
+
return this.token;
|
|
84
|
+
}
|
|
85
|
+
getDataSource(token) {
|
|
86
|
+
return new integration_engine_1.DataSource("Smart4CityGraphQLDatasource", new HTTPFetchProtocolStrategy_1.HTTPFetchProtocolStrategy({
|
|
87
|
+
headers: {
|
|
88
|
+
"Content-Type": "application/json",
|
|
89
|
+
Authorization: `Bearer ${token}`,
|
|
90
|
+
},
|
|
91
|
+
method: "POST",
|
|
92
|
+
url: this.credentialInfo.graphQLUrl,
|
|
93
|
+
body: JSON.stringify({ query: this.QUERY }),
|
|
94
|
+
}), new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator("Smart4CityGraphQLDatasourceValidator", Smart4CityGraphQLSchemas_1.smart4CityGraphQLResponse));
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
exports.Smart4CityGraphQLDataSource = Smart4CityGraphQLDataSource = __decorate([
|
|
98
|
+
(0, tsyringe_1.injectable)(),
|
|
99
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
100
|
+
__metadata("design:paramtypes", [Object])
|
|
101
|
+
], Smart4CityGraphQLDataSource);
|
|
102
|
+
//# sourceMappingURL=Smart4CityGraphQLDataSource.js.map
|
package/dist/integration-engine/datasources/smart4city/graphql/Smart4CityGraphQLDataSource.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Smart4CityGraphQLDataSource.js","sourceRoot":"","sources":["../../../../../src/integration-engine/datasources/smart4city/graphql/Smart4CityGraphQLDataSource.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Smart4CityRoleHelper = void 0;
|
|
16
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
17
|
+
const fs_1 = __importDefault(require("fs"));
|
|
18
|
+
const path_1 = __importDefault(require("path"));
|
|
19
|
+
let Smart4CityRoleHelper = exports.Smart4CityRoleHelper = class Smart4CityRoleHelper {
|
|
20
|
+
constructor() {
|
|
21
|
+
this.RELATIVE_PATH = "../../../static-data/";
|
|
22
|
+
this.fileName = "smart4cityLookup.json";
|
|
23
|
+
this.lookup = this.load();
|
|
24
|
+
}
|
|
25
|
+
getAccess(id) {
|
|
26
|
+
if (this.lookup[id]) {
|
|
27
|
+
return this.lookup[id].access;
|
|
28
|
+
}
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
load() {
|
|
32
|
+
const pathToGeoJson = path_1.default.join(__dirname, this.RELATIVE_PATH, this.fileName);
|
|
33
|
+
const lookup = JSON.parse(fs_1.default.readFileSync(pathToGeoJson).toString());
|
|
34
|
+
return lookup;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
exports.Smart4CityRoleHelper = Smart4CityRoleHelper = __decorate([
|
|
38
|
+
(0, tsyringe_1.injectable)(),
|
|
39
|
+
__metadata("design:paramtypes", [])
|
|
40
|
+
], Smart4CityRoleHelper);
|
|
41
|
+
//# sourceMappingURL=Smart4CityRoleHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Smart4CityRoleHelper.js","sourceRoot":"","sources":["../../../src/integration-engine/helpers/Smart4CityRoleHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iEAAgE;AAChE,4CAAoB;AACpB,gDAAwB;AAGjB,IAAM,oBAAoB,kCAA1B,MAAM,oBAAoB;IAK7B;QAJiB,kBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAQ,GAAG,uBAAuB,CAAC;QAIhD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAEM,SAAS,CAAC,EAAU;QACvB,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YACjB,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;SACjC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,IAAI;QACR,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAErE,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ,CAAA;+BAvBY,oBAAoB;IADhC,IAAA,qBAAU,GAAE;;GACA,oBAAoB,CAuBhC"}
|
|
@@ -15,9 +15,6 @@ const MrParkitDataSourceProvider_1 = require("../datasources/mr-parkit/MrParkitD
|
|
|
15
15
|
const ParkingProviderDataSourceFactory_1 = require("../datasources/ParkingProviderDataSourceFactory");
|
|
16
16
|
const ParkomatsDataSource_1 = require("../datasources/parkomats/ParkomatsDataSource");
|
|
17
17
|
const PmdpMeasurementsDataSource_1 = require("../datasources/pmdp/PmdpMeasurementsDataSource");
|
|
18
|
-
const Smart4CityListDataSourceProvider_1 = require("../datasources/smart4city/Smart4CityListDataSourceProvider");
|
|
19
|
-
const Smart4CityLocationDataSourceProvider_1 = require("../datasources/smart4city/Smart4CityLocationDataSourceProvider");
|
|
20
|
-
const SmartCityListDatasourceCache_1 = require("../datasources/smart4city/SmartCityListDatasourceCache");
|
|
21
18
|
const TskOffStreetMeasurementsDataSource_1 = require("../datasources/tsk/TskOffStreetMeasurementsDataSource");
|
|
22
19
|
const TskParkingDataSourceFactory_1 = require("../datasources/TskParkingDataSourceFactory");
|
|
23
20
|
const AverageOccupancyRepository_1 = require("../repositories/AverageOccupancyRepository");
|
|
@@ -46,7 +43,6 @@ const GenerateIptOictParkingMachinesTask_1 = require("../workers/tasks/GenerateI
|
|
|
46
43
|
const GenerateIptOictPaymentJobsTask_1 = require("../workers/tasks/GenerateIptOictPaymentJobsTask");
|
|
47
44
|
const GenerateIptOictProhibitionsJobsTask_1 = require("../workers/tasks/GenerateIptOictProhibitionsJobsTask");
|
|
48
45
|
const GenerateIptOictTariffsJobsTask_1 = require("../workers/tasks/GenerateIptOictTariffsJobsTask");
|
|
49
|
-
const GenerateSmart4CityTaskListTask_1 = require("../workers/tasks/GenerateSmart4CityTaskListTask");
|
|
50
46
|
const RefreshDataInDbTask_1 = require("../workers/tasks/RefreshDataInDbTask");
|
|
51
47
|
const SaveBedrichovDataTask_1 = require("../workers/tasks/SaveBedrichovDataTask");
|
|
52
48
|
const SaveGreenCenterMeasurementsTask_1 = require("../workers/tasks/SaveGreenCenterMeasurementsTask");
|
|
@@ -67,12 +63,14 @@ const UpdateAllParkingsLocationAdresses_1 = require("../workers/tasks/UpdateAllP
|
|
|
67
63
|
const UpdateLocationAddressTask_1 = require("../workers/tasks/UpdateLocationAddressTask");
|
|
68
64
|
const UpdateMissingParkingsAddressesTask_1 = require("../workers/tasks/UpdateMissingParkingsAddressesTask");
|
|
69
65
|
const UpdateMissingParkingsLocationAddressesTask_1 = require("../workers/tasks/UpdateMissingParkingsLocationAddressesTask");
|
|
70
|
-
const UpdateSmart4CityMeasurementsTask_1 = require("../workers/tasks/UpdateSmart4CityMeasurementsTask");
|
|
71
66
|
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
72
67
|
const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
|
|
73
68
|
const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
|
|
74
69
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
75
70
|
const ModuleContainerToken_1 = require("./ModuleContainerToken");
|
|
71
|
+
const Smart4CityGraphQLDataSource_1 = require("../datasources/smart4city/graphql/Smart4CityGraphQLDataSource");
|
|
72
|
+
const UpdateSmart4CityDataTask_1 = require("../workers/tasks/UpdateSmart4CityDataTask");
|
|
73
|
+
const Smart4CityRoleHelper_1 = require("../helpers/Smart4CityRoleHelper");
|
|
76
74
|
//#region Initialization
|
|
77
75
|
const parkingsContainer = Di_1.IntegrationEngineContainer.createChildContainer();
|
|
78
76
|
exports.ParkingsContainer = parkingsContainer;
|
|
@@ -96,9 +94,6 @@ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkin
|
|
|
96
94
|
useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingTariffs")),
|
|
97
95
|
});
|
|
98
96
|
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.MrParkitDataSourceProvider, MrParkitDataSourceProvider_1.MrParkitDataSourceProvider);
|
|
99
|
-
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.Smart4CityListDataSourceProvider, Smart4CityListDataSourceProvider_1.Smart4CityListDataSourceProvider);
|
|
100
|
-
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.Smart4CityLocationDataSourceProvider, Smart4CityLocationDataSourceProvider_1.Smart4CityLocationDataSourceProvider);
|
|
101
|
-
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.SmartCityListDatasourceCache, SmartCityListDatasourceCache_1.SmartCityListDatasourceCache);
|
|
102
97
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.ParkingProviderDataSourceFactory, ParkingProviderDataSourceFactory_1.ParkingProviderDataSourceFactory);
|
|
103
98
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.IptOictDataSource, IptOictDataSource_1.IptOictDataSource);
|
|
104
99
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.ParkomatsDataSource, ParkomatsDataSource_1.ParkomatsDataSource);
|
|
@@ -111,6 +106,7 @@ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.
|
|
|
111
106
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.ParkomatsDataSource, ParkomatsDataSource_1.ParkomatsDataSource);
|
|
112
107
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.BedrichovDataSource, BedrichovDataSource_1.BedrichovDataSource);
|
|
113
108
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.TskOffStreetMeasurementsDataSource, TskOffStreetMeasurementsDataSource_1.TskOffStreetMeasurementsDataSource);
|
|
109
|
+
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.Smart4CityGraphQLDataSource, Smart4CityGraphQLDataSource_1.Smart4CityGraphQLDataSource);
|
|
114
110
|
//#endregion
|
|
115
111
|
//#region Transformation
|
|
116
112
|
parkingsContainer
|
|
@@ -145,10 +141,11 @@ parkingsContainer
|
|
|
145
141
|
.register(ModuleContainerToken_1.ModuleContainerToken.OpenHoursRepository, OpenHoursRepository_1.OpenHoursRepository);
|
|
146
142
|
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.ParkomatsRepository, ParkomatsRepository_1.ParkomatsRepository);
|
|
147
143
|
//#endregion
|
|
144
|
+
//#region Helpers
|
|
145
|
+
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.Smart4CityRoleHelper, Smart4CityRoleHelper_1.Smart4CityRoleHelper);
|
|
146
|
+
//#endregion
|
|
148
147
|
//#region Tasks
|
|
149
148
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveMrParkitDataTask, SaveMrParkitDataTask_1.SaveMrParkitDataTask);
|
|
150
|
-
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.GenerateSmart4CityTaskListTask, GenerateSmart4CityTaskListTask_1.GenerateSmart4CityTaskListTask);
|
|
151
|
-
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.UpdateSmart4CityMeasurementsTask, UpdateSmart4CityMeasurementsTask_1.UpdateSmart4CityMeasurementsTask);
|
|
152
149
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictParkingJobsTask, GenerateIptOictParkingJobsTask_1.GenerateIptOictParkingJobsTask);
|
|
153
150
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictParkingDataTask, SaveIptOictParkingDataTask_1.SaveIptOictParkingDataTask);
|
|
154
151
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictPaymentJobsTask, GenerateIptOictPaymentJobsTask_1.GenerateIptOictPaymentJobsTask);
|
|
@@ -177,5 +174,6 @@ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.
|
|
|
177
174
|
parkingsContainer
|
|
178
175
|
.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveTskOffStreetMeasurementsTask, SaveTskOffStreetMeasurementsTask_1.SaveTskOffStreetMeasurementsTask)
|
|
179
176
|
.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictParkingMachinesTask, GenerateIptOictParkingMachinesTask_1.GenerateIptOictParkingMachinesTask)
|
|
180
|
-
.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictParkingMachinesTask, SaveIptOictParkingMachinesTask_1.SaveIptOictParkingMachinesTask)
|
|
177
|
+
.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictParkingMachinesTask, SaveIptOictParkingMachinesTask_1.SaveIptOictParkingMachinesTask)
|
|
178
|
+
.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.UpdateSmart4CityDataTask, UpdateSmart4CityDataTask_1.UpdateSmart4CityDataTask);
|
|
181
179
|
//# sourceMappingURL=Di.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,qHAA6G;AAC7G,6GAAqG;AACrG,uGAA+F;AAC/F,sFAAoF;AACpF,oHAAyH;AACzH,gFAA8E;AAC9E,kGAAgG;AAChG,wHAAsH;AACtH,gGAA8F;AAC9F,8FAA4F;AAC5F,oGAAkG;AAClG,sGAAoG;AACpG,sFAAoF;AACpF,+FAAoG;AACpG,
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,qHAA6G;AAC7G,6GAAqG;AACrG,uGAA+F;AAC/F,sFAAoF;AACpF,oHAAyH;AACzH,gFAA8E;AAC9E,kGAAgG;AAChG,wHAAsH;AACtH,gGAA8F;AAC9F,8FAA4F;AAC5F,oGAAkG;AAClG,sGAAoG;AACpG,sFAAoF;AACpF,+FAAoG;AACpG,8GAA4G;AAC5G,4FAA0F;AAC1F,2FAAyF;AACzF,6EAA2E;AAC3E,2FAAyF;AACzF,yFAAuF;AACvF,yFAAuF;AACvF,2FAAyF;AACzF,iGAA+F;AAC/F,+GAA6G;AAC7G,mGAAiG;AACjG,2EAAyE;AACzE,6FAA2F;AAC3F,uGAAqG;AACrG,uFAAqF;AACrF,6EAA2E;AAC3E,gHAA8G;AAC9G,wFAAsF;AACtF,0HAAwH;AACxH,0GAAwG;AACxG,kGAAgG;AAChG,oHAAkH;AAClH,wGAAsG;AACtG,oGAAkG;AAClG,4GAA0G;AAC1G,oGAAkG;AAClG,8GAA4G;AAC5G,oGAAkG;AAClG,8EAA4E;AAC5E,kFAAgF;AAChF,sGAAoG;AACpG,gGAA8F;AAC9F,4FAA0F;AAC1F,oGAAkG;AAClG,8FAA4F;AAC5F,sGAAoG;AACpG,4FAA0F;AAC1F,0FAAwF;AACxF,gFAA8E;AAC9E,wFAAsF;AACtF,wGAAsG;AACtG,wFAAsF;AACtF,0EAAwE;AACxE,wFAAsF;AACtF,0GAAwG;AACxG,0FAAwF;AACxF,4GAA0G;AAC1G,4HAA0H;AAK1H,wEAAqE;AAGrE,mEAA2E;AAC3E,qEAA0F;AAC1F,iEAAiG;AACjG,iEAA8D;AAC9D,+GAA6G;AAC7G,wFAAsF;AACtF,0EAAwE;AAExE,wBAAwB;AACxB,MAAM,iBAAiB,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AA2InE,8CAAiB;AA1I/C,MAAM,MAAM,GAAG,+BAA0B,CAAC,OAAO,CAAiB,oBAAc,CAAC,MAAM,CAAC,CAAC;AACzF,MAAM,wBAAwB,GAAG,IAAI,yDAA2B,CAAC,MAAM,CAAC,CAAC;AACzE,YAAY;AAEZ,oBAAoB;AACpB,iBAAiB,CAAC,QAAQ,CAAsC,2CAAoB,CAAC,mCAAmC,EAAE;IACtH,UAAU,EAAE,IAAA,iCAAsB,EAAsC,GAAG,EAAE,CACzE,wBAAwB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CACnE;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAsC,2CAAoB,CAAC,mCAAmC,EAAE;IACtH,UAAU,EAAE,IAAA,iCAAsB,EAAsC,GAAG,EAAE,CACzE,wBAAwB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CACnE;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAiC,2CAAoB,CAAC,4BAA4B,EAAE;IAC1G,UAAU,EAAE,IAAA,iCAAsB,EAAiC,GAAG,EAAE,CACpE,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAC5D;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAiC,2CAAoB,CAAC,4BAA4B,EAAE;IAC1G,UAAU,EAAE,IAAA,iCAAsB,EAAiC,GAAG,EAAE,CACpE,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAC5D;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAsC,2CAAoB,CAAC,gCAAgC,EAAE;IACnH,UAAU,EAAE,IAAA,iCAAsB,EAAsC,GAAG,EAAE,CACzE,wBAAwB,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAC3D;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC,CAAC;AACxG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC,CAAC;AAC7H,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,iBAAiB,EAAE,qCAAiB,CAAC,CAAC;AAC/F,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACnG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AAC/G,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,iCAAiC,EAAE,8DAAiC,CAAC,CAAC;AAC/H,iBAAiB,CAAC,iBAAiB,CAC/B,2CAAoB,CAAC,wCAAwC,EAC7D,4EAAwC,CAC3C,CAAC;AACF,iBAAiB,CAAC,iBAAiB,CAC/B,2CAAoB,CAAC,qCAAqC,EAC1D,6EAAqC,CACxC,CAAC;AACF,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC,CAAC;AACjH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC;AAC7G,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACnG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACnG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,kCAAkC,EAAE,uEAAkC,CAAC,CAAC;AACjI,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC,CAAC;AACnH,YAAY;AAEZ,wBAAwB;AACxB,iBAAiB;KACZ,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC;KACjG,QAAQ,CAAC,2CAAoB,CAAC,mCAAmC,EAAE,yEAAmC,CAAC;KACvG,QAAQ,CAAC,2CAAoB,CAAC,uBAAuB,EAAE,iDAAuB,CAAC;KAC/E,QAAQ,CAAC,2CAAoB,CAAC,sCAAsC,EAAE,+EAAsC,CAAC,CAAC;AAEnH,YAAY;AAEZ,sBAAsB;AACtB,iBAAiB;KACZ,QAAQ,CAAC,2CAAoB,CAAC,8BAA8B,EAAE;IAC3D,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,IAAI,+DAA8B,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAS,CAAC,MAAM,CAAC,CAAC;CAC9G,CAAC;KACD,QAAQ,CAAC,2CAAoB,CAAC,2BAA2B,EAAE;IACxD,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,yDAA2B,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAS,CAAC,MAAM,CAAC,CAAC;CAC1H,CAAC;KACD,QAAQ,CAAC,2CAAoB,CAAC,kCAAkC,EAAE;IAC/D,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,IAAI,uEAAkC,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAS,CAAC,MAAM,CAAC,CAAC;CAClH,CAAC;KACD,QAAQ,CAAC,2CAAoB,CAAC,kBAAkB,EAAE,uCAAkB,CAAC;KACrE,QAAQ,CAAC,2CAAoB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC;KACvF,QAAQ,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC;KACrF,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC;KACjG,QAAQ,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC;KACjF,QAAQ,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC;KACnF,QAAQ,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC;KACrF,QAAQ,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC;KACrF,QAAQ,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC;KACnF,QAAQ,CAAC,2CAAoB,CAAC,6BAA6B,EAAE,6DAA6B,CAAC;KAC3F,QAAQ,CAAC,2CAAoB,CAAC,oCAAoC,EAAE,2EAAoC,CAAC;KACzG,QAAQ,CAAC,2CAAoB,CAAC,8BAA8B,EAAE,+DAA8B,CAAC;KAC7F,QAAQ,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AAC7E,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AAE1F,YAAY;AAEZ,iBAAiB;AACjB,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,oBAAoB,EAAE,2CAAoB,CAAC,CAAC;AACrG,YAAY;AAEZ,eAAe;AACf,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,oBAAoB,EAAE,2CAAoB,CAAC,CAAC;AACrG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,8BAA8B,EAAE,+DAA8B,CAAC,CAAC;AACzH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC,CAAC;AACjH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,8BAA8B,EAAE,+DAA8B,CAAC,CAAC;AACzH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC,CAAC;AACnH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,8BAA8B,EAAE,+DAA8B,CAAC,CAAC;AACzH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC,CAAC;AACjH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AAC/G,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,6BAA6B,EAAE,6DAA6B,CAAC,CAAC;AACvH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,+BAA+B,EAAE,iEAA+B,CAAC,CAAC;AAC3H,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACnG,iBAAiB,CAAC,iBAAiB,CAC/B,2CAAoB,CAAC,mCAAmC,EACxD,yEAAmC,CACtC,CAAC;AACF,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC,CAAC;AAC7H,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,4BAA4B,EAAE,2DAA4B,CAAC,CAAC;AACrH,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACnG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC;AAC7G,iBAAiB,CAAC,iBAAiB,CAC/B,2CAAoB,CAAC,sCAAsC,EAC3D,+EAAsC,CACzC,CAAC;AACF,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,+BAA+B,EAAE,iEAA+B,CAAC,CAAC;AAC3H,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,qBAAqB,EAAE,6CAAqB,CAAC,CAAC;AACvG,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC;AAC7G,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,iCAAiC,EAAE,qEAAiC,CAAC,CAAC;AAC/H,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,iBAAiB,EAAE,qCAAiB,CAAC,CAAC;AAC/F,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AAC/G,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC;AAC7G,iBAAiB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,uEAAkC,CAAC,CAAC;AAC/H,iBAAiB,CAAC,iBAAiB,CAC/B,2CAAoB,CAAC,yCAAyC,EAC9D,uFAA0C,CAC7C,CAAC;AACF,iBAAiB;KACZ,iBAAiB,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC;KAC1G,iBAAiB,CAAC,2CAAoB,CAAC,kCAAkC,EAAE,uEAAkC,CAAC;KAC9G,iBAAiB,CAAC,2CAAoB,CAAC,8BAA8B,EAAE,+DAA8B,CAAC;KACtG,iBAAiB,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC"}
|
|
@@ -26,11 +26,9 @@ declare const ModuleContainerToken: {
|
|
|
26
26
|
PmdpMeasurementsDataSourceFactory: symbol;
|
|
27
27
|
CachedPmdpParkingRepository: symbol;
|
|
28
28
|
SavePmdpMeasurementsTask: symbol;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
GenerateSmart4CityTaskListTask: symbol;
|
|
33
|
-
UpdateSmart4CityMeasurementsTask: symbol;
|
|
29
|
+
Smart4CityRoleHelper: symbol;
|
|
30
|
+
Smart4CityGraphQLDataSource: symbol;
|
|
31
|
+
UpdateSmart4CityDataTask: symbol;
|
|
34
32
|
ParkingEntrancesRepository: symbol;
|
|
35
33
|
BedrichovMeasurementsTransformation: symbol;
|
|
36
34
|
BedrichovDataSource: symbol;
|
|
@@ -36,11 +36,9 @@ const ModuleContainerToken = {
|
|
|
36
36
|
SavePmdpMeasurementsTask: Symbol(),
|
|
37
37
|
//#endregion
|
|
38
38
|
//#region Smart4City
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
GenerateSmart4CityTaskListTask: Symbol(),
|
|
43
|
-
UpdateSmart4CityMeasurementsTask: Symbol(),
|
|
39
|
+
Smart4CityRoleHelper: Symbol(),
|
|
40
|
+
Smart4CityGraphQLDataSource: Symbol(),
|
|
41
|
+
UpdateSmart4CityDataTask: Symbol(),
|
|
44
42
|
//#endregion
|
|
45
43
|
//#region Entrances
|
|
46
44
|
ParkingEntrancesRepository: Symbol(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleContainerToken.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/ModuleContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,8BAA8B,EAAE,MAAM,EAAE;IACxC,kBAAkB,EAAE,MAAM,EAAE;IAC5B,2BAA2B,EAAE,MAAM,EAAE;IACrC,0BAA0B,EAAE,MAAM,EAAE;IACpC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,wBAAwB,EAAE,MAAM,EAAE;IAClC,yBAAyB,EAAE,MAAM,EAAE;IACnC,0BAA0B,EAAE,MAAM,EAAE;IACpC,6BAA6B,EAAE,MAAM,EAAE;IACvC,oCAAoC,EAAE,MAAM,EAAE;IAC9C,yBAAyB,EAAE,MAAM,EAAE;IACnC,mBAAmB,EAAE,MAAM,EAAE;IAE7B,4BAA4B,EAAE,MAAM,EAAE;IACtC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,4BAA4B,EAAE,MAAM,EAAE;IACtC,+BAA+B,EAAE,MAAM,EAAE;IAEzC,gCAAgC,EAAE,MAAM,CAAC,kCAAkC,CAAC;IAC5E,gCAAgC,EAAE,MAAM,EAAE;IAE1C,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,YAAY;IAEZ,gBAAgB;IAChB,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,cAAc;IACd,iCAAiC,EAAE,MAAM,EAAE;IAC3C,2BAA2B,EAAE,MAAM,EAAE;IACrC,wBAAwB,EAAE,MAAM,EAAE;IAClC,YAAY;IAEZ,oBAAoB;IACpB,
|
|
1
|
+
{"version":3,"file":"ModuleContainerToken.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/ModuleContainerToken.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ISmart4CityGraphQLReponse } from "../../datasources/smart4city/graphql/ISmart4CityGraphQLReponse";
|
|
2
|
+
import { IParkingMeasurements } from "../../ParkingInterface";
|
|
3
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
4
|
+
export declare class Smart4CityMeasurementsTransformation extends AbstractTransformation<ISmart4CityGraphQLReponse, IParkingMeasurements[]> {
|
|
5
|
+
private source;
|
|
6
|
+
private transformationDate;
|
|
7
|
+
name: string;
|
|
8
|
+
constructor(source: string, transformationDate: Date);
|
|
9
|
+
protected transformInternal: (element: ISmart4CityGraphQLReponse) => IParkingMeasurements[];
|
|
10
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Smart4CityMeasurementsTransformation = void 0;
|
|
4
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
5
|
+
class Smart4CityMeasurementsTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
6
|
+
constructor(source, transformationDate) {
|
|
7
|
+
super();
|
|
8
|
+
this.source = source;
|
|
9
|
+
this.transformationDate = transformationDate;
|
|
10
|
+
this.name = "Smart4CityParkingMeasurementsTransformation";
|
|
11
|
+
this.transformInternal = (element) => {
|
|
12
|
+
const transformed = [];
|
|
13
|
+
for (const parking of element.data.parking_locations) {
|
|
14
|
+
const parkingId = `${this.source}-${parking.code}`;
|
|
15
|
+
transformed.push({
|
|
16
|
+
parking_id: parkingId,
|
|
17
|
+
source: this.source,
|
|
18
|
+
source_id: parking.code,
|
|
19
|
+
total_spot_number: parking.capacity,
|
|
20
|
+
available_spot_number: parking.capacity - parking.total_occ,
|
|
21
|
+
occupied_spot_number: parking.total_occ,
|
|
22
|
+
date_modified: parking.last_changes,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
return transformed;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.Smart4CityMeasurementsTransformation = Smart4CityMeasurementsTransformation;
|
|
30
|
+
//# sourceMappingURL=Smart4CityParkingMeasurementsTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Smart4CityParkingMeasurementsTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/smart4city/Smart4CityParkingMeasurementsTransformation.ts"],"names":[],"mappings":";;;AAEA,6GAA0G;AAE1G,MAAa,oCAAqC,SAAQ,+CAGzD;IAGG,YAAoB,MAAc,EAAU,kBAAwB;QAChE,KAAK,EAAE,CAAC;QADQ,WAAM,GAAN,MAAM,CAAQ;QAAU,uBAAkB,GAAlB,kBAAkB,CAAM;QAF7D,SAAI,GAAW,6CAA6C,CAAC;QAM1D,sBAAiB,GAAG,CAAC,OAAkC,EAAE,EAAE;YACjE,MAAM,WAAW,GAA2B,EAAE,CAAC;YAE/C,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAClD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACnD,WAAW,CAAC,IAAI,CAAC;oBACb,UAAU,EAAE,SAAS;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,SAAS,EAAE,OAAO,CAAC,IAAI;oBACvB,iBAAiB,EAAE,OAAO,CAAC,QAAQ;oBACnC,qBAAqB,EAAE,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS;oBAC3D,oBAAoB,EAAE,OAAO,CAAC,SAAS;oBACvC,aAAa,EAAE,OAAO,CAAC,YAAY;iBACtC,CAAC,CAAC;aACN;YAED,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC;IAnBF,CAAC;CAoBJ;AA5BD,oFA4BC"}
|