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