@golemio/flow 1.3.4-dev.1510445431 → 1.3.4-rc.1848372728

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.
@@ -1,469 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
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.FlowWorkerTest = void 0;
16
- const datasources_1 = require("../schema-definitions/datasources");
17
- const index_1 = require("../schema-definitions/index");
18
- const DateTime_1 = require("@golemio/core/dist/helpers/DateTime");
19
- const config_1 = require("@golemio/core/dist/integration-engine/config");
20
- const datasources_2 = require("@golemio/core/dist/integration-engine/datasources");
21
- const HTTPRequestProtocolStrategyStreamed_1 = require("@golemio/core/dist/integration-engine/datasources/protocol-strategy/HTTPRequestProtocolStrategyStreamed");
22
- const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
23
- const models_1 = require("@golemio/core/dist/integration-engine/models");
24
- const workers_1 = require("@golemio/core/dist/integration-engine/workers");
25
- const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
26
- const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
27
- const undici_1 = require("@golemio/core/dist/shared/undici");
28
- const JSONStream_1 = __importDefault(require("JSONStream"));
29
- const https_1 = __importDefault(require("https"));
30
- /**
31
- * Temporary worker for testing purposes
32
- */
33
- class FlowWorkerTest extends workers_1.BaseWorker {
34
- constructor() {
35
- super();
36
- this.queuePrefix = `${config_1.config.RABBIT_EXCHANGE_NAME}.${index_1.Flow.detections.name.toLowerCase()}-TEST`;
37
- this.getHistoryIntervalFromMsg = (msg) => {
38
- let historyIntervalsArr = [];
39
- let msgObj = {};
40
- try {
41
- msgObj = JSON.parse(msg.content.toString());
42
- }
43
- catch (err) {
44
- return null;
45
- }
46
- const customIntervalArr = !Array.isArray(msgObj) ? [msgObj] : msgObj;
47
- customIntervalArr.forEach((intervalObj) => {
48
- if (intervalObj.from && intervalObj.to) {
49
- const from = +new Date(intervalObj.from);
50
- const to = +new Date(intervalObj.to);
51
- // if range is more than 12hrs:
52
- if (to - from > 43200000) {
53
- throw new golemio_errors_1.GeneralError("Maximum interval size exceeded. Use intervals of up to 12 hours.", this.constructor.name);
54
- }
55
- helpers_1.log.debug(`History interval from: ${from} to ${to} was used.`);
56
- historyIntervalsArr.push([from, to]);
57
- }
58
- else {
59
- throw new golemio_errors_1.GeneralError("Interval must contain from and to properties.", this.constructor.name);
60
- }
61
- });
62
- return historyIntervalsArr;
63
- };
64
- this.refreshCubes = (msg) => __awaiter(this, void 0, void 0, function* () {
65
- let historyIntervalsArr = this.getHistoryIntervalFromMsg(msg);
66
- let dataStream;
67
- try {
68
- this.cubesDataSource.protocolStrategy.setConnectionSettings(this.getHttpSettings("", "GET", null));
69
- dataStream = yield this.cubesDataSource.getAll(true);
70
- }
71
- catch (err) {
72
- throw new golemio_errors_1.GeneralError("Error while getting data.", this.constructor.name, err);
73
- }
74
- try {
75
- yield dataStream
76
- .setDataProcessor((data) => __awaiter(this, void 0, void 0, function* () {
77
- yield this.flowCubesModel.save(data.map((cube) => {
78
- return {
79
- id: cube.id,
80
- name: cube.name,
81
- };
82
- }));
83
- const promises = data.map((cube) => {
84
- cube.historyIntervalsArr = historyIntervalsArr;
85
- return this.sendMessageToExchange("workers." + this.queuePrefix + ".getAnalytics", JSON.stringify(cube));
86
- });
87
- yield Promise.all(promises);
88
- }))
89
- .proceed();
90
- }
91
- catch (err) {
92
- throw new golemio_errors_1.GeneralError("Error while processing data.", this.constructor.name, err);
93
- }
94
- });
95
- this.getAnalytics = (msg) => __awaiter(this, void 0, void 0, function* () {
96
- let input;
97
- let dataStream;
98
- let historyIntervalsArr;
99
- try {
100
- input = JSON.parse(msg.content.toString());
101
- if ((input === null || input === void 0 ? void 0 : input.id) === undefined) {
102
- throw new Error(`Can not process getAnalytics input: ${input}`);
103
- }
104
- historyIntervalsArr = input.historyIntervalsArr;
105
- this.analyticsDataSource.protocolStrategy.setConnectionSettings(this.getHttpSettings(`/${input.id}/analytics`, "GET", null));
106
- dataStream = yield this.analyticsDataSource.getAll(true);
107
- }
108
- catch (err) {
109
- throw new golemio_errors_1.GeneralError("Error while getting data.", this.constructor.name, err);
110
- }
111
- try {
112
- yield dataStream
113
- .setDataProcessor((data) => __awaiter(this, void 0, void 0, function* () {
114
- const url = new URL(this.test_url);
115
- const clientOptions = {
116
- connect: {
117
- rejectUnauthorized: false,
118
- },
119
- };
120
- const client = new undici_1.Client(url.origin, clientOptions);
121
- const httpsAgent = new https_1.default.Agent({
122
- rejectUnauthorized: false,
123
- });
124
- const axPromises = data.map((analytic) => __awaiter(this, void 0, void 0, function* () {
125
- // no need for DataSource
126
- const fullUrl = new URL(`${this.test_url}/${input.id}/analytics/${analytic.id}`);
127
- const requestOptions = {
128
- path: fullUrl.pathname + fullUrl.search,
129
- method: "GET",
130
- headers: {
131
- "Accept-Version": "1.3",
132
- Authorization: `Bearer ${config_1.config.datasources.FlowAPI.token}`,
133
- "Content-Type": "application/json",
134
- },
135
- };
136
- const result = yield client.request(requestOptions);
137
- return result.body.json();
138
- }));
139
- const analytics = yield Promise.all(axPromises);
140
- const exPromises = analytics.map((analytic) => {
141
- return this.sendMessageToExchange("workers." + this.queuePrefix + ".getSinks", JSON.stringify({
142
- analytic: analytic,
143
- cube: input,
144
- historyIntervalsArr,
145
- }));
146
- });
147
- yield Promise.all(exPromises);
148
- }))
149
- .proceed();
150
- }
151
- catch (err) {
152
- throw new golemio_errors_1.GeneralError("Error while processing data.", this.constructor.name, err);
153
- }
154
- });
155
- this.getSinks = (msg) => __awaiter(this, void 0, void 0, function* () {
156
- var _a, _b;
157
- let input;
158
- let dataStream;
159
- let historyIntervalsArr;
160
- try {
161
- input = JSON.parse(msg.content.toString());
162
- if (((_a = input === null || input === void 0 ? void 0 : input.analytic) === null || _a === void 0 ? void 0 : _a.id) === undefined || ((_b = input === null || input === void 0 ? void 0 : input.cube) === null || _b === void 0 ? void 0 : _b.id) === undefined) {
163
- throw new Error(`Can not process getAnalytics input: ${JSON.stringify(input)}`);
164
- }
165
- historyIntervalsArr = input.historyIntervalsArr;
166
- this.sinksDataSource.protocolStrategy.setConnectionSettings(this.getHttpSettings(`/${input.cube.id}/analytics/${input.analytic.id}/sinks`, "GET", null));
167
- dataStream = yield this.sinksDataSource.getAll(true);
168
- }
169
- catch (err) {
170
- throw new golemio_errors_1.GeneralError("Error while getting data.", this.constructor.name, err);
171
- }
172
- try {
173
- yield dataStream
174
- .setDataProcessor((data) => __awaiter(this, void 0, void 0, function* () {
175
- yield this.flowSinksModel.save(data.map((sink) => {
176
- return {
177
- cube_id: +input.cube.id,
178
- history_start_timestamp: new Date(+sink.history_start_timestamp),
179
- id: sink.id,
180
- name: sink.name,
181
- output_value_type: sink.output_value_type,
182
- };
183
- }));
184
- const dataWithDistributionSinks = data.filter((sink) => {
185
- return (sink === null || sink === void 0 ? void 0 : sink.output_value_type) === "distribution";
186
- });
187
- const dataWithOdMatrixSinks = data.filter((sink) => {
188
- return (sink === null || sink === void 0 ? void 0 : sink.output_value_type) === "od_matrix";
189
- });
190
- if (dataWithDistributionSinks.length)
191
- yield this.sendMessageToExchange("workers." + this.queuePrefix + ".getSinksHistoryPayloads", JSON.stringify({
192
- analytic: input.analytic,
193
- cube: input.cube,
194
- sinks: dataWithDistributionSinks,
195
- sinksOutputValueType: "distribution",
196
- historyIntervalsArr,
197
- }));
198
- if (dataWithOdMatrixSinks.length)
199
- yield this.sendMessageToExchange("workers." + this.queuePrefix + ".getSinksHistoryPayloads", JSON.stringify({
200
- analytic: input.analytic,
201
- cube: input.cube,
202
- sinks: dataWithOdMatrixSinks,
203
- sinksOutputValueType: "od_matrix",
204
- historyIntervalsArr,
205
- }));
206
- }))
207
- .proceed();
208
- }
209
- catch (err) {
210
- throw new golemio_errors_1.GeneralError("Error while processing data.", this.constructor.name, err);
211
- }
212
- });
213
- this.getSinksHistoryPayloads = (msg) => __awaiter(this, void 0, void 0, function* () {
214
- var _c, _d;
215
- let input;
216
- let historyIntervalsArr;
217
- let timeRanges;
218
- try {
219
- input = JSON.parse(msg.content.toString());
220
- if (((_c = input === null || input === void 0 ? void 0 : input.analytic) === null || _c === void 0 ? void 0 : _c.id) === undefined ||
221
- ((_d = input === null || input === void 0 ? void 0 : input.cube) === null || _d === void 0 ? void 0 : _d.id) === undefined ||
222
- !input.sinks ||
223
- !input.sinksOutputValueType) {
224
- throw new Error(`Can not process getAnalytics input: ${JSON.stringify(input)}`);
225
- }
226
- historyIntervalsArr = input.historyIntervalsArr;
227
- if (historyIntervalsArr)
228
- timeRanges = historyIntervalsArr;
229
- else
230
- timeRanges = this.getTimeRanges();
231
- yield Promise.all(this.getHistoryPayload(timeRanges, input).map((payload) => {
232
- return this.sendMessageToExchange("workers." + this.queuePrefix + ".getSinksHistory", JSON.stringify({
233
- analytic: input.analytic,
234
- cube: input.cube,
235
- payload,
236
- sinksOutputValueType: input.sinksOutputValueType,
237
- }));
238
- }));
239
- }
240
- catch (err) {
241
- throw new golemio_errors_1.GeneralError("Error while getting data.", this.constructor.name, err);
242
- }
243
- });
244
- this.getSinksHistory = (msg) => __awaiter(this, void 0, void 0, function* () {
245
- var _e, _f;
246
- let dataStream;
247
- let input;
248
- try {
249
- input = JSON.parse(msg.content.toString());
250
- if (((_e = input === null || input === void 0 ? void 0 : input.analytic) === null || _e === void 0 ? void 0 : _e.id) === undefined ||
251
- ((_f = input === null || input === void 0 ? void 0 : input.cube) === null || _f === void 0 ? void 0 : _f.id) === undefined ||
252
- !input.payload ||
253
- !input.sinksOutputValueType) {
254
- throw new Error(`Can not process getAnalytics input: ${JSON.stringify(input)}`);
255
- }
256
- this.sinksHistoryDataSource.protocolStrategy.setConnectionSettings(this.getHttpSettings(`/${input.cube.id}/analytics/${input.analytic.id}/sinks/history`, "POST", input.payload));
257
- dataStream = yield this.sinksHistoryDataSource.getAll(true);
258
- }
259
- catch (err) {
260
- throw new golemio_errors_1.GeneralError("Error while getting data.", this.constructor.name, err);
261
- }
262
- if (input.sinksOutputValueType === "distribution")
263
- try {
264
- yield dataStream
265
- .setDataProcessor((data) => __awaiter(this, void 0, void 0, function* () {
266
- const detections = this.getMeasurementsDistribution(data, input.cube.id, input.payload.sequence_number, input.analytic.id);
267
- // filter duplicate data
268
- const uniq = detections.filter((thing, index, self) => index ===
269
- self.findIndex((t) => t.cube_id === thing.cube_id &&
270
- t.sink_id === thing.sink_id &&
271
- t.start_timestamp === thing.start_timestamp &&
272
- t.end_timestamp === thing.end_timestamp &&
273
- t.category === thing.category &&
274
- t.sequence_number === thing.sequence_number &&
275
- t.data_validity === thing.data_validity));
276
- yield this.flowMeasurementModel.save(uniq, false);
277
- }))
278
- .proceed();
279
- }
280
- catch (err) {
281
- throw new golemio_errors_1.GeneralError("Error while processing data (distribution sinks).", this.constructor.name, err);
282
- }
283
- if (input.sinksOutputValueType === "od_matrix")
284
- try {
285
- yield dataStream
286
- .setDataProcessor((data) => __awaiter(this, void 0, void 0, function* () {
287
- const detections = this.getMeasurementsOdMatrix(data, input.cube.id, input.payload.sequence_number, input.analytic.id);
288
- // filter duplicate data
289
- const uniq = detections.filter((thing, index, self) => index ===
290
- self.findIndex((t) => t.cube_id === thing.cube_id &&
291
- t.sink_id === thing.sink_id &&
292
- t.start_timestamp === thing.start_timestamp &&
293
- t.end_timestamp === thing.end_timestamp &&
294
- t.category === thing.category &&
295
- t.sequence_number === thing.sequence_number &&
296
- t.data_validity === thing.data_validity &&
297
- t.origin === thing.origin &&
298
- t.destination === thing.destination));
299
- yield this.flowODMeasurementModel.save(uniq, false);
300
- }))
301
- .proceed();
302
- }
303
- catch (err) {
304
- throw new golemio_errors_1.GeneralError("Error while processing data (od_matrix sinks).", this.constructor.name, err);
305
- }
306
- });
307
- this.getMeasurementsDistribution = (data, cube_id, sequence_number, analytic_id) => {
308
- const measurementsNormalised = [];
309
- data.forEach((element) => {
310
- ((element === null || element === void 0 ? void 0 : element.snapshots) || []).forEach((snapshot) => {
311
- var _a;
312
- (((_a = snapshot === null || snapshot === void 0 ? void 0 : snapshot.data) === null || _a === void 0 ? void 0 : _a.categories) || []).forEach((category) => {
313
- // filter out 'old' format
314
- const startTimestamp = parseInt(snapshot.data_start_timestamp, 10);
315
- if (startTimestamp && !isNaN(startTimestamp)) {
316
- measurementsNormalised.push({
317
- sink_id: element.id,
318
- cube_id,
319
- sequence_number: +sequence_number,
320
- analytic_id,
321
- start_timestamp: new Date(+snapshot.data_start_timestamp),
322
- end_timestamp: new Date(+snapshot.data_end_timestamp),
323
- category: category.category,
324
- value: category.count,
325
- data_validity: snapshot.data.data_validity,
326
- });
327
- }
328
- });
329
- });
330
- });
331
- return measurementsNormalised;
332
- };
333
- this.getMeasurementsOdMatrix = (data, cube_id, sequence_number, analytic_id) => {
334
- const measurementsNormalised = [];
335
- data.forEach((element) => {
336
- ((element === null || element === void 0 ? void 0 : element.snapshots) || []).forEach((snapshot) => {
337
- var _a;
338
- const destinations = snapshot.data.destinations;
339
- const origins = snapshot.data.origins;
340
- (((_a = snapshot === null || snapshot === void 0 ? void 0 : snapshot.data) === null || _a === void 0 ? void 0 : _a.turning_movements) || []).forEach((category, categoryIndex) => {
341
- const categoryName = category.category;
342
- // filter out 'old' format
343
- const startTimestamp = parseInt(snapshot.data_start_timestamp, 10);
344
- if (startTimestamp && !isNaN(startTimestamp)) {
345
- category.data.forEach((originRow, originIndex) => {
346
- originRow.forEach((value, destinationIndex) => {
347
- measurementsNormalised.push({
348
- sink_id: element.id,
349
- cube_id,
350
- sequence_number: +sequence_number,
351
- analytic_id,
352
- start_timestamp: new Date(+snapshot.data_start_timestamp),
353
- end_timestamp: new Date(+snapshot.data_end_timestamp),
354
- category: categoryName,
355
- origin: origins[originIndex].name,
356
- destination: destinations[destinationIndex].name,
357
- value,
358
- data_validity: snapshot.data.data_validity,
359
- });
360
- });
361
- });
362
- }
363
- });
364
- });
365
- });
366
- return measurementsNormalised;
367
- };
368
- // get array of all pastOffset to past timeranges [startTS, endTS]
369
- // where endTS - startTS === interval starting now - pastOffset
370
- this.getTimeRanges = (pastOffset = 60, interval = 15) => {
371
- const start = (0, DateTime_1.dateTime)(new Date(new Date().setUTCSeconds(0, 0)));
372
- const fullMinsDiv2 = start.toDate().getMinutes() % interval;
373
- const startTs = start.subtract(fullMinsDiv2, "minutes").valueOf();
374
- const endTs = start.subtract(pastOffset, "minutes").valueOf();
375
- const ranges = [];
376
- let currentTs = startTs;
377
- const intervalMs = interval * 60 * 1000;
378
- while (currentTs - intervalMs > endTs) {
379
- ranges.push([currentTs - intervalMs, currentTs]);
380
- currentTs = currentTs - intervalMs;
381
- }
382
- return ranges;
383
- };
384
- this.getHttpSettings = (suffix = "", method = "GET", body = null) => {
385
- const settings = {
386
- headers: {
387
- "Accept-Version": "1.3",
388
- Authorization: `Bearer ${config_1.config.datasources.FlowAPI.token}`,
389
- "Content-Type": "application/json",
390
- },
391
- method,
392
- rejectUnauthorized: false,
393
- url: `${this.test_url}${suffix}`,
394
- };
395
- if (body) {
396
- settings.body = JSON.stringify(body);
397
- }
398
- return settings;
399
- };
400
- this.test_url = "https://10.200.210.1:8088/api/cubes";
401
- this.flowMeasurementModel = new models_1.PostgresModel(index_1.Flow.detections.name + "Model", {
402
- outputSequelizeAttributes: index_1.Flow.detections.outputSequelizeAttributes,
403
- pgSchema: FlowWorkerTest.testSchema,
404
- pgTableName: index_1.Flow.detections.pgTableName,
405
- savingType: "insertOrUpdate",
406
- }, new golemio_validator_1.JSONSchemaValidator("FlowMeasurementValidator", index_1.Flow.detections.jsonSchema));
407
- this.flowODMeasurementModel = new models_1.PostgresModel(index_1.Flow.detectionsOD.name + "Model", {
408
- outputSequelizeAttributes: index_1.Flow.detectionsOD.outputSequelizeAttributes,
409
- pgSchema: FlowWorkerTest.testSchema,
410
- pgTableName: index_1.Flow.detectionsOD.pgTableName,
411
- savingType: "insertOrUpdate",
412
- }, new golemio_validator_1.JSONSchemaValidator("FlowODMeasurementValidator", index_1.Flow.detectionsOD.jsonSchema));
413
- this.flowCubesModel = new models_1.PostgresModel(index_1.Flow.cubes.name + "Model", {
414
- outputSequelizeAttributes: index_1.Flow.cubes.outputSequelizeAttributes,
415
- pgSchema: FlowWorkerTest.testSchema,
416
- pgTableName: index_1.Flow.cubes.pgTableName,
417
- savingType: "insertOrUpdate",
418
- }, new golemio_validator_1.JSONSchemaValidator("FlowCubesValidator", index_1.Flow.cubes.jsonSchema));
419
- this.flowSinksModel = new models_1.PostgresModel(index_1.Flow.sinks.name + "Model", {
420
- outputSequelizeAttributes: index_1.Flow.sinks.outputSequelizeAttributes,
421
- pgSchema: FlowWorkerTest.testSchema,
422
- pgTableName: index_1.Flow.sinks.pgTableName,
423
- savingType: "insertOrUpdate",
424
- }, new golemio_validator_1.JSONSchemaValidator("FlowSinksValidator", index_1.Flow.sinks.jsonSchema));
425
- this.cubesDataSource = new datasources_2.DataSourceStreamed(datasources_1.cubesDatasource.name, new HTTPRequestProtocolStrategyStreamed_1.HTTPRequestProtocolStrategyStreamed({
426
- headers: {},
427
- method: "GET",
428
- url: this.test_url,
429
- }).setStreamTransformer(JSONStream_1.default.parse("cubes.*")), new datasources_2.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator(datasources_1.cubesDatasource.name + "Validator", datasources_1.cubesDatasource.jsonSchema));
430
- this.analyticsDataSource = new datasources_2.DataSourceStreamed(datasources_1.analyticsDatasource.name, new HTTPRequestProtocolStrategyStreamed_1.HTTPRequestProtocolStrategyStreamed({
431
- headers: {},
432
- method: "GET",
433
- url: this.test_url,
434
- }).setStreamTransformer(JSONStream_1.default.parse("analytics.*")), new datasources_2.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator(datasources_1.analyticsDatasource.name + "Validator", datasources_1.analyticsDatasource.jsonSchema));
435
- this.sinksDataSource = new datasources_2.DataSourceStreamed(datasources_1.sinksDatasource.name, new HTTPRequestProtocolStrategyStreamed_1.HTTPRequestProtocolStrategyStreamed({
436
- headers: {},
437
- method: "GET",
438
- url: this.test_url,
439
- }).setStreamTransformer(JSONStream_1.default.parse("sinks.*")), new datasources_2.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator(datasources_1.sinksDatasource.name + "Validator", datasources_1.sinksDatasource.jsonSchema));
440
- this.sinksHistoryDataSource = new datasources_2.DataSourceStreamed(datasources_1.sinksHistoryDatasource.name, new HTTPRequestProtocolStrategyStreamed_1.HTTPRequestProtocolStrategyStreamed({
441
- headers: {},
442
- method: "POST",
443
- url: this.test_url,
444
- }).setStreamTransformer(JSONStream_1.default.parse("sinks.*")), new datasources_2.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator(datasources_1.sinksHistoryDatasource.name + "Validator", datasources_1.sinksHistoryDatasource.jsonSchema));
445
- }
446
- getHistoryPayload(timeRanges, data) {
447
- const payloads = [];
448
- timeRanges.forEach((range) => {
449
- const payload = {
450
- sequence_number: data.analytic.sequence_number,
451
- sinks: [],
452
- };
453
- data.sinks.forEach((sink) => {
454
- payload.sinks.push({
455
- // has to be string!
456
- end_timestamp: `${range[1]}`,
457
- id: sink.id,
458
- // has to be string!
459
- start_timestamp: `${range[0]}`,
460
- });
461
- });
462
- payloads.push(payload);
463
- });
464
- return payloads;
465
- }
466
- }
467
- exports.FlowWorkerTest = FlowWorkerTest;
468
- FlowWorkerTest.testSchema = "flow_test";
469
- //# sourceMappingURL=FlowWorkerTest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FlowWorkerTest.js","sourceRoot":"","sources":["../../src/integration-engine/FlowWorkerTest.ts"],"names":[],"mappings":"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"}