raain-model 0.3.1 → 0.4.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.
Files changed (158) hide show
  1. package/README.md +1 -0
  2. package/RELEASE.md +8 -10
  3. package/cartesians/CartesianMeasureValue.d.ts +27 -0
  4. package/cartesians/CartesianMeasureValue.js +88 -0
  5. package/cartesians/CartesianMeasureValue.js.map +1 -0
  6. package/cartesians/CartesianValue.d.ts +6 -0
  7. package/cartesians/CartesianValue.js +12 -0
  8. package/cartesians/CartesianValue.js.map +1 -0
  9. package/cartesians/ICartesianMeasureValue.d.ts +17 -0
  10. package/cartesians/ICartesianMeasureValue.js +3 -0
  11. package/cartesians/ICartesianMeasureValue.js.map +1 -0
  12. package/cartesians/RadarCartesianMeasureValue.d.ts +11 -0
  13. package/cartesians/RadarCartesianMeasureValue.js +37 -0
  14. package/cartesians/RadarCartesianMeasureValue.js.map +1 -0
  15. package/cartesians/RainCartesianMeasureValue.d.ts +13 -0
  16. package/cartesians/RainCartesianMeasureValue.js +40 -0
  17. package/cartesians/RainCartesianMeasureValue.js.map +1 -0
  18. package/gauges/GaugeMeasure.d.ts +12 -0
  19. package/gauges/GaugeMeasure.js +31 -0
  20. package/gauges/GaugeMeasure.js.map +1 -0
  21. package/gauges/GaugeNode.d.ts +15 -0
  22. package/gauges/GaugeNode.js +37 -0
  23. package/gauges/GaugeNode.js.map +1 -0
  24. package/gauges/GaugeNodeMap.d.ts +14 -0
  25. package/gauges/GaugeNodeMap.js +49 -0
  26. package/gauges/GaugeNodeMap.js.map +1 -0
  27. package/index.d.ts +30 -20
  28. package/index.js +44 -23
  29. package/index.js.map +1 -1
  30. package/{EventNode.d.ts → organizations/EventNode.d.ts} +4 -0
  31. package/organizations/EventNode.js +30 -0
  32. package/organizations/EventNode.js.map +1 -0
  33. package/{IVersion.js.map → organizations/IVersion.js.map} +1 -1
  34. package/{Link.d.ts → organizations/Link.d.ts} +4 -5
  35. package/organizations/Link.js +34 -0
  36. package/organizations/Link.js.map +1 -0
  37. package/organizations/Measure.d.ts +12 -0
  38. package/organizations/Measure.js +29 -0
  39. package/organizations/Measure.js.map +1 -0
  40. package/organizations/PeopleNode.d.ts +12 -0
  41. package/organizations/PeopleNode.js +34 -0
  42. package/organizations/PeopleNode.js.map +1 -0
  43. package/organizations/QualityPoint.d.ts +17 -0
  44. package/organizations/QualityPoint.js +16 -0
  45. package/organizations/QualityPoint.js.map +1 -0
  46. package/{RaainNode.d.ts → organizations/RaainNode.d.ts} +8 -7
  47. package/{RaainNode.js → organizations/RaainNode.js} +48 -45
  48. package/organizations/RaainNode.js.map +1 -0
  49. package/organizations/TeamNode.d.ts +15 -0
  50. package/organizations/TeamNode.js +38 -0
  51. package/organizations/TeamNode.js.map +1 -0
  52. package/package.json +5 -5
  53. package/polars/AbstractPolarMeasureValue.d.ts +19 -0
  54. package/polars/AbstractPolarMeasureValue.js +87 -0
  55. package/polars/AbstractPolarMeasureValue.js.map +1 -0
  56. package/polars/GaugePolarMeasureValue.d.ts +9 -0
  57. package/polars/GaugePolarMeasureValue.js +14 -0
  58. package/polars/GaugePolarMeasureValue.js.map +1 -0
  59. package/{IMeasureValue.d.ts → polars/IPolarMeasureValue.d.ts} +5 -5
  60. package/{IMeasureValue.js → polars/IPolarMeasureValue.js} +1 -1
  61. package/polars/IPolarMeasureValue.js.map +1 -0
  62. package/{MeasureValuePolarContainer.d.ts → polars/MeasureValuePolarContainer.d.ts} +1 -1
  63. package/{MeasureValuePolarContainer.js → polars/MeasureValuePolarContainer.js} +9 -9
  64. package/polars/MeasureValuePolarContainer.js.map +1 -0
  65. package/polars/PolarMeasureValue.d.ts +16 -0
  66. package/polars/PolarMeasureValue.js +94 -0
  67. package/polars/PolarMeasureValue.js.map +1 -0
  68. package/{PolarValue.js → polars/PolarValue.js} +4 -4
  69. package/polars/PolarValue.js.map +1 -0
  70. package/polars/RadarPolarMeasureValue.d.ts +12 -0
  71. package/polars/RadarPolarMeasureValue.js +34 -0
  72. package/polars/RadarPolarMeasureValue.js.map +1 -0
  73. package/polars/RainPolarMeasureValue.d.ts +14 -0
  74. package/polars/RainPolarMeasureValue.js +32 -0
  75. package/polars/RainPolarMeasureValue.js.map +1 -0
  76. package/radars/RadarMeasure.d.ts +11 -0
  77. package/radars/RadarMeasure.js +24 -0
  78. package/radars/RadarMeasure.js.map +1 -0
  79. package/{RadarNode.d.ts → radars/RadarNode.d.ts} +4 -4
  80. package/radars/RadarNode.js +35 -0
  81. package/radars/RadarNode.js.map +1 -0
  82. package/radars/RadarNodeMap.d.ts +16 -0
  83. package/radars/RadarNodeMap.js +53 -0
  84. package/radars/RadarNodeMap.js.map +1 -0
  85. package/rains/RainComputation.d.ts +34 -0
  86. package/rains/RainComputation.js +60 -0
  87. package/rains/RainComputation.js.map +1 -0
  88. package/{RainComputationNode.d.ts → rains/RainComputationAbstract.d.ts} +13 -13
  89. package/rains/RainComputationAbstract.js +113 -0
  90. package/rains/RainComputationAbstract.js.map +1 -0
  91. package/rains/RainComputationMap.d.ts +16 -0
  92. package/rains/RainComputationMap.js +50 -0
  93. package/rains/RainComputationMap.js.map +1 -0
  94. package/rains/RainComputationQuality.d.ts +24 -0
  95. package/rains/RainComputationQuality.js +108 -0
  96. package/rains/RainComputationQuality.js.map +1 -0
  97. package/rains/RainMeasure.d.ts +12 -0
  98. package/rains/RainMeasure.js +25 -0
  99. package/rains/RainMeasure.js.map +1 -0
  100. package/{RainNode.d.ts → rains/RainNode.d.ts} +9 -7
  101. package/rains/RainNode.js +116 -0
  102. package/rains/RainNode.js.map +1 -0
  103. package/EventNode.js +0 -17
  104. package/EventNode.js.map +0 -1
  105. package/GaugeMeasure.d.ts +0 -7
  106. package/GaugeMeasure.js +0 -31
  107. package/GaugeMeasure.js.map +0 -1
  108. package/GaugeMeasureValue.d.ts +0 -16
  109. package/GaugeMeasureValue.js +0 -66
  110. package/GaugeMeasureValue.js.map +0 -1
  111. package/GaugeNode.d.ts +0 -19
  112. package/GaugeNode.js +0 -48
  113. package/GaugeNode.js.map +0 -1
  114. package/GaugeNodeMap.d.ts +0 -22
  115. package/GaugeNodeMap.js +0 -61
  116. package/GaugeNodeMap.js.map +0 -1
  117. package/IMeasureValue.js.map +0 -1
  118. package/Link.js +0 -36
  119. package/Link.js.map +0 -1
  120. package/Measure.d.ts +0 -9
  121. package/Measure.js +0 -43
  122. package/Measure.js.map +0 -1
  123. package/MeasureValuePolarContainer.js.map +0 -1
  124. package/PeopleNode.d.ts +0 -7
  125. package/PeopleNode.js +0 -14
  126. package/PeopleNode.js.map +0 -1
  127. package/PolarValue.js.map +0 -1
  128. package/RaainNode.js.map +0 -1
  129. package/RadarMeasure.d.ts +0 -7
  130. package/RadarMeasure.js +0 -31
  131. package/RadarMeasure.js.map +0 -1
  132. package/RadarMeasureValue.d.ts +0 -19
  133. package/RadarMeasureValue.js +0 -75
  134. package/RadarMeasureValue.js.map +0 -1
  135. package/RadarNode.js +0 -49
  136. package/RadarNode.js.map +0 -1
  137. package/RadarNodeMap.d.ts +0 -11
  138. package/RadarNodeMap.js +0 -56
  139. package/RadarNodeMap.js.map +0 -1
  140. package/RainComputationMap.d.ts +0 -11
  141. package/RainComputationMap.js +0 -59
  142. package/RainComputationMap.js.map +0 -1
  143. package/RainComputationNode.js +0 -148
  144. package/RainComputationNode.js.map +0 -1
  145. package/RainMeasure.d.ts +0 -5
  146. package/RainMeasure.js +0 -29
  147. package/RainMeasure.js.map +0 -1
  148. package/RainMeasureValue.d.ts +0 -21
  149. package/RainMeasureValue.js +0 -74
  150. package/RainMeasureValue.js.map +0 -1
  151. package/RainNode.js +0 -107
  152. package/RainNode.js.map +0 -1
  153. package/tools/PolarValues.d.ts +0 -16
  154. package/tools/PolarValues.js +0 -99
  155. package/tools/PolarValues.js.map +0 -1
  156. /package/{IVersion.d.ts → organizations/IVersion.d.ts} +0 -0
  157. /package/{IVersion.js → organizations/IVersion.js} +0 -0
  158. /package/{PolarValue.d.ts → polars/PolarValue.d.ts} +0 -0
@@ -1,7 +1,9 @@
1
- import { RaainNode } from "./RaainNode";
2
- import { Link } from "./Link";
3
- import { RainMeasureValue } from "./RainMeasureValue";
4
- export declare class RainComputationNode extends RaainNode {
1
+ import { RaainNode } from '../organizations/RaainNode';
2
+ import { Link } from '../organizations/Link';
3
+ /**
4
+ * not used directly
5
+ */
6
+ export declare class RainComputationAbstract extends RaainNode {
5
7
  static TYPE: string;
6
8
  quality: number;
7
9
  progressIngest: number;
@@ -12,7 +14,7 @@ export declare class RainComputationNode extends RaainNode {
12
14
  isReady: boolean;
13
15
  isDoneDate: Date;
14
16
  launchedBy: string;
15
- results: RainMeasureValue[];
17
+ name: string;
16
18
  constructor(idOrObjectToCopy: string | {
17
19
  id?: string;
18
20
  periodBegin?: Date;
@@ -24,19 +26,17 @@ export declare class RainComputationNode extends RaainNode {
24
26
  timeSpentInMs?: number;
25
27
  isReady?: boolean;
26
28
  isDoneDate?: Date;
27
- results?: RainMeasureValue[];
28
29
  launchedBy?: string;
29
30
  version?: string;
30
31
  rain?: RaainNode[];
31
32
  radars?: Link[] | RaainNode[];
32
- }, periodBegin?: Date, periodEnd?: Date, links?: Link[] | RaainNode[], quality?: number, progressIngest?: number, progressComputing?: number, timeSpentInMs?: number, isReady?: boolean, isDoneDate?: Date, results?: RainMeasureValue[], launchedBy?: string, version?: string);
33
- toJSON(): Object;
34
- protected getLinkType(): string;
35
- addRadarLinks(linksToAdd: Link[] | RaainNode[]): void;
36
- replaceRainLink(linksToAdd: Link | RaainNode | any): void;
37
- addRadarMeasureLinks(linksToAdd: Link[] | any[]): void;
38
- private setResults;
33
+ }, periodBegin?: Date, periodEnd?: Date, links?: Link[] | RaainNode[], quality?: number, progressIngest?: number, progressComputing?: number, timeSpentInMs?: number, isReady?: boolean, isDoneDate?: Date, launchedBy?: string, version?: string);
39
34
  private static _getRadarLinks;
40
35
  private static _getRadarMeasureLinks;
41
36
  private static _getRainLink;
37
+ toJSON(): JSON;
38
+ addRadarLinks(linksToAdd: Link[] | RaainNode[]): void;
39
+ replaceRainLink(linksToAdd: Link | RaainNode | any): void;
40
+ addRadarMeasureLinks(linksToAdd: Link[] | any[]): void;
41
+ protected getLinkType(): string;
42
42
  }
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RainComputationAbstract = void 0;
4
+ const RaainNode_1 = require("../organizations/RaainNode");
5
+ const Link_1 = require("../organizations/Link");
6
+ const RadarNode_1 = require("../radars/RadarNode");
7
+ const RainNode_1 = require("./RainNode");
8
+ const RadarMeasure_1 = require("../radars/RadarMeasure");
9
+ /**
10
+ * not used directly
11
+ */
12
+ class RainComputationAbstract extends RaainNode_1.RaainNode {
13
+ constructor(
14
+ // public values: IPolarMeasureValue[] | ICartesianMeasureValue[] | number[];
15
+ idOrObjectToCopy, periodBegin, periodEnd, links, quality, progressIngest, progressComputing, timeSpentInMs, isReady, isDoneDate, launchedBy, version) {
16
+ super(idOrObjectToCopy, links, version);
17
+ if (typeof idOrObjectToCopy !== 'string') {
18
+ this.periodBegin = new Date(idOrObjectToCopy.periodBegin);
19
+ this.periodEnd = new Date(idOrObjectToCopy.periodEnd);
20
+ this.quality = idOrObjectToCopy.quality;
21
+ this.progressIngest = idOrObjectToCopy.progressIngest;
22
+ this.progressComputing = idOrObjectToCopy.progressComputing;
23
+ this.timeSpentInMs = idOrObjectToCopy.timeSpentInMs;
24
+ this.isReady = idOrObjectToCopy.isReady;
25
+ this.isDoneDate = idOrObjectToCopy.isDoneDate ? new Date(idOrObjectToCopy.isDoneDate) : undefined;
26
+ this.launchedBy = idOrObjectToCopy.launchedBy;
27
+ this.replaceRainLink(idOrObjectToCopy.links);
28
+ this.replaceRainLink(idOrObjectToCopy.rain);
29
+ this.addRadarLinks(idOrObjectToCopy.links);
30
+ this.addRadarLinks(idOrObjectToCopy.radars);
31
+ return;
32
+ }
33
+ this.periodBegin = new Date(periodBegin);
34
+ this.periodEnd = new Date(periodEnd);
35
+ this.quality = quality;
36
+ this.progressIngest = progressIngest;
37
+ this.progressComputing = progressComputing;
38
+ this.timeSpentInMs = timeSpentInMs;
39
+ this.isReady = isReady;
40
+ this.isDoneDate = isDoneDate ? new Date(isDoneDate) : undefined;
41
+ this.launchedBy = launchedBy;
42
+ this.replaceRainLink(links);
43
+ this.addRadarLinks(links);
44
+ }
45
+ static _getRadarLinks(linksToPurify) {
46
+ if (!linksToPurify || linksToPurify.length === 0) {
47
+ return [];
48
+ }
49
+ return linksToPurify.map(l => {
50
+ if (l instanceof Link_1.Link) {
51
+ return l;
52
+ }
53
+ else if (l && l._id) {
54
+ return new RadarNode_1.RadarNode(l._id.toString());
55
+ }
56
+ else if (l && l.id) {
57
+ return new RadarNode_1.RadarNode(l.id.toString()); // 'hex'
58
+ }
59
+ });
60
+ }
61
+ static _getRadarMeasureLinks(linksToPurify) {
62
+ if (!linksToPurify || linksToPurify.length === 0) {
63
+ return [];
64
+ }
65
+ return linksToPurify.map(l => {
66
+ if (l instanceof Link_1.Link) {
67
+ return l;
68
+ }
69
+ else if (l && l._id) {
70
+ return new RadarMeasure_1.RadarMeasure(l._id.toString());
71
+ }
72
+ else if (l && l.id) {
73
+ return new RadarMeasure_1.RadarMeasure(l.id.toString()); // 'hex'
74
+ }
75
+ });
76
+ }
77
+ static _getRainLink(linkToPurify) {
78
+ if (!linkToPurify || !linkToPurify.id) {
79
+ return null;
80
+ }
81
+ return new RainNode_1.RainNode(linkToPurify.id.toString()); // 'hex'
82
+ }
83
+ toJSON() {
84
+ var _a;
85
+ const json = super.toJSON();
86
+ json['periodBegin'] = this.periodBegin.toISOString();
87
+ json['periodEnd'] = this.periodEnd.toISOString();
88
+ json['quality'] = this.quality;
89
+ json['progressIngest'] = this.progressIngest;
90
+ json['progressComputing'] = this.progressComputing;
91
+ json['timeSpentInMs'] = this.timeSpentInMs;
92
+ json['isReady'] = this.isReady;
93
+ json['isDoneDate'] = (_a = this.isDoneDate) === null || _a === void 0 ? void 0 : _a.toISOString();
94
+ json['launchedBy'] = this.launchedBy;
95
+ json['name'] = this.name;
96
+ return json;
97
+ }
98
+ addRadarLinks(linksToAdd) {
99
+ this.addLinks(RainComputationAbstract._getRadarLinks(linksToAdd));
100
+ }
101
+ replaceRainLink(linksToAdd) {
102
+ this.addLinks([RainComputationAbstract._getRainLink(linksToAdd)]);
103
+ }
104
+ addRadarMeasureLinks(linksToAdd) {
105
+ this.addLinks(RainComputationAbstract._getRadarMeasureLinks(linksToAdd));
106
+ }
107
+ getLinkType() {
108
+ return RainComputationAbstract.TYPE;
109
+ }
110
+ }
111
+ RainComputationAbstract.TYPE = 'rain-computation';
112
+ exports.RainComputationAbstract = RainComputationAbstract;
113
+ //# sourceMappingURL=RainComputationAbstract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RainComputationAbstract.js","sourceRoot":"","sources":["../../src/rains/RainComputationAbstract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { RainComputationAbstract } from './RainComputationAbstract';
2
+ import { Link } from '../organizations/Link';
3
+ import { RainMeasure } from './RainMeasure';
4
+ import { RaainNode } from '../organizations/RaainNode';
5
+ /**
6
+ * api/rains/:id/computations/:computationId?format=map&...
7
+ * or with
8
+ * api/rains/:id/computations?format=map&begin=...
9
+ */
10
+ export declare class RainComputationMap extends RainComputationAbstract {
11
+ private map;
12
+ constructor(idOrObjectToCopy: RainComputationMap | string, periodBegin?: Date, periodEnd?: Date, links?: Link[] | RaainNode[], quality?: number, timeSpentInMs?: number, version?: string, map?: RainMeasure[] | string);
13
+ toJSON(): JSON;
14
+ setMapData(mapData: RainMeasure[] | string): void;
15
+ getMapData(): RainMeasure[];
16
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RainComputationMap = void 0;
4
+ const RainComputationAbstract_1 = require("./RainComputationAbstract");
5
+ /**
6
+ * api/rains/:id/computations/:computationId?format=map&...
7
+ * or with
8
+ * api/rains/:id/computations?format=map&begin=...
9
+ */
10
+ class RainComputationMap extends RainComputationAbstract_1.RainComputationAbstract {
11
+ constructor(idOrObjectToCopy, periodBegin, periodEnd, links, quality, timeSpentInMs, version, map) {
12
+ if (typeof idOrObjectToCopy !== 'string') {
13
+ super(idOrObjectToCopy.id, idOrObjectToCopy.periodBegin, idOrObjectToCopy.periodEnd, idOrObjectToCopy['links'], idOrObjectToCopy.quality, idOrObjectToCopy.progressIngest, idOrObjectToCopy.progressComputing, idOrObjectToCopy.timeSpentInMs, undefined, undefined, undefined, idOrObjectToCopy['version']);
14
+ this.setMapData(idOrObjectToCopy.map);
15
+ return;
16
+ }
17
+ super(idOrObjectToCopy, periodBegin, periodEnd, links, quality, undefined, undefined, timeSpentInMs, undefined, undefined, undefined, version);
18
+ this.setMapData(map);
19
+ }
20
+ toJSON() {
21
+ const json = super.toJSON();
22
+ if (this.map) {
23
+ json['map'] = this.map;
24
+ delete json['results'];
25
+ }
26
+ return json;
27
+ }
28
+ setMapData(mapData) {
29
+ if (!mapData) {
30
+ return;
31
+ }
32
+ let map = mapData;
33
+ try {
34
+ if (typeof (mapData) !== 'string') {
35
+ map = JSON.stringify(mapData);
36
+ }
37
+ }
38
+ catch (e) {
39
+ }
40
+ this.map = map.toString();
41
+ }
42
+ getMapData() {
43
+ if (!this.map) {
44
+ return [];
45
+ }
46
+ return JSON.parse(this.map);
47
+ }
48
+ }
49
+ exports.RainComputationMap = RainComputationMap;
50
+ //# sourceMappingURL=RainComputationMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RainComputationMap.js","sourceRoot":"","sources":["../../src/rains/RainComputationMap.ts"],"names":[],"mappings":";;;AAAA,uEAAkE;AAKlE;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,iDAAuB;IAI3D,YACI,gBAA6C,EAC7C,WAAkB,EAClB,SAAgB,EAChB,KAA4B,EAC5B,OAAgB,EAChB,aAAsB,EACtB,OAAgB,EAChB,GAA4B;QAE5B,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE;YACtC,KAAK,CAAC,gBAAgB,CAAC,EAAE,EACrB,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,SAAS,EAC1B,gBAAgB,CAAC,OAAO,CAAC,EACzB,gBAAgB,CAAC,OAAO,EACxB,gBAAgB,CAAC,cAAc,EAC/B,gBAAgB,CAAC,iBAAiB,EAClC,gBAAgB,CAAC,aAAa,EAC9B,SAAS,EAAE,SAAS,EAAE,SAAS,EAC/B,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;YAEjC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACtC,OAAO;SACV;QAED,KAAK,CAAC,gBAAgB,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAC/F,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAE9C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAEM,MAAM;QACT,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;YACvB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;SAC1B;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,UAAU,CAAC,OAA+B;QAC7C,IAAI,CAAC,OAAO,EAAE;YACV,OAAO;SACV;QAED,IAAI,GAAG,GAAG,OAAO,CAAC;QAClB,IAAI;YACA,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,QAAQ,EAAE;gBAC/B,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;aACjC;SACJ;QAAC,OAAO,CAAC,EAAE;SACX;QACD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAEM,UAAU;QACb,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,OAAO,EAAE,CAAC;SACb;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;CACJ;AAlED,gDAkEC"}
@@ -0,0 +1,24 @@
1
+ import { RainComputationAbstract } from './RainComputationAbstract';
2
+ import { Link } from '../organizations/Link';
3
+ import { RaainNode } from '../organizations/RaainNode';
4
+ /**
5
+ * api/rains/:id/computations?format=compare&begin=...&gauges=[...]
6
+ */
7
+ export declare class RainComputationQuality extends RainComputationAbstract {
8
+ maximums: {
9
+ rainMeasureValue: number;
10
+ gaugeMeasureValue: number;
11
+ };
12
+ qualitySpeedMatrixContainer: any;
13
+ constructor(idOrObjectToCopy: RainComputationQuality | string, periodBegin?: Date, periodEnd?: Date, links?: Link[] | RaainNode[], timeSpentInMs?: number, version?: string, qualitySpeedMatrixContainer?: any);
14
+ merge(rainComputationQuality: RainComputationQuality): void;
15
+ toJSON(arg?: any): JSON;
16
+ protected mergeStillComputed(v1: any, v2: any): any;
17
+ protected mergeDateMin(d1: Date, d2: Date): Date;
18
+ protected mergeDateMax(d1: Date, d2: Date): Date;
19
+ protected mergeAvg(v1: number, v2: number): number;
20
+ protected mergeMin(v1: number, v2: number): number;
21
+ protected mergeMax(v1: number, v2: number): number;
22
+ protected mergeSum(v1: number, v2: number): number;
23
+ protected mergeConcat(a1: Array<any>, a2: Array<any>): Array<any>;
24
+ }
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RainComputationQuality = void 0;
4
+ const RainComputationAbstract_1 = require("./RainComputationAbstract");
5
+ /**
6
+ * api/rains/:id/computations?format=compare&begin=...&gauges=[...]
7
+ */
8
+ class RainComputationQuality extends RainComputationAbstract_1.RainComputationAbstract {
9
+ constructor(idOrObjectToCopy, periodBegin, periodEnd, links, timeSpentInMs, version, qualitySpeedMatrixContainer) {
10
+ if (typeof idOrObjectToCopy !== 'string') {
11
+ super(idOrObjectToCopy.id, idOrObjectToCopy.periodBegin, idOrObjectToCopy.periodEnd, idOrObjectToCopy['links'], undefined, idOrObjectToCopy.progressIngest, idOrObjectToCopy.progressComputing, idOrObjectToCopy.timeSpentInMs, undefined, undefined, undefined, idOrObjectToCopy['version']);
12
+ this.qualitySpeedMatrixContainer = idOrObjectToCopy.qualitySpeedMatrixContainer;
13
+ return;
14
+ }
15
+ super(idOrObjectToCopy, periodBegin, periodEnd, links, undefined, undefined, undefined, timeSpentInMs, undefined, undefined, undefined, version);
16
+ this.qualitySpeedMatrixContainer = qualitySpeedMatrixContainer;
17
+ }
18
+ merge(rainComputationQuality) {
19
+ this.periodBegin = this.mergeDateMin(this.periodBegin, rainComputationQuality.periodBegin);
20
+ this.periodEnd = this.mergeDateMax(this.periodEnd, rainComputationQuality.periodEnd);
21
+ this.quality = this.mergeAvg(this.quality, rainComputationQuality.quality);
22
+ this.progressIngest = this.mergeMin(this.progressIngest, rainComputationQuality.progressIngest);
23
+ this.progressComputing = this.mergeMin(this.progressComputing, rainComputationQuality.progressComputing);
24
+ this.timeSpentInMs = this.mergeSum(this.timeSpentInMs, rainComputationQuality.timeSpentInMs);
25
+ if (this.qualitySpeedMatrixContainer && this.qualitySpeedMatrixContainer.merge) {
26
+ this.qualitySpeedMatrixContainer = this.qualitySpeedMatrixContainer.merge(rainComputationQuality.qualitySpeedMatrixContainer);
27
+ }
28
+ }
29
+ toJSON(arg) {
30
+ const json = super.toJSON();
31
+ if (this.qualitySpeedMatrixContainer && this.qualitySpeedMatrixContainer.toJSON) {
32
+ json['qualitySpeedMatrixContainer'] = this.qualitySpeedMatrixContainer.toJSON(arg);
33
+ }
34
+ else if (this.qualitySpeedMatrixContainer) {
35
+ json['qualitySpeedMatrixContainer'] = this.qualitySpeedMatrixContainer;
36
+ }
37
+ return json;
38
+ }
39
+ mergeStillComputed(v1, v2) {
40
+ if (!v1 && !v2) {
41
+ return undefined;
42
+ }
43
+ if (!v1) {
44
+ return v2;
45
+ }
46
+ if (!v2) {
47
+ return v1;
48
+ }
49
+ return null;
50
+ }
51
+ mergeDateMin(d1, d2) {
52
+ const stillComputed = this.mergeStillComputed(d1, d2);
53
+ if (stillComputed === null) {
54
+ return new Date(Math.min(new Date(d1).getTime(), new Date(d2).getTime()));
55
+ }
56
+ if (stillComputed !== undefined) {
57
+ return new Date(stillComputed);
58
+ }
59
+ return stillComputed;
60
+ }
61
+ mergeDateMax(d1, d2) {
62
+ const stillComputed = this.mergeStillComputed(d1, d2);
63
+ if (stillComputed === null) {
64
+ return new Date(Math.max(new Date(d1).getTime(), new Date(d2).getTime()));
65
+ }
66
+ if (stillComputed !== undefined) {
67
+ return new Date(stillComputed);
68
+ }
69
+ return stillComputed;
70
+ }
71
+ mergeAvg(v1, v2) {
72
+ const stillComputed = this.mergeStillComputed(v1, v2);
73
+ if (stillComputed === null) {
74
+ return (v1 + v2) / 2;
75
+ }
76
+ return stillComputed;
77
+ }
78
+ mergeMin(v1, v2) {
79
+ const stillComputed = this.mergeStillComputed(v1, v2);
80
+ if (stillComputed === null) {
81
+ return Math.min(v1, v2);
82
+ }
83
+ return stillComputed;
84
+ }
85
+ mergeMax(v1, v2) {
86
+ const stillComputed = this.mergeStillComputed(v1, v2);
87
+ if (stillComputed === null) {
88
+ return Math.max(v1, v2);
89
+ }
90
+ return stillComputed;
91
+ }
92
+ mergeSum(v1, v2) {
93
+ const stillComputed = this.mergeStillComputed(v1, v2);
94
+ if (stillComputed === null) {
95
+ return v1 + v2;
96
+ }
97
+ return stillComputed;
98
+ }
99
+ mergeConcat(a1, a2) {
100
+ const stillComputed = this.mergeStillComputed(a1, a2);
101
+ if (stillComputed === null) {
102
+ return a1.concat(a2);
103
+ }
104
+ return stillComputed;
105
+ }
106
+ }
107
+ exports.RainComputationQuality = RainComputationQuality;
108
+ //# sourceMappingURL=RainComputationQuality.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RainComputationQuality.js","sourceRoot":"","sources":["../../src/rains/RainComputationQuality.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { Measure } from '../organizations/Measure';
2
+ import { IPolarMeasureValue } from '../polars/IPolarMeasureValue';
3
+ import { ICartesianMeasureValue } from '../cartesians/ICartesianMeasureValue';
4
+ /**
5
+ * // not existing? api/rains/:id/measures/:id
6
+ * but coming from api/rains/:id/computations/:id?format=map => getMapData()
7
+ */
8
+ export declare class RainMeasure extends Measure {
9
+ static TYPE: string;
10
+ constructor(idOrObjectToCopy: any | string, date?: Date, values?: IPolarMeasureValue[] | ICartesianMeasureValue[] | Measure[] | number[], validity?: number);
11
+ protected getLinkType(): string;
12
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RainMeasure = void 0;
4
+ const Measure_1 = require("../organizations/Measure");
5
+ const RainNode_1 = require("./RainNode");
6
+ /**
7
+ * // not existing? api/rains/:id/measures/:id
8
+ * but coming from api/rains/:id/computations/:id?format=map => getMapData()
9
+ */
10
+ class RainMeasure extends Measure_1.Measure {
11
+ constructor(idOrObjectToCopy, date, values, validity) {
12
+ super(idOrObjectToCopy, date, values, validity);
13
+ if (typeof (idOrObjectToCopy) === 'object') {
14
+ if (idOrObjectToCopy.rain) {
15
+ this.addLinks([new RainNode_1.RainNode(idOrObjectToCopy.rain)]);
16
+ }
17
+ }
18
+ }
19
+ getLinkType() {
20
+ return RainMeasure.TYPE;
21
+ }
22
+ }
23
+ RainMeasure.TYPE = 'rain-measure';
24
+ exports.RainMeasure = RainMeasure;
25
+ //# sourceMappingURL=RainMeasure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RainMeasure.js","sourceRoot":"","sources":["../../src/rains/RainMeasure.ts"],"names":[],"mappings":";;;AAAA,sDAAiD;AAGjD,yCAAoC;AAEpC;;;GAGG;AACH,MAAa,WAAY,SAAQ,iBAAO;IAIpC,YACI,gBAA8B,EAC9B,IAAW,EACX,MAA+E,EAC/E,QAAiB;QAEjB,KAAK,CAAC,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,OAAO,CAAC,gBAAgB,CAAC,KAAK,QAAQ,EAAE;YACxC,IAAI,gBAAgB,CAAC,IAAI,EAAE;gBACvB,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,mBAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACxD;SACJ;IACL,CAAC;IAES,WAAW;QACjB,OAAO,WAAW,CAAC,IAAI,CAAC;IAC5B,CAAC;;AAlBa,gBAAI,GAAG,cAAc,CAAC;AAF3B,kCAAW"}
@@ -1,5 +1,5 @@
1
- import { RaainNode } from './RaainNode';
2
- import { Link } from "./Link";
1
+ import { RaainNode } from '../organizations/RaainNode';
2
+ import { Link } from '../organizations/Link';
3
3
  /**
4
4
  * api/rains/:id
5
5
  */
@@ -11,11 +11,13 @@ export declare class RainNode extends RaainNode {
11
11
  latitude: number;
12
12
  longitude: number;
13
13
  radius: number;
14
- constructor(idOrObjectToCopy: any | string, name?: string, links?: Link[] | RaainNode[], status?: number, quality?: number, latitude?: number, longitude?: number, radius?: number);
15
- toJSON(): Object;
16
- protected getLinkType(): string;
17
- addRadars(linksToAdd: Link[] | any[]): void;
18
- addCompletedComputations(linksToAdd: Link[] | any[]): void;
14
+ constructor(idOrObjectToCopy: any | string, name?: string, links?: Link[] | RaainNode[], status?: number, quality?: number, latitude?: number, longitude?: number, radius?: number, version?: string);
19
15
  private static _getRadarLinks;
20
16
  private static _getRainComputationLinks;
17
+ private static _getGaugeLinks;
18
+ toJSON(): JSON;
19
+ addRadars(linksToAdd: Link[] | any[]): void;
20
+ addCompletedComputations(linksToAdd: Link[] | any[]): void;
21
+ addGauges(linksToAdd: Link[] | any[]): void;
22
+ protected getLinkType(): string;
21
23
  }
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RainNode = void 0;
4
+ const RaainNode_1 = require("../organizations/RaainNode");
5
+ const Link_1 = require("../organizations/Link");
6
+ const RadarNode_1 = require("../radars/RadarNode");
7
+ const RainComputation_1 = require("./RainComputation");
8
+ const GaugeNode_1 = require("../gauges/GaugeNode");
9
+ /**
10
+ * api/rains/:id
11
+ */
12
+ class RainNode extends RaainNode_1.RaainNode {
13
+ constructor(idOrObjectToCopy, name, links, status, quality, latitude, longitude, radius, version) {
14
+ super(idOrObjectToCopy, links, version);
15
+ if (typeof (idOrObjectToCopy) === 'object') {
16
+ this.name = idOrObjectToCopy.name;
17
+ this.status = idOrObjectToCopy.status;
18
+ this.quality = idOrObjectToCopy.quality;
19
+ this.latitude = parseFloat(idOrObjectToCopy.latitude);
20
+ this.longitude = parseFloat(idOrObjectToCopy.longitude);
21
+ this.radius = idOrObjectToCopy.radius;
22
+ this.addRadars(idOrObjectToCopy.links);
23
+ this.addRadars(idOrObjectToCopy.radars);
24
+ this.addCompletedComputations(idOrObjectToCopy.links);
25
+ this.addCompletedComputations(idOrObjectToCopy.lastCompletedComputations);
26
+ this.addGauges(idOrObjectToCopy.links);
27
+ this.addGauges(idOrObjectToCopy.gauges);
28
+ return;
29
+ }
30
+ this.name = name;
31
+ this.status = status;
32
+ this.quality = quality;
33
+ this.latitude = latitude;
34
+ this.longitude = longitude;
35
+ this.radius = radius;
36
+ this.addRadars(links);
37
+ this.addCompletedComputations(links);
38
+ this.addGauges(links);
39
+ }
40
+ static _getRadarLinks(linksToPurify) {
41
+ if (!linksToPurify || linksToPurify.length === 0) {
42
+ return [];
43
+ }
44
+ const linksPurified = linksToPurify.map(l => {
45
+ if (l instanceof Link_1.Link) {
46
+ return l;
47
+ }
48
+ else if (l && l._id) {
49
+ return new RadarNode_1.RadarNode(l._id.toString());
50
+ }
51
+ else if (l && l.id) {
52
+ return new RadarNode_1.RadarNode(l.id.toString()); // 'hex'
53
+ }
54
+ });
55
+ return linksPurified.filter(l => !!l);
56
+ }
57
+ static _getRainComputationLinks(linksToPurify) {
58
+ if (!linksToPurify || linksToPurify.length === 0) {
59
+ return [];
60
+ }
61
+ const linksPurified = linksToPurify.map(l => {
62
+ if (l instanceof Link_1.Link) {
63
+ return l;
64
+ }
65
+ else if (l && l._id) {
66
+ return new RainComputation_1.RainComputation(l._id.toString());
67
+ }
68
+ else if (l && l.id) {
69
+ return new RainComputation_1.RainComputation(l.id.toString()); // 'hex'
70
+ }
71
+ });
72
+ return linksPurified.filter(l => !!l);
73
+ }
74
+ static _getGaugeLinks(linksToPurify) {
75
+ if (!linksToPurify || linksToPurify.length === 0) {
76
+ return [];
77
+ }
78
+ const linksPurified = linksToPurify.map(l => {
79
+ if (l instanceof Link_1.Link) {
80
+ return l;
81
+ }
82
+ else if (l && l._id) {
83
+ return new GaugeNode_1.GaugeNode(l._id.toString());
84
+ }
85
+ else if (l && l.id) {
86
+ return new GaugeNode_1.GaugeNode(l.id.toString()); // 'hex'
87
+ }
88
+ });
89
+ return linksPurified.filter(l => !!l);
90
+ }
91
+ toJSON() {
92
+ const json = super.toJSON();
93
+ json['name'] = this.name;
94
+ json['status'] = this.status;
95
+ json['quality'] = this.quality;
96
+ json['latitude'] = this.latitude;
97
+ json['longitude'] = this.longitude;
98
+ json['radius'] = this.radius;
99
+ return json;
100
+ }
101
+ addRadars(linksToAdd) {
102
+ this.addLinks(RainNode._getRadarLinks(linksToAdd));
103
+ }
104
+ addCompletedComputations(linksToAdd) {
105
+ this.addLinks(RainNode._getRainComputationLinks(linksToAdd));
106
+ }
107
+ addGauges(linksToAdd) {
108
+ this.addLinks(RainNode._getGaugeLinks(linksToAdd));
109
+ }
110
+ getLinkType() {
111
+ return RainNode.TYPE;
112
+ }
113
+ }
114
+ RainNode.TYPE = 'rain';
115
+ exports.RainNode = RainNode;
116
+ //# sourceMappingURL=RainNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RainNode.js","sourceRoot":"","sources":["../../src/rains/RainNode.ts"],"names":[],"mappings":"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"}
package/EventNode.js DELETED
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- // api/notifications/:id
4
- var EventNode = /** @class */ (function () {
5
- function EventNode(id, title, status, red, description, created, modified) {
6
- this.id = id;
7
- this.title = title;
8
- this.status = status;
9
- this.red = red;
10
- this.description = description;
11
- this.created = created;
12
- this.modified = modified;
13
- }
14
- return EventNode;
15
- }());
16
- exports.EventNode = EventNode;
17
- //# sourceMappingURL=EventNode.js.map
package/EventNode.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventNode.js","sourceRoot":"","sources":["../src/EventNode.ts"],"names":[],"mappings":";;AAEA,wBAAwB;AACxB;IAEI,mBACU,EAAU,EACV,KAAa,EACb,MAAc,EACd,GAAY,EACZ,WAAmB,EACnB,OAAa,EACb,QAAc;QANd,OAAE,GAAF,EAAE,CAAQ;QACV,UAAK,GAAL,KAAK,CAAQ;QACb,WAAM,GAAN,MAAM,CAAQ;QACd,QAAG,GAAH,GAAG,CAAS;QACZ,gBAAW,GAAX,WAAW,CAAQ;QACnB,YAAO,GAAP,OAAO,CAAM;QACb,aAAQ,GAAR,QAAQ,CAAM;IAExB,CAAC;IACL,gBAAC;AAAD,CAAC,AAZD,IAYC;AAZY,8BAAS"}
package/GaugeMeasure.d.ts DELETED
@@ -1,7 +0,0 @@
1
- import { Measure } from './Measure';
2
- /**
3
- * // api/gauges/:id/measures/:id
4
- */
5
- export declare class GaugeMeasure extends Measure {
6
- protected getLinkType(): string;
7
- }
package/GaugeMeasure.js DELETED
@@ -1,31 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- }
9
- return function (d, b) {
10
- extendStatics(d, b);
11
- function __() { this.constructor = d; }
12
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
- };
14
- })();
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- var Measure_1 = require("./Measure");
17
- /**
18
- * // api/gauges/:id/measures/:id
19
- */
20
- var GaugeMeasure = /** @class */ (function (_super) {
21
- __extends(GaugeMeasure, _super);
22
- function GaugeMeasure() {
23
- return _super !== null && _super.apply(this, arguments) || this;
24
- }
25
- GaugeMeasure.prototype.getLinkType = function () {
26
- return 'gauge-measure';
27
- };
28
- return GaugeMeasure;
29
- }(Measure_1.Measure));
30
- exports.GaugeMeasure = GaugeMeasure;
31
- //# sourceMappingURL=GaugeMeasure.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GaugeMeasure.js","sourceRoot":"","sources":["../src/GaugeMeasure.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qCAAkC;AAGlC;;GAEG;AACH;IAAkC,gCAAO;IAAzC;;IAKA,CAAC;IAHa,kCAAW,GAArB;QACI,OAAO,eAAe,CAAC;IAC3B,CAAC;IACL,mBAAC;AAAD,CAAC,AALD,CAAkC,iBAAO,GAKxC;AALY,oCAAY"}