@marineyachtradar/signalk-plugin 1.4.3 → 1.4.4
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/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radar-provider.d.ts","sourceRoot":"","sources":["../src/radar-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"radar-provider.d.ts","sourceRoot":"","sources":["../src/radar-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAsDzC,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,eAAe,GACnB,KAAK,CAAC,oBAAoB,CAsN5B"}
|
package/plugin/radar-provider.js
CHANGED
|
@@ -1,6 +1,63 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createRadarProvider = createRadarProvider;
|
|
4
|
+
// mayara serves its color legend inside /capabilities as `legend.pixels`, an array indexed by pixel
|
|
5
|
+
// value where each entry is `{ color, type }`. Map it to the Radar API `LegendEntry[]` so consumers can
|
|
6
|
+
// color spoke samples; the array index is the sample value, so each entry bounds itself to that value.
|
|
7
|
+
function mapLegend(capabilities) {
|
|
8
|
+
const legend = capabilities.legend;
|
|
9
|
+
const pixels = legend ? legend.pixels : undefined;
|
|
10
|
+
if (!Array.isArray(pixels))
|
|
11
|
+
return undefined;
|
|
12
|
+
const entries = [];
|
|
13
|
+
pixels.forEach((pixel, index) => {
|
|
14
|
+
if (typeof pixel !== 'object' || pixel === null)
|
|
15
|
+
return;
|
|
16
|
+
const color = pixel.color;
|
|
17
|
+
if (typeof color !== 'string')
|
|
18
|
+
return;
|
|
19
|
+
const type = pixel.type;
|
|
20
|
+
entries.push({
|
|
21
|
+
color,
|
|
22
|
+
label: typeof type === 'string' ? type : `level ${index}`,
|
|
23
|
+
minValue: index,
|
|
24
|
+
maxValue: index
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
return entries.length > 0 ? entries : undefined;
|
|
28
|
+
}
|
|
29
|
+
// The controls the Radar API types as auto-capable (RadarControlValue, a required boolean auto), as
|
|
30
|
+
// opposed to value-only controls like rain. gain and sea must always carry a boolean auto.
|
|
31
|
+
const AUTO_CAPABLE_CONTROLS = new Set(['gain', 'sea']);
|
|
32
|
+
// Forward every control mayara reports (gain, sea, rain, range, mode, targetTrails, ...) rather than only
|
|
33
|
+
// gain, so the discovery RadarInfo carries the full current control state mayara already returned. Values
|
|
34
|
+
// pass through as-is: numbers for level controls, but also strings for enum/list controls (mayara serves
|
|
35
|
+
// these as their label, e.g. targetTrails "Medium") and booleans for on/off controls. The auto flag is
|
|
36
|
+
// preserved where the radar reports one, and defaulted to false for the auto-capable controls (gain, sea)
|
|
37
|
+
// when mayara omits it — but only when their value is numeric, so a string-valued control never gets a
|
|
38
|
+
// spurious auto stapled on. The SK RadarControls index signature has no slot for non-numeric values, so
|
|
39
|
+
// the accumulator is widened and the final cast bridges to the API type.
|
|
40
|
+
function mapControls(controls) {
|
|
41
|
+
const out = {};
|
|
42
|
+
for (const [id, entry] of Object.entries(controls)) {
|
|
43
|
+
if (typeof entry !== 'object' || entry === null)
|
|
44
|
+
continue;
|
|
45
|
+
if (!('value' in entry))
|
|
46
|
+
continue;
|
|
47
|
+
const value = entry.value;
|
|
48
|
+
const auto = entry.auto;
|
|
49
|
+
if (typeof value === 'number' && typeof auto === 'boolean')
|
|
50
|
+
out[id] = { auto, value };
|
|
51
|
+
else if (typeof value === 'number' && AUTO_CAPABLE_CONTROLS.has(id))
|
|
52
|
+
out[id] = { auto: false, value };
|
|
53
|
+
else
|
|
54
|
+
out[id] = { value };
|
|
55
|
+
}
|
|
56
|
+
// A radar that reports no gain still gets a sane default, as before.
|
|
57
|
+
if (!('gain' in out))
|
|
58
|
+
out.gain = { auto: true, value: 50 };
|
|
59
|
+
return out;
|
|
60
|
+
}
|
|
4
61
|
function createRadarProvider(client, app) {
|
|
5
62
|
const debug = app.debug.bind(app);
|
|
6
63
|
return {
|
|
@@ -25,6 +82,7 @@ function createRadarProvider(client, app) {
|
|
|
25
82
|
const powerCtrl = controls.power;
|
|
26
83
|
const rangeCtrl = controls.range;
|
|
27
84
|
const status = powerCtrl?.value === 2 ? 'transmit' : powerCtrl?.value === 1 ? 'standby' : 'off';
|
|
85
|
+
const legend = mapLegend(capabilities);
|
|
28
86
|
return {
|
|
29
87
|
id: radarId,
|
|
30
88
|
name: typeof radarEntry.name === 'string'
|
|
@@ -37,12 +95,8 @@ function createRadarProvider(client, app) {
|
|
|
37
95
|
spokesPerRevolution: Number(capabilities.spokesPerRevolution || 2048),
|
|
38
96
|
maxSpokeLen: Number(capabilities.maxSpokeLength || 512),
|
|
39
97
|
range: Number(rangeCtrl?.value ?? 1852),
|
|
40
|
-
controls:
|
|
41
|
-
|
|
42
|
-
auto: true,
|
|
43
|
-
value: 50
|
|
44
|
-
}
|
|
45
|
-
}
|
|
98
|
+
controls: mapControls(controls),
|
|
99
|
+
...(legend ? { legend } : {})
|
|
46
100
|
};
|
|
47
101
|
}
|
|
48
102
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radar-provider.js","sourceRoot":"","sources":["../src/radar-provider.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"radar-provider.js","sourceRoot":"","sources":["../src/radar-provider.ts"],"names":[],"mappings":"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"}
|