@camstack/addon-notifiers 1.2.86 → 1.2.87

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
@@ -27285,8 +27285,27 @@ var PrivacyMaskRegionSchema = object({
27285
27285
  });
27286
27286
  object({
27287
27287
  enabled: boolean(),
27288
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
27289
- regions: array(PrivacyMaskRegionSchema),
27288
+ /**
27289
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
27290
+ *
27291
+ * `null` means "no answer" — the provider has never reached this camera
27292
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
27293
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
27294
+ * has no zones": those two look identical to an operator right up to the
27295
+ * moment one of them is acted on, and acting on them differs completely.
27296
+ * The switch group turned an unanswered read into *"nothing is set up for
27297
+ * it to act on"* — an instruction to go and draw a zone that already
27298
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
27299
+ * from deleting the mask it could not read.
27300
+ *
27301
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
27302
+ * has no zones. The distinction is the same one {@link
27303
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
27304
+ * microphone, on the very same payload — both planes come from ONE refresh,
27305
+ * so it was never coherent for one of them to be able to say "unknown"
27306
+ * while the other could not.
27307
+ */
27308
+ regions: array(PrivacyMaskRegionSchema).nullable(),
27290
27309
  /**
27291
27310
  * Is the camera capturing sound right now? Read from the camera, never from
27292
27311
  * a server-side mirror.
package/dist/addon.mjs CHANGED
@@ -27258,8 +27258,27 @@ var PrivacyMaskRegionSchema = object({
27258
27258
  });
27259
27259
  object({
27260
27260
  enabled: boolean(),
27261
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
27262
- regions: array(PrivacyMaskRegionSchema),
27261
+ /**
27262
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
27263
+ *
27264
+ * `null` means "no answer" — the provider has never reached this camera
27265
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
27266
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
27267
+ * has no zones": those two look identical to an operator right up to the
27268
+ * moment one of them is acted on, and acting on them differs completely.
27269
+ * The switch group turned an unanswered read into *"nothing is set up for
27270
+ * it to act on"* — an instruction to go and draw a zone that already
27271
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
27272
+ * from deleting the mask it could not read.
27273
+ *
27274
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
27275
+ * has no zones. The distinction is the same one {@link
27276
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
27277
+ * microphone, on the very same payload — both planes come from ONE refresh,
27278
+ * so it was never coherent for one of them to be able to say "unknown"
27279
+ * while the other could not.
27280
+ */
27281
+ regions: array(PrivacyMaskRegionSchema).nullable(),
27263
27282
  /**
27264
27283
  * Is the camera capturing sound right now? Read from the camera, never from
27265
27284
  * a server-side mirror.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-notifiers",
3
- "version": "1.2.86",
3
+ "version": "1.2.87",
4
4
  "description": "System notifiers addon for CamStack — a `notification-output` collection provider hosting per-kind notifier adapters (ntfy, pushover, gotify, telegram, discord, webhook, zentik).",
5
5
  "keywords": [
6
6
  "camstack",