@camstack/addon-provider-hikvision 1.2.23 → 1.2.24

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
@@ -19631,6 +19631,39 @@ var snapshotCapability = {
19631
19631
  etag: string().nullable()
19632
19632
  }))),
19633
19633
  /**
19634
+ * The full decision chain for ONE device, for the viewer's debug readout —
19635
+ * the answer to "why does this tile show what it shows" in a single poll:
19636
+ * the battery slice the state was derived from, the resolved state + its
19637
+ * reason, the cached frame's identity/age, whether a wake window is open,
19638
+ * and whether a fresh capture is in flight. Cache-only and capture-free:
19639
+ * a debug read must never wake a battery camera.
19640
+ */
19641
+ getDebugState: systemMethod(object({ deviceId: number() }), object({
19642
+ /** The battery slice as read, or null when the device has none. */
19643
+ battery: object({
19644
+ sleeping: boolean(),
19645
+ lastUpdated: number(),
19646
+ lastContactAt: number().optional()
19647
+ }).nullable(),
19648
+ /** The resolved snapshot state (what the overlay decision used). */
19649
+ state: object({
19650
+ isBattery: boolean(),
19651
+ reason: _enum([
19652
+ "disabled",
19653
+ "sleeping",
19654
+ "unreachable",
19655
+ "waking"
19656
+ ]).nullable()
19657
+ }),
19658
+ /** The cached frame behind the next paint. */
19659
+ frame: object({
19660
+ capturedAt: number().nullable(),
19661
+ ageMs: number().nullable()
19662
+ }),
19663
+ /** A wake window is currently open (the Waking overlay's source). */
19664
+ waking: boolean()
19665
+ })),
19666
+ /**
19634
19667
  * Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
19635
19668
  * that makes those frames current.
19636
19669
  *
@@ -34744,6 +34777,12 @@ Object.freeze({
34744
34777
  addonId: null,
34745
34778
  access: "view"
34746
34779
  },
34780
+ "snapshot.getDebugState": {
34781
+ capName: "snapshot",
34782
+ capScope: "device",
34783
+ addonId: null,
34784
+ access: "view"
34785
+ },
34747
34786
  "snapshot.getSnapshot": {
34748
34787
  capName: "snapshot",
34749
34788
  capScope: "device",
@@ -37341,6 +37380,11 @@ Object.freeze({
37341
37380
  form: "single",
37342
37381
  optional: false
37343
37382
  }],
37383
+ "snapshot.getDebugState": [{
37384
+ name: "deviceId",
37385
+ form: "single",
37386
+ optional: false
37387
+ }],
37344
37388
  "snapshot.getSnapshot": [{
37345
37389
  name: "deviceId",
37346
37390
  form: "single",
package/dist/addon.mjs CHANGED
@@ -19632,6 +19632,39 @@ var snapshotCapability = {
19632
19632
  etag: string().nullable()
19633
19633
  }))),
19634
19634
  /**
19635
+ * The full decision chain for ONE device, for the viewer's debug readout —
19636
+ * the answer to "why does this tile show what it shows" in a single poll:
19637
+ * the battery slice the state was derived from, the resolved state + its
19638
+ * reason, the cached frame's identity/age, whether a wake window is open,
19639
+ * and whether a fresh capture is in flight. Cache-only and capture-free:
19640
+ * a debug read must never wake a battery camera.
19641
+ */
19642
+ getDebugState: systemMethod(object({ deviceId: number() }), object({
19643
+ /** The battery slice as read, or null when the device has none. */
19644
+ battery: object({
19645
+ sleeping: boolean(),
19646
+ lastUpdated: number(),
19647
+ lastContactAt: number().optional()
19648
+ }).nullable(),
19649
+ /** The resolved snapshot state (what the overlay decision used). */
19650
+ state: object({
19651
+ isBattery: boolean(),
19652
+ reason: _enum([
19653
+ "disabled",
19654
+ "sleeping",
19655
+ "unreachable",
19656
+ "waking"
19657
+ ]).nullable()
19658
+ }),
19659
+ /** The cached frame behind the next paint. */
19660
+ frame: object({
19661
+ capturedAt: number().nullable(),
19662
+ ageMs: number().nullable()
19663
+ }),
19664
+ /** A wake window is currently open (the Waking overlay's source). */
19665
+ waking: boolean()
19666
+ })),
19667
+ /**
19635
19668
  * Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
19636
19669
  * that makes those frames current.
19637
19670
  *
@@ -34745,6 +34778,12 @@ Object.freeze({
34745
34778
  addonId: null,
34746
34779
  access: "view"
34747
34780
  },
34781
+ "snapshot.getDebugState": {
34782
+ capName: "snapshot",
34783
+ capScope: "device",
34784
+ addonId: null,
34785
+ access: "view"
34786
+ },
34748
34787
  "snapshot.getSnapshot": {
34749
34788
  capName: "snapshot",
34750
34789
  capScope: "device",
@@ -37342,6 +37381,11 @@ Object.freeze({
37342
37381
  form: "single",
37343
37382
  optional: false
37344
37383
  }],
37384
+ "snapshot.getDebugState": [{
37385
+ name: "deviceId",
37386
+ form: "single",
37387
+ optional: false
37388
+ }],
37345
37389
  "snapshot.getSnapshot": [{
37346
37390
  name: "deviceId",
37347
37391
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-hikvision",
3
- "version": "1.2.23",
3
+ "version": "1.2.24",
4
4
  "description": "Hikvision camera device provider addon for CamStack — ISAPI over HTTP(S) with digest auth (snapshot, alarm stream, RTSP discovery)",
5
5
  "keywords": [
6
6
  "camstack",