@camstack/addon-agent-ui 1.2.97 → 1.2.98

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.
Files changed (2) hide show
  1. package/dist/addon.js +42 -5
  2. package/package.json +1 -1
package/dist/addon.js CHANGED
@@ -19550,7 +19550,17 @@ var EventDensityBucketSchema = object({
19550
19550
  bucketStart: number(),
19551
19551
  motion: number().int(),
19552
19552
  object: number().int(),
19553
- audio: number().int()
19553
+ audio: number().int(),
19554
+ /**
19555
+ * Energy-weighted mean dBFS of the audio events in this bucket — the LEVEL,
19556
+ * as opposed to `audio`, which is their COUNT (D431).
19557
+ *
19558
+ * ABSENT when the bucket holds no audio event. Absence means "nothing was
19559
+ * measured", which is not the same claim as silence, and a lane that cannot
19560
+ * tell them apart paints a quiet hour at full scale — which is exactly what
19561
+ * the count-on-a-level-meter did.
19562
+ */
19563
+ audioDbfs: number().optional()
19554
19564
  });
19555
19565
  /**
19556
19566
  * One camera's row in a `getEventDensityBatch` answer.
@@ -27717,7 +27727,23 @@ var RecordingRangeSchema = object({
27717
27727
  });
27718
27728
  var RecordingAvailabilitySchema = object({
27719
27729
  deviceId: number(),
27720
- ranges: array(RecordingRangeSchema)
27730
+ ranges: array(RecordingRangeSchema),
27731
+ /**
27732
+ * Every profile this camera has footage in — not only the one `ranges`
27733
+ * describes (D433).
27734
+ *
27735
+ * `ranges` answers for ONE profile by design: the timeline is a single bar,
27736
+ * and enumerating all of them triples the directory reads for a bar that
27737
+ * would look identical. But the answer used to say nothing about that, so a
27738
+ * caller asking "what can I export?" read the single preferred profile as
27739
+ * the only one that exists — on this deployment every camera records `high`
27740
+ * AND `low`, the low tree holding 14 GB for camera 615 alone, and the export
27741
+ * UI could not see it.
27742
+ *
27743
+ * Cheap: it is the same shallow directory read the profile CHOICE already
27744
+ * makes. Ask for a specific profile's ranges with the `profile` input.
27745
+ */
27746
+ profilesWithFootage: array(string())
27721
27747
  });
27722
27748
  var RecordingDaysSchema = object({
27723
27749
  deviceId: number(),
@@ -27743,7 +27769,11 @@ var RecordingDaysSchema = object({
27743
27769
  var RecordingAvailabilityForDeviceSchema = object({
27744
27770
  deviceId: number(),
27745
27771
  read: _enum(["read", "unreadable"]),
27746
- ranges: array(RecordingRangeSchema).readonly()
27772
+ ranges: array(RecordingRangeSchema).readonly(),
27773
+ /** Same field, same meaning, as the singular answer (D433). A row that
27774
+ * dropped it would tell a grid caller the archive holds one profile.
27775
+ * Empty on an `'unreadable'` row: nobody looked. */
27776
+ profilesWithFootage: array(string()).readonly()
27747
27777
  });
27748
27778
  /**
27749
27779
  * One camera's row in a `getDaysWithRecordingsBatch` answer. Same rule as
@@ -28033,7 +28063,14 @@ var ReadWindowBytesResultSchema = discriminatedUnion("kind", [object({
28033
28063
  method(object({
28034
28064
  deviceId: number(),
28035
28065
  fromMs: number(),
28036
- toMs: number()
28066
+ toMs: number(),
28067
+ /**
28068
+ * Answer for THIS profile instead of the preferred one (D433). Absent
28069
+ * keeps the timeline's behaviour — one bar, one profile, one set of
28070
+ * reads. `profilesWithFootage` on the answer says what may be asked
28071
+ * for.
28072
+ */
28073
+ profile: string().optional()
28037
28074
  }), RecordingAvailabilitySchema, {
28038
28075
  kind: "query",
28039
28076
  auth: "protected"
@@ -38664,7 +38701,7 @@ var AgentUIAddon = class extends BaseAddon {
38664
38701
  capability: adminUiCapability,
38665
38702
  provider: {
38666
38703
  getStaticDir: async () => ({ staticDir: path.resolve(__dirname) }),
38667
- getVersion: async () => ({ version: "1.2.97" })
38704
+ getVersion: async () => ({ version: "1.2.98" })
38668
38705
  }
38669
38706
  }];
38670
38707
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-agent-ui",
3
- "version": "1.2.97",
3
+ "version": "1.2.98",
4
4
  "description": "Agent UI — lightweight status dashboard served by every agent node",
5
5
  "keywords": [
6
6
  "camstack",