@golemio/waze-tt 1.2.7-dev.1498642740 → 1.3.0-dev.1754453831
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/dist/integration-engine/datasources/WazeTTDataSourceFactory.d.ts +11 -0
- package/dist/integration-engine/datasources/WazeTTDataSourceFactory.js +49 -0
- package/dist/integration-engine/datasources/WazeTTDataSourceFactory.js.map +1 -0
- package/dist/integration-engine/index.d.ts +1 -2
- package/dist/integration-engine/index.js +1 -2
- package/dist/integration-engine/index.js.map +1 -1
- package/dist/integration-engine/ioc/Di.d.ts +3 -0
- package/dist/integration-engine/ioc/Di.js +44 -0
- package/dist/integration-engine/ioc/Di.js.map +1 -0
- package/dist/integration-engine/ioc/ModuleContainer.d.ts +18 -0
- package/dist/integration-engine/ioc/ModuleContainer.js +27 -0
- package/dist/integration-engine/ioc/ModuleContainer.js.map +1 -0
- package/dist/integration-engine/repositories/FeedsRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/FeedsRepository.js +37 -0
- package/dist/integration-engine/repositories/FeedsRepository.js.map +1 -0
- package/dist/integration-engine/repositories/JamsStatsRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/JamsStatsRepository.js +37 -0
- package/dist/integration-engine/repositories/JamsStatsRepository.js.map +1 -0
- package/dist/integration-engine/repositories/RouteLivesRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/RouteLivesRepository.js +37 -0
- package/dist/integration-engine/repositories/RouteLivesRepository.js.map +1 -0
- package/dist/integration-engine/repositories/RoutesRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/RoutesRepository.js +37 -0
- package/dist/integration-engine/repositories/RoutesRepository.js.map +1 -0
- package/dist/integration-engine/repositories/SubRouteLivesRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/SubRouteLivesRepository.js +37 -0
- package/dist/integration-engine/repositories/SubRouteLivesRepository.js.map +1 -0
- package/dist/integration-engine/repositories/SubRoutesRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/SubRoutesRepository.js +37 -0
- package/dist/integration-engine/repositories/SubRoutesRepository.js.map +1 -0
- package/dist/integration-engine/services/WazeTTDataService.d.ts +41 -0
- package/dist/integration-engine/services/WazeTTDataService.js +165 -0
- package/dist/integration-engine/services/WazeTTDataService.js.map +1 -0
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsFeed.d.ts +3 -5
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsFeed.js +4 -16
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsFeed.js.map +1 -1
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsRouteLives.d.ts +3 -5
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsRouteLives.js +4 -16
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsRouteLives.js.map +1 -1
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsRoutes.d.ts +3 -5
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsRoutes.js +20 -19
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsRoutes.js.map +1 -1
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRouteLives.d.ts +3 -5
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRouteLives.js +4 -16
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRouteLives.js.map +1 -1
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRoutes.d.ts +3 -5
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRoutes.js +5 -17
- package/dist/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRoutes.js.map +1 -1
- package/dist/integration-engine/wazeTTTransformations/helpers/SubRouteIdHelper.js +1 -2
- package/dist/integration-engine/wazeTTTransformations/helpers/SubRouteIdHelper.js.map +1 -1
- package/dist/integration-engine/workers/WazeTTWorker.d.ts +7 -0
- package/dist/integration-engine/workers/WazeTTWorker.js +21 -0
- package/dist/integration-engine/workers/WazeTTWorker.js.map +1 -0
- package/dist/integration-engine/workers/index.d.ts +2 -0
- package/dist/integration-engine/workers/index.js +6 -0
- package/dist/integration-engine/workers/index.js.map +1 -0
- package/dist/integration-engine/workers/tasks/FetchAndSaveDataToDBTask.d.ts +12 -0
- package/dist/integration-engine/workers/tasks/FetchAndSaveDataToDBTask.js +53 -0
- package/dist/integration-engine/workers/tasks/FetchAndSaveDataToDBTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveS3DataToDBTask.d.ts +12 -0
- package/dist/integration-engine/workers/tasks/SaveS3DataToDBTask.js +53 -0
- package/dist/integration-engine/workers/tasks/SaveS3DataToDBTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/index.d.ts +2 -0
- package/dist/integration-engine/workers/tasks/index.js +19 -0
- package/dist/integration-engine/workers/tasks/index.js.map +1 -0
- package/dist/schema-definitions/index.d.ts +15 -1
- package/dist/schema-definitions/index.js +14 -2
- package/dist/schema-definitions/index.js.map +1 -1
- package/dist/schema-definitions/interfaces/WazeTTData.d.ts +55 -0
- package/dist/schema-definitions/interfaces/WazeTTData.js +3 -0
- package/dist/schema-definitions/interfaces/WazeTTData.js.map +1 -0
- package/docs/implementation_documentation.md +65 -1
- package/package.json +3 -3
- package/dist/integration-engine/WazeTTWorker.d.ts +0 -39
- package/dist/integration-engine/WazeTTWorker.js +0 -217
- package/dist/integration-engine/WazeTTWorker.js.map +0 -1
- package/dist/integration-engine/queueDefinitions.d.ts +0 -3
- package/dist/integration-engine/queueDefinitions.js +0 -36
- package/dist/integration-engine/queueDefinitions.js.map +0 -1
|
@@ -0,0 +1,53 @@
|
|
|
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.FetchAndSaveDataToDBTask = void 0;
|
|
16
|
+
const _sch_1 = require("../../../schema-definitions");
|
|
17
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
18
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
19
|
+
const ModuleContainer_1 = require("../../ioc/ModuleContainer");
|
|
20
|
+
const WazeTTDataService_1 = require("../../services/WazeTTDataService");
|
|
21
|
+
const WazeTTDataSourceFactory_1 = require("../../datasources/WazeTTDataSourceFactory");
|
|
22
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
23
|
+
let FetchAndSaveDataToDBTask = exports.FetchAndSaveDataToDBTask = class FetchAndSaveDataToDBTask extends integration_engine_1.AbstractEmptyTask {
|
|
24
|
+
constructor(wazeTTDataService, dataSourceFactory) {
|
|
25
|
+
super(_sch_1.WazeTT.name.toLowerCase());
|
|
26
|
+
this.wazeTTDataService = wazeTTDataService;
|
|
27
|
+
this.dataSourceFactory = dataSourceFactory;
|
|
28
|
+
this.queueName = "fetchAndSaveDataToDB";
|
|
29
|
+
this.queueTtl = 4 * 60 * 1000;
|
|
30
|
+
this.dataSourcesWazeTTArr = this.dataSourceFactory.getDataSources();
|
|
31
|
+
}
|
|
32
|
+
async execute() {
|
|
33
|
+
try {
|
|
34
|
+
const fetchTasksArr = [];
|
|
35
|
+
for (let i = 0; i < this.dataSourcesWazeTTArr.length; i++) {
|
|
36
|
+
const singleDataSourceWazeTT = this.dataSourcesWazeTTArr[i];
|
|
37
|
+
fetchTasksArr.push(this.wazeTTDataService.fetchFromSingleResource(singleDataSourceWazeTT, i + 1));
|
|
38
|
+
}
|
|
39
|
+
await Promise.all(fetchTasksArr);
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
throw new golemio_errors_1.GeneralError("Error while processing WazeTT data ", "FetchAndSaveDataToDBTask", error, 422);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
exports.FetchAndSaveDataToDBTask = FetchAndSaveDataToDBTask = __decorate([
|
|
47
|
+
(0, tsyringe_1.injectable)(),
|
|
48
|
+
__param(0, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.WazeTTDataService)),
|
|
49
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.WazeTTDataSourceFactory)),
|
|
50
|
+
__metadata("design:paramtypes", [WazeTTDataService_1.WazeTTDataService,
|
|
51
|
+
WazeTTDataSourceFactory_1.WazeTTDataSourceFactory])
|
|
52
|
+
], FetchAndSaveDataToDBTask);
|
|
53
|
+
//# sourceMappingURL=FetchAndSaveDataToDBTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FetchAndSaveDataToDBTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/FetchAndSaveDataToDBTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sDAA8B;AAC9B,8EAA4G;AAG5G,iEAAwE;AAExE,+DAA+D;AAC/D,wEAAmE;AACnE,uFAAkF;AAClF,6EAAwE;AAGjE,IAAM,wBAAwB,sCAA9B,MAAM,wBAAyB,SAAQ,sCAAiB;IAK3D,YAEI,iBAA4C,EAE5C,iBAAkD;QAElD,KAAK,CAAC,aAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAJzB,sBAAiB,GAAjB,iBAAiB,CAAmB;QAEpC,sBAAiB,GAAjB,iBAAiB,CAAyB;QARtC,cAAS,GAAG,sBAAsB,CAAC;QACnC,aAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAUrC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;IACxE,CAAC;IAES,KAAK,CAAC,OAAO;QACnB,IAAI;YACA,MAAM,aAAa,GAAwB,EAAE,CAAC;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvD,MAAM,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;gBAC5D,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACrG;YAED,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;SACpC;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,IAAI,6BAAY,CAAC,qCAAqC,EAAE,0BAA0B,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;SACzG;IACL,CAAC;CACJ,CAAA;mCA5BY,wBAAwB;IADpC,IAAA,qBAAU,GAAE;IAOJ,WAAA,IAAA,iBAAM,EAAC,sCAAoB,CAAC,iBAAiB,CAAC,CAAA;IAE9C,WAAA,IAAA,iBAAM,EAAC,sCAAoB,CAAC,uBAAuB,CAAC,CAAA;qCAD1B,qCAAiB;QAEjB,iDAAuB;GAT7C,wBAAwB,CA4BpC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { WazeTTDataService } from "../../services/WazeTTDataService";
|
|
2
|
+
import { AbstractTaskJsonSchema } from "@golemio/core/dist/integration-engine/workers/AbstractTaskJsonSchema";
|
|
3
|
+
import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
4
|
+
import { IWazeTTFeed } from "../../../schema-definitions/interfaces/WazeTTData";
|
|
5
|
+
export declare class SaveS3DataToDBTask extends AbstractTaskJsonSchema<IWazeTTFeed> {
|
|
6
|
+
private wazeTTDataService;
|
|
7
|
+
readonly queueName = "saveS3DataToDB";
|
|
8
|
+
readonly queueTtl: number;
|
|
9
|
+
protected schema: JSONSchemaValidator;
|
|
10
|
+
constructor(wazeTTDataService: WazeTTDataService);
|
|
11
|
+
protected execute(msg: IWazeTTFeed): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
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.SaveS3DataToDBTask = void 0;
|
|
16
|
+
const ModuleContainer_1 = require("../../ioc/ModuleContainer");
|
|
17
|
+
const WazeTTDataService_1 = require("../../services/WazeTTDataService");
|
|
18
|
+
const _sch_1 = require("../../../schema-definitions");
|
|
19
|
+
const AbstractTaskJsonSchema_1 = require("@golemio/core/dist/integration-engine/workers/AbstractTaskJsonSchema");
|
|
20
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
21
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
22
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
23
|
+
let SaveS3DataToDBTask = exports.SaveS3DataToDBTask = class SaveS3DataToDBTask extends AbstractTaskJsonSchema_1.AbstractTaskJsonSchema {
|
|
24
|
+
constructor(wazeTTDataService) {
|
|
25
|
+
super(_sch_1.WazeTT.name.toLowerCase());
|
|
26
|
+
this.wazeTTDataService = wazeTTDataService;
|
|
27
|
+
this.queueName = "saveS3DataToDB";
|
|
28
|
+
this.queueTtl = 4 * 60 * 1000;
|
|
29
|
+
this.schema = new golemio_validator_1.JSONSchemaValidator("datasourceWazeTTJsonSchema", _sch_1.WazeTT.datasourceWazeTTJsonSchema);
|
|
30
|
+
}
|
|
31
|
+
async execute(msg) {
|
|
32
|
+
try {
|
|
33
|
+
if (!msg.sourceId) {
|
|
34
|
+
throw new golemio_errors_1.GeneralError("Missing sourceId in WazeTT data", this.constructor.name);
|
|
35
|
+
}
|
|
36
|
+
await this.wazeTTDataService.saveFromSingleResource(msg);
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
40
|
+
throw error;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
throw new golemio_errors_1.GeneralError("Error while processing WazeTT data ", this.constructor.name, error);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
exports.SaveS3DataToDBTask = SaveS3DataToDBTask = __decorate([
|
|
49
|
+
(0, tsyringe_1.injectable)(),
|
|
50
|
+
__param(0, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.WazeTTDataService)),
|
|
51
|
+
__metadata("design:paramtypes", [WazeTTDataService_1.WazeTTDataService])
|
|
52
|
+
], SaveS3DataToDBTask);
|
|
53
|
+
//# sourceMappingURL=SaveS3DataToDBTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SaveS3DataToDBTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/SaveS3DataToDBTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+DAA+D;AAC/D,wEAAmE;AACnE,sDAA8B;AAC9B,iHAA8G;AAC9G,iEAAwE;AACxE,mFAAkF;AAClF,6EAA8F;AAIvF,IAAM,kBAAkB,gCAAxB,MAAM,kBAAmB,SAAQ,+CAAmC;IAIvE,YAEI,iBAA4C;QAE5C,KAAK,CAAC,aAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAFzB,sBAAiB,GAAjB,iBAAiB,CAAmB;QALhC,cAAS,GAAG,gBAAgB,CAAC;QAC7B,aAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAOrC,IAAI,CAAC,MAAM,GAAG,IAAI,uCAAmB,CAAC,4BAA4B,EAAE,aAAM,CAAC,0BAA0B,CAAC,CAAC;IAC3G,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,GAAgB;QACpC,IAAI;YACA,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACf,MAAM,IAAI,6BAAY,CAAC,iCAAiC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;aACpF;YACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;SAC5D;QAAC,OAAO,KAAK,EAAE;YACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;gBACvC,MAAM,KAAK,CAAC;aACf;iBAAM;gBACH,MAAM,IAAI,6BAAY,CAAC,qCAAqC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aAC/F;SACJ;IACL,CAAC;CACJ,CAAA;6BA1BY,kBAAkB;IAD9B,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,sCAAoB,CAAC,iBAAiB,CAAC,CAAA;qCACpB,qCAAiB;GANvC,kBAAkB,CA0B9B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./FetchAndSaveDataToDBTask"), exports);
|
|
18
|
+
__exportStar(require("./SaveS3DataToDBTask"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,uDAAqC"}
|
|
@@ -55,7 +55,7 @@ declare const forExport: {
|
|
|
55
55
|
pattern: string;
|
|
56
56
|
};
|
|
57
57
|
time: {
|
|
58
|
-
type: string
|
|
58
|
+
type: string;
|
|
59
59
|
};
|
|
60
60
|
type: {
|
|
61
61
|
type: string[];
|
|
@@ -64,6 +64,7 @@ declare const forExport: {
|
|
|
64
64
|
type: string;
|
|
65
65
|
};
|
|
66
66
|
};
|
|
67
|
+
required: string[];
|
|
67
68
|
};
|
|
68
69
|
};
|
|
69
70
|
irregularities: {
|
|
@@ -89,11 +90,24 @@ declare const forExport: {
|
|
|
89
90
|
};
|
|
90
91
|
lengthOfJams: {
|
|
91
92
|
type: string;
|
|
93
|
+
items: {
|
|
94
|
+
type: string;
|
|
95
|
+
properties: {
|
|
96
|
+
jamLevel: {
|
|
97
|
+
type: string;
|
|
98
|
+
};
|
|
99
|
+
jamLength: {
|
|
100
|
+
type: string;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
required: string[];
|
|
104
|
+
};
|
|
92
105
|
};
|
|
93
106
|
updateTime: {
|
|
94
107
|
type: string;
|
|
95
108
|
};
|
|
96
109
|
};
|
|
110
|
+
required: string[];
|
|
97
111
|
};
|
|
98
112
|
feeds: {
|
|
99
113
|
name: string;
|
|
@@ -41,10 +41,11 @@ const datasourceWazeTTJsonSchema = {
|
|
|
41
41
|
length: { type: "number" },
|
|
42
42
|
jamLevel: { type: "number" },
|
|
43
43
|
id: { type: "string", pattern: "^[0-9]+$" },
|
|
44
|
-
time: { type:
|
|
44
|
+
time: { type: "integer" },
|
|
45
45
|
type: { type: ["integer", "string"] },
|
|
46
46
|
jams: { type: "array" },
|
|
47
47
|
},
|
|
48
|
+
required: ["id"],
|
|
48
49
|
},
|
|
49
50
|
},
|
|
50
51
|
irregularities: { type: "array" },
|
|
@@ -56,9 +57,20 @@ const datasourceWazeTTJsonSchema = {
|
|
|
56
57
|
name: { type: "string" },
|
|
57
58
|
isMetric: { type: "boolean" },
|
|
58
59
|
restrictions: { type: "object" },
|
|
59
|
-
lengthOfJams: {
|
|
60
|
+
lengthOfJams: {
|
|
61
|
+
type: "array",
|
|
62
|
+
items: {
|
|
63
|
+
type: "object",
|
|
64
|
+
properties: {
|
|
65
|
+
jamLevel: { type: "integer" },
|
|
66
|
+
jamLength: { type: "integer" },
|
|
67
|
+
},
|
|
68
|
+
required: ["jamLevel", "jamLength"],
|
|
69
|
+
},
|
|
70
|
+
},
|
|
60
71
|
updateTime: { type: "number" },
|
|
61
72
|
},
|
|
73
|
+
required: ["usersOnJams", "broadcasterId", "areaName", "bbox", "name", "isMetric"],
|
|
62
74
|
};
|
|
63
75
|
const outputFeedsJsonSchema = {
|
|
64
76
|
type: "object",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-definitions/index.ts"],"names":[],"mappings":";;;;;;AAAA,oFAA4D;AAC5D,yDAAsD;AACtD,yCAAyC;AAEzC,MAAM,0BAA0B,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,WAAW,EAAE;YACT,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;oBAC3C,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;iBAC5C;aACJ;SACJ;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;oBAC7C,IAAI,EAAE;wBACF,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACH,IAAI,EAAE,QAAQ;yBACjB;qBACJ;oBACD,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;qBACjB;oBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE;oBAC3C,IAAI,EAAE,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-definitions/index.ts"],"names":[],"mappings":";;;;;;AAAA,oFAA4D;AAC5D,yDAAsD;AACtD,yCAAyC;AAEzC,MAAM,0BAA0B,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,WAAW,EAAE;YACT,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;oBAC3C,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;iBAC5C;aACJ;SACJ;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;oBAC7C,IAAI,EAAE;wBACF,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACH,IAAI,EAAE,QAAQ;yBACjB;qBACJ;oBACD,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;qBACjB;oBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE;oBAC3C,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBACzB,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;oBACrC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;iBAC1B;gBACD,QAAQ,EAAE,CAAC,IAAI,CAAC;aACnB;SACJ;QACD,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;SACjB;QACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC7B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,YAAY,EAAE;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC7B,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;iBACjC;gBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;aACtC;SACJ;QACD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACjC;IACD,QAAQ,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC;CACrF,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC1B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC7B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC3B;IACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC;CACxE,CAAC;AAEF,MAAM,yBAAyB,GAAG;IAC9B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC3B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;QAC1D,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACnC;IACD,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC;CACpD,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC3B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;QAC1D,IAAI,EAAE,mCAAgB;QACtB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC9B;IACD,QAAQ,EAAE,CAAC,IAAI,CAAC;CACnB,CAAC;AAEF,MAAM,yBAAyB,GAAG;IAC9B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,IAAI,EAAE,mCAAgB;QACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC9B;IACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;CACrC,CAAC;AACF,MAAM,0BAA0B,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;KAC7D;IACD,QAAQ,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC;CACxC,CAAC;AACF,MAAM,6BAA6B,GAAG;IAClC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACrC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;KAC7D;IACD,QAAQ,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,aAAa,CAAC;CAC7D,CAAC;AAEF,MAAM,eAAe,GAAmC;IACpD,SAAS,EAAE,mBAAS,CAAC,IAAI;IACzB,IAAI,EAAE,mBAAS,CAAC,KAAK;IACrB,cAAc,EAAE,mBAAS,CAAC,IAAI;IAC9B,EAAE,EAAE;QACA,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,OAAO;KAC1B;IACD,QAAQ,EAAE,mBAAS,CAAC,OAAO;IAC3B,IAAI,EAAE,mBAAS,CAAC,IAAI;IAEpB,iBAAiB;IACjB,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;IAC3C,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,4DAA4D;CAC5G,CAAC;AAEF,MAAM,mBAAmB,GAAmC;IACxD,OAAO,EAAE;QACL,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,OAAO;KAC1B;IACD,SAAS,EAAE;QACP,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,OAAO;KAC1B;IACD,cAAc,EAAE,mBAAS,CAAC,OAAO;IACjC,WAAW,EAAE;QACT,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,IAAI;KACvB;IACD,YAAY,EAAE,mBAAS,CAAC,MAAM;IAE9B,iBAAiB;IACjB,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;IAC3C,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,4DAA4D;CAC5G,CAAC;AAEF,MAAM,gBAAgB,GAAmC;IACrD,IAAI,EAAE,mBAAS,CAAC,KAAK;IACrB,OAAO,EAAE,mBAAS,CAAC,OAAO;IAC1B,SAAS,EAAE,mBAAS,CAAC,IAAI;IACzB,EAAE,EAAE;QACA,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,MAAM;KACzB;IACD,WAAW,EAAE,mBAAS,CAAC,IAAI;IAC3B,IAAI,EAAE,mBAAS,CAAC,QAAQ,CAAC,YAAY,CAAC;IACtC,IAAI,EAAE,mBAAS,CAAC,IAAI;IACpB,OAAO,EAAE,mBAAS,CAAC,IAAI;IAEvB,iBAAiB;IACjB,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;IAC3C,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,4DAA4D;CAC5G,CAAC;AAEF,MAAM,mBAAmB,GAAmC;IACxD,QAAQ,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,IAAI;KACvB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,mBAAS,CAAC,MAAM;QACtB,UAAU,EAAE,IAAI;KACnB;IACD,SAAS,EAAE,mBAAS,CAAC,IAAI;IACzB,IAAI,EAAE,mBAAS,CAAC,QAAQ,CAAC,YAAY,CAAC;IACtC,OAAO,EAAE,mBAAS,CAAC,IAAI;IAEvB,iBAAiB;IACjB,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;IAC3C,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,4DAA4D;CAC5G,CAAC;AAEF,MAAM,oBAAoB,GAAmC;IACzD,aAAa,EAAE,mBAAS,CAAC,OAAO;IAChC,SAAS,EAAE,mBAAS,CAAC,OAAO;IAC5B,MAAM,EAAE,mBAAS,CAAC,OAAO;IACzB,QAAQ,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,MAAM;KACzB;IACD,IAAI,EAAE,mBAAS,CAAC,OAAO;IACvB,WAAW,EAAE;QACT,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,IAAI;KACvB;IAED,iBAAiB;IACjB,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;IAC3C,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,4DAA4D;CAC5G,CAAC;AAEF,MAAM,uBAAuB,GAAmC;IAC5D,QAAQ,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,MAAM;KACzB;IACD,iBAAiB,EAAE;QACf,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,IAAI;KACvB;IACD,aAAa,EAAE,mBAAS,CAAC,OAAO;IAChC,SAAS,EAAE,mBAAS,CAAC,OAAO;IAC5B,MAAM,EAAE,mBAAS,CAAC,OAAO;IACzB,IAAI,EAAE,mBAAS,CAAC,OAAO;IACvB,WAAW,EAAE;QACT,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,mBAAS,CAAC,IAAI;KACvB;IAED,iBAAiB;IACjB,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;IAC3C,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,4DAA4D;CAC5G,CAAC;AAEF,MAAM,SAAS,GAAG;IACd,QAAQ,EAAE,QAAQ;IAClB,0BAA0B;IAC1B,KAAK,EAAE;QACH,IAAI,EAAE,aAAa;QACnB,0BAA0B,EAAE,qBAAqB;QACjD,yBAAyB,EAAE,eAAe;QAC1C,WAAW,EAAE,cAAc;KAC9B;IACD,SAAS,EAAE;QACP,IAAI,EAAE,iBAAiB;QACvB,0BAA0B,EAAE,yBAAyB;QACrD,yBAAyB,EAAE,mBAAmB;QAC9C,WAAW,EAAE,mBAAmB;KACnC;IACD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,IAAI,EAAE,kBAAkB;QACxB,0BAA0B,EAAE,0BAA0B;QACtD,yBAAyB,EAAE,oBAAoB;QAC/C,WAAW,EAAE,oBAAoB;KACpC;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,cAAc;QACpB,0BAA0B,EAAE,sBAAsB;QAClD,yBAAyB,EAAE,gBAAgB;QAC3C,WAAW,EAAE,eAAe;KAC/B;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAqB;QAC3B,0BAA0B,EAAE,6BAA6B;QACzD,yBAAyB,EAAE,uBAAuB;QAClD,WAAW,EAAE,uBAAuB;KACvC;IACD,SAAS,EAAE;QACP,IAAI,EAAE,iBAAiB;QACvB,0BAA0B,EAAE,yBAAyB;QACrD,yBAAyB,EAAE,mBAAmB;QAC9C,WAAW,EAAE,kBAAkB;KAClC;CACJ,CAAC;AAEoB,2BAAM"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
export interface IWazeTTFeed {
|
|
2
|
+
id: string;
|
|
3
|
+
sourceId: number;
|
|
4
|
+
broadcasterId: string;
|
|
5
|
+
areaName: string;
|
|
6
|
+
bbox: Record<string, unknown>;
|
|
7
|
+
name: string;
|
|
8
|
+
isMetric: boolean;
|
|
9
|
+
updateTime?: number;
|
|
10
|
+
usersOnJams: IWazerJam[];
|
|
11
|
+
routes: IWazeTTRoute[];
|
|
12
|
+
lengthOfJams: IJamLength[];
|
|
13
|
+
}
|
|
14
|
+
interface IWazerJam {
|
|
15
|
+
wazersCount: number | string;
|
|
16
|
+
jamLevel: number | string;
|
|
17
|
+
}
|
|
18
|
+
interface IJamLength {
|
|
19
|
+
jamLevel: number;
|
|
20
|
+
jamLength: number;
|
|
21
|
+
}
|
|
22
|
+
export interface IWazeTTRoute {
|
|
23
|
+
toName: string;
|
|
24
|
+
historicTime?: number | string;
|
|
25
|
+
line?: IGeoPoint[];
|
|
26
|
+
bbox: Record<string, unknown>;
|
|
27
|
+
name: string;
|
|
28
|
+
fromName: string;
|
|
29
|
+
id: string;
|
|
30
|
+
length: number;
|
|
31
|
+
jamLevel: number;
|
|
32
|
+
time: number;
|
|
33
|
+
type: string;
|
|
34
|
+
jams?: unknown[];
|
|
35
|
+
subRoutes: IWazeTTSubRoute[];
|
|
36
|
+
}
|
|
37
|
+
export interface IGeoPoint {
|
|
38
|
+
x: number;
|
|
39
|
+
y: number;
|
|
40
|
+
}
|
|
41
|
+
export interface IWazeTTSubRoute {
|
|
42
|
+
toName: string;
|
|
43
|
+
historicTime: number;
|
|
44
|
+
line?: IGeoPoint[];
|
|
45
|
+
bbox: Record<string, unknown>;
|
|
46
|
+
fromName: string;
|
|
47
|
+
length: number;
|
|
48
|
+
jamLevel: number;
|
|
49
|
+
time: number;
|
|
50
|
+
jams?: unknown[];
|
|
51
|
+
name: string;
|
|
52
|
+
id: string;
|
|
53
|
+
type: string;
|
|
54
|
+
}
|
|
55
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WazeTTData.js","sourceRoot":"","sources":["../../../src/schema-definitions/interfaces/WazeTTData.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,69 @@
|
|
|
1
|
-
# Implementační dokumentace modulu
|
|
1
|
+
# Implementační dokumentace modulu _WazeTT_
|
|
2
|
+
|
|
3
|
+
## Záměr
|
|
4
|
+
|
|
5
|
+
Modul slouží k ukladání WazeTT dat
|
|
6
|
+
|
|
7
|
+
## Vstupní data
|
|
2
8
|
|
|
3
9
|
## Zpracování dat / transformace
|
|
4
10
|
|
|
5
11
|
Interní RabbitMQ fronty jsou popsány v [AsyncAPI](./asyncapi.yaml).
|
|
12
|
+
|
|
13
|
+
Všechny tabulky jsou ve schématu `wazett`
|
|
14
|
+
|
|
15
|
+
### _WazeTTWorker_
|
|
16
|
+
|
|
17
|
+
WazeTT modul má jednoho workera, který se stará o ukládání dat
|
|
18
|
+
|
|
19
|
+
#### _task: FetchAndSaveDataToDBTask_
|
|
20
|
+
|
|
21
|
+
Fetchuje data z pole datových zdrojů a ukládá data do tabulek `wazett_feeds`, `wazett_jams_stats`, `wazett_route_lives`, `wazett_routes`,`wazett_subroute_lives`, `wazett_subroutes`
|
|
22
|
+
|
|
23
|
+
- vstupní rabbitmq fronta
|
|
24
|
+
- nazev: dataplatform.wazett.fetchAndSaveDataToDB
|
|
25
|
+
- [parametry]
|
|
26
|
+
- žádné
|
|
27
|
+
- datové zdroje
|
|
28
|
+
- [WazettDataSourceFactory](../src/integration-engine/datasources/WazeTTDataSourceFactory.ts)
|
|
29
|
+
- transformace
|
|
30
|
+
- [Feed Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsFeed.ts)
|
|
31
|
+
- [Routes Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsRoutes.ts)
|
|
32
|
+
- [SubRoutes Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsSubroutes.ts)
|
|
33
|
+
- [Route Lives Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsRouteLives.ts)
|
|
34
|
+
- [Subroute Lives Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRouteLives.ts)
|
|
35
|
+
- data modely
|
|
36
|
+
- [FeedsRepository](../src/integration-engine/repositories/FeedsRepository.ts)
|
|
37
|
+
- [JamsStatsRepository](../src/integration-engine/repositories/JamsStatsRepository.ts)
|
|
38
|
+
- [RouteLivesRepository](../src/integration-engine/repositories/RouteLivesRepository.ts)
|
|
39
|
+
- [RoutesRepository](../src/integration-engine/repositories/RoutesRepository.ts)
|
|
40
|
+
- [SubRouteLivesRepository](../src/integration-engine/repositories/SubRouteLivesRepository.ts)
|
|
41
|
+
- [SubRoutesRepository](../src/integration-engine/repositories/SubRoutesRepository.ts)
|
|
42
|
+
|
|
43
|
+
#### _task: SaveS3DataToDBTask_
|
|
44
|
+
|
|
45
|
+
ukládá data z S3 do tabulek `wazett_feeds`, `wazett_jams_stats`, `wazett_route_lives`, `wazett_routes`,`wazett_subroute_lives`, `wazett_subroutes`
|
|
46
|
+
|
|
47
|
+
- vstupní rabbitmq fronta
|
|
48
|
+
- název: dataplatform.wazett.saveS3DataToDB
|
|
49
|
+
- [parametry]
|
|
50
|
+
- žádné
|
|
51
|
+
- datové zdroje
|
|
52
|
+
- žádne
|
|
53
|
+
- transformace
|
|
54
|
+
- [Feed Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsFeed.ts)
|
|
55
|
+
- [Routes Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsRoutes.ts)
|
|
56
|
+
- [SubRoutes Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsSubroutes.ts)
|
|
57
|
+
- [Route Lives Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsRouteLives.ts)
|
|
58
|
+
- [Subroute Lives Transformation](../src/integration-engine/wazeTTTransformations/WazeTTTransformationsSubRouteLives.ts)
|
|
59
|
+
- data modely
|
|
60
|
+
- [FeedsRepository](../src/integration-engine/repositories/FeedsRepository.ts)
|
|
61
|
+
- [JamsStatsRepository](../src/integration-engine/repositories/JamsStatsRepository.ts)
|
|
62
|
+
- [RouteLivesRepository](../src/integration-engine/repositories/RouteLivesRepository.ts)
|
|
63
|
+
- [RoutesRepository](../src/integration-engine/repositories/RoutesRepository.ts)
|
|
64
|
+
- [SubRouteLivesRepository](../src/integration-engine/repositories/SubRouteLivesRepository.ts)
|
|
65
|
+
- [SubRoutesRepository](../src/integration-engine/repositories/SubRoutesRepository.ts)
|
|
66
|
+
|
|
67
|
+
## Output API
|
|
68
|
+
|
|
69
|
+
### Obecné
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/waze-tt",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0-dev.1754453831",
|
|
4
4
|
"description": "Golemio Waze TT Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@commitlint/cli": "^11.0.0",
|
|
33
33
|
"@commitlint/config-conventional": "^11.0.0",
|
|
34
|
-
"@golemio/cli": "1.
|
|
35
|
-
"@golemio/core": "1.
|
|
34
|
+
"@golemio/cli": "1.9.2",
|
|
35
|
+
"@golemio/core": "1.19.4",
|
|
36
36
|
"@golemio/db-common": "1.1.4",
|
|
37
37
|
"@golemio/eslint-config": "1.1.2",
|
|
38
38
|
"@types/chai": "4.2.3",
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { DataSource } from "@golemio/core/dist/integration-engine/datasources";
|
|
2
|
-
import { BaseWorker } from "@golemio/core/dist/integration-engine/workers";
|
|
3
|
-
export declare class WazeTTWorker extends BaseWorker {
|
|
4
|
-
private dataSourcesWazeTTArr;
|
|
5
|
-
private transformationFeeds;
|
|
6
|
-
private transformationRoutes;
|
|
7
|
-
private transformationRouteLives;
|
|
8
|
-
private transformationSubRoutes;
|
|
9
|
-
private transformationSubRouteLives;
|
|
10
|
-
private modelFeeds;
|
|
11
|
-
private modelJamsStats;
|
|
12
|
-
private modelRouteLives;
|
|
13
|
-
private modelRoutes;
|
|
14
|
-
private modelSubRouteLives;
|
|
15
|
-
private modelSubRoutes;
|
|
16
|
-
constructor();
|
|
17
|
-
saveS3DataToDB: (msg: any) => Promise<void>;
|
|
18
|
-
fetchAndSaveDataToDB: (msg: any) => Promise<void>;
|
|
19
|
-
/**
|
|
20
|
-
* This method downloads a data object from a single source
|
|
21
|
-
* @param {DataSource} singleDataSourceWazeTT object of one DataSource
|
|
22
|
-
* @param {number} sourceId source ID is the sequence number
|
|
23
|
-
* of the source address in the array in the source configuration file
|
|
24
|
-
*/
|
|
25
|
-
fetchFromSingleResource: (singleDataSourceWazeTT: DataSource, sourceId: number) => Promise<void>;
|
|
26
|
-
/**
|
|
27
|
-
* This method splits the object into individual table records and saves them to the database
|
|
28
|
-
* @param {object} data object of one feed, where data.sourceId - is the sequence number
|
|
29
|
-
* of the source address in the array in the source configuration file
|
|
30
|
-
*/
|
|
31
|
-
saveFromSingleResource: (data: any) => Promise<void>;
|
|
32
|
-
private isJSONParseAble;
|
|
33
|
-
private saveFeeds;
|
|
34
|
-
private saveSubRoute;
|
|
35
|
-
private saveSubRouteLives;
|
|
36
|
-
private saveJams;
|
|
37
|
-
private saveRouteLives;
|
|
38
|
-
private saveRoute;
|
|
39
|
-
}
|