@camstack/addon-provider-homeassistant 1.2.98 → 1.2.99

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/dist/addon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_dist = require("./dist-CYfXTo_T.js");
2
+ const require_dist = require("./dist-Ds1Z7VBZ.js");
3
3
  let node_crypto = require("node:crypto");
4
4
  let node_zlib = require("node:zlib");
5
5
  //#region src/ha-device-source.ts
package/dist/addon.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as presenceCapability, A as controlCapability, At as EventCategory, B as humiditySensorCapability, C as buildAddonRouteProvider, Ct as number, D as colorCapability, Dt as union, E as climateControlCapability, Et as string, F as eventEmitterCapability, G as motionCapability, H as lawnMowerControlCapability, I as fanControlCapability, J as notifierCapability, K as normalizeUnit, L as floodCapability, M as deviceAdoptionCapability, O as connectivityCapability, Ot as unknown, P as enumSensorCapability, Q as prepareNotification, R as gasCapability, S as brokerCapability, St as literal, T as carbonMonoxideCapability, Tt as record, U as lockControlCapability, V as imageCapability, W as mediaPlayerCapability, Y as numericSensorCapability, Z as powerMeterCapability, _ as automationControlCapability, _t as createEvent, at as temperatureSensorCapability, b as binaryCapability, bt as array, ct as valveCapability, d as TargetSchema, dt as weatherCapability, et as pressureSensorCapability, f as accessoriesCapability, ft as errMsg, g as ambientLightSensorCapability, gt as DeviceType, h as alarmPanelCapability, ht as DeviceRole, it as tamperCapability, j as coverCapability, k as contactCapability, kt as url, lt as vibrationCapability, m as airQualitySensorCapability, mt as DeviceFeature, n as BaseDevice, nt as smokeCapability, ot as updateCapability, p as addonRoutesCapability, q as notificationOutputCapability, r as BaseDeviceProvider, rt as switchCapability, s as EnumSensorDateTimeFormatSchema, st as vacuumControlCapability, tt as scriptRunnerCapability, ut as waterHeaterCapability, v as batteryCapability, w as buttonCapability, wt as object, x as brightnessCapability, xt as discriminatedUnion, y as bestLocationMatch, yt as _enum, z as humidifierCapability } from "./dist-DgTxDihJ.mjs";
1
+ import { $ as presenceCapability, A as controlCapability, At as EventCategory, B as humiditySensorCapability, C as buildAddonRouteProvider, Ct as number, D as colorCapability, Dt as union, E as climateControlCapability, Et as string, F as eventEmitterCapability, G as motionCapability, H as lawnMowerControlCapability, I as fanControlCapability, J as notifierCapability, K as normalizeUnit, L as floodCapability, M as deviceAdoptionCapability, O as connectivityCapability, Ot as unknown, P as enumSensorCapability, Q as prepareNotification, R as gasCapability, S as brokerCapability, St as literal, T as carbonMonoxideCapability, Tt as record, U as lockControlCapability, V as imageCapability, W as mediaPlayerCapability, Y as numericSensorCapability, Z as powerMeterCapability, _ as automationControlCapability, _t as createEvent, at as temperatureSensorCapability, b as binaryCapability, bt as array, ct as valveCapability, d as TargetSchema, dt as weatherCapability, et as pressureSensorCapability, f as accessoriesCapability, ft as errMsg, g as ambientLightSensorCapability, gt as DeviceType, h as alarmPanelCapability, ht as DeviceRole, it as tamperCapability, j as coverCapability, k as contactCapability, kt as url, lt as vibrationCapability, m as airQualitySensorCapability, mt as DeviceFeature, n as BaseDevice, nt as smokeCapability, ot as updateCapability, p as addonRoutesCapability, q as notificationOutputCapability, r as BaseDeviceProvider, rt as switchCapability, s as EnumSensorDateTimeFormatSchema, st as vacuumControlCapability, tt as scriptRunnerCapability, ut as waterHeaterCapability, v as batteryCapability, w as buttonCapability, wt as object, x as brightnessCapability, xt as discriminatedUnion, y as bestLocationMatch, yt as _enum, z as humidifierCapability } from "./dist-B_gh5FO-.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { brotliCompressSync, deflateSync, gzipSync } from "node:zlib";
4
4
  //#region src/ha-device-source.ts
@@ -29671,8 +29671,27 @@ var PrivacyMaskRegionSchema = object({
29671
29671
  /** Current on-camera privacy state — mask master enable + zones + microphone. */
29672
29672
  var PrivacyMaskStatusSchema = object({
29673
29673
  enabled: boolean(),
29674
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
29675
- regions: array(PrivacyMaskRegionSchema),
29674
+ /**
29675
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
29676
+ *
29677
+ * `null` means "no answer" — the provider has never reached this camera
29678
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
29679
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
29680
+ * has no zones": those two look identical to an operator right up to the
29681
+ * moment one of them is acted on, and acting on them differs completely.
29682
+ * The switch group turned an unanswered read into *"nothing is set up for
29683
+ * it to act on"* — an instruction to go and draw a zone that already
29684
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
29685
+ * from deleting the mask it could not read.
29686
+ *
29687
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
29688
+ * has no zones. The distinction is the same one {@link
29689
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
29690
+ * microphone, on the very same payload — both planes come from ONE refresh,
29691
+ * so it was never coherent for one of them to be able to say "unknown"
29692
+ * while the other could not.
29693
+ */
29694
+ regions: array(PrivacyMaskRegionSchema).nullable(),
29676
29695
  /**
29677
29696
  * Is the camera capturing sound right now? Read from the camera, never from
29678
29697
  * a server-side mirror.
@@ -29671,8 +29671,27 @@ var PrivacyMaskRegionSchema = object({
29671
29671
  /** Current on-camera privacy state — mask master enable + zones + microphone. */
29672
29672
  var PrivacyMaskStatusSchema = object({
29673
29673
  enabled: boolean(),
29674
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
29675
- regions: array(PrivacyMaskRegionSchema),
29674
+ /**
29675
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
29676
+ *
29677
+ * `null` means "no answer" — the provider has never reached this camera
29678
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
29679
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
29680
+ * has no zones": those two look identical to an operator right up to the
29681
+ * moment one of them is acted on, and acting on them differs completely.
29682
+ * The switch group turned an unanswered read into *"nothing is set up for
29683
+ * it to act on"* — an instruction to go and draw a zone that already
29684
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
29685
+ * from deleting the mask it could not read.
29686
+ *
29687
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
29688
+ * has no zones. The distinction is the same one {@link
29689
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
29690
+ * microphone, on the very same payload — both planes come from ONE refresh,
29691
+ * so it was never coherent for one of them to be able to say "unknown"
29692
+ * while the other could not.
29693
+ */
29694
+ regions: array(PrivacyMaskRegionSchema).nullable(),
29676
29695
  /**
29677
29696
  * Is the camera capturing sound right now? Read from the camera, never from
29678
29697
  * a server-side mirror.
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  //#endregion
6
- const require_dist = require("../dist-CYfXTo_T.js");
6
+ const require_dist = require("../dist-Ds1Z7VBZ.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  //#region src/ha-export/topics.ts
9
9
  /**
@@ -1,4 +1,4 @@
1
- import { At as EventCategory, C as buildAddonRouteProvider, Et as string, N as deviceExportCapability, X as oauthIntegrationCapability, a as COCO_TO_MACRO, c as FanDirectionSchema, i as CAMERA_SWITCH_ORDER, l as HvacModeSchema, o as CameraSwitchIdSchema, p as addonRoutesCapability, pt as BaseAddon, t as AlarmArmModeSchema, u as MediaPlayerRepeatSchema, vt as nodePin } from "../dist-DgTxDihJ.mjs";
1
+ import { At as EventCategory, C as buildAddonRouteProvider, Et as string, N as deviceExportCapability, X as oauthIntegrationCapability, a as COCO_TO_MACRO, c as FanDirectionSchema, i as CAMERA_SWITCH_ORDER, l as HvacModeSchema, o as CameraSwitchIdSchema, p as addonRoutesCapability, pt as BaseAddon, t as AlarmArmModeSchema, u as MediaPlayerRepeatSchema, vt as nodePin } from "../dist-B_gh5FO-.mjs";
2
2
  import { createHmac, timingSafeEqual } from "node:crypto";
3
3
  //#region src/ha-export/topics.ts
4
4
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-homeassistant",
3
- "version": "1.2.98",
3
+ "version": "1.2.99",
4
4
  "description": "Home Assistant device provider addon for CamStack",
5
5
  "keywords": [
6
6
  "camstack",