raain-model 2.1.20 → 2.2.1

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/RELEASE.md CHANGED
@@ -11,4 +11,5 @@
11
11
  Rain zone is composed by LatLng rects,
12
12
  No more period usage (date preferred).
13
13
  - 2.1.x : RainComputationQuality extended with rainComputation's link,
14
- getQualityPointsByHistoricalPosition method.
14
+ getQualityPointsByHistoricalPosition method.
15
+ - 2.2.x : BuildCompares refactored
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "raain-model",
3
- "version": "2.1.20",
3
+ "version": "2.2.1",
4
4
  "author": "contact@raain.io",
5
5
  "homepage": "https://github.com/raainio/raain-model",
6
6
  "description": "raain.io api model",
@@ -24,6 +24,7 @@ export declare class QualityPoint {
24
24
  };
25
25
  remark: string;
26
26
  });
27
+ static CreateFromJSON(src: QualityPoint): QualityPoint;
27
28
  getGaugeValue(): number;
28
29
  getRainValue(): number;
29
30
  getRainLat(): number;
@@ -31,5 +32,6 @@ export declare class QualityPoint {
31
32
  getDelta(): number;
32
33
  getRatio(): number;
33
34
  getTimeDeltaInMinutes(): number;
35
+ accumulateValues(qualityPoint: QualityPoint): void;
34
36
  private getMiddleValue;
35
37
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.QualityPoint = void 0;
4
+ const CartesianValue_1 = require("../cartesian/CartesianValue");
4
5
  class QualityPoint {
5
6
  constructor(json) {
6
7
  this.gaugeId = json.gaugeId;
@@ -12,6 +13,19 @@ class QualityPoint {
12
13
  this.speed = json.speed;
13
14
  this.remark = json.remark;
14
15
  }
16
+ static CreateFromJSON(src) {
17
+ var _a, _b;
18
+ return new QualityPoint({
19
+ gaugeId: src.gaugeId,
20
+ gaugeLabel: src.gaugeLabel,
21
+ gaugeDate: new Date(src.gaugeDate),
22
+ rainDate: new Date(src.rainDate),
23
+ gaugeCartesianValue: new CartesianValue_1.CartesianValue(src.gaugeCartesianValue),
24
+ rainCartesianValues: src.rainCartesianValues.map(v => new CartesianValue_1.CartesianValue(v)),
25
+ speed: { x: (_a = src.speed) === null || _a === void 0 ? void 0 : _a.x, y: (_b = src.speed) === null || _b === void 0 ? void 0 : _b.y },
26
+ remark: src.remark,
27
+ });
28
+ }
15
29
  getGaugeValue() {
16
30
  var _a;
17
31
  return (_a = this.gaugeCartesianValue) === null || _a === void 0 ? void 0 : _a.value;
@@ -48,6 +62,15 @@ class QualityPoint {
48
62
  const delta = this.rainDate.getTime() - this.gaugeDate.getTime();
49
63
  return Math.round(delta / 60000);
50
64
  }
65
+ accumulateValues(qualityPoint) {
66
+ this.gaugeCartesianValue.value += qualityPoint.getGaugeValue();
67
+ if (this.rainCartesianValues.length === 0) {
68
+ this.rainCartesianValues = qualityPoint.rainCartesianValues.map(q => q);
69
+ }
70
+ else {
71
+ this.rainCartesianValues.forEach(v => v.value += qualityPoint.getRainValue());
72
+ }
73
+ }
51
74
  getMiddleValue() {
52
75
  if (!this.rainCartesianValues || this.rainCartesianValues.length === 0) {
53
76
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"QualityPoint.js","sourceRoot":"","sources":["../../src/quality/QualityPoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QualityPoint.js","sourceRoot":"","sources":["../../src/quality/QualityPoint.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,23 @@ import { SpeedMatrix } from './SpeedMatrix';
2
2
  import { PositionValue } from './position/PositionValue';
3
3
  import { QualityPoint } from './QualityPoint';
4
4
  import { RainComputationQuality } from '../rain/RainComputationQuality';
5
+ export interface ICompares {
6
+ comparesPerDate: IComparePerDate[];
7
+ compareCumulative: ICompare;
8
+ }
9
+ export interface IComparePerDate {
10
+ date: Date;
11
+ rainComputationQuality: RainComputationQuality;
12
+ compareTimeline: ICompare[];
13
+ }
14
+ export interface ICompare {
15
+ name: string;
16
+ date: Date;
17
+ qualityPointsLegacy: QualityPoint[];
18
+ qualityPoints: QualityPoint[];
19
+ maxValue: number;
20
+ remarks: string;
21
+ }
5
22
  export declare class SpeedMatrixContainer {
6
23
  protected qualityPoints: any;
7
24
  protected trustedIndicators: number[];
@@ -11,13 +28,8 @@ export declare class SpeedMatrixContainer {
11
28
  matrices: SpeedMatrix[];
12
29
  });
13
30
  static CreateFromJson(json: any): SpeedMatrixContainer;
14
- static BuildCompares(currentQuality: RainComputationQuality, previousQuality: RainComputationQuality, nextQuality: RainComputationQuality, removeDuplicates?: boolean): {
15
- name: string;
16
- qualityPointsLegacy: QualityPoint[];
17
- qualityPoints: QualityPoint[];
18
- maxValue: number;
19
- remarks: string;
20
- }[];
31
+ static BuildCompares(dates: Date[], qualities: RainComputationQuality[], removeDuplicates?: boolean): ICompares;
32
+ static BuildCompareTimeline(currentQuality: RainComputationQuality): ICompare[];
21
33
  protected static mergeStillComputed(v1: any, v2: any): any;
22
34
  protected static mergeDateMin(d1: Date, d2: Date): Date;
23
35
  protected static mergeDateMax(d1: Date, d2: Date): Date;
@@ -29,10 +29,82 @@ class SpeedMatrixContainer {
29
29
  }
30
30
  return created;
31
31
  }
32
- static BuildCompares(currentQuality, previousQuality, nextQuality, removeDuplicates = true) {
32
+ static BuildCompares(dates, qualities, removeDuplicates = true) {
33
+ const qualitiesSorted = qualities
34
+ .sort((a, b) => a.date.getTime() - b.date.getTime());
35
+ const comparesPerDate = [];
36
+ const compareCumulative = {
37
+ name: 'cumulative_' + dates.reduce((p, c) => p + '_' + c.toISOString(), ''),
38
+ date: dates[0],
39
+ qualityPointsLegacy: [],
40
+ qualityPoints: [],
41
+ maxValue: 0,
42
+ remarks: '',
43
+ };
44
+ const minDeltaPerDate_GaugeId = {};
45
+ // build timelines and store
46
+ for (const current of qualitiesSorted) {
47
+ const compareTimeline = SpeedMatrixContainer.BuildCompareTimeline(current);
48
+ const datesIn = dates.filter(d => d.getTime() === current.date.getTime());
49
+ if (datesIn.length === 1) {
50
+ comparesPerDate.push({
51
+ date: current.date,
52
+ rainComputationQuality: current,
53
+ compareTimeline
54
+ });
55
+ const qualityPoints = compareTimeline.reduce((p, a) => p.concat(a.qualityPoints), []);
56
+ for (const qualityPoint of qualityPoints) {
57
+ const key = qualityPoint.gaugeDate.toISOString() + '_' + qualityPoint.gaugeId;
58
+ if (!minDeltaPerDate_GaugeId[key]) {
59
+ minDeltaPerDate_GaugeId[key] = qualityPoint.getDelta();
60
+ }
61
+ minDeltaPerDate_GaugeId[key] = Math.min(minDeltaPerDate_GaugeId[key], qualityPoint.getDelta());
62
+ }
63
+ }
64
+ }
65
+ // loop and search for unique points
66
+ const qualityPointToUsePerDate_GaugeId = {};
67
+ comparesPerDate.forEach(compare => {
68
+ compare.compareTimeline.forEach(timeline => {
69
+ for (let i = timeline.qualityPoints.length - 1; i >= 0; i--) {
70
+ const qualityPoint = timeline.qualityPoints[i];
71
+ const key = qualityPoint.gaugeDate.toISOString() + '_' + qualityPoint.gaugeId;
72
+ if (!qualityPointToUsePerDate_GaugeId[key] && minDeltaPerDate_GaugeId[key]
73
+ && minDeltaPerDate_GaugeId[key] === qualityPoint.getDelta()) {
74
+ qualityPointToUsePerDate_GaugeId[key] = qualityPoint;
75
+ }
76
+ else {
77
+ if (removeDuplicates) {
78
+ timeline.qualityPoints.splice(i, 1);
79
+ }
80
+ }
81
+ }
82
+ });
83
+ });
84
+ // compute cumulative based on unique points
85
+ const qualityPointPerGaugeId = {};
86
+ for (const qp of Object.values(qualityPointToUsePerDate_GaugeId)) {
87
+ const qualityPoint = qp;
88
+ if (!qualityPointPerGaugeId[qualityPoint.gaugeId]) {
89
+ qualityPointPerGaugeId[qualityPoint.gaugeId] = QualityPoint_1.QualityPoint.CreateFromJSON(qualityPoint);
90
+ }
91
+ else {
92
+ qualityPointPerGaugeId[qualityPoint.gaugeId].accumulateValues(qualityPoint);
93
+ }
94
+ }
95
+ compareCumulative.qualityPoints = Object.values(qualityPointPerGaugeId);
96
+ const maxRain = Math.max(...compareCumulative.qualityPoints.map(p => p.getRainValue()));
97
+ const maxGauge = Math.max(...compareCumulative.qualityPoints.map(p => p.getGaugeValue()));
98
+ compareCumulative.maxValue = Math.max(maxRain, maxGauge);
99
+ return { comparesPerDate, compareCumulative };
100
+ }
101
+ static BuildCompareTimeline(currentQuality) {
33
102
  var _a;
34
103
  const compares = [];
35
104
  const qualitySpeedMatrixContainer = currentQuality.qualitySpeedMatrixContainer;
105
+ if (!qualitySpeedMatrixContainer) {
106
+ return compares;
107
+ }
36
108
  const compareNames = qualitySpeedMatrixContainer.getMatrices()
37
109
  .map(m => m.name)
38
110
  .sort((a, b) => parseInt(a, 10) - parseInt(b, 10));
@@ -41,59 +113,14 @@ class SpeedMatrixContainer {
41
113
  const maxValue = Math.max(qualitySpeedMatrixContainer.getMaxGauge(), qualitySpeedMatrixContainer.getMaxRain());
42
114
  const remarks = (_a = qualitySpeedMatrixContainer.getMatrix(index)) === null || _a === void 0 ? void 0 : _a.remarks;
43
115
  const delta = parseInt(name, 10);
44
- let renamed = new Date(currentQuality.date.getTime() - delta * 60 * 1000).toLocaleString();
116
+ const compareDate = new Date(currentQuality.date.getTime() - delta * 60 * 1000);
117
+ let renamed = compareDate.toLocaleString();
45
118
  renamed += delta > 0 ? ' since ' : ' in ';
46
119
  renamed += Math.abs(delta) + ' minutes';
47
- // console.log('index:', index, 'delta:', delta, 'renamed:', renamed);
48
- // remove previous or next better values from comparePoints
49
- let qualityPoints = qualityPointsLegacy.filter((p) => p); // no real filter
50
- if (removeDuplicates) {
51
- if (index === compareNames.length - 1) {
52
- if (!(previousQuality === null || previousQuality === void 0 ? void 0 : previousQuality.qualitySpeedMatrixContainer)) {
53
- qualityPoints = [];
54
- }
55
- else {
56
- qualityPoints = qualityPoints.filter((p) => {
57
- const previousQPs = previousQuality.qualitySpeedMatrixContainer
58
- .getQualityPointsByHistoricalPosition(0)
59
- .filter(previousQP => p.gaugeId === previousQP.gaugeId);
60
- // better before ?
61
- const betterBefore = (previousQPs.length === 1 && p.getDelta() > previousQPs[0].getDelta());
62
- if (betterBefore) {
63
- // console.log('removed from', renamed, p.gaugeLabel, previousQuality.date.toISOString(),
64
- // p.getDelta(),
65
- // previousQPs.length === 1 ? previousQPs[0].getDelta()
66
- // + ' dated ' + previousQPs[0].gaugeDate.toISOString() : 0);
67
- return false; // => remove it
68
- }
69
- return true;
70
- });
71
- }
72
- }
73
- else if (index === 0) {
74
- if (!(nextQuality === null || nextQuality === void 0 ? void 0 : nextQuality.qualitySpeedMatrixContainer)) {
75
- qualityPoints = [];
76
- }
77
- else {
78
- qualityPoints = qualityPoints.filter((p) => {
79
- const nextQPs = nextQuality.qualitySpeedMatrixContainer
80
- .getQualityPointsByHistoricalPosition(1)
81
- .filter(nextQP => p.gaugeId === nextQP.gaugeId);
82
- // better after ?
83
- const betterAfter = (nextQPs.length === 1 && p.getDelta() > nextQPs[0].getDelta());
84
- if (betterAfter) {
85
- // console.log('removed from', renamed, p.gaugeLabel, nextQuality.date.toISOString(),
86
- // p.getDelta(),
87
- // nextQPs.length === 1 ? nextQPs[0].getDelta() + ' dated ' + nextQPs[0].gaugeDate.toISOString() : 0);
88
- return false; // => remove it
89
- }
90
- return true;
91
- });
92
- }
93
- }
94
- }
120
+ const qualityPoints = qualityPointsLegacy.filter((p) => p); // no real filter
95
121
  const compare = {
96
122
  name: renamed,
123
+ date: compareDate,
97
124
  qualityPointsLegacy,
98
125
  qualityPoints,
99
126
  maxValue,
@@ -1 +1 @@
1
- {"version":3,"file":"SpeedMatrixContainer.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrixContainer.ts"],"names":[],"mappings":";;;AAAA,+CAA0C;AAC1C,4DAAuD;AACvD,+DAA0D;AAC1D,iDAA4C;AAC5C,gEAA2D;AAG3D,MAAa,oBAAoB;IAO7B,YAAY,IAEX;QACG,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAClC,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAS;QAClC,MAAM,OAAO,GAAG,IAAI,oBAAoB,CAAC,EAAC,QAAQ,EAAE,EAAE,EAAC,CAAC,CAAC;QACzD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,EAAE;YACrB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;SAC9C;QACD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EAAE;YAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,yBAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;SACnF;QACD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,EAAE;YACzB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;SACtD;QACD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,eAAe,EAAE;YACvB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;SAClD;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,cAAsC,EACtC,eAAuC,EACvC,WAAmC,EACnC,gBAAgB,GAAG,IAAI;;QAOxC,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,MAAM,2BAA2B,GAAG,cAAc,CAAC,2BAA2B,CAAC;QAC/E,MAAM,YAAY,GAAG,2BAA2B,CAAC,WAAW,EAAE;aACzD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAEvD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE;YAEhD,MAAM,mBAAmB,GAAG,2BAA2B,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,WAAW,EAAE,EAAE,2BAA2B,CAAC,UAAU,EAAE,CAAC,CAAC;YAC/G,MAAM,OAAO,GAAG,MAAA,2BAA2B,CAAC,SAAS,CAAC,KAAK,CAAC,0CAAE,OAAO,CAAC;YAEtE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;YAC3F,OAAO,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAC1C,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;YAExC,sEAAsE;YAEtE,2DAA2D;YAC3D,IAAI,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB;YAEhF,IAAI,gBAAgB,EAAE;gBAClB,IAAI,KAAK,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;oBACnC,IAAI,CAAC,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,2BAA2B,CAAA,EAAE;wBAC/C,aAAa,GAAG,EAAE,CAAC;qBACtB;yBAAM;wBACH,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE;4BACrD,MAAM,WAAW,GAAG,eAAe,CAAC,2BAA2B;iCAC1D,oCAAoC,CAAC,CAAC,CAAC;iCACvC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,CAAC,CAAC;4BAE5D,kBAAkB;4BAClB,MAAM,YAAY,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;4BAC5F,IAAI,YAAY,EAAE;gCACd,yFAAyF;gCACzF,oBAAoB;gCACpB,2DAA2D;gCAC3D,qEAAqE;gCACrE,OAAO,KAAK,CAAC,CAAC,eAAe;6BAChC;4BACD,OAAO,IAAI,CAAC;wBAChB,CAAC,CAAC,CAAC;qBACN;iBACJ;qBAAM,IAAI,KAAK,KAAK,CAAC,EAAE;oBACpB,IAAI,CAAC,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,2BAA2B,CAAA,EAAE;wBAC3C,aAAa,GAAG,EAAE,CAAC;qBACtB;yBAAM;wBACH,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE;4BACrD,MAAM,OAAO,GAAG,WAAW,CAAC,2BAA2B;iCAClD,oCAAoC,CAAC,CAAC,CAAC;iCACvC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC;4BAEpD,iBAAiB;4BACjB,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;4BACnF,IAAI,WAAW,EAAE;gCACb,qFAAqF;gCACrF,oBAAoB;gCACpB,0GAA0G;gCAC1G,OAAO,KAAK,CAAC,CAAC,eAAe;6BAChC;4BACD,OAAO,IAAI,CAAC;wBAChB,CAAC,CAAC,CAAC;qBACN;iBACJ;aACJ;YAED,MAAM,OAAO,GAAG;gBACZ,IAAI,EAAE,OAAO;gBACb,mBAAmB;gBACnB,aAAa;gBACb,QAAQ;gBACR,OAAO;aACV,CAAC;YAEF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC1B;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAES,MAAM,CAAC,kBAAkB,CAAC,EAAO,EAAE,EAAO;QAChD,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE;YACZ,OAAO,SAAS,CAAC;SACpB;QACD,IAAI,CAAC,EAAE,EAAE;YACL,OAAO,EAAE,CAAC;SACb;QACD,IAAI,CAAC,EAAE,EAAE;YACL,OAAO,EAAE,CAAC;SACb;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,MAAM,CAAC,YAAY,CAAC,EAAQ,EAAE,EAAQ;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,aAAa,KAAK,IAAI,EAAE;YACxB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SAC7E;QACD,IAAI,aAAa,KAAK,SAAS,EAAE;YAC7B,OAAO,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;SAClC;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAES,MAAM,CAAC,YAAY,CAAC,EAAQ,EAAE,EAAQ;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,aAAa,KAAK,IAAI,EAAE;YACxB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SAC7E;QACD,IAAI,aAAa,KAAK,SAAS,EAAE;YAC7B,OAAO,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;SAClC;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAES,MAAM,CAAC,QAAQ,CAAC,EAAU,EAAE,EAAU;QAC5C,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;YACtB,OAAO,CAAC,CAAC;SACZ;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,aAAa,KAAK,IAAI,EAAE;YACxB,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAES,MAAM,CAAC,QAAQ,CAAC,EAAU,EAAE,EAAU;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,aAAa,KAAK,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC3B;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAES,MAAM,CAAC,WAAW,CAAC,EAAc,EAAE,EAAc;QACvD,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,aAAa,KAAK,IAAI,EAAE;YACxB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACxB;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAES,MAAM,CAAC,WAAW,CAAC,EAAuB,EAAE,EAAuB;QACzE,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,aAAa,KAAK,IAAI,EAAE;YAExB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,MAAM,SAAS,GAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChD,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE;gBAClC,MAAM,QAAQ,GAAG;oBACb,UAAU,EAAE,CAAC;oBACb,SAAS,EAAE,CAAC;iBACf,CAAC;gBACF,uCAAuC;gBACvC,gDAAgD;gBAChD,IAAI;gBACJ,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE;oBAC1B,UAAU,EAAE,YAAY,CAAC,UAAU;oBACnC,UAAU,EAAE,YAAY,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,UAAU;oBAC9D,QAAQ,EAAE,YAAY,CAAC,mBAAmB,CAAC,GAAG;oBAC9C,QAAQ,EAAE,YAAY,CAAC,mBAAmB,CAAC,GAAG;oBAC9C,SAAS,EAAE,YAAY,CAAC,YAAY,EAAE,GAAG,QAAQ,CAAC,SAAS;oBAC3D,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE;oBAClC,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE;oBAClC,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,QAAQ,EAAE,YAAY,CAAC,QAAQ;oBAC/B,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;oBACrD,MAAM,EAAE,YAAY,CAAC,MAAM;iBAC9B,CAAC,CAAC;aACN;YAED,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;gBAChC,OAAO,IAAI,2BAAY,CAAC;oBACpB,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,mBAAmB,EAAE,IAAI,+BAAc,CAAC,EAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAC,CAAC;oBAC5G,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;oBAC9C,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,KAAK,CAAC,MAAM;iBACvB,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;SACN;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,SAAS,CAAC,KAAK,GAAG,CAAC;QACf,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,KAAK,EAAE;YAC/B,OAAO,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,eAAe,CAAC,IAAY;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;SACnB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,gBAAgB,CAAC,UAAmB;;QAEhC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,OAAO,EAAE,CAAC;SACb;QAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,WAAW,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,EAAE;YACb,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAChD;aAAM;YACH,IAAI,CAAA,MAAA,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,0CAAE,MAAM,IAAG,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/E,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;aACzC;SACJ;QAED,IAAI,aAAa,GAAmB,EAAE,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;YAC5B,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACxE,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnC,MAAM,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,2BAAY,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxF,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,QAAQ;gBACR,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;aACrC;SACJ;QAED,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,oCAAoC,CAAC,WAAmB,CAAC;QAErD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;YAC3B,OAAO,EAAE,CAAC;SACb;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ;aAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;aAC3D,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QAE9C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACrD;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAED,WAAW,CAAC,UAAmB;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE;YAC3B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;SAC1C;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,UAAU,CAAC,UAAmB;QAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE;YAC3B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;SACzC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,UAAmB;QAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,yBAAW,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;IAC9D,CAAC;IAED,oBAAoB;QAChB,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,OAAO,IAAI,CAAC,iBAAiB,CAAC;SACjC;QAED,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YAChC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,4BAA4B,EAAE,CAAC,CAAC;SACtE;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,QAAQ;QACJ,IAAI,WAAgE,CAAC;QAErE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YAChC,IAAI,CAAC,WAAW,EAAE;gBACd,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;aACnC;iBAAM;gBACH,WAAW,GAAG;oBACV,cAAc,EAAE,oBAAoB,CAAC,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC;oBAC3G,eAAe,EAAE,oBAAoB,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC;iBACjH,CAAA;aACJ;SACJ;QAED,IAAI,CAAC,WAAW,EAAE;YACd,WAAW,GAAG,EAAC,cAAc,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAC,CAAC;SACzD;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,YAAY;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC3C,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YACxB,YAAY,IAAI,KAAK,CAAC;SACzB;QACD,YAAY,GAAG,YAAY,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,YAAY,GAAG,CAAC,yBAAW,CAAC,yBAAyB,GAAG,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,qBAAqB;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;IACvC,CAAC;IAED,mBAAmB,CAAC,KAAK,GAAG,CAAC,EACT,UAAmC,EAAC,SAAS,EAAE,IAAI,EAAC;QAEpE,IAAI,QAAyB,CAAC;QAC9B,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;YACrD,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC1C;aAAM;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC1C;QAED,IAAI,OAAO,CAAC,SAAS,EAAE;YACnB,QAAQ,GAAG,yBAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;SAC9C;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,kBAAkB,CAAC,UAAmC,EAAC,SAAS,EAAE,IAAI,EAAC;;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,0CAAE,MAAM,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,MAAM,GAAoB,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,EAAE;YAClC,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,EAAE;gBAClC,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,KAAK,MAAM,aAAa,IAAI,IAAI,CAAC,eAAe,EAAE;oBAC9C,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjE,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC;oBACnB,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;iBACxC;gBACD,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;gBACtB,MAAM,CAAC,IAAI,CAAC,IAAI,6BAAa,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;aACjD;SACJ;QAED,IAAI,OAAO,CAAC,SAAS,EAAE;YACnB,MAAM,GAAG,yBAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SAC1C;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,OAIN;QACG,MAAM,IAAI,GAAG;YACT,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACtC,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,EAAE;YAC9C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAChB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAC5B,CAAC;QAEF,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE;YACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;SACxB;QAED,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,EAAE;YACxB,OAAO,IAAI,CAAC,eAAe,CAAC;SAC/B;QAED,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,EAAE;YAC3B,OAAO,IAAI,CAAC,iBAAiB,CAAC;SACjC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,6BAAmD;QAErD,IAAI,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,EAAE,EACjF,6BAA6B,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAC1D,6BAA6B,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,eAAe,GAAG,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,EACxE,6BAA6B,CAAC,eAAe,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,UAAmC,EAAC,SAAS,EAAE,IAAI,EAAC;QAEhE,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,iBAAiB,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,iCAAe,CAAC;YACjE,EAAE,EAAE,GAAG;YACP,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,IAAI;YACV,CAAC,EAAE,EAAE,CAAC,CAAC;YACP,CAAC,EAAE,EAAE,CAAC,CAAC;YACP,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,cAAc,EAAE,CAAC,CAAC;YAClB,aAAa,EAAE,CAAC,CAAC;SACpB,CAAC,CAAC,CAAC;QAEJ,MAAM,YAAY,GAAG,CAAC,EAAiB,EAAU,EAAE;YAC/C,IAAI,CAAC,EAAE,EAAE;gBACL,OAAO,EAAE,CAAC;aACb;YACD,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACnD,CAAC,CAAA;QAED,yBAAW,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;IAES,oBAAoB;QAE1B,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACtD,OAAO,IAAI,CAAC,eAAe,CAAC;SAC/B;QAED,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YAChC,IAAI,MAAM,CAAC,YAAY,EAAE,EAAE;gBACvB,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;aACjE;SACJ;QAED,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC3C,CAAC;CAEJ;AArfD,oDAqfC"}
1
+ {"version":3,"file":"SpeedMatrixContainer.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrixContainer.ts"],"names":[],"mappings":"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"}