@golemio/parkings 1.6.1-dev.1018184794 → 1.6.1-dev.1024272538

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 (79) hide show
  1. package/db/migrations/postgresql/20230918124250-tsk-v-2-parking-sources.js +53 -0
  2. package/db/migrations/postgresql/20230918124259-tsk-v-2-parking-machines.js +53 -0
  3. package/db/migrations/postgresql/20231003115645-tsk-v-2-parking-special-access.js +53 -0
  4. package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-down.sql +1 -0
  5. package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-up.sql +18 -0
  6. package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-down.sql +1 -0
  7. package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-up.sql +15 -0
  8. package/db/migrations/postgresql/sqls/20231003115645-tsk-v-2-parking-special-access-down.sql +1 -0
  9. package/db/migrations/postgresql/sqls/20231003115645-tsk-v-2-parking-special-access-up.sql +1 -0
  10. package/dist/integration-engine/ParkingInterface.d.ts +1 -0
  11. package/dist/integration-engine/datasources/TskParkingDataSourceFactory.d.ts +8 -0
  12. package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js +49 -0
  13. package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js.map +1 -0
  14. package/dist/integration-engine/index.d.ts +3 -1
  15. package/dist/integration-engine/index.js +3 -1
  16. package/dist/integration-engine/index.js.map +1 -1
  17. package/dist/integration-engine/ioc/Di.js +24 -1
  18. package/dist/integration-engine/ioc/Di.js.map +1 -1
  19. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +8 -0
  20. package/dist/integration-engine/ioc/ModuleContainerToken.js +8 -0
  21. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  22. package/dist/integration-engine/repositories/ParkingMachinesRepository.d.ts +4 -0
  23. package/dist/integration-engine/repositories/ParkingMachinesRepository.js +35 -0
  24. package/dist/integration-engine/repositories/ParkingMachinesRepository.js.map +1 -0
  25. package/dist/integration-engine/transformations/TskParkingMachinesTransformation.d.ts +7 -0
  26. package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js +24 -0
  27. package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js.map +1 -0
  28. package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.d.ts +9 -0
  29. package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js +42 -0
  30. package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js.map +1 -0
  31. package/dist/integration-engine/transformations/TskParkingSectionTransformation.d.ts +10 -0
  32. package/dist/integration-engine/transformations/TskParkingSectionTransformation.js +67 -0
  33. package/dist/integration-engine/transformations/TskParkingSectionTransformation.js.map +1 -0
  34. package/dist/integration-engine/workers/TskParkingWorker.d.ts +5 -0
  35. package/dist/integration-engine/workers/TskParkingWorker.js +27 -0
  36. package/dist/integration-engine/workers/TskParkingWorker.js.map +1 -0
  37. package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.d.ts +13 -0
  38. package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js +56 -0
  39. package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js.map +1 -0
  40. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel251Task.d.ts +13 -0
  41. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel251Task.js +55 -0
  42. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel251Task.js.map +1 -0
  43. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel253Task.d.ts +13 -0
  44. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel253Task.js +55 -0
  45. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel253Task.js.map +1 -0
  46. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.d.ts +11 -0
  47. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js +54 -0
  48. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js.map +1 -0
  49. package/dist/output-gateway/models/ParkingsModel.js +5 -0
  50. package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
  51. package/dist/schema-definitions/datasources/TskParkingMachinesSchema.d.ts +3 -0
  52. package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js +23 -0
  53. package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js.map +1 -0
  54. package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.d.ts +3 -0
  55. package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js +25 -0
  56. package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js.map +1 -0
  57. package/dist/schema-definitions/datasources/TskParkingSectionSchema.d.ts +3 -0
  58. package/dist/schema-definitions/datasources/TskParkingSectionSchema.js +23 -0
  59. package/dist/schema-definitions/datasources/TskParkingSectionSchema.js.map +1 -0
  60. package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.d.ts +9 -0
  61. package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js +3 -0
  62. package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js.map +1 -0
  63. package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.d.ts +9 -0
  64. package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js +3 -0
  65. package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js.map +1 -0
  66. package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.d.ts +11 -0
  67. package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js +3 -0
  68. package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js.map +1 -0
  69. package/dist/schema-definitions/datasources/interfaces/ITskParkingTariff.d.ts +23 -0
  70. package/dist/schema-definitions/datasources/interfaces/ITskParkingTariff.js +3 -0
  71. package/dist/schema-definitions/datasources/interfaces/ITskParkingTariff.js.map +1 -0
  72. package/dist/schema-definitions/index.d.ts +3 -0
  73. package/dist/schema-definitions/index.js +4 -0
  74. package/dist/schema-definitions/index.js.map +1 -1
  75. package/dist/schema-definitions/models/interfaces/IParkingMachine.d.ts +10 -0
  76. package/dist/schema-definitions/models/interfaces/IParkingMachine.js +3 -0
  77. package/dist/schema-definitions/models/interfaces/IParkingMachine.js.map +1 -0
  78. package/docs/implementation-documentation.md +45 -1
  79. package/package.json +4 -2
@@ -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', '20230918124250-tsk-v-2-parking-sources-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', '20230918124250-tsk-v-2-parking-sources-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,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', '20230918124259-tsk-v-2-parking-machines-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', '20230918124259-tsk-v-2-parking-machines-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,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', '20231003115645-tsk-v-2-parking-special-access-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', '20231003115645-tsk-v-2-parking-special-access-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 @@
1
+ drop table IF EXISTS parking_sources;
@@ -0,0 +1,18 @@
1
+ create table parking_sources (
2
+ "source" varchar(255) NOT NULL,
3
+ open_data bool NOT NULL,
4
+ ipt_allowed bool NOT NULL,
5
+ payment_url varchar(255) NULL,
6
+ contact jsonb NULL,
7
+ CONSTRAINT parking_sources_pkey PRIMARY KEY (source)
8
+ );
9
+
10
+ insert into parking_sources(source, open_data, ipt_allowed, payment_url, contact) VALUES
11
+ ('tsk_v2', false, true,
12
+ 'https://ke-utc.appspot.com/static/onstreet.html?shortname={shortNameValue})',
13
+ '{
14
+ "email": "parking@tsk-praha.cz",
15
+ "phone": "+420 257 015 257",
16
+ "web_url": "https://parking.praha.eu/",
17
+ "term_of_use_url": "https://parking.praha.eu/cs/moznosti-parkovani-v-praze/parkovani-v-zonach/"
18
+ }');
@@ -0,0 +1 @@
1
+ drop table IF EXISTS parking_machines;
@@ -0,0 +1,15 @@
1
+ create table parking_machines (
2
+ id varchar(255) NOT NULL,
3
+ "source" varchar(255) NOT NULL,
4
+ code varchar(255) NULL,
5
+ type varchar(255) NULL,
6
+ location geometry NULL,
7
+ valid_from timestamptz NULL,
8
+ tariff_id varchar(255) NULL,
9
+ created_at timestamptz NULL,
10
+ created_by varchar(150) NULL,
11
+ updated_at timestamptz NULL,
12
+ updated_by varchar(150) NULL,
13
+
14
+ CONSTRAINT parking_machines_pk PRIMARY KEY (id)
15
+ );
@@ -0,0 +1 @@
1
+ ALTER TABLE parkings_location DROP COLUMN special_access;
@@ -0,0 +1 @@
1
+ ALTER TABLE parkings_location ADD COLUMN special_access varchar(255) NULL;
@@ -30,6 +30,7 @@ export interface IParkingLocation {
30
30
  total_spot_number: number;
31
31
  source: string;
32
32
  source_id: string;
33
+ special_access?: string;
33
34
  }
34
35
  export interface IParkingMeasurements {
35
36
  source: string;
@@ -0,0 +1,8 @@
1
+ import { DataSource } from "@golemio/core/dist/integration-engine/datasources";
2
+ import { IConfiguration } from "@golemio/core/dist/integration-engine/config";
3
+ export declare class TskParkingDataSourceFactory {
4
+ private config;
5
+ private schemas;
6
+ constructor(config: IConfiguration);
7
+ getDataSource(endpoint: string): DataSource;
8
+ }
@@ -0,0 +1,49 @@
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.TskParkingDataSourceFactory = void 0;
16
+ const datasources_1 = require("@golemio/core/dist/integration-engine/datasources");
17
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
18
+ const TskParkingMachinesSchema_1 = require("../../schema-definitions/datasources/TskParkingMachinesSchema");
19
+ const TskParkingSectionLevelSchema_1 = require("../../schema-definitions/datasources/TskParkingSectionLevelSchema");
20
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
21
+ const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
22
+ const TskParkingSectionSchema_1 = require("../../schema-definitions/datasources/TskParkingSectionSchema");
23
+ let TskParkingDataSourceFactory = exports.TskParkingDataSourceFactory = class TskParkingDataSourceFactory {
24
+ constructor(config) {
25
+ this.config = config;
26
+ this.schemas = {
27
+ parkingSections: TskParkingSectionSchema_1.TskParkingSectionSchema,
28
+ parkingSectionLevel251: TskParkingSectionLevelSchema_1.TskParkingSectionLevelSchema,
29
+ parkingSectionLevel253: TskParkingSectionLevelSchema_1.TskParkingSectionLevelSchema,
30
+ parkingMachines: TskParkingMachinesSchema_1.TskParkingMachinesSchema,
31
+ };
32
+ }
33
+ getDataSource(endpoint) {
34
+ const authToken = Buffer.from(this.config.datasources.parking.TskApiCredentials.user + ":" + this.config.datasources.parking.TskApiCredentials.pass).toString("base64");
35
+ return new datasources_1.DataSource(this.schemas[endpoint].name + "DataSource", new datasources_1.HTTPProtocolStrategy({
36
+ headers: {
37
+ Authorization: `Basic ${authToken}`,
38
+ },
39
+ method: "GET",
40
+ url: this.config.datasources.parking.TskApiBaseUrl + this.config.datasources.parking.TskApiEndpoints[endpoint],
41
+ }), new datasources_1.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator(this.schemas[endpoint].name, this.schemas[endpoint].jsonSchema));
42
+ }
43
+ };
44
+ exports.TskParkingDataSourceFactory = TskParkingDataSourceFactory = __decorate([
45
+ (0, tsyringe_1.injectable)(),
46
+ __param(0, (0, tsyringe_1.inject)(ioc_1.ContainerToken.Config)),
47
+ __metadata("design:paramtypes", [Object])
48
+ ], TskParkingDataSourceFactory);
49
+ //# sourceMappingURL=TskParkingDataSourceFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TskParkingDataSourceFactory.js","sourceRoot":"","sources":["../../../src/integration-engine/datasources/TskParkingDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mFAA2H;AAC3H,mFAAkF;AAElF,4GAAqF;AACrF,oHAA6F;AAC7F,iEAAwE;AACxE,mEAA2E;AAC3E,0GAAmF;AAU5E,IAAM,2BAA2B,yCAAjC,MAAM,2BAA2B;IAQpC,YAA2C,MAA8B;QAAtB,WAAM,GAAN,MAAM,CAAgB;QAPjE,YAAO,GAAsB;YACjC,eAAe,EAAE,iDAAuB;YACxC,sBAAsB,EAAE,2DAA4B;YACpD,sBAAsB,EAAE,2DAA4B;YACpD,eAAe,EAAE,mDAAwB;SAC5C,CAAC;IAE0E,CAAC;IAEtE,aAAa,CAAC,QAAgB;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CACzB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CACxH,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErB,OAAO,IAAI,wBAAU,CACjB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,YAAY,EAC1C,IAAI,kCAAoB,CAAC;YACrB,OAAO,EAAE;gBACL,aAAa,EAAE,SAAS,SAAS,EAAE;aACtC;YACD,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC;SACjH,CAAC,EACF,IAAI,kCAAoB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,EAC7C,IAAI,uCAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAC1F,CAAC;IACN,CAAC;CACJ,CAAA;sCA5BY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;IASI,WAAA,IAAA,iBAAM,EAAC,oBAAc,CAAC,MAAM,CAAC,CAAA;;GARjC,2BAA2B,CA4BvC"}
@@ -1,6 +1,7 @@
1
1
  import { StaticTariffsWorker } from "./workers/StaticTariffsWorker";
2
2
  import { UpdateAddressWorker } from "./workers/UpdateAddressWorker";
3
3
  import { NewParkingsWorker } from "./workers/NewParkingsWorker";
4
+ import { TskParkingWorker } from "./workers/TskParkingWorker";
4
5
  export * from "./ParkingsWorker";
5
6
  export * from "./transformations/KoridParkingDataTransformation";
6
7
  export * from "./transformations/KoridParkingConfigTransformation";
@@ -9,4 +10,5 @@ export * from "./ZtpParkingZones/ZtpParkingZonesDataSourceFactory";
9
10
  export * from "./ZtpParkingZones/ZtpParkingZonesTransformation";
10
11
  export * from "./ZtpParkingZones/ZtpParkingZonesWorker";
11
12
  export * from "./workers/StaticTariffsWorker";
12
- export declare const workers: (typeof StaticTariffsWorker | typeof UpdateAddressWorker | typeof NewParkingsWorker)[];
13
+ export * from "./workers/TskParkingWorker";
14
+ export declare const workers: (typeof StaticTariffsWorker | typeof UpdateAddressWorker | typeof NewParkingsWorker | typeof TskParkingWorker)[];
@@ -19,6 +19,7 @@ exports.workers = void 0;
19
19
  const StaticTariffsWorker_1 = require("./workers/StaticTariffsWorker");
20
20
  const UpdateAddressWorker_1 = require("./workers/UpdateAddressWorker");
21
21
  const NewParkingsWorker_1 = require("./workers/NewParkingsWorker");
22
+ const TskParkingWorker_1 = require("./workers/TskParkingWorker");
22
23
  __exportStar(require("./ParkingsWorker"), exports);
23
24
  __exportStar(require("./transformations/KoridParkingDataTransformation"), exports);
24
25
  __exportStar(require("./transformations/KoridParkingConfigTransformation"), exports);
@@ -27,5 +28,6 @@ __exportStar(require("./ZtpParkingZones/ZtpParkingZonesDataSourceFactory"), expo
27
28
  __exportStar(require("./ZtpParkingZones/ZtpParkingZonesTransformation"), exports);
28
29
  __exportStar(require("./ZtpParkingZones/ZtpParkingZonesWorker"), exports);
29
30
  __exportStar(require("./workers/StaticTariffsWorker"), exports);
30
- exports.workers = [StaticTariffsWorker_1.StaticTariffsWorker, UpdateAddressWorker_1.UpdateAddressWorker, NewParkingsWorker_1.NewParkingsWorker];
31
+ __exportStar(require("./workers/TskParkingWorker"), exports);
32
+ exports.workers = [StaticTariffsWorker_1.StaticTariffsWorker, UpdateAddressWorker_1.UpdateAddressWorker, NewParkingsWorker_1.NewParkingsWorker, TskParkingWorker_1.TskParkingWorker];
31
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,uEAAsE;AACtE,uEAAsE;AACtE,mEAAgE;AAEhE,mDAAiC;AACjC,mFAAiE;AACjE,qFAAmE;AACnE,qDAAmC;AACnC,qFAAmE;AACnE,kFAAgE;AAChE,0EAAwD;AACxD,gEAA8C;AAEjC,QAAA,OAAO,GAAG,CAAC,yCAAmB,EAAE,yCAAmB,EAAE,qCAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,uEAAsE;AACtE,uEAAsE;AACtE,mEAAgE;AAChE,iEAAgE;AAEhE,mDAAiC;AACjC,mFAAiE;AACjE,qFAAmE;AACnE,qDAAmC;AACnC,qFAAmE;AACnE,kFAAgE;AAChE,0EAAwD;AACxD,gEAA8C;AAC9C,6DAA2C;AAE9B,QAAA,OAAO,GAAG,CAAC,yCAAmB,EAAE,yCAAmB,EAAE,qCAAiB,EAAE,mCAAgB,CAAC,CAAC"}
@@ -8,19 +8,42 @@ const ParkingsRepository_1 = require("../repositories/ParkingsRepository");
8
8
  const ParkingsRedisModel_1 = require("../repositories/redis/ParkingsRedisModel");
9
9
  const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
10
10
  const ModuleContainerToken_1 = require("./ModuleContainerToken");
11
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
12
+ const TskParkingMachinesTransformation_1 = require("../transformations/TskParkingMachinesTransformation");
13
+ const TskParkingDataSourceFactory_1 = require("../datasources/TskParkingDataSourceFactory");
14
+ const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
15
+ const ParkingMachinesRepository_1 = require("../repositories/ParkingMachinesRepository");
16
+ const ParkingsLocationRepository_1 = require("../repositories/ParkingsLocationRepository");
11
17
  //#region Initialization
12
18
  const parkingsContainer = Di_1.IntegrationEngineContainer.createChildContainer();
13
19
  exports.ParkingsContainer = parkingsContainer;
20
+ const config = Di_1.IntegrationEngineContainer.resolve(ioc_1.ContainerToken.Config);
21
+ const parkingDataSourceFactory = new TskParkingDataSourceFactory_1.TskParkingDataSourceFactory(config);
14
22
  //#endregion
15
23
  //#region Datasource
24
+ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingSectionLevel251DataSource, {
25
+ useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingSectionLevel251")),
26
+ });
27
+ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingSectionLevel253DataSource, {
28
+ useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingSectionLevel253")),
29
+ });
30
+ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingSectionsDataSource, {
31
+ useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingSections")),
32
+ });
33
+ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingMachinesDataSource, {
34
+ useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingMachines")),
35
+ });
16
36
  //#endregion
17
37
  //#region Transformation
38
+ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingMachinesTransformation, TskParkingMachinesTransformation_1.TskParkingMachinesTransformation);
18
39
  //#endregion
19
40
  //#region Repositories
20
41
  parkingsContainer
21
42
  .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsRepository, ParkingsRepository_1.ParkingsRepository)
43
+ .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsLocationRepository, ParkingsLocationRepository_1.ParkingsLocationRepository)
22
44
  .register(ModuleContainerToken_1.ModuleContainerToken.ParkingTariffsRepository, ParkingTariffsRepository_1.ParkingTariffsRepository)
23
- .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsBusinessErrorsRepository, ParkingsBusinessErrorsRepository_1.ParkingsBusinessErrorsRepository);
45
+ .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsBusinessErrorsRepository, ParkingsBusinessErrorsRepository_1.ParkingsBusinessErrorsRepository)
46
+ .register(ModuleContainerToken_1.ModuleContainerToken.ParkingMachinesRepository, ParkingMachinesRepository_1.ParkingMachinesRepository);
24
47
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.RedisModel, ParkingsRedisModel_1.ParkingsRedisModel);
25
48
  //#endregion
26
49
  //#region Helpers
@@ -1 +1 @@
1
- {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,wEAAsE;AACtE,uFAAqF;AACrF,uGAAqG;AACrG,2EAAyE;AACzE,iFAA+E;AAC/E,qEAA0F;AAC1F,iEAA8D;AAG9D,wBAAwB;AACxB,MAAM,iBAAiB,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AAwBnE,8CAAiB;AAvB/C,YAAY;AAEZ,oBAAoB;AACpB,YAAY;AAEZ,wBAAwB;AACxB,YAAY;AAEZ,sBAAsB;AACtB,iBAAiB;KACZ,QAAQ,CAAC,2CAAoB,CAAC,kBAAkB,EAAE,uCAAkB,CAAC;KACrE,QAAQ,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC;KACjF,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC,CAAC;AACvG,iBAAiB,CAAC,QAAQ,CAAqB,2CAAoB,CAAC,UAAU,EAAE,uCAAkB,CAAC,CAAC;AACpG,YAAY;AAEZ,iBAAiB;AACjB,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,gBAAgB,EAAE,mCAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,wEAAsE;AACtE,uFAAqF;AACrF,uGAAqG;AACrG,2EAAyE;AACzE,iFAA+E;AAC/E,qEAA0F;AAC1F,iEAA8D;AAC9D,iEAAiG;AACjG,0GAAwG;AAGxG,4FAA0F;AAE1F,mEAA2E;AAE3E,yFAAuF;AAEvF,2FAAyF;AAEzF,wBAAwB;AACxB,MAAM,iBAAiB,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AAiDnE,8CAAiB;AAhD/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,YAAY;AAEZ,wBAAwB;AACxB,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC,CAAC;AACpH,YAAY;AAEZ,sBAAsB;AACtB,iBAAiB;KACZ,QAAQ,CAAC,2CAAoB,CAAC,kBAAkB,EAAE,uCAAkB,CAAC;KACrE,QAAQ,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC;KACrF,QAAQ,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC;KACjF,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC;KACjG,QAAQ,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AACzF,iBAAiB,CAAC,QAAQ,CAAqB,2CAAoB,CAAC,UAAU,EAAE,uCAAkB,CAAC,CAAC;AACpG,YAAY;AAEZ,iBAAiB;AACjB,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,gBAAgB,EAAE,mCAAgB,CAAC,CAAC"}
@@ -2,7 +2,15 @@ declare const ModuleContainerToken: {
2
2
  TskTariffChecker: symbol;
3
3
  RedisModel: symbol;
4
4
  ParkingsRepository: symbol;
5
+ ParkingsLocationRepository: symbol;
5
6
  ParkingTariffsRepository: symbol;
6
7
  ParkingsBusinessErrorsRepository: symbol;
8
+ ParkingMachinesRepository: symbol;
9
+ TskParkingMachinesDataSource: symbol;
10
+ TskParkingMachinesTransformation: symbol;
11
+ TskParkingSectionLevel251DataSource: symbol;
12
+ TskParkingSectionLevel253DataSource: symbol;
13
+ TskParkingSectionsDataSource: symbol;
14
+ TskParkingSectionTransformation: symbol;
7
15
  };
8
16
  export { ModuleContainerToken };
@@ -5,8 +5,16 @@ const ModuleContainerToken = {
5
5
  TskTariffChecker: Symbol(),
6
6
  RedisModel: Symbol(),
7
7
  ParkingsRepository: Symbol(),
8
+ ParkingsLocationRepository: Symbol(),
8
9
  ParkingTariffsRepository: Symbol(),
9
10
  ParkingsBusinessErrorsRepository: Symbol(),
11
+ ParkingMachinesRepository: Symbol(),
12
+ TskParkingMachinesDataSource: Symbol(),
13
+ TskParkingMachinesTransformation: Symbol(),
14
+ TskParkingSectionLevel251DataSource: Symbol(),
15
+ TskParkingSectionLevel253DataSource: Symbol(),
16
+ TskParkingSectionsDataSource: Symbol(),
17
+ TskParkingSectionTransformation: Symbol(),
10
18
  };
11
19
  exports.ModuleContainerToken = ModuleContainerToken;
12
20
  //# sourceMappingURL=ModuleContainerToken.js.map
@@ -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,UAAU,EAAE,MAAM,EAAE;IACpB,kBAAkB,EAAE,MAAM,EAAE;IAC5B,wBAAwB,EAAE,MAAM,EAAE;IAClC,gCAAgC,EAAE,MAAM,EAAE;CAC7C,CAAC;AACO,oDAAoB"}
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,UAAU,EAAE,MAAM,EAAE;IACpB,kBAAkB,EAAE,MAAM,EAAE;IAC5B,0BAA0B,EAAE,MAAM,EAAE;IACpC,wBAAwB,EAAE,MAAM,EAAE;IAClC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,yBAAyB,EAAE,MAAM,EAAE;IAEnC,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;CAC5C,CAAC;AACO,oDAAoB"}
@@ -0,0 +1,4 @@
1
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
2
+ export declare class ParkingMachinesRepository extends PostgresModel implements IModel {
3
+ constructor();
4
+ }
@@ -0,0 +1,35 @@
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.ParkingMachinesRepository = void 0;
7
+ const models_1 = require("@golemio/core/dist/integration-engine/models");
8
+ const _sch_1 = require("../../schema-definitions");
9
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
10
+ const TskParkingMachinesSchema_1 = require("../../schema-definitions/datasources/TskParkingMachinesSchema");
11
+ const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
12
+ class ParkingMachinesRepository extends models_1.PostgresModel {
13
+ constructor() {
14
+ const parkingMachines = {
15
+ id: {
16
+ primaryKey: true,
17
+ type: sequelize_1.default.STRING,
18
+ },
19
+ source: sequelize_1.default.STRING,
20
+ code: sequelize_1.default.STRING,
21
+ type: sequelize_1.default.STRING,
22
+ location: sequelize_1.default.GEOMETRY,
23
+ validFrom: sequelize_1.default.DATE,
24
+ tariffId: sequelize_1.default.STRING,
25
+ };
26
+ super("ParkingMachinesRepository", {
27
+ outputSequelizeAttributes: parkingMachines,
28
+ pgSchema: _sch_1.Parkings.pgSchema,
29
+ pgTableName: "parking_machines",
30
+ savingType: "insertOrUpdate",
31
+ }, new golemio_validator_1.JSONSchemaValidator("ParkingMachinesRepositoryValidator", TskParkingMachinesSchema_1.TskParkingMachinesSchema));
32
+ }
33
+ }
34
+ exports.ParkingMachinesRepository = ParkingMachinesRepository;
35
+ //# sourceMappingURL=ParkingMachinesRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParkingMachinesRepository.js","sourceRoot":"","sources":["../../../src/integration-engine/repositories/ParkingMachinesRepository.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAqF;AACrF,mDAAgC;AAChC,mFAAkF;AAClF,4GAAqF;AACrF,oFAA4D;AAE5D,MAAa,yBAA0B,SAAQ,sBAAa;IACxD;QACI,MAAM,eAAe,GAA8B;YAC/C,EAAE,EAAE;gBACA,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,mBAAS,CAAC,MAAM;aACzB;YACD,MAAM,EAAE,mBAAS,CAAC,MAAM;YACxB,IAAI,EAAE,mBAAS,CAAC,MAAM;YACtB,IAAI,EAAE,mBAAS,CAAC,MAAM;YACtB,QAAQ,EAAE,mBAAS,CAAC,QAAQ;YAC5B,SAAS,EAAE,mBAAS,CAAC,IAAI;YACzB,QAAQ,EAAE,mBAAS,CAAC,MAAM;SAC7B,CAAC;QAEF,KAAK,CACD,2BAA2B,EAC3B;YACI,yBAAyB,EAAE,eAAe;YAC1C,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,kBAAkB;YAC/B,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,oCAAoC,EAAE,mDAAwB,CAAC,CAC1F,CAAC;IACN,CAAC;CACJ;AA1BD,8DA0BC"}
@@ -0,0 +1,7 @@
1
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
2
+ import { ITskParkingMachine } from "../../schema-definitions/datasources/interfaces/ITskParkingMachine";
3
+ import { IParkingMachine } from "../../schema-definitions/models/interfaces/IParkingMachine";
4
+ export declare class TskParkingMachinesTransformation extends AbstractTransformation<ITskParkingMachine, IParkingMachine> {
5
+ name: string;
6
+ transformInternal: (tskParkingMachine: ITskParkingMachine) => IParkingMachine;
7
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TskParkingMachinesTransformation = void 0;
4
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
5
+ const wkt_1 = require("@terraformer/wkt");
6
+ class TskParkingMachinesTransformation extends AbstractTransformation_1.AbstractTransformation {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.name = "TskParkingMachinesTransformation";
10
+ this.transformInternal = (tskParkingMachine) => {
11
+ return {
12
+ id: tskParkingMachine.idParkMachine,
13
+ source: "tsk_v2",
14
+ code: tskParkingMachine.code,
15
+ type: tskParkingMachine.idStatus == 5 || tskParkingMachine.idStatus == 6 ? "info_box" : "payment_machine",
16
+ location: (0, wkt_1.wktToGeoJSON)(tskParkingMachine.positionWKT),
17
+ validFrom: new Date(tskParkingMachine.activeFrom),
18
+ tariffId: tskParkingMachine.idTariff,
19
+ };
20
+ };
21
+ }
22
+ }
23
+ exports.TskParkingMachinesTransformation = TskParkingMachinesTransformation;
24
+ //# sourceMappingURL=TskParkingMachinesTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TskParkingMachinesTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TskParkingMachinesTransformation.ts"],"names":[],"mappings":";;;AAAA,6GAA0G;AAI1G,0CAAgD;AAEhD,MAAa,gCAAiC,SAAQ,+CAA2D;IAAjH;;QACW,SAAI,GAAW,kCAAkC,CAAC;QAEzD,sBAAiB,GAAG,CAAC,iBAAqC,EAAmB,EAAE;YAC3E,OAAO;gBACH,EAAE,EAAE,iBAAiB,CAAC,aAAa;gBACnC,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,iBAAiB,CAAC,IAAI;gBAC5B,IAAI,EAAE,iBAAiB,CAAC,QAAQ,IAAI,CAAC,IAAI,iBAAiB,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB;gBACzG,QAAQ,EAAE,IAAA,kBAAY,EAAC,iBAAiB,CAAC,WAAW,CAAa;gBACjE,SAAS,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;gBACjD,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;aACvC,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA;AAdD,4EAcC"}
@@ -0,0 +1,9 @@
1
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
2
+ import { IParkingLocation } from "../ParkingInterface";
3
+ import { ITskParkingSectionLevel } from "../../schema-definitions/datasources/interfaces/ITskParkingSectionLevel";
4
+ export declare class TskParkingSectionLevelTransformation extends AbstractTransformation<ITskParkingSectionLevel, IParkingLocation> {
5
+ private specialAccess?;
6
+ name: string;
7
+ constructor(specialAccess?: string | undefined);
8
+ protected transformInternal: (zone: ITskParkingSectionLevel) => IParkingLocation;
9
+ }
@@ -0,0 +1,42 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TskParkingSectionLevelTransformation = void 0;
13
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
14
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
15
+ const wkt_1 = require("@terraformer/wkt");
16
+ const GeodataHelper_1 = require("../helpers/GeodataHelper");
17
+ let TskParkingSectionLevelTransformation = exports.TskParkingSectionLevelTransformation = class TskParkingSectionLevelTransformation extends AbstractTransformation_1.AbstractTransformation {
18
+ constructor(specialAccess) {
19
+ super();
20
+ this.specialAccess = specialAccess;
21
+ this.name = "TskParkingSectionLevelTransformation";
22
+ this.transformInternal = (zone) => {
23
+ var _a;
24
+ const location = (0, wkt_1.wktToGeoJSON)(zone.borderWKT);
25
+ return {
26
+ id: "tsk2-" + zone.sectionItemCode,
27
+ data_provider: "www.tsk-praha.cz",
28
+ location,
29
+ centroid: (0, GeodataHelper_1.getPointOnFeature)(location),
30
+ total_spot_number: zone.projectedCapacity,
31
+ source: "tsk_v2",
32
+ source_id: zone.idSection,
33
+ special_access: (_a = this.specialAccess) !== null && _a !== void 0 ? _a : undefined,
34
+ };
35
+ };
36
+ }
37
+ };
38
+ exports.TskParkingSectionLevelTransformation = TskParkingSectionLevelTransformation = __decorate([
39
+ (0, tsyringe_1.injectable)(),
40
+ __metadata("design:paramtypes", [String])
41
+ ], TskParkingSectionLevelTransformation);
42
+ //# sourceMappingURL=TskParkingSectionLevelTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TskParkingSectionLevelTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TskParkingSectionLevelTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6GAA0G;AAG1G,iEAAgE;AAChE,0CAAgD;AAEhD,4DAA8D;AAGvD,IAAM,oCAAoC,kDAA1C,MAAM,oCAAqC,SAAQ,+CAAiE;IAGvH,YAAoB,aAAsB;QACtC,KAAK,EAAE,CAAC;QADQ,kBAAa,GAAb,aAAa,CAAS;QAF1C,SAAI,GAAW,sCAAsC,CAAC;QAM5C,sBAAiB,GAAG,CAAC,IAA6B,EAAoB,EAAE;;YAC9E,MAAM,QAAQ,GAAG,IAAA,kBAAY,EAAC,IAAI,CAAC,SAAS,CAAoB,CAAC;YACjE,OAAO;gBACH,EAAE,EAAE,OAAO,GAAG,IAAI,CAAC,eAAe;gBAClC,aAAa,EAAE,kBAAkB;gBACjC,QAAQ;gBACR,QAAQ,EAAE,IAAA,iCAAiB,EAAC,QAAQ,CAAC;gBACrC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,cAAc,EAAE,MAAA,IAAI,CAAC,aAAa,mCAAI,SAAS;aAClD,CAAC;QACN,CAAC,CAAC;IAdF,CAAC;CAeJ,CAAA;+CApBY,oCAAoC;IADhD,IAAA,qBAAU,GAAE;;GACA,oCAAoC,CAoBhD"}
@@ -0,0 +1,10 @@
1
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
2
+ import { IParking } from "../ParkingInterface";
3
+ import { ITskParkingSection } from "../../schema-definitions/datasources/interfaces/ITskParkingSection";
4
+ export declare class TskParkingSectionTransformation extends AbstractTransformation<ITskParkingSection, IParking> {
5
+ private transformationDate;
6
+ name: string;
7
+ constructor(transformationDate: Date);
8
+ protected transformInternal: (section: ITskParkingSection) => IParking;
9
+ private getSectionCat;
10
+ }