@camstack/addon-provider-reolink 1.2.37 → 1.2.38

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
@@ -19675,6 +19675,39 @@ var snapshotCapability = {
19675
19675
  etag: string().nullable()
19676
19676
  }))),
19677
19677
  /**
19678
+ * The full decision chain for ONE device, for the viewer's debug readout —
19679
+ * the answer to "why does this tile show what it shows" in a single poll:
19680
+ * the battery slice the state was derived from, the resolved state + its
19681
+ * reason, the cached frame's identity/age, whether a wake window is open,
19682
+ * and whether a fresh capture is in flight. Cache-only and capture-free:
19683
+ * a debug read must never wake a battery camera.
19684
+ */
19685
+ getDebugState: systemMethod(object({ deviceId: number() }), object({
19686
+ /** The battery slice as read, or null when the device has none. */
19687
+ battery: object({
19688
+ sleeping: boolean(),
19689
+ lastUpdated: number(),
19690
+ lastContactAt: number().optional()
19691
+ }).nullable(),
19692
+ /** The resolved snapshot state (what the overlay decision used). */
19693
+ state: object({
19694
+ isBattery: boolean(),
19695
+ reason: _enum([
19696
+ "disabled",
19697
+ "sleeping",
19698
+ "unreachable",
19699
+ "waking"
19700
+ ]).nullable()
19701
+ }),
19702
+ /** The cached frame behind the next paint. */
19703
+ frame: object({
19704
+ capturedAt: number().nullable(),
19705
+ ageMs: number().nullable()
19706
+ }),
19707
+ /** A wake window is currently open (the Waking overlay's source). */
19708
+ waking: boolean()
19709
+ })),
19710
+ /**
19678
19711
  * Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
19679
19712
  * that makes those frames current.
19680
19713
  *
@@ -34676,6 +34709,12 @@ Object.freeze({
34676
34709
  addonId: null,
34677
34710
  access: "view"
34678
34711
  },
34712
+ "snapshot.getDebugState": {
34713
+ capName: "snapshot",
34714
+ capScope: "device",
34715
+ addonId: null,
34716
+ access: "view"
34717
+ },
34679
34718
  "snapshot.getSnapshot": {
34680
34719
  capName: "snapshot",
34681
34720
  capScope: "device",
@@ -37273,6 +37312,11 @@ Object.freeze({
37273
37312
  form: "single",
37274
37313
  optional: false
37275
37314
  }],
37315
+ "snapshot.getDebugState": [{
37316
+ name: "deviceId",
37317
+ form: "single",
37318
+ optional: false
37319
+ }],
37276
37320
  "snapshot.getSnapshot": [{
37277
37321
  name: "deviceId",
37278
37322
  form: "single",
package/dist/addon.mjs CHANGED
@@ -19670,6 +19670,39 @@ var snapshotCapability = {
19670
19670
  etag: string().nullable()
19671
19671
  }))),
19672
19672
  /**
19673
+ * The full decision chain for ONE device, for the viewer's debug readout —
19674
+ * the answer to "why does this tile show what it shows" in a single poll:
19675
+ * the battery slice the state was derived from, the resolved state + its
19676
+ * reason, the cached frame's identity/age, whether a wake window is open,
19677
+ * and whether a fresh capture is in flight. Cache-only and capture-free:
19678
+ * a debug read must never wake a battery camera.
19679
+ */
19680
+ getDebugState: systemMethod(object({ deviceId: number() }), object({
19681
+ /** The battery slice as read, or null when the device has none. */
19682
+ battery: object({
19683
+ sleeping: boolean(),
19684
+ lastUpdated: number(),
19685
+ lastContactAt: number().optional()
19686
+ }).nullable(),
19687
+ /** The resolved snapshot state (what the overlay decision used). */
19688
+ state: object({
19689
+ isBattery: boolean(),
19690
+ reason: _enum([
19691
+ "disabled",
19692
+ "sleeping",
19693
+ "unreachable",
19694
+ "waking"
19695
+ ]).nullable()
19696
+ }),
19697
+ /** The cached frame behind the next paint. */
19698
+ frame: object({
19699
+ capturedAt: number().nullable(),
19700
+ ageMs: number().nullable()
19701
+ }),
19702
+ /** A wake window is currently open (the Waking overlay's source). */
19703
+ waking: boolean()
19704
+ })),
19705
+ /**
19673
19706
  * Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
19674
19707
  * that makes those frames current.
19675
19708
  *
@@ -34671,6 +34704,12 @@ Object.freeze({
34671
34704
  addonId: null,
34672
34705
  access: "view"
34673
34706
  },
34707
+ "snapshot.getDebugState": {
34708
+ capName: "snapshot",
34709
+ capScope: "device",
34710
+ addonId: null,
34711
+ access: "view"
34712
+ },
34674
34713
  "snapshot.getSnapshot": {
34675
34714
  capName: "snapshot",
34676
34715
  capScope: "device",
@@ -37268,6 +37307,11 @@ Object.freeze({
37268
37307
  form: "single",
37269
37308
  optional: false
37270
37309
  }],
37310
+ "snapshot.getDebugState": [{
37311
+ name: "deviceId",
37312
+ form: "single",
37313
+ optional: false
37314
+ }],
37271
37315
  "snapshot.getSnapshot": [{
37272
37316
  name: "deviceId",
37273
37317
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-reolink",
3
- "version": "1.2.37",
3
+ "version": "1.2.38",
4
4
  "description": "Reolink camera device provider addon for CamStack — native Baichuan protocol",
5
5
  "keywords": [
6
6
  "camstack",