@camstack/addon-provider-unifi 0.2.86 → 0.2.87

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
@@ -7627,6 +7627,35 @@ var CameraSwitchGroupSchema = object({
7627
7627
  /** Unix ms when the group was composed server-side. */
7628
7628
  fetchedAt: number()
7629
7629
  });
7630
+ /** One archived note — the operator's words plus enough context to find what
7631
+ * they were looking at, after the track itself is gone. */
7632
+ var ArchivedDebugNoteSchema = object({
7633
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7634
+ * same sentence about the same track lands on the row already there. */
7635
+ id: string(),
7636
+ /** The operator's own words, verbatim. */
7637
+ note: string(),
7638
+ /** The camera. Required — every question here is asked per-camera. */
7639
+ deviceId: number().int(),
7640
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7641
+ * is expected to be gone, and this row is not a reference to it. */
7642
+ sourceTrackId: string(),
7643
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7644
+ archivedAt: number().int(),
7645
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7646
+ trackStartedAt: number().int().nullable(),
7647
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7648
+ trackClass: string().nullable(),
7649
+ /** The track's display label at review time; `null` when it had none. */
7650
+ trackLabel: string().nullable()
7651
+ });
7652
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7653
+ var ArchivedDebugNoteQueryInputSchema = object({
7654
+ /** Restrict to a single camera; omit for every row. */
7655
+ deviceId: number().int().optional(),
7656
+ /** Max rows returned, newest-first. */
7657
+ limit: number().int().min(1).max(1e3).optional()
7658
+ });
7630
7659
  /**
7631
7660
  * Ops-log — the durable, append-only operations audit shared by the
7632
7661
  * recordings and events management surfaces.
@@ -20090,7 +20119,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20090
20119
  deviceId: number(),
20091
20120
  trackId: string(),
20092
20121
  flags: TrackFlagsPatchSchema
20093
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20122
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20094
20123
  kind: "query",
20095
20124
  auth: "admin"
20096
20125
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -37501,6 +37530,12 @@ Object.freeze({
37501
37530
  addonId: null,
37502
37531
  access: "view"
37503
37532
  },
37533
+ "pipelineAnalytics.listArchivedDebugNotes": {
37534
+ capName: "pipeline-analytics",
37535
+ capScope: "device",
37536
+ addonId: null,
37537
+ access: "view"
37538
+ },
37504
37539
  "pipelineAnalytics.listEventKinds": {
37505
37540
  capName: "pipeline-analytics",
37506
37541
  capScope: "device",
@@ -41288,6 +41323,11 @@ Object.freeze({
41288
41323
  form: "array",
41289
41324
  optional: true
41290
41325
  }],
41326
+ "pipelineAnalytics.listArchivedDebugNotes": [{
41327
+ name: "deviceId",
41328
+ form: "single",
41329
+ optional: true
41330
+ }],
41291
41331
  "pipelineAnalytics.listEventKinds": [{
41292
41332
  name: "deviceId",
41293
41333
  form: "single",
package/dist/addon.mjs CHANGED
@@ -7626,6 +7626,35 @@ var CameraSwitchGroupSchema = object({
7626
7626
  /** Unix ms when the group was composed server-side. */
7627
7627
  fetchedAt: number()
7628
7628
  });
7629
+ /** One archived note — the operator's words plus enough context to find what
7630
+ * they were looking at, after the track itself is gone. */
7631
+ var ArchivedDebugNoteSchema = object({
7632
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7633
+ * same sentence about the same track lands on the row already there. */
7634
+ id: string(),
7635
+ /** The operator's own words, verbatim. */
7636
+ note: string(),
7637
+ /** The camera. Required — every question here is asked per-camera. */
7638
+ deviceId: number().int(),
7639
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7640
+ * is expected to be gone, and this row is not a reference to it. */
7641
+ sourceTrackId: string(),
7642
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7643
+ archivedAt: number().int(),
7644
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7645
+ trackStartedAt: number().int().nullable(),
7646
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7647
+ trackClass: string().nullable(),
7648
+ /** The track's display label at review time; `null` when it had none. */
7649
+ trackLabel: string().nullable()
7650
+ });
7651
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7652
+ var ArchivedDebugNoteQueryInputSchema = object({
7653
+ /** Restrict to a single camera; omit for every row. */
7654
+ deviceId: number().int().optional(),
7655
+ /** Max rows returned, newest-first. */
7656
+ limit: number().int().min(1).max(1e3).optional()
7657
+ });
7629
7658
  /**
7630
7659
  * Ops-log — the durable, append-only operations audit shared by the
7631
7660
  * recordings and events management surfaces.
@@ -20089,7 +20118,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20089
20118
  deviceId: number(),
20090
20119
  trackId: string(),
20091
20120
  flags: TrackFlagsPatchSchema
20092
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20121
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20093
20122
  kind: "query",
20094
20123
  auth: "admin"
20095
20124
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -37500,6 +37529,12 @@ Object.freeze({
37500
37529
  addonId: null,
37501
37530
  access: "view"
37502
37531
  },
37532
+ "pipelineAnalytics.listArchivedDebugNotes": {
37533
+ capName: "pipeline-analytics",
37534
+ capScope: "device",
37535
+ addonId: null,
37536
+ access: "view"
37537
+ },
37503
37538
  "pipelineAnalytics.listEventKinds": {
37504
37539
  capName: "pipeline-analytics",
37505
37540
  capScope: "device",
@@ -41287,6 +41322,11 @@ Object.freeze({
41287
41322
  form: "array",
41288
41323
  optional: true
41289
41324
  }],
41325
+ "pipelineAnalytics.listArchivedDebugNotes": [{
41326
+ name: "deviceId",
41327
+ form: "single",
41328
+ optional: true
41329
+ }],
41290
41330
  "pipelineAnalytics.listEventKinds": [{
41291
41331
  name: "deviceId",
41292
41332
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-unifi",
3
- "version": "0.2.86",
3
+ "version": "0.2.87",
4
4
  "description": "UniFi Network controller device-provider addon for CamStack — local-controller infra switches/APs (as containers) + network-client presence. NO cameras/Protect.",
5
5
  "keywords": [
6
6
  "camstack",