@camstack/addon-provider-amcrest 0.2.84 → 0.2.85
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 +22 -3
- package/dist/addon.mjs +22 -3
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -29339,8 +29339,27 @@ var PrivacyMaskRegionSchema = object({
|
|
|
29339
29339
|
/** Current on-camera privacy state — mask master enable + zones + microphone. */
|
|
29340
29340
|
var PrivacyMaskStatusSchema = object({
|
|
29341
29341
|
enabled: boolean(),
|
|
29342
|
-
/**
|
|
29343
|
-
|
|
29342
|
+
/**
|
|
29343
|
+
* Active zones (normalized 0..1). Length ≤ maxRegions.
|
|
29344
|
+
*
|
|
29345
|
+
* `null` means "no answer" — the provider has never reached this camera
|
|
29346
|
+
* (a cold `runtimeState` slice, a battery camera asleep) or the read
|
|
29347
|
+
* failed. A consumer must render it as UNKNOWN and never as "this camera
|
|
29348
|
+
* has no zones": those two look identical to an operator right up to the
|
|
29349
|
+
* moment one of them is acted on, and acting on them differs completely.
|
|
29350
|
+
* The switch group turned an unanswered read into *"nothing is set up for
|
|
29351
|
+
* it to act on"* — an instruction to go and draw a zone that already
|
|
29352
|
+
* exists — and this editor seeded an EMPTY canvas from it, one Save away
|
|
29353
|
+
* from deleting the mask it could not read.
|
|
29354
|
+
*
|
|
29355
|
+
* Empty-and-answered is `[]` and stays a real answer: this camera genuinely
|
|
29356
|
+
* has no zones. The distinction is the same one {@link
|
|
29357
|
+
* PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
|
|
29358
|
+
* microphone, on the very same payload — both planes come from ONE refresh,
|
|
29359
|
+
* so it was never coherent for one of them to be able to say "unknown"
|
|
29360
|
+
* while the other could not.
|
|
29361
|
+
*/
|
|
29362
|
+
regions: array(PrivacyMaskRegionSchema).nullable(),
|
|
29344
29363
|
/**
|
|
29345
29364
|
* Is the camera capturing sound right now? Read from the camera, never from
|
|
29346
29365
|
* a server-side mirror.
|
|
@@ -45285,7 +45304,7 @@ var AmcrestCamera = class AmcrestCamera extends BaseDevice {
|
|
|
45285
45304
|
logger: this.ctx.logger,
|
|
45286
45305
|
empty: () => ({
|
|
45287
45306
|
enabled: false,
|
|
45288
|
-
regions:
|
|
45307
|
+
regions: null,
|
|
45289
45308
|
audioEnabled: null,
|
|
45290
45309
|
lastFetchedAt: 0
|
|
45291
45310
|
})
|
package/dist/addon.mjs
CHANGED
|
@@ -29340,8 +29340,27 @@ var PrivacyMaskRegionSchema = object({
|
|
|
29340
29340
|
/** Current on-camera privacy state — mask master enable + zones + microphone. */
|
|
29341
29341
|
var PrivacyMaskStatusSchema = object({
|
|
29342
29342
|
enabled: boolean(),
|
|
29343
|
-
/**
|
|
29344
|
-
|
|
29343
|
+
/**
|
|
29344
|
+
* Active zones (normalized 0..1). Length ≤ maxRegions.
|
|
29345
|
+
*
|
|
29346
|
+
* `null` means "no answer" — the provider has never reached this camera
|
|
29347
|
+
* (a cold `runtimeState` slice, a battery camera asleep) or the read
|
|
29348
|
+
* failed. A consumer must render it as UNKNOWN and never as "this camera
|
|
29349
|
+
* has no zones": those two look identical to an operator right up to the
|
|
29350
|
+
* moment one of them is acted on, and acting on them differs completely.
|
|
29351
|
+
* The switch group turned an unanswered read into *"nothing is set up for
|
|
29352
|
+
* it to act on"* — an instruction to go and draw a zone that already
|
|
29353
|
+
* exists — and this editor seeded an EMPTY canvas from it, one Save away
|
|
29354
|
+
* from deleting the mask it could not read.
|
|
29355
|
+
*
|
|
29356
|
+
* Empty-and-answered is `[]` and stays a real answer: this camera genuinely
|
|
29357
|
+
* has no zones. The distinction is the same one {@link
|
|
29358
|
+
* PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
|
|
29359
|
+
* microphone, on the very same payload — both planes come from ONE refresh,
|
|
29360
|
+
* so it was never coherent for one of them to be able to say "unknown"
|
|
29361
|
+
* while the other could not.
|
|
29362
|
+
*/
|
|
29363
|
+
regions: array(PrivacyMaskRegionSchema).nullable(),
|
|
29345
29364
|
/**
|
|
29346
29365
|
* Is the camera capturing sound right now? Read from the camera, never from
|
|
29347
29366
|
* a server-side mirror.
|
|
@@ -45286,7 +45305,7 @@ var AmcrestCamera = class AmcrestCamera extends BaseDevice {
|
|
|
45286
45305
|
logger: this.ctx.logger,
|
|
45287
45306
|
empty: () => ({
|
|
45288
45307
|
enabled: false,
|
|
45289
|
-
regions:
|
|
45308
|
+
regions: null,
|
|
45290
45309
|
audioEnabled: null,
|
|
45291
45310
|
lastFetchedAt: 0
|
|
45292
45311
|
})
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-provider-amcrest",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.85",
|
|
4
4
|
"description": "Amcrest/Dahua camera device provider addon for CamStack — Dahua CGI over HTTP(S) with digest auth (snapshot, RTSP catalog, PTZ, image/day-night config)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|