@camstack/addon-provider-reolink 1.2.0 → 1.2.1

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
@@ -12902,7 +12902,21 @@ var NativeCropResultSchema = object({
12902
12902
  /** Packed rgb (24-bit) pixels of the crop. */
12903
12903
  bytes: _instanceof(Uint8Array),
12904
12904
  width: number().int().positive(),
12905
- height: number().int().positive()
12905
+ height: number().int().positive(),
12906
+ /**
12907
+ * Which source served this crop, so a quality-sensitive consumer (the native
12908
+ * `keyFrame`) can reject a degraded fallback:
12909
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
12910
+ * quality path).
12911
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
12912
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
12913
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
12914
+ *
12915
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
12916
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
12917
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
12918
+ */
12919
+ tier: _enum(["native", "ram-fullframe"]).optional()
12906
12920
  });
12907
12921
  /** Parent detection context passed to `runDetailSubtree` — the crop's
12908
12922
  * originating detection, in FRAME-space coordinates. Reuses
@@ -17918,7 +17932,8 @@ var LinkedDeviceSchema = object({
17918
17932
  deviceId: number(),
17919
17933
  name: string(),
17920
17934
  location: string().nullable(),
17921
- features: array(string())
17935
+ features: array(string()),
17936
+ producesTrackedEvents: boolean().optional()
17922
17937
  });
17923
17938
  var SavedDeviceRowSchema = object({
17924
17939
  /** Numeric id reserved at allocateDeviceId time. */
@@ -19548,6 +19563,7 @@ var TrackSchema = object({
19548
19563
  deviceId: number(),
19549
19564
  className: string(),
19550
19565
  label: string().optional(),
19566
+ producingDeviceName: string().optional(),
19551
19567
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
19552
19568
  source: TrackSourceSchema.optional(),
19553
19569
  firstSeen: number(),
@@ -19685,7 +19701,8 @@ var MediaFileKindEnum = _enum([
19685
19701
  "fullFrameBoxed",
19686
19702
  "faceCrop",
19687
19703
  "plateCrop",
19688
- "keyFrame"
19704
+ "keyFrame",
19705
+ "keyFrameSmall"
19689
19706
  ]);
19690
19707
  var MediaFileSchema = object({
19691
19708
  key: string(),
package/dist/addon.mjs CHANGED
@@ -12897,7 +12897,21 @@ var NativeCropResultSchema = object({
12897
12897
  /** Packed rgb (24-bit) pixels of the crop. */
12898
12898
  bytes: _instanceof(Uint8Array),
12899
12899
  width: number().int().positive(),
12900
- height: number().int().positive()
12900
+ height: number().int().positive(),
12901
+ /**
12902
+ * Which source served this crop, so a quality-sensitive consumer (the native
12903
+ * `keyFrame`) can reject a degraded fallback:
12904
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
12905
+ * quality path).
12906
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
12907
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
12908
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
12909
+ *
12910
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
12911
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
12912
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
12913
+ */
12914
+ tier: _enum(["native", "ram-fullframe"]).optional()
12901
12915
  });
12902
12916
  /** Parent detection context passed to `runDetailSubtree` — the crop's
12903
12917
  * originating detection, in FRAME-space coordinates. Reuses
@@ -17913,7 +17927,8 @@ var LinkedDeviceSchema = object({
17913
17927
  deviceId: number(),
17914
17928
  name: string(),
17915
17929
  location: string().nullable(),
17916
- features: array(string())
17930
+ features: array(string()),
17931
+ producesTrackedEvents: boolean().optional()
17917
17932
  });
17918
17933
  var SavedDeviceRowSchema = object({
17919
17934
  /** Numeric id reserved at allocateDeviceId time. */
@@ -19543,6 +19558,7 @@ var TrackSchema = object({
19543
19558
  deviceId: number(),
19544
19559
  className: string(),
19545
19560
  label: string().optional(),
19561
+ producingDeviceName: string().optional(),
19546
19562
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
19547
19563
  source: TrackSourceSchema.optional(),
19548
19564
  firstSeen: number(),
@@ -19680,7 +19696,8 @@ var MediaFileKindEnum = _enum([
19680
19696
  "fullFrameBoxed",
19681
19697
  "faceCrop",
19682
19698
  "plateCrop",
19683
- "keyFrame"
19699
+ "keyFrame",
19700
+ "keyFrameSmall"
19684
19701
  ]);
19685
19702
  var MediaFileSchema = object({
19686
19703
  key: string(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-reolink",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "Reolink camera device provider addon for CamStack — native Baichuan protocol",
5
5
  "keywords": [
6
6
  "camstack",