@camstack/addon-agent-ui 1.2.283 → 1.2.285
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 +12 -0
- package/dist/addon.js +127 -120
- package/dist/assets/{MotionZonesSettings-DxCIpM-V.js → MotionZonesSettings-BFkrT9Js.js} +1 -1
- package/dist/assets/{PrivacyMaskSettings-Bg3GAs4K.js → PrivacyMaskSettings-DYFE3_0a.js} +1 -1
- package/dist/assets/{SceneMonitorEditor-CbpD8h4h.js → SceneMonitorEditor-CquRbenp.js} +1 -1
- package/dist/assets/index-B06kYlcO.js +112 -0
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/index-Bw9-u5DW.js +0 -112
package/dist/addon.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { fileURLToPath } from "node:url";
|
|
3
|
-
//#region ../types/dist/event-category-
|
|
3
|
+
//#region ../types/dist/event-category-DmZDPDf_.mjs
|
|
4
4
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
5
5
|
EventCategory["SystemBoot"] = "system.boot";
|
|
6
6
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -627,7 +627,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
627
627
|
* (a track was promoted to a stationary-registry entry) or departs (the
|
|
628
628
|
* object moved / was removed). Telemetry (D8): lossy, drives a UI refresh of
|
|
629
629
|
* the dedicated "Stationary" section — never the live event feed. Payload:
|
|
630
|
-
* `{ deviceId, entryId, className, phase:'appeared'|'departed', timestamp }`.
|
|
630
|
+
* `{ deviceId, entryId, className, phase:'appeared'|'departed', timestamp, observedAt, zones }`.
|
|
631
631
|
*/
|
|
632
632
|
EventCategory["PipelineAnalyticsStationaryChanged"] = "pipeline-analytics.stationary-changed";
|
|
633
633
|
/**
|
|
@@ -5448,7 +5448,7 @@ var ZodIssueCode = {
|
|
|
5448
5448
|
var ZodFirstPartyTypeKind;
|
|
5449
5449
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5450
5450
|
//#endregion
|
|
5451
|
-
//#region ../types/dist/sleep-
|
|
5451
|
+
//#region ../types/dist/sleep-Crlmu_tO.mjs
|
|
5452
5452
|
/**
|
|
5453
5453
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5454
5454
|
* window to float samples (D455).
|
|
@@ -8705,11 +8705,11 @@ var CAP_NAMES = Object.freeze([
|
|
|
8705
8705
|
Object.freeze({
|
|
8706
8706
|
"air-quality-sensor": [
|
|
8707
8707
|
{
|
|
8708
|
-
"path": "
|
|
8708
|
+
"path": "co2",
|
|
8709
8709
|
"valueType": "number"
|
|
8710
8710
|
},
|
|
8711
8711
|
{
|
|
8712
|
-
"path": "
|
|
8712
|
+
"path": "voc",
|
|
8713
8713
|
"valueType": "number"
|
|
8714
8714
|
},
|
|
8715
8715
|
{
|
|
@@ -8759,7 +8759,7 @@ Object.freeze({
|
|
|
8759
8759
|
}
|
|
8760
8760
|
],
|
|
8761
8761
|
"ambient-light-sensor": [{
|
|
8762
|
-
"path": "
|
|
8762
|
+
"path": "illuminance",
|
|
8763
8763
|
"valueType": "number"
|
|
8764
8764
|
}],
|
|
8765
8765
|
"audio-metrics": [
|
|
@@ -8820,7 +8820,7 @@ Object.freeze({
|
|
|
8820
8820
|
],
|
|
8821
8821
|
"battery": [
|
|
8822
8822
|
{
|
|
8823
|
-
"path": "
|
|
8823
|
+
"path": "level",
|
|
8824
8824
|
"valueType": "number"
|
|
8825
8825
|
},
|
|
8826
8826
|
{
|
|
@@ -8842,7 +8842,7 @@ Object.freeze({
|
|
|
8842
8842
|
"valueType": "number"
|
|
8843
8843
|
},
|
|
8844
8844
|
{
|
|
8845
|
-
"path": "
|
|
8845
|
+
"path": "voltage",
|
|
8846
8846
|
"valueType": "number"
|
|
8847
8847
|
},
|
|
8848
8848
|
{
|
|
@@ -8863,7 +8863,7 @@ Object.freeze({
|
|
|
8863
8863
|
"valueType": "boolean"
|
|
8864
8864
|
}],
|
|
8865
8865
|
"brightness": [{
|
|
8866
|
-
"path": "
|
|
8866
|
+
"path": "level",
|
|
8867
8867
|
"valueType": "number"
|
|
8868
8868
|
}],
|
|
8869
8869
|
"broker": [{
|
|
@@ -9064,7 +9064,7 @@ Object.freeze({
|
|
|
9064
9064
|
"valueType": "number"
|
|
9065
9065
|
},
|
|
9066
9066
|
{
|
|
9067
|
-
"path": "
|
|
9067
|
+
"path": "colorTemperature",
|
|
9068
9068
|
"valueType": "number"
|
|
9069
9069
|
}
|
|
9070
9070
|
],
|
|
@@ -9243,15 +9243,15 @@ Object.freeze({
|
|
|
9243
9243
|
"valueType": "string"
|
|
9244
9244
|
},
|
|
9245
9245
|
{
|
|
9246
|
-
"path": "
|
|
9246
|
+
"path": "remaining",
|
|
9247
9247
|
"valueType": "number"
|
|
9248
9248
|
},
|
|
9249
9249
|
{
|
|
9250
|
-
"path": "
|
|
9250
|
+
"path": "delayedStart",
|
|
9251
9251
|
"valueType": "number"
|
|
9252
9252
|
},
|
|
9253
9253
|
{
|
|
9254
|
-
"path": "
|
|
9254
|
+
"path": "progress",
|
|
9255
9255
|
"valueType": "number"
|
|
9256
9256
|
},
|
|
9257
9257
|
{
|
|
@@ -9365,7 +9365,7 @@ Object.freeze({
|
|
|
9365
9365
|
],
|
|
9366
9366
|
"fan-control": [
|
|
9367
9367
|
{
|
|
9368
|
-
"path": "
|
|
9368
|
+
"path": "speed",
|
|
9369
9369
|
"valueType": "number"
|
|
9370
9370
|
},
|
|
9371
9371
|
{
|
|
@@ -9465,7 +9465,7 @@ Object.freeze({
|
|
|
9465
9465
|
}
|
|
9466
9466
|
],
|
|
9467
9467
|
"humidity-sensor": [{
|
|
9468
|
-
"path": "
|
|
9468
|
+
"path": "humidity",
|
|
9469
9469
|
"valueType": "number"
|
|
9470
9470
|
}],
|
|
9471
9471
|
"image": [{
|
|
@@ -9575,7 +9575,7 @@ Object.freeze({
|
|
|
9575
9575
|
"valueType": "number"
|
|
9576
9576
|
},
|
|
9577
9577
|
{
|
|
9578
|
-
"path": "
|
|
9578
|
+
"path": "progress",
|
|
9579
9579
|
"valueType": "number"
|
|
9580
9580
|
},
|
|
9581
9581
|
{
|
|
@@ -9654,11 +9654,11 @@ Object.freeze({
|
|
|
9654
9654
|
"valueType": "string"
|
|
9655
9655
|
},
|
|
9656
9656
|
{
|
|
9657
|
-
"path": "
|
|
9657
|
+
"path": "position",
|
|
9658
9658
|
"valueType": "number"
|
|
9659
9659
|
},
|
|
9660
9660
|
{
|
|
9661
|
-
"path": "
|
|
9661
|
+
"path": "duration",
|
|
9662
9662
|
"valueType": "number"
|
|
9663
9663
|
},
|
|
9664
9664
|
{
|
|
@@ -9760,11 +9760,11 @@ Object.freeze({
|
|
|
9760
9760
|
]
|
|
9761
9761
|
},
|
|
9762
9762
|
{
|
|
9763
|
-
"path": "
|
|
9763
|
+
"path": "signal",
|
|
9764
9764
|
"valueType": "number"
|
|
9765
9765
|
},
|
|
9766
9766
|
{
|
|
9767
|
-
"path": "
|
|
9767
|
+
"path": "rssi",
|
|
9768
9768
|
"valueType": "number"
|
|
9769
9769
|
},
|
|
9770
9770
|
{
|
|
@@ -9895,23 +9895,23 @@ Object.freeze({
|
|
|
9895
9895
|
],
|
|
9896
9896
|
"power-meter": [
|
|
9897
9897
|
{
|
|
9898
|
-
"path": "
|
|
9898
|
+
"path": "power",
|
|
9899
9899
|
"valueType": "number"
|
|
9900
9900
|
},
|
|
9901
9901
|
{
|
|
9902
|
-
"path": "
|
|
9902
|
+
"path": "energy",
|
|
9903
9903
|
"valueType": "number"
|
|
9904
9904
|
},
|
|
9905
9905
|
{
|
|
9906
|
-
"path": "
|
|
9906
|
+
"path": "voltage",
|
|
9907
9907
|
"valueType": "number"
|
|
9908
9908
|
},
|
|
9909
9909
|
{
|
|
9910
|
-
"path": "
|
|
9910
|
+
"path": "current",
|
|
9911
9911
|
"valueType": "number"
|
|
9912
9912
|
},
|
|
9913
9913
|
{
|
|
9914
|
-
"path": "
|
|
9914
|
+
"path": "apparentPower",
|
|
9915
9915
|
"valueType": "number"
|
|
9916
9916
|
},
|
|
9917
9917
|
{
|
|
@@ -9939,14 +9939,10 @@ Object.freeze({
|
|
|
9939
9939
|
{
|
|
9940
9940
|
"path": "gps.accuracyMeters",
|
|
9941
9941
|
"valueType": "number"
|
|
9942
|
-
},
|
|
9943
|
-
{
|
|
9944
|
-
"path": "batteryPercent",
|
|
9945
|
-
"valueType": "number"
|
|
9946
9942
|
}
|
|
9947
9943
|
],
|
|
9948
9944
|
"pressure-sensor": [{
|
|
9949
|
-
"path": "
|
|
9945
|
+
"path": "pressure",
|
|
9950
9946
|
"valueType": "number"
|
|
9951
9947
|
}],
|
|
9952
9948
|
"privacy-mask": [{
|
|
@@ -10260,7 +10256,7 @@ Object.freeze({
|
|
|
10260
10256
|
"valueType": "boolean"
|
|
10261
10257
|
}],
|
|
10262
10258
|
"temperature-sensor": [{
|
|
10263
|
-
"path": "
|
|
10259
|
+
"path": "temperature",
|
|
10264
10260
|
"valueType": "number"
|
|
10265
10261
|
}],
|
|
10266
10262
|
"update": [
|
|
@@ -10308,7 +10304,7 @@ Object.freeze({
|
|
|
10308
10304
|
"valueType": "string"
|
|
10309
10305
|
},
|
|
10310
10306
|
{
|
|
10311
|
-
"path": "
|
|
10307
|
+
"path": "progress",
|
|
10312
10308
|
"valueType": "number"
|
|
10313
10309
|
},
|
|
10314
10310
|
{
|
|
@@ -10783,7 +10779,7 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
|
|
|
10783
10779
|
return DeviceRole;
|
|
10784
10780
|
}({});
|
|
10785
10781
|
//#endregion
|
|
10786
|
-
//#region ../types/dist/composition-
|
|
10782
|
+
//#region ../types/dist/composition-CZImLpOI.mjs
|
|
10787
10783
|
/**
|
|
10788
10784
|
* The ffmpeg build every CamStack node downloads, per platform and arch.
|
|
10789
10785
|
*
|
|
@@ -15303,6 +15299,14 @@ var AutomationConditionLeafSchema = object({
|
|
|
15303
15299
|
array(union([string(), number()]))
|
|
15304
15300
|
])
|
|
15305
15301
|
});
|
|
15302
|
+
var AutomationConditionStationaryPresentSchema = object({
|
|
15303
|
+
kind: literal("stationary-present"),
|
|
15304
|
+
deviceId: number().int().nonnegative(),
|
|
15305
|
+
/** Class names; a macro class matches every raw class that maps to it. */
|
|
15306
|
+
classes: array(string().min(1)).min(1).optional(),
|
|
15307
|
+
/** The parked object must be in at least one of these zones. */
|
|
15308
|
+
zones: array(string().min(1)).min(1).optional()
|
|
15309
|
+
});
|
|
15306
15310
|
/**
|
|
15307
15311
|
* The expression leaf, declared as a plain object rather than an intersection
|
|
15308
15312
|
* with {@link ExpressionSourceSchema}: a discriminated union has to be able to
|
|
@@ -15336,7 +15340,8 @@ var AutomationConditionSchema = lazy(() => discriminatedUnion("kind", [
|
|
|
15336
15340
|
child: AutomationConditionSchema
|
|
15337
15341
|
}),
|
|
15338
15342
|
AutomationConditionLeafSchema,
|
|
15339
|
-
AutomationConditionExpressionSchema
|
|
15343
|
+
AutomationConditionExpressionSchema,
|
|
15344
|
+
AutomationConditionStationaryPresentSchema
|
|
15340
15345
|
]));
|
|
15341
15346
|
/**
|
|
15342
15347
|
* What starts a run.
|
|
@@ -15390,6 +15395,17 @@ var AutomationTriggerSchema = discriminatedUnion("kind", [
|
|
|
15390
15395
|
/** Best-so-far confidence the track must reach. */
|
|
15391
15396
|
minScore: number().min(0).max(1).optional()
|
|
15392
15397
|
}),
|
|
15398
|
+
object({
|
|
15399
|
+
kind: literal("stationary"),
|
|
15400
|
+
deviceIds: array(number().int().nonnegative()).min(1),
|
|
15401
|
+
/** Class names; a macro class matches like the detection trigger. */
|
|
15402
|
+
classes: array(string().min(1)).min(1).optional(),
|
|
15403
|
+
/** The parked object must be in at least one of these zones. */
|
|
15404
|
+
zones: array(string().min(1)).min(1).optional(),
|
|
15405
|
+
/** `appeared`: it became parked. `departed`: the registry retired it.
|
|
15406
|
+
* The vocabulary of `PipelineAnalyticsStationaryChanged`. */
|
|
15407
|
+
phase: _enum(["appeared", "departed"])
|
|
15408
|
+
}),
|
|
15393
15409
|
object({
|
|
15394
15410
|
kind: literal("interval"),
|
|
15395
15411
|
minutes: number().int().min(1).max(1440)
|
|
@@ -15599,7 +15615,8 @@ var AutomationConditionTraceNodeSchema = object({
|
|
|
15599
15615
|
"any",
|
|
15600
15616
|
"not",
|
|
15601
15617
|
"condition",
|
|
15602
|
-
"expression"
|
|
15618
|
+
"expression",
|
|
15619
|
+
"stationary-present"
|
|
15603
15620
|
]),
|
|
15604
15621
|
outcome: TraceNodeOutcomeSchema,
|
|
15605
15622
|
reason: string(),
|
|
@@ -18392,7 +18409,7 @@ var CompositionEventPlanSchema = object({
|
|
|
18392
18409
|
stateField: string(),
|
|
18393
18410
|
fieldKey: string()
|
|
18394
18411
|
});
|
|
18395
|
-
/** One refusal, named (D391). `path` points into the composition, e.g. `features[0].fields.
|
|
18412
|
+
/** One refusal, named (D391). `path` points into the composition, e.g. `features[0].fields.temperature`. */
|
|
18396
18413
|
var CompositionProblemSchema = object({
|
|
18397
18414
|
code: _enum([
|
|
18398
18415
|
"reserved-variant",
|
|
@@ -18711,7 +18728,7 @@ var GROUP_TEMPLATES = [
|
|
|
18711
18728
|
summary: "Mean, median, min, max or sum of temperatures. Offline and unknown members are left out, never read as 0 °C.",
|
|
18712
18729
|
role: DeviceRole.TemperatureSensor,
|
|
18713
18730
|
outputCap: "temperature-sensor",
|
|
18714
|
-
outputField: "
|
|
18731
|
+
outputField: "temperature",
|
|
18715
18732
|
quantity: "temperature",
|
|
18716
18733
|
defaultAggregate: "mean",
|
|
18717
18734
|
empty: "null",
|
|
@@ -18722,7 +18739,7 @@ var GROUP_TEMPLATES = [
|
|
|
18722
18739
|
summary: "Humidity in percent. Offline and unknown members are left out, never read as 0 %.",
|
|
18723
18740
|
role: DeviceRole.HumiditySensor,
|
|
18724
18741
|
outputCap: "humidity-sensor",
|
|
18725
|
-
outputField: "
|
|
18742
|
+
outputField: "humidity",
|
|
18726
18743
|
quantity: "humidity",
|
|
18727
18744
|
defaultAggregate: "mean",
|
|
18728
18745
|
empty: "null",
|
|
@@ -18733,7 +18750,7 @@ var GROUP_TEMPLATES = [
|
|
|
18733
18750
|
summary: "Pressure in hectopascals. Offline and unknown members are left out, never read as 0 hPa.",
|
|
18734
18751
|
role: DeviceRole.PressureSensor,
|
|
18735
18752
|
outputCap: "pressure-sensor",
|
|
18736
|
-
outputField: "
|
|
18753
|
+
outputField: "pressure",
|
|
18737
18754
|
quantity: "pressure",
|
|
18738
18755
|
defaultAggregate: "mean",
|
|
18739
18756
|
empty: "null",
|
|
@@ -18744,7 +18761,7 @@ var GROUP_TEMPLATES = [
|
|
|
18744
18761
|
summary: "Illuminance in lux. Offline and unknown members are left out, never read as 0 lx.",
|
|
18745
18762
|
role: DeviceRole.AmbientLightSensor,
|
|
18746
18763
|
outputCap: "ambient-light-sensor",
|
|
18747
|
-
outputField: "
|
|
18764
|
+
outputField: "illuminance",
|
|
18748
18765
|
quantity: "illuminance",
|
|
18749
18766
|
defaultAggregate: "mean",
|
|
18750
18767
|
empty: "null",
|
|
@@ -18755,7 +18772,7 @@ var GROUP_TEMPLATES = [
|
|
|
18755
18772
|
summary: "Power in watts, summed by default. Nobody reporting omits the key rather than writing 0 W.",
|
|
18756
18773
|
role: DeviceRole.PowerSensor,
|
|
18757
18774
|
outputCap: "power-meter",
|
|
18758
|
-
outputField: "
|
|
18775
|
+
outputField: "power",
|
|
18759
18776
|
quantity: "power",
|
|
18760
18777
|
defaultAggregate: "sum",
|
|
18761
18778
|
empty: "omit",
|
|
@@ -18766,7 +18783,7 @@ var GROUP_TEMPLATES = [
|
|
|
18766
18783
|
summary: "Energy in kilowatt-hours, summed by default. Nobody reporting omits the key rather than writing 0 kWh.",
|
|
18767
18784
|
role: DeviceRole.EnergySensor,
|
|
18768
18785
|
outputCap: "power-meter",
|
|
18769
|
-
outputField: "
|
|
18786
|
+
outputField: "energy",
|
|
18770
18787
|
quantity: "energy",
|
|
18771
18788
|
defaultAggregate: "sum",
|
|
18772
18789
|
empty: "omit",
|
|
@@ -18777,7 +18794,7 @@ var GROUP_TEMPLATES = [
|
|
|
18777
18794
|
summary: "Battery charge in percent. Offline and unknown members are left out, never read as 0 %.",
|
|
18778
18795
|
role: DeviceRole.BatterySensor,
|
|
18779
18796
|
outputCap: "battery",
|
|
18780
|
-
outputField: "
|
|
18797
|
+
outputField: "level",
|
|
18781
18798
|
quantity: "percentage",
|
|
18782
18799
|
defaultAggregate: "mean",
|
|
18783
18800
|
empty: "null",
|
|
@@ -56895,9 +56912,9 @@ method(object({ nodeId: string().optional() }).optional(), array(AddonListItemSc
|
|
|
56895
56912
|
}), LogStreamEntrySchema, { kind: "subscription" });
|
|
56896
56913
|
object({
|
|
56897
56914
|
/** Carbon dioxide concentration in ppm. */
|
|
56898
|
-
|
|
56915
|
+
co2: number().min(0).optional().meta(readingMeta("concentration-volume")),
|
|
56899
56916
|
/** Total volatile organic compounds in ppb. */
|
|
56900
|
-
|
|
56917
|
+
voc: number().min(0).optional().meta(readingMeta("concentration-ppb")),
|
|
56901
56918
|
/** Particulate matter ≤ 2.5 μm in µg/m³. */
|
|
56902
56919
|
pm25: number().min(0).optional().meta(readingMeta("concentration-mass")),
|
|
56903
56920
|
/** Particulate matter ≤ 10 μm in µg/m³. */
|
|
@@ -56910,7 +56927,7 @@ object({
|
|
|
56910
56927
|
DeviceType.Sensor;
|
|
56911
56928
|
object({
|
|
56912
56929
|
/** Current illuminance in lux (lx). `null` when the sample was refused (D393). */
|
|
56913
|
-
|
|
56930
|
+
illuminance: number().min(0).nullable().meta(readingMeta("illuminance", {
|
|
56914
56931
|
precision: 0,
|
|
56915
56932
|
label: "Illuminance"
|
|
56916
56933
|
})),
|
|
@@ -57138,7 +57155,7 @@ var BatteryStatusSchema = object({
|
|
|
57138
57155
|
* Consumers must SKIP a null rather than coerce it — `battery-band` already
|
|
57139
57156
|
* declines to band a non-finite reading, which is the correct shape.
|
|
57140
57157
|
*/
|
|
57141
|
-
|
|
57158
|
+
level: number().min(0).max(100).nullable().meta(readingMeta("percentage", { label: "Charge" })),
|
|
57142
57159
|
/**
|
|
57143
57160
|
* Charging source. `'dc'` covers wall/USB adapters; `'solar'` is
|
|
57144
57161
|
* Reolink-specific for the Solar Panel 2 accessory (will become
|
|
@@ -57148,7 +57165,7 @@ var BatteryStatusSchema = object({
|
|
|
57148
57165
|
* `'unknown'` is the absence of an answer: the provider has not read the
|
|
57149
57166
|
* power fields yet, or the firmware reported neither. Before it existed,
|
|
57150
57167
|
* two unreadable fields produced `'none'`, and a camera nobody had reached
|
|
57151
|
-
* was drawn "on battery alone" — the same D315 defect `
|
|
57168
|
+
* was drawn "on battery alone" — the same D315 defect `level` closed
|
|
57152
57169
|
* by going nullable. Consumers SKIP it (no charger state published, no
|
|
57153
57170
|
* glyph, no HomeKit ChargingState) rather than coerce it either way.
|
|
57154
57171
|
*/
|
|
@@ -57172,7 +57189,7 @@ var BatteryStatusSchema = object({
|
|
|
57172
57189
|
* that only report charge. A second reading on this cap, not a second
|
|
57173
57190
|
* `numeric-sensor` on the same device.
|
|
57174
57191
|
*/
|
|
57175
|
-
|
|
57192
|
+
voltage: number().nullable().optional().meta(readingMeta("voltage", { label: "Voltage" })),
|
|
57176
57193
|
/**
|
|
57177
57194
|
* Ms epoch of the last time the device PROVED it was reachable — a
|
|
57178
57195
|
* completed firmware round-trip, an observed wake, or an inbound push
|
|
@@ -57206,7 +57223,7 @@ var BatteryStatusSchema = object({
|
|
|
57206
57223
|
/**
|
|
57207
57224
|
* True when the source is a BINARY low-battery indicator (HA
|
|
57208
57225
|
* `binary_sensor` device_class=battery / `LOW_BAT`) that has no real
|
|
57209
|
-
* charge level — `
|
|
57226
|
+
* charge level — `level` is then a coarse stand-in (100 = normal,
|
|
57210
57227
|
* sub-threshold = low). UI MUST render "Normal"/"Low" instead of a
|
|
57211
57228
|
* misleading exact percentage. Absent/false → genuine 0–100 % reading.
|
|
57212
57229
|
*/
|
|
@@ -57232,19 +57249,19 @@ object({
|
|
|
57232
57249
|
DeviceType.Sensor;
|
|
57233
57250
|
object({
|
|
57234
57251
|
/** Current level as 0..100 inclusive. Firmware-reported. */
|
|
57235
|
-
|
|
57252
|
+
level: number().min(0).max(100).meta(readingMeta("percentage")),
|
|
57236
57253
|
/** Ms epoch of the last operator-driven change. Useful for UI freshness. */
|
|
57237
57254
|
lastChangedAt: number()
|
|
57238
57255
|
});
|
|
57239
57256
|
DeviceType.Light, method(object({
|
|
57240
57257
|
deviceId: number().int().nonnegative(),
|
|
57241
|
-
|
|
57258
|
+
level: number().min(0).max(100)
|
|
57242
57259
|
}), _void(), {
|
|
57243
57260
|
kind: "mutation",
|
|
57244
57261
|
auth: "protected"
|
|
57245
57262
|
}), object({
|
|
57246
57263
|
deviceId: number(),
|
|
57247
|
-
|
|
57264
|
+
level: number().min(0).max(100),
|
|
57248
57265
|
lastChangedAt: number()
|
|
57249
57266
|
});
|
|
57250
57267
|
DeviceType.Button, method(object({ deviceId: number().int().nonnegative() }), _void(), {
|
|
@@ -57745,11 +57762,11 @@ var ColorInputSchema = discriminatedUnion("mode", [
|
|
|
57745
57762
|
}),
|
|
57746
57763
|
object({
|
|
57747
57764
|
mode: literal("mired"),
|
|
57748
|
-
|
|
57765
|
+
colorTemperature: number().int().min(50).max(1e3)
|
|
57749
57766
|
})
|
|
57750
57767
|
]);
|
|
57751
57768
|
object({
|
|
57752
|
-
/** Active color mode — which of `rgb` / `hsv` / `
|
|
57769
|
+
/** Active color mode — which of `rgb` / `hsv` / `colorTemperature` reflects
|
|
57753
57770
|
* the bulb's current state. */
|
|
57754
57771
|
mode: _enum([
|
|
57755
57772
|
"rgb",
|
|
@@ -57761,7 +57778,7 @@ object({
|
|
|
57761
57778
|
/** Populated when `mode === 'hsv'`. */
|
|
57762
57779
|
hsv: HsvTripletSchema.optional(),
|
|
57763
57780
|
/** Populated when `mode === 'mired'`. */
|
|
57764
|
-
|
|
57781
|
+
colorTemperature: number().int().optional().meta(readingMeta("colour-temperature")),
|
|
57765
57782
|
/** Ms epoch of the last operator-driven change. */
|
|
57766
57783
|
lastChangedAt: number()
|
|
57767
57784
|
});
|
|
@@ -57780,7 +57797,7 @@ DeviceType.Light, method(object({
|
|
|
57780
57797
|
]),
|
|
57781
57798
|
rgb: RgbTripletSchema.optional(),
|
|
57782
57799
|
hsv: HsvTripletSchema.optional(),
|
|
57783
|
-
|
|
57800
|
+
colorTemperature: number().int().optional(),
|
|
57784
57801
|
lastChangedAt: number()
|
|
57785
57802
|
});
|
|
57786
57803
|
var ConnectionTestOutcomeSchema = discriminatedUnion("outcome", [
|
|
@@ -58206,11 +58223,11 @@ object({
|
|
|
58206
58223
|
/** Feature keys of the programs the appliance currently offers — drives the UI selector. */
|
|
58207
58224
|
availablePrograms: array(string()),
|
|
58208
58225
|
/** Seconds remaining on the active cycle, or null when not running / not known. */
|
|
58209
|
-
|
|
58226
|
+
remaining: number().int().nonnegative().nullable().meta(readingMeta("duration")),
|
|
58210
58227
|
/** Seconds the delayed start is set to (time until the cycle starts), or null. */
|
|
58211
|
-
|
|
58228
|
+
delayedStart: number().int().nonnegative().nullable().meta(readingMeta("duration")),
|
|
58212
58229
|
/** Cycle completion 0..100, or null when not applicable. */
|
|
58213
|
-
|
|
58230
|
+
progress: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
58214
58231
|
/** True when the door is reported open; null when the door state is not known. */
|
|
58215
58232
|
doorOpen: boolean().nullable(),
|
|
58216
58233
|
/** True when the door is latched (locked) during a cycle; null when not reported. */
|
|
@@ -58828,7 +58845,7 @@ var FanDirectionSchema = _enum(["forward", "reverse"]);
|
|
|
58828
58845
|
object({
|
|
58829
58846
|
/** Active speed as 0..100 inclusive. Null when the device has no
|
|
58830
58847
|
* speed surface (single-speed fan). */
|
|
58831
|
-
|
|
58848
|
+
speed: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
58832
58849
|
/** Speed granularity the device accepts (HA `percentage_step`, e.g. 25 for
|
|
58833
58850
|
* a 4-speed fan). Absent when unknown — the UI then falls back to step 1. */
|
|
58834
58851
|
percentageStep: number().positive().optional().meta(readingMeta("percentage")),
|
|
@@ -58848,7 +58865,7 @@ object({
|
|
|
58848
58865
|
});
|
|
58849
58866
|
DeviceType.Fan, method(object({
|
|
58850
58867
|
deviceId: number().int().nonnegative(),
|
|
58851
|
-
|
|
58868
|
+
speed: number().min(0).max(100)
|
|
58852
58869
|
}), _void(), {
|
|
58853
58870
|
kind: "mutation",
|
|
58854
58871
|
auth: "protected"
|
|
@@ -59031,7 +59048,7 @@ DeviceType.Humidifier, method(object({
|
|
|
59031
59048
|
});
|
|
59032
59049
|
object({
|
|
59033
59050
|
/** Current relative humidity, 0..100. `null` when the sample was refused (D393). */
|
|
59034
|
-
|
|
59051
|
+
humidity: number().min(0).max(100).nullable().meta(readingMeta("humidity", {
|
|
59035
59052
|
precision: 0,
|
|
59036
59053
|
label: "Humidity"
|
|
59037
59054
|
})),
|
|
@@ -59474,7 +59491,7 @@ object({
|
|
|
59474
59491
|
batteryLevel: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
59475
59492
|
/** 0..100 mowing-completion percentage of the current task, or null when no
|
|
59476
59493
|
* task is active / progress is unavailable. */
|
|
59477
|
-
|
|
59494
|
+
progress: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
59478
59495
|
/** Current device/event code (dynamic — mostly status, sometimes an error),
|
|
59479
59496
|
* or null when unknown. */
|
|
59480
59497
|
currentCode: number().nullable().meta(readingMeta("none")),
|
|
@@ -59964,10 +59981,10 @@ object({
|
|
|
59964
59981
|
currentMedia: MediaInfoSchema.nullable(),
|
|
59965
59982
|
/** Current playback position in ms. Null when not seekable or
|
|
59966
59983
|
* nothing is playing. Pair with `DeviceFeature.MediaPlayerSeek`. */
|
|
59967
|
-
|
|
59984
|
+
position: number().int().nonnegative().nullable().meta(readingMeta("duration-ms")),
|
|
59968
59985
|
/** Total duration of the current media in ms. Null when unknown
|
|
59969
59986
|
* (live stream) or nothing is playing. */
|
|
59970
|
-
|
|
59987
|
+
duration: number().int().nonnegative().nullable().meta(readingMeta("duration-ms")),
|
|
59971
59988
|
/** Shuffle toggle. Null when no shuffle surface.
|
|
59972
59989
|
* Pair with `DeviceFeature.MediaPlayerShuffle`. */
|
|
59973
59990
|
shuffle: boolean().nullable(),
|
|
@@ -59994,7 +60011,7 @@ DeviceType.MediaPlayer, method(object({ deviceId: number().int().nonnegative() }
|
|
|
59994
60011
|
auth: "protected"
|
|
59995
60012
|
}), method(object({
|
|
59996
60013
|
deviceId: number().int().nonnegative(),
|
|
59997
|
-
|
|
60014
|
+
position: number().int().nonnegative()
|
|
59998
60015
|
}), _void(), {
|
|
59999
60016
|
kind: "mutation",
|
|
60000
60017
|
auth: "protected"
|
|
@@ -60667,9 +60684,9 @@ var NetworkLinkStatusSchema = object({
|
|
|
60667
60684
|
* one whose reading has not landed must not be drawn at 0 %. Consumers
|
|
60668
60685
|
* SKIP a null rather than coerce it.
|
|
60669
60686
|
*/
|
|
60670
|
-
|
|
60687
|
+
signal: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
60671
60688
|
/** Raw received signal strength in dBm, when the firmware reports one. */
|
|
60672
|
-
|
|
60689
|
+
rssi: number().optional().meta(readingMeta("signal-level")),
|
|
60673
60690
|
/** Network name of a wireless link, when the firmware reports it. */
|
|
60674
60691
|
ssid: string().optional(),
|
|
60675
60692
|
/** Ms epoch of the last observation. Lets consumers reason about freshness. */
|
|
@@ -61819,16 +61836,16 @@ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema)
|
|
|
61819
61836
|
auth: "admin"
|
|
61820
61837
|
});
|
|
61821
61838
|
object({
|
|
61822
|
-
/** Instantaneous power draw
|
|
61823
|
-
|
|
61839
|
+
/** Instantaneous power draw (watts). */
|
|
61840
|
+
power: number().optional().meta(readingMeta("power", { label: "Power" })),
|
|
61824
61841
|
/** Cumulative energy in kilowatt-hours since the meter was reset. */
|
|
61825
|
-
|
|
61826
|
-
/** Voltage
|
|
61827
|
-
|
|
61842
|
+
energy: number().optional().meta(readingMeta("energy", { label: "Energy" })),
|
|
61843
|
+
/** Voltage (volts). */
|
|
61844
|
+
voltage: number().optional().meta(readingMeta("voltage", { label: "Voltage" })),
|
|
61828
61845
|
/** Current in amperes. */
|
|
61829
|
-
|
|
61846
|
+
current: number().optional().meta(readingMeta("current", { label: "Current" })),
|
|
61830
61847
|
/** Apparent power in volt-amperes. */
|
|
61831
|
-
|
|
61848
|
+
apparentPower: number().optional().meta(readingMeta("apparent-power")),
|
|
61832
61849
|
/** Power factor (0..1) if reported. */
|
|
61833
61850
|
powerFactor: number().min(0).max(1).optional().meta(readingMeta("ratio")),
|
|
61834
61851
|
/** Ms epoch when the slice was last updated. */
|
|
@@ -61883,16 +61900,13 @@ object({
|
|
|
61883
61900
|
location: string().nullable(),
|
|
61884
61901
|
/** GPS coordinates when available. Null otherwise. */
|
|
61885
61902
|
gps: GpsLocationSchema.nullable(),
|
|
61886
|
-
/** Optional battery level of the tracking device (0..100). Null
|
|
61887
|
-
* when not reported. */
|
|
61888
|
-
batteryPercent: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
61889
61903
|
/** Ms epoch when the slice was last updated. */
|
|
61890
61904
|
lastChangedAt: number()
|
|
61891
61905
|
});
|
|
61892
61906
|
DeviceType.Presence;
|
|
61893
61907
|
object({
|
|
61894
61908
|
/** Current pressure in hPa. `null` when the sample was refused (D393). */
|
|
61895
|
-
|
|
61909
|
+
pressure: number().nullable().meta(readingMeta("pressure", { precision: 0 })),
|
|
61896
61910
|
/** Ms epoch when the slice was last updated. */
|
|
61897
61911
|
lastFetchedAt: number()
|
|
61898
61912
|
});
|
|
@@ -64895,7 +64909,7 @@ object({
|
|
|
64895
64909
|
DeviceType.Sensor;
|
|
64896
64910
|
object({
|
|
64897
64911
|
/** Current temperature in Celsius. `null` when the sample was refused (D393). */
|
|
64898
|
-
|
|
64912
|
+
temperature: number().nullable().meta(readingMeta("temperature", {
|
|
64899
64913
|
precision: 1,
|
|
64900
64914
|
label: "Temperature"
|
|
64901
64915
|
})),
|
|
@@ -65159,7 +65173,7 @@ object({
|
|
|
65159
65173
|
/** Speed tokens the hardware accepts — drives the UI selector. */
|
|
65160
65174
|
availableFanSpeeds: array(string()),
|
|
65161
65175
|
/** 0..100 cleaning-completion percentage of the current task, or null. */
|
|
65162
|
-
|
|
65176
|
+
progress: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
65163
65177
|
/** Current error code (0 / null = no error). */
|
|
65164
65178
|
errorCode: number().nullable().meta(readingMeta("none")),
|
|
65165
65179
|
/** Human label for {@link errorCode}, or null when none / undecodable. */
|
|
@@ -76129,7 +76143,7 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76129
76143
|
label: t("Full brightness", "Luminosità massima"),
|
|
76130
76144
|
phrase: t("Set {device} to full brightness", "Porta {device} alla massima luminosità"),
|
|
76131
76145
|
icon: "sun",
|
|
76132
|
-
args: {
|
|
76146
|
+
args: { level: 100 }
|
|
76133
76147
|
},
|
|
76134
76148
|
{
|
|
76135
76149
|
id: "brightness.half",
|
|
@@ -76137,7 +76151,7 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76137
76151
|
label: t("Half brightness", "Luminosità a metà"),
|
|
76138
76152
|
phrase: t("Dim {device} to half", "Abbassa {device} a metà luminosità"),
|
|
76139
76153
|
icon: "sun-dim",
|
|
76140
|
-
args: {
|
|
76154
|
+
args: { level: 50 }
|
|
76141
76155
|
},
|
|
76142
76156
|
{
|
|
76143
76157
|
id: "brightness.off",
|
|
@@ -76145,16 +76159,16 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76145
76159
|
label: t("Brightness off", "Luminosità a zero"),
|
|
76146
76160
|
phrase: t("Dim {device} to zero", "Abbassa {device} a zero"),
|
|
76147
76161
|
icon: "lightbulb-off",
|
|
76148
|
-
args: {
|
|
76162
|
+
args: { level: 0 }
|
|
76149
76163
|
},
|
|
76150
76164
|
{
|
|
76151
76165
|
id: "brightness.set",
|
|
76152
76166
|
method: "setBrightness",
|
|
76153
76167
|
label: t("Set brightness", "Imposta la luminosità"),
|
|
76154
|
-
phrase: t("Set the brightness of {device} to {
|
|
76168
|
+
phrase: t("Set the brightness of {device} to {level}", "Imposta la luminosità di {device} a {level}"),
|
|
76155
76169
|
icon: "sun-medium",
|
|
76156
76170
|
openArgs: [{
|
|
76157
|
-
key: "
|
|
76171
|
+
key: "level",
|
|
76158
76172
|
label: PERCENT,
|
|
76159
76173
|
offer: {
|
|
76160
76174
|
kind: "number",
|
|
@@ -76168,13 +76182,13 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76168
76182
|
],
|
|
76169
76183
|
state: [{
|
|
76170
76184
|
kind: "numeric",
|
|
76171
|
-
field: "
|
|
76185
|
+
field: "level",
|
|
76172
76186
|
quantity: t("the brightness", "la luminosità"),
|
|
76173
76187
|
label: t("Brightness", "Luminosità"),
|
|
76174
76188
|
unit: "%",
|
|
76175
76189
|
icon: "sun"
|
|
76176
76190
|
}],
|
|
76177
|
-
events: { onBrightnessChanged: { notOperatorFacing: "the `
|
|
76191
|
+
events: { onBrightnessChanged: { notOperatorFacing: "the `level` state trigger reads the same change" } }
|
|
76178
76192
|
},
|
|
76179
76193
|
color: {
|
|
76180
76194
|
scope: "device",
|
|
@@ -76188,7 +76202,7 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76188
76202
|
icon: "sun",
|
|
76189
76203
|
args: { color: {
|
|
76190
76204
|
mode: "mired",
|
|
76191
|
-
|
|
76205
|
+
colorTemperature: 370
|
|
76192
76206
|
} }
|
|
76193
76207
|
},
|
|
76194
76208
|
{
|
|
@@ -76199,7 +76213,7 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76199
76213
|
icon: "snowflake",
|
|
76200
76214
|
args: { color: {
|
|
76201
76215
|
mode: "mired",
|
|
76202
|
-
|
|
76216
|
+
colorTemperature: 200
|
|
76203
76217
|
} }
|
|
76204
76218
|
},
|
|
76205
76219
|
{
|
|
@@ -76813,7 +76827,7 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76813
76827
|
label: t("Fan off", "Ventilatore spento"),
|
|
76814
76828
|
phrase: t("Stop {device}", "Ferma {device}"),
|
|
76815
76829
|
icon: "power-off",
|
|
76816
|
-
args: {
|
|
76830
|
+
args: { speed: 0 }
|
|
76817
76831
|
},
|
|
76818
76832
|
{
|
|
76819
76833
|
id: "fan.full",
|
|
@@ -76821,16 +76835,16 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76821
76835
|
label: t("Fan full", "Ventilatore al massimo"),
|
|
76822
76836
|
phrase: t("Run {device} at full speed", "Porta {device} alla massima velocità"),
|
|
76823
76837
|
icon: "fan",
|
|
76824
|
-
args: {
|
|
76838
|
+
args: { speed: 100 }
|
|
76825
76839
|
},
|
|
76826
76840
|
{
|
|
76827
76841
|
id: "fan.speed",
|
|
76828
76842
|
method: "setPercentage",
|
|
76829
76843
|
label: t("Set speed", "Imposta la velocità"),
|
|
76830
|
-
phrase: t("Set the speed of {device} to {
|
|
76844
|
+
phrase: t("Set the speed of {device} to {speed}", "Imposta la velocità di {device} al {speed}"),
|
|
76831
76845
|
icon: "fan",
|
|
76832
76846
|
openArgs: [{
|
|
76833
|
-
key: "
|
|
76847
|
+
key: "speed",
|
|
76834
76848
|
label: t("Speed", "Velocità"),
|
|
76835
76849
|
offer: {
|
|
76836
76850
|
kind: "number",
|
|
@@ -76892,7 +76906,7 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
76892
76906
|
],
|
|
76893
76907
|
state: [{
|
|
76894
76908
|
kind: "numeric",
|
|
76895
|
-
field: "
|
|
76909
|
+
field: "speed",
|
|
76896
76910
|
quantity: t("the speed", "la velocità"),
|
|
76897
76911
|
label: t("Speed", "Velocità"),
|
|
76898
76912
|
unit: "%",
|
|
@@ -77690,7 +77704,7 @@ var APPLIANCE_CAP_VOCABULARY = {
|
|
|
77690
77704
|
},
|
|
77691
77705
|
{
|
|
77692
77706
|
kind: "numeric",
|
|
77693
|
-
field: "
|
|
77707
|
+
field: "progress",
|
|
77694
77708
|
quantity: t("the cycle progress", "l’avanzamento del lavaggio"),
|
|
77695
77709
|
label: t("Progress", "Avanzamento"),
|
|
77696
77710
|
unit: "%",
|
|
@@ -78048,10 +78062,10 @@ var APPLIANCE_CAP_VOCABULARY = {
|
|
|
78048
78062
|
id: "media.seek",
|
|
78049
78063
|
method: "seek",
|
|
78050
78064
|
label: t("Seek", "Vai al punto"),
|
|
78051
|
-
phrase: t("Move {device} to {
|
|
78065
|
+
phrase: t("Move {device} to {position}", "Porta {device} al punto {position}"),
|
|
78052
78066
|
icon: "fast-forward",
|
|
78053
78067
|
openArgs: [{
|
|
78054
|
-
key: "
|
|
78068
|
+
key: "position",
|
|
78055
78069
|
label: t("Position", "Posizione"),
|
|
78056
78070
|
offer: {
|
|
78057
78071
|
kind: "number",
|
|
@@ -79100,7 +79114,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79100
79114
|
state: [
|
|
79101
79115
|
{
|
|
79102
79116
|
kind: "numeric",
|
|
79103
|
-
field: "
|
|
79117
|
+
field: "co2",
|
|
79104
79118
|
quantity: t("the CO₂", "la CO₂"),
|
|
79105
79119
|
label: t("CO₂", "CO₂"),
|
|
79106
79120
|
unit: "ppm",
|
|
@@ -79108,7 +79122,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79108
79122
|
},
|
|
79109
79123
|
{
|
|
79110
79124
|
kind: "numeric",
|
|
79111
|
-
field: "
|
|
79125
|
+
field: "voc",
|
|
79112
79126
|
quantity: t("the VOC level", "il livello di COV"),
|
|
79113
79127
|
label: t("VOC", "COV"),
|
|
79114
79128
|
unit: "ppb",
|
|
@@ -79144,7 +79158,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79144
79158
|
noun: t("Light level", "Luminosità ambiente"),
|
|
79145
79159
|
state: [{
|
|
79146
79160
|
kind: "numeric",
|
|
79147
|
-
field: "
|
|
79161
|
+
field: "illuminance",
|
|
79148
79162
|
quantity: t("the light level", "la luminosità"),
|
|
79149
79163
|
label: t("Illuminance", "Illuminamento"),
|
|
79150
79164
|
unit: "lx",
|
|
@@ -79347,7 +79361,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79347
79361
|
noun: t("Humidity", "Umidità"),
|
|
79348
79362
|
state: [{
|
|
79349
79363
|
kind: "numeric",
|
|
79350
|
-
field: "
|
|
79364
|
+
field: "humidity",
|
|
79351
79365
|
quantity: t("the humidity", "l’umidità"),
|
|
79352
79366
|
label: t("Humidity", "Umidità"),
|
|
79353
79367
|
unit: "%",
|
|
@@ -79395,7 +79409,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79395
79409
|
state: [
|
|
79396
79410
|
{
|
|
79397
79411
|
kind: "numeric",
|
|
79398
|
-
field: "
|
|
79412
|
+
field: "power",
|
|
79399
79413
|
quantity: t("the power draw", "il consumo"),
|
|
79400
79414
|
label: t("Power", "Potenza"),
|
|
79401
79415
|
unit: "W",
|
|
@@ -79403,7 +79417,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79403
79417
|
},
|
|
79404
79418
|
{
|
|
79405
79419
|
kind: "numeric",
|
|
79406
|
-
field: "
|
|
79420
|
+
field: "energy",
|
|
79407
79421
|
quantity: t("the energy used", "l’energia consumata"),
|
|
79408
79422
|
label: t("Energy", "Energia"),
|
|
79409
79423
|
unit: "kWh",
|
|
@@ -79411,7 +79425,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79411
79425
|
},
|
|
79412
79426
|
{
|
|
79413
79427
|
kind: "numeric",
|
|
79414
|
-
field: "
|
|
79428
|
+
field: "voltage",
|
|
79415
79429
|
quantity: t("the voltage", "la tensione"),
|
|
79416
79430
|
label: t("Voltage", "Tensione"),
|
|
79417
79431
|
unit: "V",
|
|
@@ -79419,7 +79433,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79419
79433
|
},
|
|
79420
79434
|
{
|
|
79421
79435
|
kind: "numeric",
|
|
79422
|
-
field: "
|
|
79436
|
+
field: "current",
|
|
79423
79437
|
quantity: t("the current", "la corrente"),
|
|
79424
79438
|
label: t("Current", "Corrente"),
|
|
79425
79439
|
unit: "A",
|
|
@@ -79436,13 +79450,6 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79436
79450
|
label: t("Where", "Posizione"),
|
|
79437
79451
|
phrase: t("When {device} is at {value}", "Quando {device} è in {value}"),
|
|
79438
79452
|
icon: "map-pin"
|
|
79439
|
-
}, {
|
|
79440
|
-
kind: "numeric",
|
|
79441
|
-
field: "batteryPercent",
|
|
79442
|
-
quantity: t("the phone battery", "la batteria del telefono"),
|
|
79443
|
-
label: t("Battery", "Batteria"),
|
|
79444
|
-
unit: "%",
|
|
79445
|
-
icon: "battery"
|
|
79446
79453
|
}]
|
|
79447
79454
|
},
|
|
79448
79455
|
"pressure-sensor": {
|
|
@@ -79450,7 +79457,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79450
79457
|
noun: t("Pressure", "Pressione"),
|
|
79451
79458
|
state: [{
|
|
79452
79459
|
kind: "numeric",
|
|
79453
|
-
field: "
|
|
79460
|
+
field: "pressure",
|
|
79454
79461
|
quantity: t("the pressure", "la pressione"),
|
|
79455
79462
|
label: t("Pressure", "Pressione"),
|
|
79456
79463
|
unit: "hPa",
|
|
@@ -79486,7 +79493,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79486
79493
|
noun: t("Temperature", "Temperatura"),
|
|
79487
79494
|
state: [{
|
|
79488
79495
|
kind: "numeric",
|
|
79489
|
-
field: "
|
|
79496
|
+
field: "temperature",
|
|
79490
79497
|
quantity: t("the temperature", "la temperatura"),
|
|
79491
79498
|
label: t("Temperature", "Temperatura"),
|
|
79492
79499
|
unit: "°C",
|
|
@@ -79557,7 +79564,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79557
79564
|
state: [
|
|
79558
79565
|
{
|
|
79559
79566
|
kind: "numeric",
|
|
79560
|
-
field: "
|
|
79567
|
+
field: "level",
|
|
79561
79568
|
quantity: t("the battery level", "il livello della batteria"),
|
|
79562
79569
|
label: t("Battery", "Batteria"),
|
|
79563
79570
|
unit: "%",
|
|
@@ -79599,7 +79606,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79599
79606
|
icon: "battery-charging"
|
|
79600
79607
|
}
|
|
79601
79608
|
],
|
|
79602
|
-
events: { onStatusChanged: { notOperatorFacing: "the
|
|
79609
|
+
events: { onStatusChanged: { notOperatorFacing: "the level / sleeping / charging state triggers each read one field of this change" } },
|
|
79603
79610
|
extraEvents: [{
|
|
79604
79611
|
category: EventCategory.DeviceAwake,
|
|
79605
79612
|
label: t("Woke up", "Risvegliato"),
|
|
@@ -79617,7 +79624,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
79617
79624
|
noun: t("Network link", "Collegamento di rete"),
|
|
79618
79625
|
state: [{
|
|
79619
79626
|
kind: "numeric",
|
|
79620
|
-
field: "
|
|
79627
|
+
field: "signal",
|
|
79621
79628
|
quantity: t("the signal strength", "l’intensità del segnale"),
|
|
79622
79629
|
label: t("Signal", "Segnale"),
|
|
79623
79630
|
unit: "%",
|
|
@@ -84038,7 +84045,7 @@ var AgentUIAddon = class extends BaseAddon {
|
|
|
84038
84045
|
capability: adminUiCapability,
|
|
84039
84046
|
provider: {
|
|
84040
84047
|
getStaticDir: async () => ({ staticDir: path.resolve(__dirname) }),
|
|
84041
|
-
getVersion: async () => ({ version: "1.2.
|
|
84048
|
+
getVersion: async () => ({ version: "1.2.285" })
|
|
84042
84049
|
}
|
|
84043
84050
|
}];
|
|
84044
84051
|
}
|