@camstack/types 1.1.14 → 1.1.16

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.
@@ -70,6 +70,7 @@ export declare const audioCodecCapability: {
70
70
  readonly name: "audio-codec";
71
71
  readonly scope: "system";
72
72
  readonly mode: "singleton";
73
+ readonly preferredProvider: "audio-codec-ffmpeg";
73
74
  readonly methods: {
74
75
  /** Probe the local runtime and return the supported codec matrix. */
75
76
  readonly listSupportedCodecs: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodReadonly<z.ZodArray<z.ZodObject<{
@@ -51,6 +51,7 @@ export declare const decoderCapability: {
51
51
  readonly name: "decoder";
52
52
  readonly scope: "system";
53
53
  readonly mode: "singleton";
54
+ readonly preferredProvider: "decoder-ffmpeg";
54
55
  readonly methods: {
55
56
  readonly supportsCodec: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
56
57
  codec: z.ZodString;
@@ -122,6 +122,10 @@ export declare const storageCapability: {
122
122
  multi: "multi";
123
123
  }>;
124
124
  defaultsTo: z.ZodOptional<z.ZodString>;
125
+ defaultRoot: z.ZodOptional<z.ZodEnum<{
126
+ data: "data";
127
+ media: "media";
128
+ }>>;
125
129
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
126
130
  readonly upsertLocation: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
127
131
  id: z.ZodString;
@@ -14,6 +14,7 @@ declare const RtspRestreamEntrySchema: z.ZodObject<{
14
14
  export declare const BrokerRtspClientSchema: z.ZodObject<{
15
15
  sessionId: z.ZodString;
16
16
  remoteAddr: z.ZodString;
17
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
17
18
  playing: z.ZodBoolean;
18
19
  muted: z.ZodBoolean;
19
20
  connectedAt: z.ZodNumber;
@@ -135,6 +136,7 @@ export declare const BrokerClientsSchema: z.ZodObject<{
135
136
  rtsp: z.ZodReadonly<z.ZodArray<z.ZodObject<{
136
137
  sessionId: z.ZodString;
137
138
  remoteAddr: z.ZodString;
139
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
138
140
  playing: z.ZodBoolean;
139
141
  muted: z.ZodBoolean;
140
142
  connectedAt: z.ZodNumber;
@@ -475,6 +477,7 @@ export declare const streamBrokerCapability: {
475
477
  rtsp: z.ZodReadonly<z.ZodArray<z.ZodObject<{
476
478
  sessionId: z.ZodString;
477
479
  remoteAddr: z.ZodString;
480
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
478
481
  playing: z.ZodBoolean;
479
482
  muted: z.ZodBoolean;
480
483
  connectedAt: z.ZodNumber;
@@ -11524,6 +11524,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
11524
11524
  cardinality: "single" | "multi";
11525
11525
  description?: string | undefined;
11526
11526
  defaultsTo?: string | undefined;
11527
+ defaultRoot?: "data" | "media" | undefined;
11527
11528
  }[];
11528
11529
  meta: object;
11529
11530
  }>;
@@ -12155,6 +12156,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
12155
12156
  connectedAt: number;
12156
12157
  lastRtpAt: number;
12157
12158
  bytesSent: number;
12159
+ userAgent?: string | null | undefined;
12158
12160
  }[];
12159
12161
  decoded: readonly {
12160
12162
  tag: string;
@@ -25361,6 +25363,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
25361
25363
  cardinality: "single" | "multi";
25362
25364
  description?: string | undefined;
25363
25365
  defaultsTo?: string | undefined;
25366
+ defaultRoot?: "data" | "media" | undefined;
25364
25367
  }[];
25365
25368
  meta: object;
25366
25369
  }>;
@@ -25992,6 +25995,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
25992
25995
  connectedAt: number;
25993
25996
  lastRtpAt: number;
25994
25997
  bytesSent: number;
25998
+ userAgent?: string | null | undefined;
25995
25999
  }[];
25996
26000
  decoded: readonly {
25997
26001
  tag: string;
package/dist/index.js CHANGED
@@ -832,7 +832,21 @@ var StorageLocationDeclarationSchema = zod.z.object({
832
832
  * slots (e.g. `recordingsLow` → `recordings`) so operators only need to
833
833
  * configure the primary location.
834
834
  */
835
- defaultsTo: zod.z.string().optional()
835
+ defaultsTo: zod.z.string().optional(),
836
+ /**
837
+ * Which node root the seeded `<id>:default` instance is placed under on a
838
+ * FRESH install:
839
+ * - `'data'` (default) — the node's data dir (`CAMSTACK_DATA` / boot dir),
840
+ * the appData volume. Right for small/durable data (backups, logs, models).
841
+ * - `'media'` — the dedicated media volume (`CAMSTACK_MEDIA_ROOT`) when that
842
+ * env is set, else falls back to the data root. Right for bulky, hot media
843
+ * (recordings, event media) that should stay off the appData disk.
844
+ *
845
+ * Only affects the seeded default's `basePath`; operators can repoint any
846
+ * location afterwards, and a `defaultsTo` slot inherits its parent's root
847
+ * regardless of this field. Absent (the common case) is treated as `'data'`.
848
+ */
849
+ defaultRoot: zod.z.enum(["data", "media"]).optional()
836
850
  });
837
851
  //#endregion
838
852
  //#region src/interfaces/device-capabilities/camera.ts
@@ -3504,6 +3518,10 @@ var RtspRestreamEntrySchema = zod.z.object({
3504
3518
  var BrokerRtspClientSchema = zod.z.object({
3505
3519
  sessionId: zod.z.string(),
3506
3520
  remoteAddr: zod.z.string(),
3521
+ /** Client `User-Agent` (e.g. `recorder` for the recorder's RTSP pull), or
3522
+ * null/absent when the client sent none. Lets the UI label a consumer by
3523
+ * purpose. Optional so a client built against an older schema stays valid. */
3524
+ userAgent: zod.z.string().nullish(),
3507
3525
  playing: zod.z.boolean(),
3508
3526
  muted: zod.z.boolean(),
3509
3527
  connectedAt: zod.z.number(),
@@ -11888,6 +11906,7 @@ var audioCodecCapability = {
11888
11906
  name: "audio-codec",
11889
11907
  scope: "system",
11890
11908
  mode: "singleton",
11909
+ preferredProvider: "audio-codec-ffmpeg",
11891
11910
  methods: {
11892
11911
  /** Probe the local runtime and return the supported codec matrix. */
11893
11912
  listSupportedCodecs: require_sleep.method(zod.z.void(), zod.z.array(AudioCodecInfoSchema).readonly()),
@@ -12633,6 +12652,7 @@ var decoderCapability = {
12633
12652
  name: "decoder",
12634
12653
  scope: "system",
12635
12654
  mode: "singleton",
12655
+ preferredProvider: "decoder-ffmpeg",
12636
12656
  methods: {
12637
12657
  supportsCodec: require_sleep.method(zod.z.object({ codec: zod.z.string() }), zod.z.boolean()),
12638
12658
  getInfo: require_sleep.method(zod.z.void(), zod.z.object({
package/dist/index.mjs CHANGED
@@ -831,7 +831,21 @@ var StorageLocationDeclarationSchema = z.object({
831
831
  * slots (e.g. `recordingsLow` → `recordings`) so operators only need to
832
832
  * configure the primary location.
833
833
  */
834
- defaultsTo: z.string().optional()
834
+ defaultsTo: z.string().optional(),
835
+ /**
836
+ * Which node root the seeded `<id>:default` instance is placed under on a
837
+ * FRESH install:
838
+ * - `'data'` (default) — the node's data dir (`CAMSTACK_DATA` / boot dir),
839
+ * the appData volume. Right for small/durable data (backups, logs, models).
840
+ * - `'media'` — the dedicated media volume (`CAMSTACK_MEDIA_ROOT`) when that
841
+ * env is set, else falls back to the data root. Right for bulky, hot media
842
+ * (recordings, event media) that should stay off the appData disk.
843
+ *
844
+ * Only affects the seeded default's `basePath`; operators can repoint any
845
+ * location afterwards, and a `defaultsTo` slot inherits its parent's root
846
+ * regardless of this field. Absent (the common case) is treated as `'data'`.
847
+ */
848
+ defaultRoot: z.enum(["data", "media"]).optional()
835
849
  });
836
850
  //#endregion
837
851
  //#region src/interfaces/device-capabilities/camera.ts
@@ -3503,6 +3517,10 @@ var RtspRestreamEntrySchema = z.object({
3503
3517
  var BrokerRtspClientSchema = z.object({
3504
3518
  sessionId: z.string(),
3505
3519
  remoteAddr: z.string(),
3520
+ /** Client `User-Agent` (e.g. `recorder` for the recorder's RTSP pull), or
3521
+ * null/absent when the client sent none. Lets the UI label a consumer by
3522
+ * purpose. Optional so a client built against an older schema stays valid. */
3523
+ userAgent: z.string().nullish(),
3506
3524
  playing: z.boolean(),
3507
3525
  muted: z.boolean(),
3508
3526
  connectedAt: z.number(),
@@ -11887,6 +11905,7 @@ var audioCodecCapability = {
11887
11905
  name: "audio-codec",
11888
11906
  scope: "system",
11889
11907
  mode: "singleton",
11908
+ preferredProvider: "audio-codec-ffmpeg",
11890
11909
  methods: {
11891
11910
  /** Probe the local runtime and return the supported codec matrix. */
11892
11911
  listSupportedCodecs: method(z.void(), z.array(AudioCodecInfoSchema).readonly()),
@@ -12632,6 +12651,7 @@ var decoderCapability = {
12632
12651
  name: "decoder",
12633
12652
  scope: "system",
12634
12653
  mode: "singleton",
12654
+ preferredProvider: "decoder-ffmpeg",
12635
12655
  methods: {
12636
12656
  supportsCodec: method(z.object({ codec: z.string() }), z.boolean()),
12637
12657
  getInfo: method(z.void(), z.object({
@@ -28,6 +28,10 @@ export declare const StorageLocationDeclarationSchema: z.ZodObject<{
28
28
  multi: "multi";
29
29
  }>;
30
30
  defaultsTo: z.ZodOptional<z.ZodString>;
31
+ defaultRoot: z.ZodOptional<z.ZodEnum<{
32
+ data: "data";
33
+ media: "media";
34
+ }>>;
31
35
  }, z.core.$strip>;
32
36
  /** Inferred TypeScript type for `StorageLocationDeclarationSchema`. */
33
37
  export type StorageLocationDeclaration = z.infer<typeof StorageLocationDeclarationSchema>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.1.14",
3
+ "version": "1.1.16",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",