@camstack/addon-smtp-nodemailer 1.2.81 → 1.2.82

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.
@@ -27131,8 +27131,27 @@ var PrivacyMaskRegionSchema = object({
27131
27131
  });
27132
27132
  object({
27133
27133
  enabled: boolean(),
27134
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
27135
- regions: array(PrivacyMaskRegionSchema),
27134
+ /**
27135
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
27136
+ *
27137
+ * `null` means "no answer" — the provider has never reached this camera
27138
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
27139
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
27140
+ * has no zones": those two look identical to an operator right up to the
27141
+ * moment one of them is acted on, and acting on them differs completely.
27142
+ * The switch group turned an unanswered read into *"nothing is set up for
27143
+ * it to act on"* — an instruction to go and draw a zone that already
27144
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
27145
+ * from deleting the mask it could not read.
27146
+ *
27147
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
27148
+ * has no zones. The distinction is the same one {@link
27149
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
27150
+ * microphone, on the very same payload — both planes come from ONE refresh,
27151
+ * so it was never coherent for one of them to be able to say "unknown"
27152
+ * while the other could not.
27153
+ */
27154
+ regions: array(PrivacyMaskRegionSchema).nullable(),
27136
27155
  /**
27137
27156
  * Is the camera capturing sound right now? Read from the camera, never from
27138
27157
  * a server-side mirror.
@@ -27129,8 +27129,27 @@ var PrivacyMaskRegionSchema = object({
27129
27129
  });
27130
27130
  object({
27131
27131
  enabled: boolean(),
27132
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
27133
- regions: array(PrivacyMaskRegionSchema),
27132
+ /**
27133
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
27134
+ *
27135
+ * `null` means "no answer" — the provider has never reached this camera
27136
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
27137
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
27138
+ * has no zones": those two look identical to an operator right up to the
27139
+ * moment one of them is acted on, and acting on them differs completely.
27140
+ * The switch group turned an unanswered read into *"nothing is set up for
27141
+ * it to act on"* — an instruction to go and draw a zone that already
27142
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
27143
+ * from deleting the mask it could not read.
27144
+ *
27145
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
27146
+ * has no zones. The distinction is the same one {@link
27147
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
27148
+ * microphone, on the very same payload — both planes come from ONE refresh,
27149
+ * so it was never coherent for one of them to be able to say "unknown"
27150
+ * while the other could not.
27151
+ */
27152
+ regions: array(PrivacyMaskRegionSchema).nullable(),
27134
27153
  /**
27135
27154
  * Is the camera capturing sound right now? Read from the camera, never from
27136
27155
  * a server-side mirror.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-smtp-nodemailer",
3
- "version": "1.2.81",
3
+ "version": "1.2.82",
4
4
  "description": "SMTP email provider addon for CamStack — wraps `nodemailer` and registers a `smtp-provider` cap collection entry. Used by magic-link login + notifier addons.",
5
5
  "keywords": [
6
6
  "camstack",