@camstack/addon-provider-tuya 0.2.82 → 0.2.83

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
@@ -30039,8 +30039,27 @@ var PrivacyMaskRegionSchema = object({
30039
30039
  /** Current on-camera privacy state — mask master enable + zones + microphone. */
30040
30040
  var PrivacyMaskStatusSchema = object({
30041
30041
  enabled: boolean(),
30042
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
30043
- regions: array(PrivacyMaskRegionSchema),
30042
+ /**
30043
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
30044
+ *
30045
+ * `null` means "no answer" — the provider has never reached this camera
30046
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
30047
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
30048
+ * has no zones": those two look identical to an operator right up to the
30049
+ * moment one of them is acted on, and acting on them differs completely.
30050
+ * The switch group turned an unanswered read into *"nothing is set up for
30051
+ * it to act on"* — an instruction to go and draw a zone that already
30052
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
30053
+ * from deleting the mask it could not read.
30054
+ *
30055
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
30056
+ * has no zones. The distinction is the same one {@link
30057
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
30058
+ * microphone, on the very same payload — both planes come from ONE refresh,
30059
+ * so it was never coherent for one of them to be able to say "unknown"
30060
+ * while the other could not.
30061
+ */
30062
+ regions: array(PrivacyMaskRegionSchema).nullable(),
30044
30063
  /**
30045
30064
  * Is the camera capturing sound right now? Read from the camera, never from
30046
30065
  * a server-side mirror.
package/dist/addon.mjs CHANGED
@@ -30038,8 +30038,27 @@ var PrivacyMaskRegionSchema = object({
30038
30038
  /** Current on-camera privacy state — mask master enable + zones + microphone. */
30039
30039
  var PrivacyMaskStatusSchema = object({
30040
30040
  enabled: boolean(),
30041
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
30042
- regions: array(PrivacyMaskRegionSchema),
30041
+ /**
30042
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
30043
+ *
30044
+ * `null` means "no answer" — the provider has never reached this camera
30045
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
30046
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
30047
+ * has no zones": those two look identical to an operator right up to the
30048
+ * moment one of them is acted on, and acting on them differs completely.
30049
+ * The switch group turned an unanswered read into *"nothing is set up for
30050
+ * it to act on"* — an instruction to go and draw a zone that already
30051
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
30052
+ * from deleting the mask it could not read.
30053
+ *
30054
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
30055
+ * has no zones. The distinction is the same one {@link
30056
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
30057
+ * microphone, on the very same payload — both planes come from ONE refresh,
30058
+ * so it was never coherent for one of them to be able to say "unknown"
30059
+ * while the other could not.
30060
+ */
30061
+ regions: array(PrivacyMaskRegionSchema).nullable(),
30043
30062
  /**
30044
30063
  * Is the camera capturing sound right now? Read from the camera, never from
30045
30064
  * a server-side mirror.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-tuya",
3
- "version": "0.2.82",
3
+ "version": "0.2.83",
4
4
  "description": "Tuya / Smart Life device-provider addon for CamStack — account-onboarded (Tuya IoT cloud fetch of device localKeys) + LOCAL DP control via the @apocaliss92/nodetuya encrypted-LAN client, exposing switch / water-heater-family kettle entities",
5
5
  "keywords": [
6
6
  "camstack",