@camstack/addon-decoder-ffmpeg 1.2.10 → 1.2.12
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/index.js +357 -30
- package/dist/index.mjs +357 -30
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -7552,12 +7552,11 @@ var RecordingConfigSchema = object({
|
|
|
7552
7552
|
/**
|
|
7553
7553
|
* Entity-relocation job state (storage entity-routing spec, Phase 4).
|
|
7554
7554
|
*
|
|
7555
|
-
* One shape shared by the recorder
|
|
7556
|
-
*
|
|
7557
|
-
*
|
|
7558
|
-
*
|
|
7559
|
-
*
|
|
7560
|
-
* row on the owning addon's surface.
|
|
7555
|
+
* One shape shared by the recorder and pipeline-analytics internal movers.
|
|
7556
|
+
* The public admin surface is `storage-migration`; child jobs remain in RAM
|
|
7557
|
+
* because copy-if-absent, verify, delete and index/row repoint are resumable.
|
|
7558
|
+
* Each completed/failed run also lands one durable ops-log row on its owning
|
|
7559
|
+
* addon surface.
|
|
7561
7560
|
*/
|
|
7562
7561
|
var RelocateJobStateSchema = _enum([
|
|
7563
7562
|
"running",
|
|
@@ -7584,19 +7583,100 @@ var RelocateJobSchema = object({
|
|
|
7584
7583
|
finishedAt: number().nullable(),
|
|
7585
7584
|
error: string().nullable()
|
|
7586
7585
|
});
|
|
7586
|
+
/** Profile-derived footage selection used only by the migration coordinator:
|
|
7587
|
+
* `recordings` owns high+mid; `recordingsLow` owns low. */
|
|
7588
|
+
var RelocateFootageClassSchema = _enum(["recordings", "recordingsLow"]);
|
|
7587
7589
|
var RelocateFootageInputSchema = object({
|
|
7588
|
-
deviceId: number().optional(),
|
|
7589
7590
|
fromLocationId: string(),
|
|
7590
7591
|
toLocationId: string(),
|
|
7591
7592
|
entities: array(_enum(["segments"])).optional(),
|
|
7593
|
+
/** Limits relocation to the logical profile class. Omit only for the
|
|
7594
|
+
* pre-orchestration compatibility path. */
|
|
7595
|
+
footageClass: RelocateFootageClassSchema.optional(),
|
|
7592
7596
|
/** Copy throttle in MB/s (default 40) — the drain is a background chore,
|
|
7593
7597
|
* never allowed to starve live writers. */
|
|
7594
7598
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7595
7599
|
});
|
|
7596
|
-
|
|
7597
|
-
|
|
7600
|
+
/** Internal, lease-scoped participant operation. It is intentionally separate
|
|
7601
|
+
* from persistent recording settings: a migration never changes
|
|
7602
|
+
* `RecordingConfig.enabled` or camera wrapper bindings. */
|
|
7603
|
+
var StorageMigrationLeaseInputSchema = object({ leaseId: string().min(1) });
|
|
7604
|
+
var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: string().min(1) });
|
|
7605
|
+
var StorageMigrationMediaMoveInputSchema = object({
|
|
7598
7606
|
toLocationId: string(),
|
|
7599
7607
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7608
|
+
}).extend({ leaseId: string().min(1) });
|
|
7609
|
+
/** The independently selectable logical storage classes. `recordings`
|
|
7610
|
+
* encompasses the high and mid segment profiles; `recordingsLow` is low
|
|
7611
|
+
* segments; `eventMedia` is post-analysis blobs. */
|
|
7612
|
+
var StorageMigrationClassSchema = _enum([
|
|
7613
|
+
"recordings",
|
|
7614
|
+
"recordingsLow",
|
|
7615
|
+
"eventMedia"
|
|
7616
|
+
]);
|
|
7617
|
+
/** A destination is always an existing, fully-qualified location id. The
|
|
7618
|
+
* migration API intentionally never changes a source location's `basePath`:
|
|
7619
|
+
* callers create a new `<type>:<slug>` location, then select it here. */
|
|
7620
|
+
var StorageMigrationDestinationsSchema = object({
|
|
7621
|
+
recordings: string().min(1).optional(),
|
|
7622
|
+
recordingsLow: string().min(1).optional(),
|
|
7623
|
+
eventMedia: string().min(1).optional()
|
|
7624
|
+
}).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
|
|
7625
|
+
/** Shared input for planning and starting an orchestrated storage migration. */
|
|
7626
|
+
var StorageMigrationInputSchema = object({
|
|
7627
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7628
|
+
throttleMbps: number().min(1).max(1e3).optional()
|
|
7629
|
+
});
|
|
7630
|
+
/** The durable coordinator state machine. The only phase that changes default
|
|
7631
|
+
* locations is `repointing`, after every selected mover has completed and been
|
|
7632
|
+
* verified. */
|
|
7633
|
+
var StorageMigrationPhaseSchema = _enum([
|
|
7634
|
+
"planning",
|
|
7635
|
+
"pausing",
|
|
7636
|
+
"moving",
|
|
7637
|
+
"verifying",
|
|
7638
|
+
"repointing",
|
|
7639
|
+
"refreshing",
|
|
7640
|
+
"resuming",
|
|
7641
|
+
"done",
|
|
7642
|
+
"failed",
|
|
7643
|
+
"cancelled"
|
|
7644
|
+
]);
|
|
7645
|
+
var StorageMigrationParticipantSchema = _enum([
|
|
7646
|
+
"pipeline",
|
|
7647
|
+
"recorder",
|
|
7648
|
+
"analytics"
|
|
7649
|
+
]);
|
|
7650
|
+
var StorageMigrationMoveSchema = object({
|
|
7651
|
+
storageClass: StorageMigrationClassSchema,
|
|
7652
|
+
fromLocationId: string(),
|
|
7653
|
+
toLocationId: string(),
|
|
7654
|
+
moverJobId: string().nullable(),
|
|
7655
|
+
state: RelocateJobStateSchema.nullable(),
|
|
7656
|
+
error: string().nullable()
|
|
7657
|
+
});
|
|
7658
|
+
var StorageMigrationJobSchema = object({
|
|
7659
|
+
jobId: string(),
|
|
7660
|
+
phase: StorageMigrationPhaseSchema,
|
|
7661
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7662
|
+
throttleMbps: number(),
|
|
7663
|
+
moves: array(StorageMigrationMoveSchema),
|
|
7664
|
+
pauseLeaseId: string().nullable(),
|
|
7665
|
+
pausedParticipants: array(StorageMigrationParticipantSchema),
|
|
7666
|
+
repointed: boolean(),
|
|
7667
|
+
cancelRequested: boolean(),
|
|
7668
|
+
startedAt: number(),
|
|
7669
|
+
updatedAt: number(),
|
|
7670
|
+
finishedAt: number().nullable(),
|
|
7671
|
+
error: string().nullable()
|
|
7672
|
+
});
|
|
7673
|
+
var StorageMigrationPlanSchema = object({
|
|
7674
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7675
|
+
moves: array(object({
|
|
7676
|
+
storageClass: StorageMigrationClassSchema,
|
|
7677
|
+
fromLocationId: string(),
|
|
7678
|
+
toLocationId: string()
|
|
7679
|
+
}))
|
|
7600
7680
|
});
|
|
7601
7681
|
/**
|
|
7602
7682
|
* `StorageLocationType` — an addon-declared id that identifies the *kind* of
|
|
@@ -16102,13 +16182,19 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
16102
16182
|
}), method(object({ deviceId: number() }), EventPruneCountsSchema, {
|
|
16103
16183
|
kind: "mutation",
|
|
16104
16184
|
auth: "admin"
|
|
16105
|
-
}), method(
|
|
16185
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
16106
16186
|
kind: "mutation",
|
|
16107
16187
|
auth: "admin"
|
|
16108
|
-
}), method(object({
|
|
16109
|
-
kind: "
|
|
16188
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
16189
|
+
kind: "mutation",
|
|
16110
16190
|
auth: "admin"
|
|
16111
|
-
}), method(
|
|
16191
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
16192
|
+
kind: "mutation",
|
|
16193
|
+
auth: "admin"
|
|
16194
|
+
}), method(StorageMigrationMediaMoveInputSchema, object({ jobId: string() }), {
|
|
16195
|
+
kind: "mutation",
|
|
16196
|
+
auth: "admin"
|
|
16197
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16112
16198
|
kind: "mutation",
|
|
16113
16199
|
auth: "admin"
|
|
16114
16200
|
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
@@ -17605,7 +17691,13 @@ var NodeInferenceDevicesSchema = object({
|
|
|
17605
17691
|
reachable: boolean(),
|
|
17606
17692
|
devices: array(NodeInferenceDeviceSchema).readonly()
|
|
17607
17693
|
});
|
|
17608
|
-
method(object({
|
|
17694
|
+
method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
17695
|
+
kind: "mutation",
|
|
17696
|
+
auth: "admin"
|
|
17697
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
17698
|
+
kind: "mutation",
|
|
17699
|
+
auth: "admin"
|
|
17700
|
+
}), method(object({
|
|
17609
17701
|
deviceId: number(),
|
|
17610
17702
|
agentNodeId: string()
|
|
17611
17703
|
}), object({ success: literal(true) }), {
|
|
@@ -18279,6 +18371,13 @@ method(object({ locationId: string() }), EvictableUsageSchema), method(object({
|
|
|
18279
18371
|
locationId: string(),
|
|
18280
18372
|
targetBytes: number().int().positive()
|
|
18281
18373
|
}), EvictResultSchema, { kind: "mutation" });
|
|
18374
|
+
method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin" }), method(StorageMigrationInputSchema, object({ jobId: string() }), {
|
|
18375
|
+
kind: "mutation",
|
|
18376
|
+
auth: "admin"
|
|
18377
|
+
}), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
18378
|
+
kind: "mutation",
|
|
18379
|
+
auth: "admin"
|
|
18380
|
+
});
|
|
18282
18381
|
var ProviderInfoSchema = discriminatedUnion("shouldSaveDiskSpace", [object({
|
|
18283
18382
|
providerId: string().min(1),
|
|
18284
18383
|
displayName: string().min(1),
|
|
@@ -18382,7 +18481,67 @@ var TerminalProfileInfoSchema = object({
|
|
|
18382
18481
|
label: string(),
|
|
18383
18482
|
description: string().optional()
|
|
18384
18483
|
});
|
|
18385
|
-
|
|
18484
|
+
/**
|
|
18485
|
+
* A durable operator-created Terminal instance. Profiles are templates; only
|
|
18486
|
+
* an instance declares a camera.
|
|
18487
|
+
*/
|
|
18488
|
+
var TerminalInstanceInfoSchema = object({
|
|
18489
|
+
instanceId: string(),
|
|
18490
|
+
cameraStableId: string(),
|
|
18491
|
+
nodeId: string(),
|
|
18492
|
+
profileId: string(),
|
|
18493
|
+
profileLabel: string(),
|
|
18494
|
+
name: string(),
|
|
18495
|
+
enabled: boolean()
|
|
18496
|
+
});
|
|
18497
|
+
var TerminalLegacyCameraSchema = object({
|
|
18498
|
+
stableId: string(),
|
|
18499
|
+
nodeId: string(),
|
|
18500
|
+
profileId: string(),
|
|
18501
|
+
profileLabel: string(),
|
|
18502
|
+
name: string(),
|
|
18503
|
+
/** Only legacy monitor cameras can retain their historic stable identity. */
|
|
18504
|
+
adoptable: boolean()
|
|
18505
|
+
});
|
|
18506
|
+
var TerminalOutputEventSchema = discriminatedUnion("kind", [object({
|
|
18507
|
+
seq: number().int().positive(),
|
|
18508
|
+
kind: literal("data"),
|
|
18509
|
+
data: string()
|
|
18510
|
+
}), object({
|
|
18511
|
+
seq: number().int().positive(),
|
|
18512
|
+
kind: literal("exit"),
|
|
18513
|
+
exitCode: number().int(),
|
|
18514
|
+
signal: number().int().optional()
|
|
18515
|
+
})]);
|
|
18516
|
+
var TerminalOutputBatchSchema = object({
|
|
18517
|
+
cursor: number().int().nonnegative(),
|
|
18518
|
+
reset: boolean(),
|
|
18519
|
+
snapshot: string().optional(),
|
|
18520
|
+
events: array(TerminalOutputEventSchema).readonly()
|
|
18521
|
+
});
|
|
18522
|
+
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18523
|
+
targetNodeId: string().min(1),
|
|
18524
|
+
profileId: string().min(1),
|
|
18525
|
+
name: string().trim().min(1).max(160).optional()
|
|
18526
|
+
}), TerminalInstanceInfoSchema, {
|
|
18527
|
+
kind: "mutation",
|
|
18528
|
+
auth: "admin"
|
|
18529
|
+
}), method(object({ instanceId: string().min(1) }), _void(), {
|
|
18530
|
+
kind: "mutation",
|
|
18531
|
+
auth: "admin"
|
|
18532
|
+
}), method(object({
|
|
18533
|
+
instanceId: string().min(1),
|
|
18534
|
+
enabled: boolean()
|
|
18535
|
+
}), TerminalInstanceInfoSchema, {
|
|
18536
|
+
kind: "mutation",
|
|
18537
|
+
auth: "admin"
|
|
18538
|
+
}), method(_void(), array(TerminalLegacyCameraSchema).readonly(), { auth: "admin" }), method(object({
|
|
18539
|
+
stableId: string().min(1),
|
|
18540
|
+
name: string().trim().min(1).max(160).optional()
|
|
18541
|
+
}), TerminalInstanceInfoSchema, {
|
|
18542
|
+
kind: "mutation",
|
|
18543
|
+
auth: "admin"
|
|
18544
|
+
}), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18386
18545
|
profileId: string(),
|
|
18387
18546
|
cols: number().int().positive(),
|
|
18388
18547
|
rows: number().int().positive()
|
|
@@ -18396,6 +18555,26 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
|
|
|
18396
18555
|
}), _void(), {
|
|
18397
18556
|
kind: "mutation",
|
|
18398
18557
|
auth: "admin"
|
|
18558
|
+
}), method(object({
|
|
18559
|
+
sessionId: string(),
|
|
18560
|
+
afterSeq: number().int().nonnegative(),
|
|
18561
|
+
waitMs: number().int().min(0).max(2e3).default(0),
|
|
18562
|
+
/**
|
|
18563
|
+
* Wait when a just-opened session has no output yet. Kept opt-in so a
|
|
18564
|
+
* browser's initial repaint remains immediate; the camera snapshot
|
|
18565
|
+
* relay uses it to avoid encoding a blank startup frame.
|
|
18566
|
+
*/
|
|
18567
|
+
waitForOutput: boolean().optional()
|
|
18568
|
+
}), TerminalOutputBatchSchema, {
|
|
18569
|
+
kind: "mutation",
|
|
18570
|
+
auth: "admin",
|
|
18571
|
+
timeoutMs: 15e3
|
|
18572
|
+
}), method(object({
|
|
18573
|
+
sessionId: string(),
|
|
18574
|
+
data: string().max(64 * 1024)
|
|
18575
|
+
}), _void(), {
|
|
18576
|
+
kind: "mutation",
|
|
18577
|
+
auth: "admin"
|
|
18399
18578
|
}), method(object({ sessionId: string() }), _void(), {
|
|
18400
18579
|
kind: "mutation",
|
|
18401
18580
|
auth: "admin"
|
|
@@ -20326,6 +20505,7 @@ var FaceInfoSchema = object({
|
|
|
20326
20505
|
var FaceFilterEnum = _enum([
|
|
20327
20506
|
"unassigned",
|
|
20328
20507
|
"recognized",
|
|
20508
|
+
"identified",
|
|
20329
20509
|
"all"
|
|
20330
20510
|
]);
|
|
20331
20511
|
var MediaFileLiteSchema$1 = object({
|
|
@@ -20354,6 +20534,8 @@ method(_void(), array(IdentitySchema).readonly()), method(object({ name: string(
|
|
|
20354
20534
|
kind: "mutation",
|
|
20355
20535
|
auth: "admin"
|
|
20356
20536
|
}), method(object({
|
|
20537
|
+
/** Restrict to one camera. Absent keeps the cluster-wide gallery view. */
|
|
20538
|
+
deviceId: number().int().optional(),
|
|
20357
20539
|
limit: number().int().positive().optional(),
|
|
20358
20540
|
filter: FaceFilterEnum.optional(),
|
|
20359
20541
|
/**
|
|
@@ -22119,6 +22301,10 @@ var OsdSourceSchema = discriminatedUnion("kind", [
|
|
|
22119
22301
|
capName: string().min(1).max(64),
|
|
22120
22302
|
/** Dot path inside the slice, e.g. `detected`, `value`, `mode`. */
|
|
22121
22303
|
valuePath: string().min(1).max(64)
|
|
22304
|
+
}),
|
|
22305
|
+
object({
|
|
22306
|
+
kind: literal("latest-recognition"),
|
|
22307
|
+
recognition: _enum(["person", "plate"])
|
|
22122
22308
|
})
|
|
22123
22309
|
]);
|
|
22124
22310
|
var OsdSlotBindingSchema = object({
|
|
@@ -22224,6 +22410,15 @@ method(object({ deviceId: number().int() }), object({
|
|
|
22224
22410
|
}), object({ success: literal(true) }), {
|
|
22225
22411
|
kind: "mutation",
|
|
22226
22412
|
auth: "admin"
|
|
22413
|
+
}), method(object({
|
|
22414
|
+
sourceDeviceId: number().int(),
|
|
22415
|
+
targetDeviceId: number().int()
|
|
22416
|
+
}), object({
|
|
22417
|
+
copied: number().int().nonnegative(),
|
|
22418
|
+
skipped: number().int().nonnegative()
|
|
22419
|
+
}), {
|
|
22420
|
+
kind: "mutation",
|
|
22421
|
+
auth: "admin"
|
|
22227
22422
|
}), method(object({
|
|
22228
22423
|
deviceId: number().int(),
|
|
22229
22424
|
slotId: string().min(1),
|
|
@@ -23109,13 +23304,19 @@ method(object({
|
|
|
23109
23304
|
}), {
|
|
23110
23305
|
kind: "mutation",
|
|
23111
23306
|
auth: "admin"
|
|
23112
|
-
}), method(
|
|
23307
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
23113
23308
|
kind: "mutation",
|
|
23114
23309
|
auth: "admin"
|
|
23115
|
-
}), method(object({
|
|
23116
|
-
kind: "
|
|
23310
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
23311
|
+
kind: "mutation",
|
|
23117
23312
|
auth: "admin"
|
|
23118
|
-
}), method(
|
|
23313
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
23314
|
+
kind: "mutation",
|
|
23315
|
+
auth: "admin"
|
|
23316
|
+
}), method(StorageMigrationFootageMoveInputSchema, object({ jobId: string() }), {
|
|
23317
|
+
kind: "mutation",
|
|
23318
|
+
auth: "admin"
|
|
23319
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
23119
23320
|
kind: "mutation",
|
|
23120
23321
|
auth: "admin"
|
|
23121
23322
|
});
|
|
@@ -27237,6 +27438,12 @@ Object.freeze({
|
|
|
27237
27438
|
addonId: null,
|
|
27238
27439
|
access: "delete"
|
|
27239
27440
|
},
|
|
27441
|
+
"osdManager.copyDeviceConfiguration": {
|
|
27442
|
+
capName: "osd-manager",
|
|
27443
|
+
capScope: "system",
|
|
27444
|
+
addonId: null,
|
|
27445
|
+
access: "create"
|
|
27446
|
+
},
|
|
27240
27447
|
"osdManager.getConditionSupport": {
|
|
27241
27448
|
capName: "osd-manager",
|
|
27242
27449
|
capScope: "system",
|
|
@@ -27333,7 +27540,7 @@ Object.freeze({
|
|
|
27333
27540
|
addonId: null,
|
|
27334
27541
|
access: "create"
|
|
27335
27542
|
},
|
|
27336
|
-
"pipelineAnalytics.
|
|
27543
|
+
"pipelineAnalytics.cancelStorageMigrationMove": {
|
|
27337
27544
|
capName: "pipeline-analytics",
|
|
27338
27545
|
capScope: "device",
|
|
27339
27546
|
addonId: null,
|
|
@@ -27405,12 +27612,6 @@ Object.freeze({
|
|
|
27405
27612
|
addonId: null,
|
|
27406
27613
|
access: "view"
|
|
27407
27614
|
},
|
|
27408
|
-
"pipelineAnalytics.getMediaRelocateStatus": {
|
|
27409
|
-
capName: "pipeline-analytics",
|
|
27410
|
-
capScope: "device",
|
|
27411
|
-
addonId: null,
|
|
27412
|
-
access: "view"
|
|
27413
|
-
},
|
|
27414
27615
|
"pipelineAnalytics.getMotionEvents": {
|
|
27415
27616
|
capName: "pipeline-analytics",
|
|
27416
27617
|
capScope: "device",
|
|
@@ -27447,6 +27648,12 @@ Object.freeze({
|
|
|
27447
27648
|
addonId: null,
|
|
27448
27649
|
access: "view"
|
|
27449
27650
|
},
|
|
27651
|
+
"pipelineAnalytics.getStorageMigrationMoveStatus": {
|
|
27652
|
+
capName: "pipeline-analytics",
|
|
27653
|
+
capScope: "device",
|
|
27654
|
+
addonId: null,
|
|
27655
|
+
access: "view"
|
|
27656
|
+
},
|
|
27450
27657
|
"pipelineAnalytics.getTrack": {
|
|
27451
27658
|
capName: "pipeline-analytics",
|
|
27452
27659
|
capScope: "device",
|
|
@@ -27525,6 +27732,12 @@ Object.freeze({
|
|
|
27525
27732
|
addonId: null,
|
|
27526
27733
|
access: "view"
|
|
27527
27734
|
},
|
|
27735
|
+
"pipelineAnalytics.pauseForStorageMigration": {
|
|
27736
|
+
capName: "pipeline-analytics",
|
|
27737
|
+
capScope: "device",
|
|
27738
|
+
addonId: null,
|
|
27739
|
+
access: "create"
|
|
27740
|
+
},
|
|
27528
27741
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
27529
27742
|
capName: "pipeline-analytics",
|
|
27530
27743
|
capScope: "device",
|
|
@@ -27555,7 +27768,7 @@ Object.freeze({
|
|
|
27555
27768
|
addonId: null,
|
|
27556
27769
|
access: "create"
|
|
27557
27770
|
},
|
|
27558
|
-
"pipelineAnalytics.
|
|
27771
|
+
"pipelineAnalytics.refreshStorageLocationsForMigration": {
|
|
27559
27772
|
capName: "pipeline-analytics",
|
|
27560
27773
|
capScope: "device",
|
|
27561
27774
|
addonId: null,
|
|
@@ -27567,6 +27780,12 @@ Object.freeze({
|
|
|
27567
27780
|
addonId: null,
|
|
27568
27781
|
access: "create"
|
|
27569
27782
|
},
|
|
27783
|
+
"pipelineAnalytics.resumeForStorageMigration": {
|
|
27784
|
+
capName: "pipeline-analytics",
|
|
27785
|
+
capScope: "device",
|
|
27786
|
+
addonId: null,
|
|
27787
|
+
access: "create"
|
|
27788
|
+
},
|
|
27570
27789
|
"pipelineAnalytics.saveRetrainAnnotations": {
|
|
27571
27790
|
capName: "pipeline-analytics",
|
|
27572
27791
|
capScope: "device",
|
|
@@ -27591,6 +27810,12 @@ Object.freeze({
|
|
|
27591
27810
|
addonId: null,
|
|
27592
27811
|
access: "create"
|
|
27593
27812
|
},
|
|
27813
|
+
"pipelineAnalytics.startStorageMigrationMove": {
|
|
27814
|
+
capName: "pipeline-analytics",
|
|
27815
|
+
capScope: "device",
|
|
27816
|
+
addonId: null,
|
|
27817
|
+
access: "create"
|
|
27818
|
+
},
|
|
27594
27819
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
27595
27820
|
capName: "pipeline-analytics",
|
|
27596
27821
|
capScope: "device",
|
|
@@ -27957,6 +28182,12 @@ Object.freeze({
|
|
|
27957
28182
|
addonId: null,
|
|
27958
28183
|
access: "view"
|
|
27959
28184
|
},
|
|
28185
|
+
"pipelineOrchestrator.pauseForStorageMigration": {
|
|
28186
|
+
capName: "pipeline-orchestrator",
|
|
28187
|
+
capScope: "system",
|
|
28188
|
+
addonId: null,
|
|
28189
|
+
access: "create"
|
|
28190
|
+
},
|
|
27960
28191
|
"pipelineOrchestrator.rebalance": {
|
|
27961
28192
|
capName: "pipeline-orchestrator",
|
|
27962
28193
|
capScope: "system",
|
|
@@ -27981,6 +28212,12 @@ Object.freeze({
|
|
|
27981
28212
|
addonId: null,
|
|
27982
28213
|
access: "view"
|
|
27983
28214
|
},
|
|
28215
|
+
"pipelineOrchestrator.resumeForStorageMigration": {
|
|
28216
|
+
capName: "pipeline-orchestrator",
|
|
28217
|
+
capScope: "system",
|
|
28218
|
+
addonId: null,
|
|
28219
|
+
access: "create"
|
|
28220
|
+
},
|
|
27984
28221
|
"pipelineOrchestrator.saveTemplate": {
|
|
27985
28222
|
capName: "pipeline-orchestrator",
|
|
27986
28223
|
capScope: "system",
|
|
@@ -28377,7 +28614,7 @@ Object.freeze({
|
|
|
28377
28614
|
addonId: null,
|
|
28378
28615
|
access: "create"
|
|
28379
28616
|
},
|
|
28380
|
-
"recording.
|
|
28617
|
+
"recording.cancelStorageMigrationMove": {
|
|
28381
28618
|
capName: "recording",
|
|
28382
28619
|
capScope: "system",
|
|
28383
28620
|
addonId: null,
|
|
@@ -28413,7 +28650,7 @@ Object.freeze({
|
|
|
28413
28650
|
addonId: null,
|
|
28414
28651
|
access: "view"
|
|
28415
28652
|
},
|
|
28416
|
-
"recording.
|
|
28653
|
+
"recording.getStorageMigrationMoveStatus": {
|
|
28417
28654
|
capName: "recording",
|
|
28418
28655
|
capScope: "system",
|
|
28419
28656
|
addonId: null,
|
|
@@ -28437,6 +28674,12 @@ Object.freeze({
|
|
|
28437
28674
|
addonId: null,
|
|
28438
28675
|
access: "view"
|
|
28439
28676
|
},
|
|
28677
|
+
"recording.pauseForStorageMigration": {
|
|
28678
|
+
capName: "recording",
|
|
28679
|
+
capScope: "system",
|
|
28680
|
+
addonId: null,
|
|
28681
|
+
access: "create"
|
|
28682
|
+
},
|
|
28440
28683
|
"recording.pruneFootage": {
|
|
28441
28684
|
capName: "recording",
|
|
28442
28685
|
capScope: "system",
|
|
@@ -28455,7 +28698,7 @@ Object.freeze({
|
|
|
28455
28698
|
addonId: null,
|
|
28456
28699
|
access: "view"
|
|
28457
28700
|
},
|
|
28458
|
-
"recording.
|
|
28701
|
+
"recording.refreshStorageLocationsForMigration": {
|
|
28459
28702
|
capName: "recording",
|
|
28460
28703
|
capScope: "system",
|
|
28461
28704
|
addonId: null,
|
|
@@ -28479,12 +28722,24 @@ Object.freeze({
|
|
|
28479
28722
|
addonId: null,
|
|
28480
28723
|
access: "create"
|
|
28481
28724
|
},
|
|
28725
|
+
"recording.resumeForStorageMigration": {
|
|
28726
|
+
capName: "recording",
|
|
28727
|
+
capScope: "system",
|
|
28728
|
+
addonId: null,
|
|
28729
|
+
access: "create"
|
|
28730
|
+
},
|
|
28482
28731
|
"recording.setDeviceConfig": {
|
|
28483
28732
|
capName: "recording",
|
|
28484
28733
|
capScope: "system",
|
|
28485
28734
|
addonId: null,
|
|
28486
28735
|
access: "create"
|
|
28487
28736
|
},
|
|
28737
|
+
"recording.startStorageMigrationMove": {
|
|
28738
|
+
capName: "recording",
|
|
28739
|
+
capScope: "system",
|
|
28740
|
+
addonId: null,
|
|
28741
|
+
access: "create"
|
|
28742
|
+
},
|
|
28488
28743
|
"recordingExport.cancelExport": {
|
|
28489
28744
|
capName: "recordingExport",
|
|
28490
28745
|
capScope: "system",
|
|
@@ -28875,6 +29130,30 @@ Object.freeze({
|
|
|
28875
29130
|
addonId: null,
|
|
28876
29131
|
access: "view"
|
|
28877
29132
|
},
|
|
29133
|
+
"storageMigration.cancel": {
|
|
29134
|
+
capName: "storage-migration",
|
|
29135
|
+
capScope: "system",
|
|
29136
|
+
addonId: null,
|
|
29137
|
+
access: "create"
|
|
29138
|
+
},
|
|
29139
|
+
"storageMigration.plan": {
|
|
29140
|
+
capName: "storage-migration",
|
|
29141
|
+
capScope: "system",
|
|
29142
|
+
addonId: null,
|
|
29143
|
+
access: "view"
|
|
29144
|
+
},
|
|
29145
|
+
"storageMigration.start": {
|
|
29146
|
+
capName: "storage-migration",
|
|
29147
|
+
capScope: "system",
|
|
29148
|
+
addonId: null,
|
|
29149
|
+
access: "create"
|
|
29150
|
+
},
|
|
29151
|
+
"storageMigration.status": {
|
|
29152
|
+
capName: "storage-migration",
|
|
29153
|
+
capScope: "system",
|
|
29154
|
+
addonId: null,
|
|
29155
|
+
access: "view"
|
|
29156
|
+
},
|
|
28878
29157
|
"storageProvider.abortUpload": {
|
|
28879
29158
|
capName: "storage-provider",
|
|
28880
29159
|
capScope: "system",
|
|
@@ -29253,12 +29532,42 @@ Object.freeze({
|
|
|
29253
29532
|
addonId: null,
|
|
29254
29533
|
access: "create"
|
|
29255
29534
|
},
|
|
29535
|
+
"terminalSession.adoptLegacyMonitor": {
|
|
29536
|
+
capName: "terminal-session",
|
|
29537
|
+
capScope: "system",
|
|
29538
|
+
addonId: null,
|
|
29539
|
+
access: "create"
|
|
29540
|
+
},
|
|
29256
29541
|
"terminalSession.close": {
|
|
29257
29542
|
capName: "terminal-session",
|
|
29258
29543
|
capScope: "system",
|
|
29259
29544
|
addonId: null,
|
|
29260
29545
|
access: "create"
|
|
29261
29546
|
},
|
|
29547
|
+
"terminalSession.createInstance": {
|
|
29548
|
+
capName: "terminal-session",
|
|
29549
|
+
capScope: "system",
|
|
29550
|
+
addonId: null,
|
|
29551
|
+
access: "create"
|
|
29552
|
+
},
|
|
29553
|
+
"terminalSession.deleteInstance": {
|
|
29554
|
+
capName: "terminal-session",
|
|
29555
|
+
capScope: "system",
|
|
29556
|
+
addonId: null,
|
|
29557
|
+
access: "delete"
|
|
29558
|
+
},
|
|
29559
|
+
"terminalSession.listInstances": {
|
|
29560
|
+
capName: "terminal-session",
|
|
29561
|
+
capScope: "system",
|
|
29562
|
+
addonId: null,
|
|
29563
|
+
access: "view"
|
|
29564
|
+
},
|
|
29565
|
+
"terminalSession.listLegacyCameras": {
|
|
29566
|
+
capName: "terminal-session",
|
|
29567
|
+
capScope: "system",
|
|
29568
|
+
addonId: null,
|
|
29569
|
+
access: "view"
|
|
29570
|
+
},
|
|
29262
29571
|
"terminalSession.listProfiles": {
|
|
29263
29572
|
capName: "terminal-session",
|
|
29264
29573
|
capScope: "system",
|
|
@@ -29277,12 +29586,30 @@ Object.freeze({
|
|
|
29277
29586
|
addonId: null,
|
|
29278
29587
|
access: "create"
|
|
29279
29588
|
},
|
|
29589
|
+
"terminalSession.pullOutput": {
|
|
29590
|
+
capName: "terminal-session",
|
|
29591
|
+
capScope: "system",
|
|
29592
|
+
addonId: null,
|
|
29593
|
+
access: "create"
|
|
29594
|
+
},
|
|
29280
29595
|
"terminalSession.resize": {
|
|
29281
29596
|
capName: "terminal-session",
|
|
29282
29597
|
capScope: "system",
|
|
29283
29598
|
addonId: null,
|
|
29284
29599
|
access: "create"
|
|
29285
29600
|
},
|
|
29601
|
+
"terminalSession.setInstanceEnabled": {
|
|
29602
|
+
capName: "terminal-session",
|
|
29603
|
+
capScope: "system",
|
|
29604
|
+
addonId: null,
|
|
29605
|
+
access: "create"
|
|
29606
|
+
},
|
|
29607
|
+
"terminalSession.writeInput": {
|
|
29608
|
+
capName: "terminal-session",
|
|
29609
|
+
capScope: "system",
|
|
29610
|
+
addonId: null,
|
|
29611
|
+
access: "create"
|
|
29612
|
+
},
|
|
29286
29613
|
"toast.onToast": {
|
|
29287
29614
|
capName: "toast",
|
|
29288
29615
|
capScope: "system",
|
package/dist/index.mjs
CHANGED
|
@@ -7548,12 +7548,11 @@ var RecordingConfigSchema = object({
|
|
|
7548
7548
|
/**
|
|
7549
7549
|
* Entity-relocation job state (storage entity-routing spec, Phase 4).
|
|
7550
7550
|
*
|
|
7551
|
-
* One shape shared by the recorder
|
|
7552
|
-
*
|
|
7553
|
-
*
|
|
7554
|
-
*
|
|
7555
|
-
*
|
|
7556
|
-
* row on the owning addon's surface.
|
|
7551
|
+
* One shape shared by the recorder and pipeline-analytics internal movers.
|
|
7552
|
+
* The public admin surface is `storage-migration`; child jobs remain in RAM
|
|
7553
|
+
* because copy-if-absent, verify, delete and index/row repoint are resumable.
|
|
7554
|
+
* Each completed/failed run also lands one durable ops-log row on its owning
|
|
7555
|
+
* addon surface.
|
|
7557
7556
|
*/
|
|
7558
7557
|
var RelocateJobStateSchema = _enum([
|
|
7559
7558
|
"running",
|
|
@@ -7580,19 +7579,100 @@ var RelocateJobSchema = object({
|
|
|
7580
7579
|
finishedAt: number().nullable(),
|
|
7581
7580
|
error: string().nullable()
|
|
7582
7581
|
});
|
|
7582
|
+
/** Profile-derived footage selection used only by the migration coordinator:
|
|
7583
|
+
* `recordings` owns high+mid; `recordingsLow` owns low. */
|
|
7584
|
+
var RelocateFootageClassSchema = _enum(["recordings", "recordingsLow"]);
|
|
7583
7585
|
var RelocateFootageInputSchema = object({
|
|
7584
|
-
deviceId: number().optional(),
|
|
7585
7586
|
fromLocationId: string(),
|
|
7586
7587
|
toLocationId: string(),
|
|
7587
7588
|
entities: array(_enum(["segments"])).optional(),
|
|
7589
|
+
/** Limits relocation to the logical profile class. Omit only for the
|
|
7590
|
+
* pre-orchestration compatibility path. */
|
|
7591
|
+
footageClass: RelocateFootageClassSchema.optional(),
|
|
7588
7592
|
/** Copy throttle in MB/s (default 40) — the drain is a background chore,
|
|
7589
7593
|
* never allowed to starve live writers. */
|
|
7590
7594
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7591
7595
|
});
|
|
7592
|
-
|
|
7593
|
-
|
|
7596
|
+
/** Internal, lease-scoped participant operation. It is intentionally separate
|
|
7597
|
+
* from persistent recording settings: a migration never changes
|
|
7598
|
+
* `RecordingConfig.enabled` or camera wrapper bindings. */
|
|
7599
|
+
var StorageMigrationLeaseInputSchema = object({ leaseId: string().min(1) });
|
|
7600
|
+
var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: string().min(1) });
|
|
7601
|
+
var StorageMigrationMediaMoveInputSchema = object({
|
|
7594
7602
|
toLocationId: string(),
|
|
7595
7603
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7604
|
+
}).extend({ leaseId: string().min(1) });
|
|
7605
|
+
/** The independently selectable logical storage classes. `recordings`
|
|
7606
|
+
* encompasses the high and mid segment profiles; `recordingsLow` is low
|
|
7607
|
+
* segments; `eventMedia` is post-analysis blobs. */
|
|
7608
|
+
var StorageMigrationClassSchema = _enum([
|
|
7609
|
+
"recordings",
|
|
7610
|
+
"recordingsLow",
|
|
7611
|
+
"eventMedia"
|
|
7612
|
+
]);
|
|
7613
|
+
/** A destination is always an existing, fully-qualified location id. The
|
|
7614
|
+
* migration API intentionally never changes a source location's `basePath`:
|
|
7615
|
+
* callers create a new `<type>:<slug>` location, then select it here. */
|
|
7616
|
+
var StorageMigrationDestinationsSchema = object({
|
|
7617
|
+
recordings: string().min(1).optional(),
|
|
7618
|
+
recordingsLow: string().min(1).optional(),
|
|
7619
|
+
eventMedia: string().min(1).optional()
|
|
7620
|
+
}).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
|
|
7621
|
+
/** Shared input for planning and starting an orchestrated storage migration. */
|
|
7622
|
+
var StorageMigrationInputSchema = object({
|
|
7623
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7624
|
+
throttleMbps: number().min(1).max(1e3).optional()
|
|
7625
|
+
});
|
|
7626
|
+
/** The durable coordinator state machine. The only phase that changes default
|
|
7627
|
+
* locations is `repointing`, after every selected mover has completed and been
|
|
7628
|
+
* verified. */
|
|
7629
|
+
var StorageMigrationPhaseSchema = _enum([
|
|
7630
|
+
"planning",
|
|
7631
|
+
"pausing",
|
|
7632
|
+
"moving",
|
|
7633
|
+
"verifying",
|
|
7634
|
+
"repointing",
|
|
7635
|
+
"refreshing",
|
|
7636
|
+
"resuming",
|
|
7637
|
+
"done",
|
|
7638
|
+
"failed",
|
|
7639
|
+
"cancelled"
|
|
7640
|
+
]);
|
|
7641
|
+
var StorageMigrationParticipantSchema = _enum([
|
|
7642
|
+
"pipeline",
|
|
7643
|
+
"recorder",
|
|
7644
|
+
"analytics"
|
|
7645
|
+
]);
|
|
7646
|
+
var StorageMigrationMoveSchema = object({
|
|
7647
|
+
storageClass: StorageMigrationClassSchema,
|
|
7648
|
+
fromLocationId: string(),
|
|
7649
|
+
toLocationId: string(),
|
|
7650
|
+
moverJobId: string().nullable(),
|
|
7651
|
+
state: RelocateJobStateSchema.nullable(),
|
|
7652
|
+
error: string().nullable()
|
|
7653
|
+
});
|
|
7654
|
+
var StorageMigrationJobSchema = object({
|
|
7655
|
+
jobId: string(),
|
|
7656
|
+
phase: StorageMigrationPhaseSchema,
|
|
7657
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7658
|
+
throttleMbps: number(),
|
|
7659
|
+
moves: array(StorageMigrationMoveSchema),
|
|
7660
|
+
pauseLeaseId: string().nullable(),
|
|
7661
|
+
pausedParticipants: array(StorageMigrationParticipantSchema),
|
|
7662
|
+
repointed: boolean(),
|
|
7663
|
+
cancelRequested: boolean(),
|
|
7664
|
+
startedAt: number(),
|
|
7665
|
+
updatedAt: number(),
|
|
7666
|
+
finishedAt: number().nullable(),
|
|
7667
|
+
error: string().nullable()
|
|
7668
|
+
});
|
|
7669
|
+
var StorageMigrationPlanSchema = object({
|
|
7670
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7671
|
+
moves: array(object({
|
|
7672
|
+
storageClass: StorageMigrationClassSchema,
|
|
7673
|
+
fromLocationId: string(),
|
|
7674
|
+
toLocationId: string()
|
|
7675
|
+
}))
|
|
7596
7676
|
});
|
|
7597
7677
|
/**
|
|
7598
7678
|
* `StorageLocationType` — an addon-declared id that identifies the *kind* of
|
|
@@ -16098,13 +16178,19 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
16098
16178
|
}), method(object({ deviceId: number() }), EventPruneCountsSchema, {
|
|
16099
16179
|
kind: "mutation",
|
|
16100
16180
|
auth: "admin"
|
|
16101
|
-
}), method(
|
|
16181
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
16102
16182
|
kind: "mutation",
|
|
16103
16183
|
auth: "admin"
|
|
16104
|
-
}), method(object({
|
|
16105
|
-
kind: "
|
|
16184
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
16185
|
+
kind: "mutation",
|
|
16106
16186
|
auth: "admin"
|
|
16107
|
-
}), method(
|
|
16187
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
16188
|
+
kind: "mutation",
|
|
16189
|
+
auth: "admin"
|
|
16190
|
+
}), method(StorageMigrationMediaMoveInputSchema, object({ jobId: string() }), {
|
|
16191
|
+
kind: "mutation",
|
|
16192
|
+
auth: "admin"
|
|
16193
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16108
16194
|
kind: "mutation",
|
|
16109
16195
|
auth: "admin"
|
|
16110
16196
|
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
@@ -17601,7 +17687,13 @@ var NodeInferenceDevicesSchema = object({
|
|
|
17601
17687
|
reachable: boolean(),
|
|
17602
17688
|
devices: array(NodeInferenceDeviceSchema).readonly()
|
|
17603
17689
|
});
|
|
17604
|
-
method(object({
|
|
17690
|
+
method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
17691
|
+
kind: "mutation",
|
|
17692
|
+
auth: "admin"
|
|
17693
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
17694
|
+
kind: "mutation",
|
|
17695
|
+
auth: "admin"
|
|
17696
|
+
}), method(object({
|
|
17605
17697
|
deviceId: number(),
|
|
17606
17698
|
agentNodeId: string()
|
|
17607
17699
|
}), object({ success: literal(true) }), {
|
|
@@ -18275,6 +18367,13 @@ method(object({ locationId: string() }), EvictableUsageSchema), method(object({
|
|
|
18275
18367
|
locationId: string(),
|
|
18276
18368
|
targetBytes: number().int().positive()
|
|
18277
18369
|
}), EvictResultSchema, { kind: "mutation" });
|
|
18370
|
+
method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin" }), method(StorageMigrationInputSchema, object({ jobId: string() }), {
|
|
18371
|
+
kind: "mutation",
|
|
18372
|
+
auth: "admin"
|
|
18373
|
+
}), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
18374
|
+
kind: "mutation",
|
|
18375
|
+
auth: "admin"
|
|
18376
|
+
});
|
|
18278
18377
|
var ProviderInfoSchema = discriminatedUnion("shouldSaveDiskSpace", [object({
|
|
18279
18378
|
providerId: string().min(1),
|
|
18280
18379
|
displayName: string().min(1),
|
|
@@ -18378,7 +18477,67 @@ var TerminalProfileInfoSchema = object({
|
|
|
18378
18477
|
label: string(),
|
|
18379
18478
|
description: string().optional()
|
|
18380
18479
|
});
|
|
18381
|
-
|
|
18480
|
+
/**
|
|
18481
|
+
* A durable operator-created Terminal instance. Profiles are templates; only
|
|
18482
|
+
* an instance declares a camera.
|
|
18483
|
+
*/
|
|
18484
|
+
var TerminalInstanceInfoSchema = object({
|
|
18485
|
+
instanceId: string(),
|
|
18486
|
+
cameraStableId: string(),
|
|
18487
|
+
nodeId: string(),
|
|
18488
|
+
profileId: string(),
|
|
18489
|
+
profileLabel: string(),
|
|
18490
|
+
name: string(),
|
|
18491
|
+
enabled: boolean()
|
|
18492
|
+
});
|
|
18493
|
+
var TerminalLegacyCameraSchema = object({
|
|
18494
|
+
stableId: string(),
|
|
18495
|
+
nodeId: string(),
|
|
18496
|
+
profileId: string(),
|
|
18497
|
+
profileLabel: string(),
|
|
18498
|
+
name: string(),
|
|
18499
|
+
/** Only legacy monitor cameras can retain their historic stable identity. */
|
|
18500
|
+
adoptable: boolean()
|
|
18501
|
+
});
|
|
18502
|
+
var TerminalOutputEventSchema = discriminatedUnion("kind", [object({
|
|
18503
|
+
seq: number().int().positive(),
|
|
18504
|
+
kind: literal("data"),
|
|
18505
|
+
data: string()
|
|
18506
|
+
}), object({
|
|
18507
|
+
seq: number().int().positive(),
|
|
18508
|
+
kind: literal("exit"),
|
|
18509
|
+
exitCode: number().int(),
|
|
18510
|
+
signal: number().int().optional()
|
|
18511
|
+
})]);
|
|
18512
|
+
var TerminalOutputBatchSchema = object({
|
|
18513
|
+
cursor: number().int().nonnegative(),
|
|
18514
|
+
reset: boolean(),
|
|
18515
|
+
snapshot: string().optional(),
|
|
18516
|
+
events: array(TerminalOutputEventSchema).readonly()
|
|
18517
|
+
});
|
|
18518
|
+
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18519
|
+
targetNodeId: string().min(1),
|
|
18520
|
+
profileId: string().min(1),
|
|
18521
|
+
name: string().trim().min(1).max(160).optional()
|
|
18522
|
+
}), TerminalInstanceInfoSchema, {
|
|
18523
|
+
kind: "mutation",
|
|
18524
|
+
auth: "admin"
|
|
18525
|
+
}), method(object({ instanceId: string().min(1) }), _void(), {
|
|
18526
|
+
kind: "mutation",
|
|
18527
|
+
auth: "admin"
|
|
18528
|
+
}), method(object({
|
|
18529
|
+
instanceId: string().min(1),
|
|
18530
|
+
enabled: boolean()
|
|
18531
|
+
}), TerminalInstanceInfoSchema, {
|
|
18532
|
+
kind: "mutation",
|
|
18533
|
+
auth: "admin"
|
|
18534
|
+
}), method(_void(), array(TerminalLegacyCameraSchema).readonly(), { auth: "admin" }), method(object({
|
|
18535
|
+
stableId: string().min(1),
|
|
18536
|
+
name: string().trim().min(1).max(160).optional()
|
|
18537
|
+
}), TerminalInstanceInfoSchema, {
|
|
18538
|
+
kind: "mutation",
|
|
18539
|
+
auth: "admin"
|
|
18540
|
+
}), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18382
18541
|
profileId: string(),
|
|
18383
18542
|
cols: number().int().positive(),
|
|
18384
18543
|
rows: number().int().positive()
|
|
@@ -18392,6 +18551,26 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
|
|
|
18392
18551
|
}), _void(), {
|
|
18393
18552
|
kind: "mutation",
|
|
18394
18553
|
auth: "admin"
|
|
18554
|
+
}), method(object({
|
|
18555
|
+
sessionId: string(),
|
|
18556
|
+
afterSeq: number().int().nonnegative(),
|
|
18557
|
+
waitMs: number().int().min(0).max(2e3).default(0),
|
|
18558
|
+
/**
|
|
18559
|
+
* Wait when a just-opened session has no output yet. Kept opt-in so a
|
|
18560
|
+
* browser's initial repaint remains immediate; the camera snapshot
|
|
18561
|
+
* relay uses it to avoid encoding a blank startup frame.
|
|
18562
|
+
*/
|
|
18563
|
+
waitForOutput: boolean().optional()
|
|
18564
|
+
}), TerminalOutputBatchSchema, {
|
|
18565
|
+
kind: "mutation",
|
|
18566
|
+
auth: "admin",
|
|
18567
|
+
timeoutMs: 15e3
|
|
18568
|
+
}), method(object({
|
|
18569
|
+
sessionId: string(),
|
|
18570
|
+
data: string().max(64 * 1024)
|
|
18571
|
+
}), _void(), {
|
|
18572
|
+
kind: "mutation",
|
|
18573
|
+
auth: "admin"
|
|
18395
18574
|
}), method(object({ sessionId: string() }), _void(), {
|
|
18396
18575
|
kind: "mutation",
|
|
18397
18576
|
auth: "admin"
|
|
@@ -20322,6 +20501,7 @@ var FaceInfoSchema = object({
|
|
|
20322
20501
|
var FaceFilterEnum = _enum([
|
|
20323
20502
|
"unassigned",
|
|
20324
20503
|
"recognized",
|
|
20504
|
+
"identified",
|
|
20325
20505
|
"all"
|
|
20326
20506
|
]);
|
|
20327
20507
|
var MediaFileLiteSchema$1 = object({
|
|
@@ -20350,6 +20530,8 @@ method(_void(), array(IdentitySchema).readonly()), method(object({ name: string(
|
|
|
20350
20530
|
kind: "mutation",
|
|
20351
20531
|
auth: "admin"
|
|
20352
20532
|
}), method(object({
|
|
20533
|
+
/** Restrict to one camera. Absent keeps the cluster-wide gallery view. */
|
|
20534
|
+
deviceId: number().int().optional(),
|
|
20353
20535
|
limit: number().int().positive().optional(),
|
|
20354
20536
|
filter: FaceFilterEnum.optional(),
|
|
20355
20537
|
/**
|
|
@@ -22115,6 +22297,10 @@ var OsdSourceSchema = discriminatedUnion("kind", [
|
|
|
22115
22297
|
capName: string().min(1).max(64),
|
|
22116
22298
|
/** Dot path inside the slice, e.g. `detected`, `value`, `mode`. */
|
|
22117
22299
|
valuePath: string().min(1).max(64)
|
|
22300
|
+
}),
|
|
22301
|
+
object({
|
|
22302
|
+
kind: literal("latest-recognition"),
|
|
22303
|
+
recognition: _enum(["person", "plate"])
|
|
22118
22304
|
})
|
|
22119
22305
|
]);
|
|
22120
22306
|
var OsdSlotBindingSchema = object({
|
|
@@ -22220,6 +22406,15 @@ method(object({ deviceId: number().int() }), object({
|
|
|
22220
22406
|
}), object({ success: literal(true) }), {
|
|
22221
22407
|
kind: "mutation",
|
|
22222
22408
|
auth: "admin"
|
|
22409
|
+
}), method(object({
|
|
22410
|
+
sourceDeviceId: number().int(),
|
|
22411
|
+
targetDeviceId: number().int()
|
|
22412
|
+
}), object({
|
|
22413
|
+
copied: number().int().nonnegative(),
|
|
22414
|
+
skipped: number().int().nonnegative()
|
|
22415
|
+
}), {
|
|
22416
|
+
kind: "mutation",
|
|
22417
|
+
auth: "admin"
|
|
22223
22418
|
}), method(object({
|
|
22224
22419
|
deviceId: number().int(),
|
|
22225
22420
|
slotId: string().min(1),
|
|
@@ -23105,13 +23300,19 @@ method(object({
|
|
|
23105
23300
|
}), {
|
|
23106
23301
|
kind: "mutation",
|
|
23107
23302
|
auth: "admin"
|
|
23108
|
-
}), method(
|
|
23303
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
23109
23304
|
kind: "mutation",
|
|
23110
23305
|
auth: "admin"
|
|
23111
|
-
}), method(object({
|
|
23112
|
-
kind: "
|
|
23306
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
23307
|
+
kind: "mutation",
|
|
23113
23308
|
auth: "admin"
|
|
23114
|
-
}), method(
|
|
23309
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
23310
|
+
kind: "mutation",
|
|
23311
|
+
auth: "admin"
|
|
23312
|
+
}), method(StorageMigrationFootageMoveInputSchema, object({ jobId: string() }), {
|
|
23313
|
+
kind: "mutation",
|
|
23314
|
+
auth: "admin"
|
|
23315
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
23115
23316
|
kind: "mutation",
|
|
23116
23317
|
auth: "admin"
|
|
23117
23318
|
});
|
|
@@ -27233,6 +27434,12 @@ Object.freeze({
|
|
|
27233
27434
|
addonId: null,
|
|
27234
27435
|
access: "delete"
|
|
27235
27436
|
},
|
|
27437
|
+
"osdManager.copyDeviceConfiguration": {
|
|
27438
|
+
capName: "osd-manager",
|
|
27439
|
+
capScope: "system",
|
|
27440
|
+
addonId: null,
|
|
27441
|
+
access: "create"
|
|
27442
|
+
},
|
|
27236
27443
|
"osdManager.getConditionSupport": {
|
|
27237
27444
|
capName: "osd-manager",
|
|
27238
27445
|
capScope: "system",
|
|
@@ -27329,7 +27536,7 @@ Object.freeze({
|
|
|
27329
27536
|
addonId: null,
|
|
27330
27537
|
access: "create"
|
|
27331
27538
|
},
|
|
27332
|
-
"pipelineAnalytics.
|
|
27539
|
+
"pipelineAnalytics.cancelStorageMigrationMove": {
|
|
27333
27540
|
capName: "pipeline-analytics",
|
|
27334
27541
|
capScope: "device",
|
|
27335
27542
|
addonId: null,
|
|
@@ -27401,12 +27608,6 @@ Object.freeze({
|
|
|
27401
27608
|
addonId: null,
|
|
27402
27609
|
access: "view"
|
|
27403
27610
|
},
|
|
27404
|
-
"pipelineAnalytics.getMediaRelocateStatus": {
|
|
27405
|
-
capName: "pipeline-analytics",
|
|
27406
|
-
capScope: "device",
|
|
27407
|
-
addonId: null,
|
|
27408
|
-
access: "view"
|
|
27409
|
-
},
|
|
27410
27611
|
"pipelineAnalytics.getMotionEvents": {
|
|
27411
27612
|
capName: "pipeline-analytics",
|
|
27412
27613
|
capScope: "device",
|
|
@@ -27443,6 +27644,12 @@ Object.freeze({
|
|
|
27443
27644
|
addonId: null,
|
|
27444
27645
|
access: "view"
|
|
27445
27646
|
},
|
|
27647
|
+
"pipelineAnalytics.getStorageMigrationMoveStatus": {
|
|
27648
|
+
capName: "pipeline-analytics",
|
|
27649
|
+
capScope: "device",
|
|
27650
|
+
addonId: null,
|
|
27651
|
+
access: "view"
|
|
27652
|
+
},
|
|
27446
27653
|
"pipelineAnalytics.getTrack": {
|
|
27447
27654
|
capName: "pipeline-analytics",
|
|
27448
27655
|
capScope: "device",
|
|
@@ -27521,6 +27728,12 @@ Object.freeze({
|
|
|
27521
27728
|
addonId: null,
|
|
27522
27729
|
access: "view"
|
|
27523
27730
|
},
|
|
27731
|
+
"pipelineAnalytics.pauseForStorageMigration": {
|
|
27732
|
+
capName: "pipeline-analytics",
|
|
27733
|
+
capScope: "device",
|
|
27734
|
+
addonId: null,
|
|
27735
|
+
access: "create"
|
|
27736
|
+
},
|
|
27524
27737
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
27525
27738
|
capName: "pipeline-analytics",
|
|
27526
27739
|
capScope: "device",
|
|
@@ -27551,7 +27764,7 @@ Object.freeze({
|
|
|
27551
27764
|
addonId: null,
|
|
27552
27765
|
access: "create"
|
|
27553
27766
|
},
|
|
27554
|
-
"pipelineAnalytics.
|
|
27767
|
+
"pipelineAnalytics.refreshStorageLocationsForMigration": {
|
|
27555
27768
|
capName: "pipeline-analytics",
|
|
27556
27769
|
capScope: "device",
|
|
27557
27770
|
addonId: null,
|
|
@@ -27563,6 +27776,12 @@ Object.freeze({
|
|
|
27563
27776
|
addonId: null,
|
|
27564
27777
|
access: "create"
|
|
27565
27778
|
},
|
|
27779
|
+
"pipelineAnalytics.resumeForStorageMigration": {
|
|
27780
|
+
capName: "pipeline-analytics",
|
|
27781
|
+
capScope: "device",
|
|
27782
|
+
addonId: null,
|
|
27783
|
+
access: "create"
|
|
27784
|
+
},
|
|
27566
27785
|
"pipelineAnalytics.saveRetrainAnnotations": {
|
|
27567
27786
|
capName: "pipeline-analytics",
|
|
27568
27787
|
capScope: "device",
|
|
@@ -27587,6 +27806,12 @@ Object.freeze({
|
|
|
27587
27806
|
addonId: null,
|
|
27588
27807
|
access: "create"
|
|
27589
27808
|
},
|
|
27809
|
+
"pipelineAnalytics.startStorageMigrationMove": {
|
|
27810
|
+
capName: "pipeline-analytics",
|
|
27811
|
+
capScope: "device",
|
|
27812
|
+
addonId: null,
|
|
27813
|
+
access: "create"
|
|
27814
|
+
},
|
|
27590
27815
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
27591
27816
|
capName: "pipeline-analytics",
|
|
27592
27817
|
capScope: "device",
|
|
@@ -27953,6 +28178,12 @@ Object.freeze({
|
|
|
27953
28178
|
addonId: null,
|
|
27954
28179
|
access: "view"
|
|
27955
28180
|
},
|
|
28181
|
+
"pipelineOrchestrator.pauseForStorageMigration": {
|
|
28182
|
+
capName: "pipeline-orchestrator",
|
|
28183
|
+
capScope: "system",
|
|
28184
|
+
addonId: null,
|
|
28185
|
+
access: "create"
|
|
28186
|
+
},
|
|
27956
28187
|
"pipelineOrchestrator.rebalance": {
|
|
27957
28188
|
capName: "pipeline-orchestrator",
|
|
27958
28189
|
capScope: "system",
|
|
@@ -27977,6 +28208,12 @@ Object.freeze({
|
|
|
27977
28208
|
addonId: null,
|
|
27978
28209
|
access: "view"
|
|
27979
28210
|
},
|
|
28211
|
+
"pipelineOrchestrator.resumeForStorageMigration": {
|
|
28212
|
+
capName: "pipeline-orchestrator",
|
|
28213
|
+
capScope: "system",
|
|
28214
|
+
addonId: null,
|
|
28215
|
+
access: "create"
|
|
28216
|
+
},
|
|
27980
28217
|
"pipelineOrchestrator.saveTemplate": {
|
|
27981
28218
|
capName: "pipeline-orchestrator",
|
|
27982
28219
|
capScope: "system",
|
|
@@ -28373,7 +28610,7 @@ Object.freeze({
|
|
|
28373
28610
|
addonId: null,
|
|
28374
28611
|
access: "create"
|
|
28375
28612
|
},
|
|
28376
|
-
"recording.
|
|
28613
|
+
"recording.cancelStorageMigrationMove": {
|
|
28377
28614
|
capName: "recording",
|
|
28378
28615
|
capScope: "system",
|
|
28379
28616
|
addonId: null,
|
|
@@ -28409,7 +28646,7 @@ Object.freeze({
|
|
|
28409
28646
|
addonId: null,
|
|
28410
28647
|
access: "view"
|
|
28411
28648
|
},
|
|
28412
|
-
"recording.
|
|
28649
|
+
"recording.getStorageMigrationMoveStatus": {
|
|
28413
28650
|
capName: "recording",
|
|
28414
28651
|
capScope: "system",
|
|
28415
28652
|
addonId: null,
|
|
@@ -28433,6 +28670,12 @@ Object.freeze({
|
|
|
28433
28670
|
addonId: null,
|
|
28434
28671
|
access: "view"
|
|
28435
28672
|
},
|
|
28673
|
+
"recording.pauseForStorageMigration": {
|
|
28674
|
+
capName: "recording",
|
|
28675
|
+
capScope: "system",
|
|
28676
|
+
addonId: null,
|
|
28677
|
+
access: "create"
|
|
28678
|
+
},
|
|
28436
28679
|
"recording.pruneFootage": {
|
|
28437
28680
|
capName: "recording",
|
|
28438
28681
|
capScope: "system",
|
|
@@ -28451,7 +28694,7 @@ Object.freeze({
|
|
|
28451
28694
|
addonId: null,
|
|
28452
28695
|
access: "view"
|
|
28453
28696
|
},
|
|
28454
|
-
"recording.
|
|
28697
|
+
"recording.refreshStorageLocationsForMigration": {
|
|
28455
28698
|
capName: "recording",
|
|
28456
28699
|
capScope: "system",
|
|
28457
28700
|
addonId: null,
|
|
@@ -28475,12 +28718,24 @@ Object.freeze({
|
|
|
28475
28718
|
addonId: null,
|
|
28476
28719
|
access: "create"
|
|
28477
28720
|
},
|
|
28721
|
+
"recording.resumeForStorageMigration": {
|
|
28722
|
+
capName: "recording",
|
|
28723
|
+
capScope: "system",
|
|
28724
|
+
addonId: null,
|
|
28725
|
+
access: "create"
|
|
28726
|
+
},
|
|
28478
28727
|
"recording.setDeviceConfig": {
|
|
28479
28728
|
capName: "recording",
|
|
28480
28729
|
capScope: "system",
|
|
28481
28730
|
addonId: null,
|
|
28482
28731
|
access: "create"
|
|
28483
28732
|
},
|
|
28733
|
+
"recording.startStorageMigrationMove": {
|
|
28734
|
+
capName: "recording",
|
|
28735
|
+
capScope: "system",
|
|
28736
|
+
addonId: null,
|
|
28737
|
+
access: "create"
|
|
28738
|
+
},
|
|
28484
28739
|
"recordingExport.cancelExport": {
|
|
28485
28740
|
capName: "recordingExport",
|
|
28486
28741
|
capScope: "system",
|
|
@@ -28871,6 +29126,30 @@ Object.freeze({
|
|
|
28871
29126
|
addonId: null,
|
|
28872
29127
|
access: "view"
|
|
28873
29128
|
},
|
|
29129
|
+
"storageMigration.cancel": {
|
|
29130
|
+
capName: "storage-migration",
|
|
29131
|
+
capScope: "system",
|
|
29132
|
+
addonId: null,
|
|
29133
|
+
access: "create"
|
|
29134
|
+
},
|
|
29135
|
+
"storageMigration.plan": {
|
|
29136
|
+
capName: "storage-migration",
|
|
29137
|
+
capScope: "system",
|
|
29138
|
+
addonId: null,
|
|
29139
|
+
access: "view"
|
|
29140
|
+
},
|
|
29141
|
+
"storageMigration.start": {
|
|
29142
|
+
capName: "storage-migration",
|
|
29143
|
+
capScope: "system",
|
|
29144
|
+
addonId: null,
|
|
29145
|
+
access: "create"
|
|
29146
|
+
},
|
|
29147
|
+
"storageMigration.status": {
|
|
29148
|
+
capName: "storage-migration",
|
|
29149
|
+
capScope: "system",
|
|
29150
|
+
addonId: null,
|
|
29151
|
+
access: "view"
|
|
29152
|
+
},
|
|
28874
29153
|
"storageProvider.abortUpload": {
|
|
28875
29154
|
capName: "storage-provider",
|
|
28876
29155
|
capScope: "system",
|
|
@@ -29249,12 +29528,42 @@ Object.freeze({
|
|
|
29249
29528
|
addonId: null,
|
|
29250
29529
|
access: "create"
|
|
29251
29530
|
},
|
|
29531
|
+
"terminalSession.adoptLegacyMonitor": {
|
|
29532
|
+
capName: "terminal-session",
|
|
29533
|
+
capScope: "system",
|
|
29534
|
+
addonId: null,
|
|
29535
|
+
access: "create"
|
|
29536
|
+
},
|
|
29252
29537
|
"terminalSession.close": {
|
|
29253
29538
|
capName: "terminal-session",
|
|
29254
29539
|
capScope: "system",
|
|
29255
29540
|
addonId: null,
|
|
29256
29541
|
access: "create"
|
|
29257
29542
|
},
|
|
29543
|
+
"terminalSession.createInstance": {
|
|
29544
|
+
capName: "terminal-session",
|
|
29545
|
+
capScope: "system",
|
|
29546
|
+
addonId: null,
|
|
29547
|
+
access: "create"
|
|
29548
|
+
},
|
|
29549
|
+
"terminalSession.deleteInstance": {
|
|
29550
|
+
capName: "terminal-session",
|
|
29551
|
+
capScope: "system",
|
|
29552
|
+
addonId: null,
|
|
29553
|
+
access: "delete"
|
|
29554
|
+
},
|
|
29555
|
+
"terminalSession.listInstances": {
|
|
29556
|
+
capName: "terminal-session",
|
|
29557
|
+
capScope: "system",
|
|
29558
|
+
addonId: null,
|
|
29559
|
+
access: "view"
|
|
29560
|
+
},
|
|
29561
|
+
"terminalSession.listLegacyCameras": {
|
|
29562
|
+
capName: "terminal-session",
|
|
29563
|
+
capScope: "system",
|
|
29564
|
+
addonId: null,
|
|
29565
|
+
access: "view"
|
|
29566
|
+
},
|
|
29258
29567
|
"terminalSession.listProfiles": {
|
|
29259
29568
|
capName: "terminal-session",
|
|
29260
29569
|
capScope: "system",
|
|
@@ -29273,12 +29582,30 @@ Object.freeze({
|
|
|
29273
29582
|
addonId: null,
|
|
29274
29583
|
access: "create"
|
|
29275
29584
|
},
|
|
29585
|
+
"terminalSession.pullOutput": {
|
|
29586
|
+
capName: "terminal-session",
|
|
29587
|
+
capScope: "system",
|
|
29588
|
+
addonId: null,
|
|
29589
|
+
access: "create"
|
|
29590
|
+
},
|
|
29276
29591
|
"terminalSession.resize": {
|
|
29277
29592
|
capName: "terminal-session",
|
|
29278
29593
|
capScope: "system",
|
|
29279
29594
|
addonId: null,
|
|
29280
29595
|
access: "create"
|
|
29281
29596
|
},
|
|
29597
|
+
"terminalSession.setInstanceEnabled": {
|
|
29598
|
+
capName: "terminal-session",
|
|
29599
|
+
capScope: "system",
|
|
29600
|
+
addonId: null,
|
|
29601
|
+
access: "create"
|
|
29602
|
+
},
|
|
29603
|
+
"terminalSession.writeInput": {
|
|
29604
|
+
capName: "terminal-session",
|
|
29605
|
+
capScope: "system",
|
|
29606
|
+
addonId: null,
|
|
29607
|
+
access: "create"
|
|
29608
|
+
},
|
|
29282
29609
|
"toast.onToast": {
|
|
29283
29610
|
capName: "toast",
|
|
29284
29611
|
capScope: "system",
|