raain-model 3.0.1 → 3.0.2

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/CHANGELOG.md CHANGED
@@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [3.0.2] - 2025-04-17
11
+
12
+ ### Added
13
+
14
+ - Enhanced link handling in GaugeMeasure and RadarMeasure
15
+ - Added Release Process documentation in README.md
16
+
17
+ ### Changed
18
+
19
+ - Improved node creation in GaugeMeasure and RadarMeasure with proper link handling
20
+ - Updated documentation in .memory-bank folder
21
+ - Clarified release process documentation
22
+
10
23
  ## [3.0.1] - 2025-04-17
11
24
 
12
25
  ### Added
@@ -212,7 +225,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
212
225
  - Initial release
213
226
  - First extracts from RAAIN services
214
227
 
215
- [Unreleased]: https://github.com/raainio/raain-model/compare/v3.0.1...HEAD
228
+ [Unreleased]: https://github.com/raainio/raain-model/compare/v3.0.2...HEAD
229
+
230
+ [3.0.2]: https://github.com/raainio/raain-model/compare/v3.0.1...v3.0.2
216
231
 
217
232
  [3.0.1]: https://github.com/raainio/raain-model/compare/v2.6.11...v3.0.1
218
233
 
package/README.md CHANGED
@@ -97,3 +97,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
97
97
  ## 📅 Changelog
98
98
 
99
99
  See [Changelog](./CHANGELOG.md) for version history and changes.
100
+
101
+ ## 🚢 Release Process
102
+
103
+ This project follows a structured release process. For detailed information about how releases are managed, please see the [Release Process Documentation](./RELEASE_PROCESS.md).
@@ -1,12 +1,8 @@
1
1
  # Release Process Documentation
2
2
 
3
- ⚠️ IMPORTANT: DO NOT PUSH ANY CHANGES OR TAGS UNTIL EXPLICITLY ASKED TO "RELEASE"
4
- This includes:
5
- - No git push
6
- - No git push --tags
3
+ ⚠️ IMPORTANT: Released are done by GitHub CI
7
4
  - No npm publish
8
5
  - No manual releases
9
- Wait for the explicit "release" command before pushing anything.
10
6
 
11
7
  ## Patch Version Release Steps
12
8
 
@@ -1,4 +1,4 @@
1
- import { Measure } from '../organization';
1
+ import { Link, Measure } from '../organization';
2
2
  import { IPolarMeasureValue } from '../polar';
3
3
  import { ICartesianMeasureValue } from '../cartesian';
4
4
  /**
@@ -23,8 +23,9 @@ export declare class GaugeMeasure extends Measure {
23
23
  configurationAsJSON: string;
24
24
  values: number[] | IPolarMeasureValue[] | ICartesianMeasureValue[];
25
25
  id: string;
26
- links: import("../organization").Link[];
26
+ links: Link[];
27
27
  version?: string;
28
28
  };
29
+ protected getGaugeLinks(linksToPurify: any[]): any[];
29
30
  protected getLinkType(): string;
30
31
  }
@@ -10,7 +10,7 @@ class GaugeMeasure extends organization_1.Measure {
10
10
  constructor(json) {
11
11
  super(json);
12
12
  if (json.gauge) {
13
- this.addLinks([new GaugeNode_1.GaugeNode({ id: json.gauge, latitude: NaN, longitude: NaN, team: null, name: null })]);
13
+ this.addLinks(this.getGaugeLinks([json.gauge]));
14
14
  }
15
15
  }
16
16
  toJSON(options) {
@@ -21,6 +21,25 @@ class GaugeMeasure extends organization_1.Measure {
21
21
  }
22
22
  return json;
23
23
  }
24
+ getGaugeLinks(linksToPurify) {
25
+ if (!linksToPurify || linksToPurify.length === 0) {
26
+ return [];
27
+ }
28
+ return linksToPurify.map(l => {
29
+ if (l instanceof organization_1.Link) {
30
+ return l;
31
+ }
32
+ else if (l && l['_id']) {
33
+ return new GaugeNode_1.GaugeNode({ id: l['_id'].toString(), latitude: 0, longitude: 0, name: l.name, team: l.team });
34
+ }
35
+ else if (l && l.id) {
36
+ return new GaugeNode_1.GaugeNode({
37
+ id: l.id.toString(), // 'hex'
38
+ latitude: 0, longitude: 0, name: l.name, team: l.team
39
+ });
40
+ }
41
+ });
42
+ }
24
43
  getLinkType() {
25
44
  return GaugeMeasure.TYPE;
26
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GaugeMeasure.js","sourceRoot":"","sources":["../../src/gauge/GaugeMeasure.ts"],"names":[],"mappings":";;;AAAA,kDAAwC;AAGxC,2CAAsC;AAEtC;;GAEG;AACH,MAAa,YAAa,SAAQ,sBAAO;IAMrC,YAAY,IAOC;QAET,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,qBAAS,CAAC,EAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,CAAC;QAC5G,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,OAAoC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAS,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,WAAW;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC;IAC7B,CAAC;;AAhCL,oCAiCC;AA/BiB,iBAAI,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"GaugeMeasure.js","sourceRoot":"","sources":["../../src/gauge/GaugeMeasure.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAG9C,2CAAsC;AAEtC;;GAEG;AACH,MAAa,YAAa,SAAQ,sBAAO;IAMrC,YAAY,IAOC;QAET,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,OAAoC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAS,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,aAAa,CAAC,aAAoB;QACxC,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO,EAAE,CAAC;QACd,CAAC;QAED,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACzB,IAAI,CAAC,YAAY,mBAAI,EAAE,CAAC;gBACpB,OAAO,CAAC,CAAC;YACb,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,qBAAS,CAAC,EAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAC,CAAC,CAAC;YAC3G,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC;gBACnB,OAAO,IAAI,qBAAS,CAAC;oBACjB,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAC,QAAQ;oBAC5B,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;iBACxD,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAES,WAAW;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC;IAC7B,CAAC;;AAnDL,oCAoDC;AAlDiB,iBAAI,GAAG,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "raain-model",
3
- "version": "3.0.1",
3
+ "version": "3.0.2",
4
4
  "author": "contact@radartorain.com",
5
5
  "homepage": "https://github.com/raainio/raain-model",
6
6
  "description": "radartorain.com api model",
@@ -1,4 +1,4 @@
1
- import { Measure } from '../organization';
1
+ import { Link, Measure } from '../organization';
2
2
  import { IPolarMeasureValue } from '../polar';
3
3
  import { ICartesianMeasureValue } from '../cartesian';
4
4
  /**
@@ -22,7 +22,7 @@ export declare class RadarMeasure extends Measure {
22
22
  configurationAsJSON: string;
23
23
  values: number[] | IPolarMeasureValue[] | ICartesianMeasureValue[];
24
24
  id: string;
25
- links: import("../organization").Link[];
25
+ links: Link[];
26
26
  version?: string;
27
27
  } | {
28
28
  radar: string;
@@ -31,8 +31,9 @@ export declare class RadarMeasure extends Measure {
31
31
  configurationAsJSON: string;
32
32
  values: number[] | IPolarMeasureValue[] | ICartesianMeasureValue[];
33
33
  id: string;
34
- links: import("../organization").Link[];
34
+ links: Link[];
35
35
  version?: string;
36
36
  };
37
+ protected getRadarLinks(linksToPurify: any[]): any[];
37
38
  protected getLinkType(): string;
38
39
  }
@@ -10,7 +10,7 @@ class RadarMeasure extends organization_1.Measure {
10
10
  constructor(json) {
11
11
  super(json);
12
12
  if (json.radar) {
13
- this.addLinks([new RadarNode_1.RadarNode({ id: json.radar, latitude: NaN, longitude: NaN, team: null, name: null })]);
13
+ this.addLinks(this.getRadarLinks([json.radar]));
14
14
  }
15
15
  }
16
16
  toJSON(options) {
@@ -24,6 +24,25 @@ class RadarMeasure extends organization_1.Measure {
24
24
  }
25
25
  return json;
26
26
  }
27
+ getRadarLinks(linksToPurify) {
28
+ if (!linksToPurify || linksToPurify.length === 0) {
29
+ return [];
30
+ }
31
+ return linksToPurify.map(l => {
32
+ if (l instanceof organization_1.Link) {
33
+ return l;
34
+ }
35
+ else if (l && l['_id']) {
36
+ return new RadarNode_1.RadarNode({ id: l['_id'].toString(), latitude: 0, longitude: 0, name: l.name, team: l.team });
37
+ }
38
+ else if (l && l.id) {
39
+ return new RadarNode_1.RadarNode({
40
+ id: l.id.toString(), // 'hex'
41
+ latitude: 0, longitude: 0, name: l.name, team: l.team
42
+ });
43
+ }
44
+ });
45
+ }
27
46
  getLinkType() {
28
47
  return RadarMeasure.TYPE;
29
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RadarMeasure.js","sourceRoot":"","sources":["../../src/radar/RadarMeasure.ts"],"names":[],"mappings":";;;AAAA,kDAAwC;AAGxC,2CAAsC;AAEtC;;GAEG;AACH,MAAa,YAAa,SAAQ,sBAAO;IAIrC,YAAY,IAOC;QAET,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,qBAAS,CAAC,EAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,CAAC;QAC5G,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,OAAoC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAS,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,SAAS,EAAE,CAAC;YACZ,OAAO;gBACH,GAAG,IAAI;gBACP,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE;aAC3B,CAAC;QACN,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,WAAW;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC;IAC7B,CAAC;;AAnCL,oCAoCC;AAlCiB,iBAAI,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"RadarMeasure.js","sourceRoot":"","sources":["../../src/radar/RadarMeasure.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAG9C,2CAAsC;AAEtC;;GAEG;AACH,MAAa,YAAa,SAAQ,sBAAO;IAIrC,YAAY,IAOC;QAET,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,OAAoC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAS,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,SAAS,EAAE,CAAC;YACZ,OAAO;gBACH,GAAG,IAAI;gBACP,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE;aAC3B,CAAC;QACN,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,aAAa,CAAC,aAAoB;QACxC,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO,EAAE,CAAC;QACd,CAAC;QAED,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACzB,IAAI,CAAC,YAAY,mBAAI,EAAE,CAAC;gBACpB,OAAO,CAAC,CAAC;YACb,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,qBAAS,CAAC,EAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAC,CAAC,CAAC;YAC3G,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC;gBACnB,OAAO,IAAI,qBAAS,CAAC;oBACjB,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAC,QAAQ;oBAC5B,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;iBACxD,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAES,WAAW;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC;IAC7B,CAAC;;AAtDL,oCAuDC;AArDiB,iBAAI,GAAG,eAAe,CAAC"}