@camstack/addon-import-alexa 0.2.11 → 0.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/addon.js +316 -31
- package/dist/addon.mjs +316 -31
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -7723,12 +7723,11 @@ var RecordingConfigSchema = object({
|
|
|
7723
7723
|
/**
|
|
7724
7724
|
* Entity-relocation job state (storage entity-routing spec, Phase 4).
|
|
7725
7725
|
*
|
|
7726
|
-
* One shape shared by the recorder
|
|
7727
|
-
*
|
|
7728
|
-
*
|
|
7729
|
-
*
|
|
7730
|
-
*
|
|
7731
|
-
* row on the owning addon's surface.
|
|
7726
|
+
* One shape shared by the recorder and pipeline-analytics internal movers.
|
|
7727
|
+
* The public admin surface is `storage-migration`; child jobs remain in RAM
|
|
7728
|
+
* because copy-if-absent, verify, delete and index/row repoint are resumable.
|
|
7729
|
+
* Each completed/failed run also lands one durable ops-log row on its owning
|
|
7730
|
+
* addon surface.
|
|
7732
7731
|
*/
|
|
7733
7732
|
var RelocateJobStateSchema = _enum([
|
|
7734
7733
|
"running",
|
|
@@ -7755,19 +7754,100 @@ var RelocateJobSchema = object({
|
|
|
7755
7754
|
finishedAt: number().nullable(),
|
|
7756
7755
|
error: string().nullable()
|
|
7757
7756
|
});
|
|
7757
|
+
/** Profile-derived footage selection used only by the migration coordinator:
|
|
7758
|
+
* `recordings` owns high+mid; `recordingsLow` owns low. */
|
|
7759
|
+
var RelocateFootageClassSchema = _enum(["recordings", "recordingsLow"]);
|
|
7758
7760
|
var RelocateFootageInputSchema = object({
|
|
7759
|
-
deviceId: number().optional(),
|
|
7760
7761
|
fromLocationId: string(),
|
|
7761
7762
|
toLocationId: string(),
|
|
7762
7763
|
entities: array(_enum(["segments"])).optional(),
|
|
7764
|
+
/** Limits relocation to the logical profile class. Omit only for the
|
|
7765
|
+
* pre-orchestration compatibility path. */
|
|
7766
|
+
footageClass: RelocateFootageClassSchema.optional(),
|
|
7763
7767
|
/** Copy throttle in MB/s (default 40) — the drain is a background chore,
|
|
7764
7768
|
* never allowed to starve live writers. */
|
|
7765
7769
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7766
7770
|
});
|
|
7767
|
-
|
|
7768
|
-
|
|
7771
|
+
/** Internal, lease-scoped participant operation. It is intentionally separate
|
|
7772
|
+
* from persistent recording settings: a migration never changes
|
|
7773
|
+
* `RecordingConfig.enabled` or camera wrapper bindings. */
|
|
7774
|
+
var StorageMigrationLeaseInputSchema = object({ leaseId: string().min(1) });
|
|
7775
|
+
var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: string().min(1) });
|
|
7776
|
+
var StorageMigrationMediaMoveInputSchema = object({
|
|
7769
7777
|
toLocationId: string(),
|
|
7770
7778
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7779
|
+
}).extend({ leaseId: string().min(1) });
|
|
7780
|
+
/** The independently selectable logical storage classes. `recordings`
|
|
7781
|
+
* encompasses the high and mid segment profiles; `recordingsLow` is low
|
|
7782
|
+
* segments; `eventMedia` is post-analysis blobs. */
|
|
7783
|
+
var StorageMigrationClassSchema = _enum([
|
|
7784
|
+
"recordings",
|
|
7785
|
+
"recordingsLow",
|
|
7786
|
+
"eventMedia"
|
|
7787
|
+
]);
|
|
7788
|
+
/** A destination is always an existing, fully-qualified location id. The
|
|
7789
|
+
* migration API intentionally never changes a source location's `basePath`:
|
|
7790
|
+
* callers create a new `<type>:<slug>` location, then select it here. */
|
|
7791
|
+
var StorageMigrationDestinationsSchema = object({
|
|
7792
|
+
recordings: string().min(1).optional(),
|
|
7793
|
+
recordingsLow: string().min(1).optional(),
|
|
7794
|
+
eventMedia: string().min(1).optional()
|
|
7795
|
+
}).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
|
|
7796
|
+
/** Shared input for planning and starting an orchestrated storage migration. */
|
|
7797
|
+
var StorageMigrationInputSchema = object({
|
|
7798
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7799
|
+
throttleMbps: number().min(1).max(1e3).optional()
|
|
7800
|
+
});
|
|
7801
|
+
/** The durable coordinator state machine. The only phase that changes default
|
|
7802
|
+
* locations is `repointing`, after every selected mover has completed and been
|
|
7803
|
+
* verified. */
|
|
7804
|
+
var StorageMigrationPhaseSchema = _enum([
|
|
7805
|
+
"planning",
|
|
7806
|
+
"pausing",
|
|
7807
|
+
"moving",
|
|
7808
|
+
"verifying",
|
|
7809
|
+
"repointing",
|
|
7810
|
+
"refreshing",
|
|
7811
|
+
"resuming",
|
|
7812
|
+
"done",
|
|
7813
|
+
"failed",
|
|
7814
|
+
"cancelled"
|
|
7815
|
+
]);
|
|
7816
|
+
var StorageMigrationParticipantSchema = _enum([
|
|
7817
|
+
"pipeline",
|
|
7818
|
+
"recorder",
|
|
7819
|
+
"analytics"
|
|
7820
|
+
]);
|
|
7821
|
+
var StorageMigrationMoveSchema = object({
|
|
7822
|
+
storageClass: StorageMigrationClassSchema,
|
|
7823
|
+
fromLocationId: string(),
|
|
7824
|
+
toLocationId: string(),
|
|
7825
|
+
moverJobId: string().nullable(),
|
|
7826
|
+
state: RelocateJobStateSchema.nullable(),
|
|
7827
|
+
error: string().nullable()
|
|
7828
|
+
});
|
|
7829
|
+
var StorageMigrationJobSchema = object({
|
|
7830
|
+
jobId: string(),
|
|
7831
|
+
phase: StorageMigrationPhaseSchema,
|
|
7832
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7833
|
+
throttleMbps: number(),
|
|
7834
|
+
moves: array(StorageMigrationMoveSchema),
|
|
7835
|
+
pauseLeaseId: string().nullable(),
|
|
7836
|
+
pausedParticipants: array(StorageMigrationParticipantSchema),
|
|
7837
|
+
repointed: boolean(),
|
|
7838
|
+
cancelRequested: boolean(),
|
|
7839
|
+
startedAt: number(),
|
|
7840
|
+
updatedAt: number(),
|
|
7841
|
+
finishedAt: number().nullable(),
|
|
7842
|
+
error: string().nullable()
|
|
7843
|
+
});
|
|
7844
|
+
var StorageMigrationPlanSchema = object({
|
|
7845
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7846
|
+
moves: array(object({
|
|
7847
|
+
storageClass: StorageMigrationClassSchema,
|
|
7848
|
+
fromLocationId: string(),
|
|
7849
|
+
toLocationId: string()
|
|
7850
|
+
}))
|
|
7771
7851
|
});
|
|
7772
7852
|
/**
|
|
7773
7853
|
* `StorageLocationType` — an addon-declared id that identifies the *kind* of
|
|
@@ -16506,13 +16586,19 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
16506
16586
|
}), method(object({ deviceId: number() }), EventPruneCountsSchema, {
|
|
16507
16587
|
kind: "mutation",
|
|
16508
16588
|
auth: "admin"
|
|
16509
|
-
}), method(
|
|
16589
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
16510
16590
|
kind: "mutation",
|
|
16511
16591
|
auth: "admin"
|
|
16512
|
-
}), method(object({
|
|
16513
|
-
kind: "
|
|
16592
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
16593
|
+
kind: "mutation",
|
|
16594
|
+
auth: "admin"
|
|
16595
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
16596
|
+
kind: "mutation",
|
|
16597
|
+
auth: "admin"
|
|
16598
|
+
}), method(StorageMigrationMediaMoveInputSchema, object({ jobId: string() }), {
|
|
16599
|
+
kind: "mutation",
|
|
16514
16600
|
auth: "admin"
|
|
16515
|
-
}), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16601
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16516
16602
|
kind: "mutation",
|
|
16517
16603
|
auth: "admin"
|
|
16518
16604
|
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
@@ -18042,7 +18128,13 @@ var NodeInferenceDevicesSchema = object({
|
|
|
18042
18128
|
reachable: boolean(),
|
|
18043
18129
|
devices: array(NodeInferenceDeviceSchema).readonly()
|
|
18044
18130
|
});
|
|
18045
|
-
method(object({
|
|
18131
|
+
method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
18132
|
+
kind: "mutation",
|
|
18133
|
+
auth: "admin"
|
|
18134
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
18135
|
+
kind: "mutation",
|
|
18136
|
+
auth: "admin"
|
|
18137
|
+
}), method(object({
|
|
18046
18138
|
deviceId: number(),
|
|
18047
18139
|
agentNodeId: string()
|
|
18048
18140
|
}), object({ success: literal(true) }), {
|
|
@@ -18716,6 +18808,13 @@ method(object({ locationId: string() }), EvictableUsageSchema), method(object({
|
|
|
18716
18808
|
locationId: string(),
|
|
18717
18809
|
targetBytes: number().int().positive()
|
|
18718
18810
|
}), EvictResultSchema, { kind: "mutation" });
|
|
18811
|
+
method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin" }), method(StorageMigrationInputSchema, object({ jobId: string() }), {
|
|
18812
|
+
kind: "mutation",
|
|
18813
|
+
auth: "admin"
|
|
18814
|
+
}), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
18815
|
+
kind: "mutation",
|
|
18816
|
+
auth: "admin"
|
|
18817
|
+
});
|
|
18719
18818
|
var ProviderInfoSchema = discriminatedUnion("shouldSaveDiskSpace", [object({
|
|
18720
18819
|
providerId: string().min(1),
|
|
18721
18820
|
displayName: string().min(1),
|
|
@@ -18819,6 +18918,28 @@ var TerminalProfileInfoSchema = object({
|
|
|
18819
18918
|
label: string(),
|
|
18820
18919
|
description: string().optional()
|
|
18821
18920
|
});
|
|
18921
|
+
/**
|
|
18922
|
+
* A durable operator-created Terminal instance. Profiles are templates; only
|
|
18923
|
+
* an instance declares a camera.
|
|
18924
|
+
*/
|
|
18925
|
+
var TerminalInstanceInfoSchema = object({
|
|
18926
|
+
instanceId: string(),
|
|
18927
|
+
cameraStableId: string(),
|
|
18928
|
+
nodeId: string(),
|
|
18929
|
+
profileId: string(),
|
|
18930
|
+
profileLabel: string(),
|
|
18931
|
+
name: string(),
|
|
18932
|
+
enabled: boolean()
|
|
18933
|
+
});
|
|
18934
|
+
var TerminalLegacyCameraSchema = object({
|
|
18935
|
+
stableId: string(),
|
|
18936
|
+
nodeId: string(),
|
|
18937
|
+
profileId: string(),
|
|
18938
|
+
profileLabel: string(),
|
|
18939
|
+
name: string(),
|
|
18940
|
+
/** Only legacy monitor cameras can retain their historic stable identity. */
|
|
18941
|
+
adoptable: boolean()
|
|
18942
|
+
});
|
|
18822
18943
|
var TerminalOutputEventSchema = discriminatedUnion("kind", [object({
|
|
18823
18944
|
seq: number().int().positive(),
|
|
18824
18945
|
kind: literal("data"),
|
|
@@ -18835,7 +18956,29 @@ var TerminalOutputBatchSchema = object({
|
|
|
18835
18956
|
snapshot: string().optional(),
|
|
18836
18957
|
events: array(TerminalOutputEventSchema).readonly()
|
|
18837
18958
|
});
|
|
18838
|
-
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(
|
|
18959
|
+
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18960
|
+
targetNodeId: string().min(1),
|
|
18961
|
+
profileId: string().min(1),
|
|
18962
|
+
name: string().trim().min(1).max(160).optional()
|
|
18963
|
+
}), TerminalInstanceInfoSchema, {
|
|
18964
|
+
kind: "mutation",
|
|
18965
|
+
auth: "admin"
|
|
18966
|
+
}), method(object({ instanceId: string().min(1) }), _void(), {
|
|
18967
|
+
kind: "mutation",
|
|
18968
|
+
auth: "admin"
|
|
18969
|
+
}), method(object({
|
|
18970
|
+
instanceId: string().min(1),
|
|
18971
|
+
enabled: boolean()
|
|
18972
|
+
}), TerminalInstanceInfoSchema, {
|
|
18973
|
+
kind: "mutation",
|
|
18974
|
+
auth: "admin"
|
|
18975
|
+
}), method(_void(), array(TerminalLegacyCameraSchema).readonly(), { auth: "admin" }), method(object({
|
|
18976
|
+
stableId: string().min(1),
|
|
18977
|
+
name: string().trim().min(1).max(160).optional()
|
|
18978
|
+
}), TerminalInstanceInfoSchema, {
|
|
18979
|
+
kind: "mutation",
|
|
18980
|
+
auth: "admin"
|
|
18981
|
+
}), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18839
18982
|
profileId: string(),
|
|
18840
18983
|
cols: number().int().positive(),
|
|
18841
18984
|
rows: number().int().positive()
|
|
@@ -18852,7 +18995,13 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
|
|
|
18852
18995
|
}), method(object({
|
|
18853
18996
|
sessionId: string(),
|
|
18854
18997
|
afterSeq: number().int().nonnegative(),
|
|
18855
|
-
waitMs: number().int().min(0).max(2e3).default(0)
|
|
18998
|
+
waitMs: number().int().min(0).max(2e3).default(0),
|
|
18999
|
+
/**
|
|
19000
|
+
* Wait when a just-opened session has no output yet. Kept opt-in so a
|
|
19001
|
+
* browser's initial repaint remains immediate; the camera snapshot
|
|
19002
|
+
* relay uses it to avoid encoding a blank startup frame.
|
|
19003
|
+
*/
|
|
19004
|
+
waitForOutput: boolean().optional()
|
|
18856
19005
|
}), TerminalOutputBatchSchema, {
|
|
18857
19006
|
kind: "mutation",
|
|
18858
19007
|
auth: "admin",
|
|
@@ -21367,6 +21516,7 @@ var FaceInfoSchema = object({
|
|
|
21367
21516
|
var FaceFilterEnum = _enum([
|
|
21368
21517
|
"unassigned",
|
|
21369
21518
|
"recognized",
|
|
21519
|
+
"identified",
|
|
21370
21520
|
"all"
|
|
21371
21521
|
]);
|
|
21372
21522
|
var MediaFileLiteSchema$1 = object({
|
|
@@ -21395,6 +21545,8 @@ method(_void(), array(IdentitySchema).readonly()), method(object({ name: string(
|
|
|
21395
21545
|
kind: "mutation",
|
|
21396
21546
|
auth: "admin"
|
|
21397
21547
|
}), method(object({
|
|
21548
|
+
/** Restrict to one camera. Absent keeps the cluster-wide gallery view. */
|
|
21549
|
+
deviceId: number().int().optional(),
|
|
21398
21550
|
limit: number().int().positive().optional(),
|
|
21399
21551
|
filter: FaceFilterEnum.optional(),
|
|
21400
21552
|
/**
|
|
@@ -23624,6 +23776,10 @@ var OsdSourceSchema = discriminatedUnion("kind", [
|
|
|
23624
23776
|
capName: string().min(1).max(64),
|
|
23625
23777
|
/** Dot path inside the slice, e.g. `detected`, `value`, `mode`. */
|
|
23626
23778
|
valuePath: string().min(1).max(64)
|
|
23779
|
+
}),
|
|
23780
|
+
object({
|
|
23781
|
+
kind: literal("latest-recognition"),
|
|
23782
|
+
recognition: _enum(["person", "plate"])
|
|
23627
23783
|
})
|
|
23628
23784
|
]);
|
|
23629
23785
|
var OsdSlotBindingSchema = object({
|
|
@@ -23729,6 +23885,15 @@ method(object({ deviceId: number().int() }), object({
|
|
|
23729
23885
|
}), object({ success: literal(true) }), {
|
|
23730
23886
|
kind: "mutation",
|
|
23731
23887
|
auth: "admin"
|
|
23888
|
+
}), method(object({
|
|
23889
|
+
sourceDeviceId: number().int(),
|
|
23890
|
+
targetDeviceId: number().int()
|
|
23891
|
+
}), object({
|
|
23892
|
+
copied: number().int().nonnegative(),
|
|
23893
|
+
skipped: number().int().nonnegative()
|
|
23894
|
+
}), {
|
|
23895
|
+
kind: "mutation",
|
|
23896
|
+
auth: "admin"
|
|
23732
23897
|
}), method(object({
|
|
23733
23898
|
deviceId: number().int(),
|
|
23734
23899
|
slotId: string().min(1),
|
|
@@ -24826,13 +24991,19 @@ method(object({
|
|
|
24826
24991
|
}), {
|
|
24827
24992
|
kind: "mutation",
|
|
24828
24993
|
auth: "admin"
|
|
24829
|
-
}), method(
|
|
24994
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
24830
24995
|
kind: "mutation",
|
|
24831
24996
|
auth: "admin"
|
|
24832
|
-
}), method(object({
|
|
24833
|
-
kind: "
|
|
24997
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
24998
|
+
kind: "mutation",
|
|
24834
24999
|
auth: "admin"
|
|
24835
|
-
}), method(
|
|
25000
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
25001
|
+
kind: "mutation",
|
|
25002
|
+
auth: "admin"
|
|
25003
|
+
}), method(StorageMigrationFootageMoveInputSchema, object({ jobId: string() }), {
|
|
25004
|
+
kind: "mutation",
|
|
25005
|
+
auth: "admin"
|
|
25006
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
24836
25007
|
kind: "mutation",
|
|
24837
25008
|
auth: "admin"
|
|
24838
25009
|
});
|
|
@@ -30438,6 +30609,12 @@ Object.freeze({
|
|
|
30438
30609
|
addonId: null,
|
|
30439
30610
|
access: "delete"
|
|
30440
30611
|
},
|
|
30612
|
+
"osdManager.copyDeviceConfiguration": {
|
|
30613
|
+
capName: "osd-manager",
|
|
30614
|
+
capScope: "system",
|
|
30615
|
+
addonId: null,
|
|
30616
|
+
access: "create"
|
|
30617
|
+
},
|
|
30441
30618
|
"osdManager.getConditionSupport": {
|
|
30442
30619
|
capName: "osd-manager",
|
|
30443
30620
|
capScope: "system",
|
|
@@ -30534,7 +30711,7 @@ Object.freeze({
|
|
|
30534
30711
|
addonId: null,
|
|
30535
30712
|
access: "create"
|
|
30536
30713
|
},
|
|
30537
|
-
"pipelineAnalytics.
|
|
30714
|
+
"pipelineAnalytics.cancelStorageMigrationMove": {
|
|
30538
30715
|
capName: "pipeline-analytics",
|
|
30539
30716
|
capScope: "device",
|
|
30540
30717
|
addonId: null,
|
|
@@ -30606,12 +30783,6 @@ Object.freeze({
|
|
|
30606
30783
|
addonId: null,
|
|
30607
30784
|
access: "view"
|
|
30608
30785
|
},
|
|
30609
|
-
"pipelineAnalytics.getMediaRelocateStatus": {
|
|
30610
|
-
capName: "pipeline-analytics",
|
|
30611
|
-
capScope: "device",
|
|
30612
|
-
addonId: null,
|
|
30613
|
-
access: "view"
|
|
30614
|
-
},
|
|
30615
30786
|
"pipelineAnalytics.getMotionEvents": {
|
|
30616
30787
|
capName: "pipeline-analytics",
|
|
30617
30788
|
capScope: "device",
|
|
@@ -30648,6 +30819,12 @@ Object.freeze({
|
|
|
30648
30819
|
addonId: null,
|
|
30649
30820
|
access: "view"
|
|
30650
30821
|
},
|
|
30822
|
+
"pipelineAnalytics.getStorageMigrationMoveStatus": {
|
|
30823
|
+
capName: "pipeline-analytics",
|
|
30824
|
+
capScope: "device",
|
|
30825
|
+
addonId: null,
|
|
30826
|
+
access: "view"
|
|
30827
|
+
},
|
|
30651
30828
|
"pipelineAnalytics.getTrack": {
|
|
30652
30829
|
capName: "pipeline-analytics",
|
|
30653
30830
|
capScope: "device",
|
|
@@ -30726,6 +30903,12 @@ Object.freeze({
|
|
|
30726
30903
|
addonId: null,
|
|
30727
30904
|
access: "view"
|
|
30728
30905
|
},
|
|
30906
|
+
"pipelineAnalytics.pauseForStorageMigration": {
|
|
30907
|
+
capName: "pipeline-analytics",
|
|
30908
|
+
capScope: "device",
|
|
30909
|
+
addonId: null,
|
|
30910
|
+
access: "create"
|
|
30911
|
+
},
|
|
30729
30912
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
30730
30913
|
capName: "pipeline-analytics",
|
|
30731
30914
|
capScope: "device",
|
|
@@ -30756,7 +30939,7 @@ Object.freeze({
|
|
|
30756
30939
|
addonId: null,
|
|
30757
30940
|
access: "create"
|
|
30758
30941
|
},
|
|
30759
|
-
"pipelineAnalytics.
|
|
30942
|
+
"pipelineAnalytics.refreshStorageLocationsForMigration": {
|
|
30760
30943
|
capName: "pipeline-analytics",
|
|
30761
30944
|
capScope: "device",
|
|
30762
30945
|
addonId: null,
|
|
@@ -30768,6 +30951,12 @@ Object.freeze({
|
|
|
30768
30951
|
addonId: null,
|
|
30769
30952
|
access: "create"
|
|
30770
30953
|
},
|
|
30954
|
+
"pipelineAnalytics.resumeForStorageMigration": {
|
|
30955
|
+
capName: "pipeline-analytics",
|
|
30956
|
+
capScope: "device",
|
|
30957
|
+
addonId: null,
|
|
30958
|
+
access: "create"
|
|
30959
|
+
},
|
|
30771
30960
|
"pipelineAnalytics.saveRetrainAnnotations": {
|
|
30772
30961
|
capName: "pipeline-analytics",
|
|
30773
30962
|
capScope: "device",
|
|
@@ -30792,6 +30981,12 @@ Object.freeze({
|
|
|
30792
30981
|
addonId: null,
|
|
30793
30982
|
access: "create"
|
|
30794
30983
|
},
|
|
30984
|
+
"pipelineAnalytics.startStorageMigrationMove": {
|
|
30985
|
+
capName: "pipeline-analytics",
|
|
30986
|
+
capScope: "device",
|
|
30987
|
+
addonId: null,
|
|
30988
|
+
access: "create"
|
|
30989
|
+
},
|
|
30795
30990
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
30796
30991
|
capName: "pipeline-analytics",
|
|
30797
30992
|
capScope: "device",
|
|
@@ -31158,6 +31353,12 @@ Object.freeze({
|
|
|
31158
31353
|
addonId: null,
|
|
31159
31354
|
access: "view"
|
|
31160
31355
|
},
|
|
31356
|
+
"pipelineOrchestrator.pauseForStorageMigration": {
|
|
31357
|
+
capName: "pipeline-orchestrator",
|
|
31358
|
+
capScope: "system",
|
|
31359
|
+
addonId: null,
|
|
31360
|
+
access: "create"
|
|
31361
|
+
},
|
|
31161
31362
|
"pipelineOrchestrator.rebalance": {
|
|
31162
31363
|
capName: "pipeline-orchestrator",
|
|
31163
31364
|
capScope: "system",
|
|
@@ -31182,6 +31383,12 @@ Object.freeze({
|
|
|
31182
31383
|
addonId: null,
|
|
31183
31384
|
access: "view"
|
|
31184
31385
|
},
|
|
31386
|
+
"pipelineOrchestrator.resumeForStorageMigration": {
|
|
31387
|
+
capName: "pipeline-orchestrator",
|
|
31388
|
+
capScope: "system",
|
|
31389
|
+
addonId: null,
|
|
31390
|
+
access: "create"
|
|
31391
|
+
},
|
|
31185
31392
|
"pipelineOrchestrator.saveTemplate": {
|
|
31186
31393
|
capName: "pipeline-orchestrator",
|
|
31187
31394
|
capScope: "system",
|
|
@@ -31578,7 +31785,7 @@ Object.freeze({
|
|
|
31578
31785
|
addonId: null,
|
|
31579
31786
|
access: "create"
|
|
31580
31787
|
},
|
|
31581
|
-
"recording.
|
|
31788
|
+
"recording.cancelStorageMigrationMove": {
|
|
31582
31789
|
capName: "recording",
|
|
31583
31790
|
capScope: "system",
|
|
31584
31791
|
addonId: null,
|
|
@@ -31614,7 +31821,7 @@ Object.freeze({
|
|
|
31614
31821
|
addonId: null,
|
|
31615
31822
|
access: "view"
|
|
31616
31823
|
},
|
|
31617
|
-
"recording.
|
|
31824
|
+
"recording.getStorageMigrationMoveStatus": {
|
|
31618
31825
|
capName: "recording",
|
|
31619
31826
|
capScope: "system",
|
|
31620
31827
|
addonId: null,
|
|
@@ -31638,6 +31845,12 @@ Object.freeze({
|
|
|
31638
31845
|
addonId: null,
|
|
31639
31846
|
access: "view"
|
|
31640
31847
|
},
|
|
31848
|
+
"recording.pauseForStorageMigration": {
|
|
31849
|
+
capName: "recording",
|
|
31850
|
+
capScope: "system",
|
|
31851
|
+
addonId: null,
|
|
31852
|
+
access: "create"
|
|
31853
|
+
},
|
|
31641
31854
|
"recording.pruneFootage": {
|
|
31642
31855
|
capName: "recording",
|
|
31643
31856
|
capScope: "system",
|
|
@@ -31656,7 +31869,7 @@ Object.freeze({
|
|
|
31656
31869
|
addonId: null,
|
|
31657
31870
|
access: "view"
|
|
31658
31871
|
},
|
|
31659
|
-
"recording.
|
|
31872
|
+
"recording.refreshStorageLocationsForMigration": {
|
|
31660
31873
|
capName: "recording",
|
|
31661
31874
|
capScope: "system",
|
|
31662
31875
|
addonId: null,
|
|
@@ -31680,12 +31893,24 @@ Object.freeze({
|
|
|
31680
31893
|
addonId: null,
|
|
31681
31894
|
access: "create"
|
|
31682
31895
|
},
|
|
31896
|
+
"recording.resumeForStorageMigration": {
|
|
31897
|
+
capName: "recording",
|
|
31898
|
+
capScope: "system",
|
|
31899
|
+
addonId: null,
|
|
31900
|
+
access: "create"
|
|
31901
|
+
},
|
|
31683
31902
|
"recording.setDeviceConfig": {
|
|
31684
31903
|
capName: "recording",
|
|
31685
31904
|
capScope: "system",
|
|
31686
31905
|
addonId: null,
|
|
31687
31906
|
access: "create"
|
|
31688
31907
|
},
|
|
31908
|
+
"recording.startStorageMigrationMove": {
|
|
31909
|
+
capName: "recording",
|
|
31910
|
+
capScope: "system",
|
|
31911
|
+
addonId: null,
|
|
31912
|
+
access: "create"
|
|
31913
|
+
},
|
|
31689
31914
|
"recordingExport.cancelExport": {
|
|
31690
31915
|
capName: "recordingExport",
|
|
31691
31916
|
capScope: "system",
|
|
@@ -32076,6 +32301,30 @@ Object.freeze({
|
|
|
32076
32301
|
addonId: null,
|
|
32077
32302
|
access: "view"
|
|
32078
32303
|
},
|
|
32304
|
+
"storageMigration.cancel": {
|
|
32305
|
+
capName: "storage-migration",
|
|
32306
|
+
capScope: "system",
|
|
32307
|
+
addonId: null,
|
|
32308
|
+
access: "create"
|
|
32309
|
+
},
|
|
32310
|
+
"storageMigration.plan": {
|
|
32311
|
+
capName: "storage-migration",
|
|
32312
|
+
capScope: "system",
|
|
32313
|
+
addonId: null,
|
|
32314
|
+
access: "view"
|
|
32315
|
+
},
|
|
32316
|
+
"storageMigration.start": {
|
|
32317
|
+
capName: "storage-migration",
|
|
32318
|
+
capScope: "system",
|
|
32319
|
+
addonId: null,
|
|
32320
|
+
access: "create"
|
|
32321
|
+
},
|
|
32322
|
+
"storageMigration.status": {
|
|
32323
|
+
capName: "storage-migration",
|
|
32324
|
+
capScope: "system",
|
|
32325
|
+
addonId: null,
|
|
32326
|
+
access: "view"
|
|
32327
|
+
},
|
|
32079
32328
|
"storageProvider.abortUpload": {
|
|
32080
32329
|
capName: "storage-provider",
|
|
32081
32330
|
capScope: "system",
|
|
@@ -32454,12 +32703,42 @@ Object.freeze({
|
|
|
32454
32703
|
addonId: null,
|
|
32455
32704
|
access: "create"
|
|
32456
32705
|
},
|
|
32706
|
+
"terminalSession.adoptLegacyMonitor": {
|
|
32707
|
+
capName: "terminal-session",
|
|
32708
|
+
capScope: "system",
|
|
32709
|
+
addonId: null,
|
|
32710
|
+
access: "create"
|
|
32711
|
+
},
|
|
32457
32712
|
"terminalSession.close": {
|
|
32458
32713
|
capName: "terminal-session",
|
|
32459
32714
|
capScope: "system",
|
|
32460
32715
|
addonId: null,
|
|
32461
32716
|
access: "create"
|
|
32462
32717
|
},
|
|
32718
|
+
"terminalSession.createInstance": {
|
|
32719
|
+
capName: "terminal-session",
|
|
32720
|
+
capScope: "system",
|
|
32721
|
+
addonId: null,
|
|
32722
|
+
access: "create"
|
|
32723
|
+
},
|
|
32724
|
+
"terminalSession.deleteInstance": {
|
|
32725
|
+
capName: "terminal-session",
|
|
32726
|
+
capScope: "system",
|
|
32727
|
+
addonId: null,
|
|
32728
|
+
access: "delete"
|
|
32729
|
+
},
|
|
32730
|
+
"terminalSession.listInstances": {
|
|
32731
|
+
capName: "terminal-session",
|
|
32732
|
+
capScope: "system",
|
|
32733
|
+
addonId: null,
|
|
32734
|
+
access: "view"
|
|
32735
|
+
},
|
|
32736
|
+
"terminalSession.listLegacyCameras": {
|
|
32737
|
+
capName: "terminal-session",
|
|
32738
|
+
capScope: "system",
|
|
32739
|
+
addonId: null,
|
|
32740
|
+
access: "view"
|
|
32741
|
+
},
|
|
32463
32742
|
"terminalSession.listProfiles": {
|
|
32464
32743
|
capName: "terminal-session",
|
|
32465
32744
|
capScope: "system",
|
|
@@ -32490,6 +32769,12 @@ Object.freeze({
|
|
|
32490
32769
|
addonId: null,
|
|
32491
32770
|
access: "create"
|
|
32492
32771
|
},
|
|
32772
|
+
"terminalSession.setInstanceEnabled": {
|
|
32773
|
+
capName: "terminal-session",
|
|
32774
|
+
capScope: "system",
|
|
32775
|
+
addonId: null,
|
|
32776
|
+
access: "create"
|
|
32777
|
+
},
|
|
32493
32778
|
"terminalSession.writeInput": {
|
|
32494
32779
|
capName: "terminal-session",
|
|
32495
32780
|
capScope: "system",
|
package/dist/addon.mjs
CHANGED
|
@@ -7723,12 +7723,11 @@ var RecordingConfigSchema = object({
|
|
|
7723
7723
|
/**
|
|
7724
7724
|
* Entity-relocation job state (storage entity-routing spec, Phase 4).
|
|
7725
7725
|
*
|
|
7726
|
-
* One shape shared by the recorder
|
|
7727
|
-
*
|
|
7728
|
-
*
|
|
7729
|
-
*
|
|
7730
|
-
*
|
|
7731
|
-
* row on the owning addon's surface.
|
|
7726
|
+
* One shape shared by the recorder and pipeline-analytics internal movers.
|
|
7727
|
+
* The public admin surface is `storage-migration`; child jobs remain in RAM
|
|
7728
|
+
* because copy-if-absent, verify, delete and index/row repoint are resumable.
|
|
7729
|
+
* Each completed/failed run also lands one durable ops-log row on its owning
|
|
7730
|
+
* addon surface.
|
|
7732
7731
|
*/
|
|
7733
7732
|
var RelocateJobStateSchema = _enum([
|
|
7734
7733
|
"running",
|
|
@@ -7755,19 +7754,100 @@ var RelocateJobSchema = object({
|
|
|
7755
7754
|
finishedAt: number().nullable(),
|
|
7756
7755
|
error: string().nullable()
|
|
7757
7756
|
});
|
|
7757
|
+
/** Profile-derived footage selection used only by the migration coordinator:
|
|
7758
|
+
* `recordings` owns high+mid; `recordingsLow` owns low. */
|
|
7759
|
+
var RelocateFootageClassSchema = _enum(["recordings", "recordingsLow"]);
|
|
7758
7760
|
var RelocateFootageInputSchema = object({
|
|
7759
|
-
deviceId: number().optional(),
|
|
7760
7761
|
fromLocationId: string(),
|
|
7761
7762
|
toLocationId: string(),
|
|
7762
7763
|
entities: array(_enum(["segments"])).optional(),
|
|
7764
|
+
/** Limits relocation to the logical profile class. Omit only for the
|
|
7765
|
+
* pre-orchestration compatibility path. */
|
|
7766
|
+
footageClass: RelocateFootageClassSchema.optional(),
|
|
7763
7767
|
/** Copy throttle in MB/s (default 40) — the drain is a background chore,
|
|
7764
7768
|
* never allowed to starve live writers. */
|
|
7765
7769
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7766
7770
|
});
|
|
7767
|
-
|
|
7768
|
-
|
|
7771
|
+
/** Internal, lease-scoped participant operation. It is intentionally separate
|
|
7772
|
+
* from persistent recording settings: a migration never changes
|
|
7773
|
+
* `RecordingConfig.enabled` or camera wrapper bindings. */
|
|
7774
|
+
var StorageMigrationLeaseInputSchema = object({ leaseId: string().min(1) });
|
|
7775
|
+
var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: string().min(1) });
|
|
7776
|
+
var StorageMigrationMediaMoveInputSchema = object({
|
|
7769
7777
|
toLocationId: string(),
|
|
7770
7778
|
throttleMbps: number().min(1).max(1e3).optional()
|
|
7779
|
+
}).extend({ leaseId: string().min(1) });
|
|
7780
|
+
/** The independently selectable logical storage classes. `recordings`
|
|
7781
|
+
* encompasses the high and mid segment profiles; `recordingsLow` is low
|
|
7782
|
+
* segments; `eventMedia` is post-analysis blobs. */
|
|
7783
|
+
var StorageMigrationClassSchema = _enum([
|
|
7784
|
+
"recordings",
|
|
7785
|
+
"recordingsLow",
|
|
7786
|
+
"eventMedia"
|
|
7787
|
+
]);
|
|
7788
|
+
/** A destination is always an existing, fully-qualified location id. The
|
|
7789
|
+
* migration API intentionally never changes a source location's `basePath`:
|
|
7790
|
+
* callers create a new `<type>:<slug>` location, then select it here. */
|
|
7791
|
+
var StorageMigrationDestinationsSchema = object({
|
|
7792
|
+
recordings: string().min(1).optional(),
|
|
7793
|
+
recordingsLow: string().min(1).optional(),
|
|
7794
|
+
eventMedia: string().min(1).optional()
|
|
7795
|
+
}).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
|
|
7796
|
+
/** Shared input for planning and starting an orchestrated storage migration. */
|
|
7797
|
+
var StorageMigrationInputSchema = object({
|
|
7798
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7799
|
+
throttleMbps: number().min(1).max(1e3).optional()
|
|
7800
|
+
});
|
|
7801
|
+
/** The durable coordinator state machine. The only phase that changes default
|
|
7802
|
+
* locations is `repointing`, after every selected mover has completed and been
|
|
7803
|
+
* verified. */
|
|
7804
|
+
var StorageMigrationPhaseSchema = _enum([
|
|
7805
|
+
"planning",
|
|
7806
|
+
"pausing",
|
|
7807
|
+
"moving",
|
|
7808
|
+
"verifying",
|
|
7809
|
+
"repointing",
|
|
7810
|
+
"refreshing",
|
|
7811
|
+
"resuming",
|
|
7812
|
+
"done",
|
|
7813
|
+
"failed",
|
|
7814
|
+
"cancelled"
|
|
7815
|
+
]);
|
|
7816
|
+
var StorageMigrationParticipantSchema = _enum([
|
|
7817
|
+
"pipeline",
|
|
7818
|
+
"recorder",
|
|
7819
|
+
"analytics"
|
|
7820
|
+
]);
|
|
7821
|
+
var StorageMigrationMoveSchema = object({
|
|
7822
|
+
storageClass: StorageMigrationClassSchema,
|
|
7823
|
+
fromLocationId: string(),
|
|
7824
|
+
toLocationId: string(),
|
|
7825
|
+
moverJobId: string().nullable(),
|
|
7826
|
+
state: RelocateJobStateSchema.nullable(),
|
|
7827
|
+
error: string().nullable()
|
|
7828
|
+
});
|
|
7829
|
+
var StorageMigrationJobSchema = object({
|
|
7830
|
+
jobId: string(),
|
|
7831
|
+
phase: StorageMigrationPhaseSchema,
|
|
7832
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7833
|
+
throttleMbps: number(),
|
|
7834
|
+
moves: array(StorageMigrationMoveSchema),
|
|
7835
|
+
pauseLeaseId: string().nullable(),
|
|
7836
|
+
pausedParticipants: array(StorageMigrationParticipantSchema),
|
|
7837
|
+
repointed: boolean(),
|
|
7838
|
+
cancelRequested: boolean(),
|
|
7839
|
+
startedAt: number(),
|
|
7840
|
+
updatedAt: number(),
|
|
7841
|
+
finishedAt: number().nullable(),
|
|
7842
|
+
error: string().nullable()
|
|
7843
|
+
});
|
|
7844
|
+
var StorageMigrationPlanSchema = object({
|
|
7845
|
+
destinations: StorageMigrationDestinationsSchema,
|
|
7846
|
+
moves: array(object({
|
|
7847
|
+
storageClass: StorageMigrationClassSchema,
|
|
7848
|
+
fromLocationId: string(),
|
|
7849
|
+
toLocationId: string()
|
|
7850
|
+
}))
|
|
7771
7851
|
});
|
|
7772
7852
|
/**
|
|
7773
7853
|
* `StorageLocationType` — an addon-declared id that identifies the *kind* of
|
|
@@ -16506,13 +16586,19 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
16506
16586
|
}), method(object({ deviceId: number() }), EventPruneCountsSchema, {
|
|
16507
16587
|
kind: "mutation",
|
|
16508
16588
|
auth: "admin"
|
|
16509
|
-
}), method(
|
|
16589
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
16510
16590
|
kind: "mutation",
|
|
16511
16591
|
auth: "admin"
|
|
16512
|
-
}), method(object({
|
|
16513
|
-
kind: "
|
|
16592
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
16593
|
+
kind: "mutation",
|
|
16594
|
+
auth: "admin"
|
|
16595
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
16596
|
+
kind: "mutation",
|
|
16597
|
+
auth: "admin"
|
|
16598
|
+
}), method(StorageMigrationMediaMoveInputSchema, object({ jobId: string() }), {
|
|
16599
|
+
kind: "mutation",
|
|
16514
16600
|
auth: "admin"
|
|
16515
|
-
}), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16601
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16516
16602
|
kind: "mutation",
|
|
16517
16603
|
auth: "admin"
|
|
16518
16604
|
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
@@ -18042,7 +18128,13 @@ var NodeInferenceDevicesSchema = object({
|
|
|
18042
18128
|
reachable: boolean(),
|
|
18043
18129
|
devices: array(NodeInferenceDeviceSchema).readonly()
|
|
18044
18130
|
});
|
|
18045
|
-
method(object({
|
|
18131
|
+
method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
18132
|
+
kind: "mutation",
|
|
18133
|
+
auth: "admin"
|
|
18134
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
18135
|
+
kind: "mutation",
|
|
18136
|
+
auth: "admin"
|
|
18137
|
+
}), method(object({
|
|
18046
18138
|
deviceId: number(),
|
|
18047
18139
|
agentNodeId: string()
|
|
18048
18140
|
}), object({ success: literal(true) }), {
|
|
@@ -18716,6 +18808,13 @@ method(object({ locationId: string() }), EvictableUsageSchema), method(object({
|
|
|
18716
18808
|
locationId: string(),
|
|
18717
18809
|
targetBytes: number().int().positive()
|
|
18718
18810
|
}), EvictResultSchema, { kind: "mutation" });
|
|
18811
|
+
method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin" }), method(StorageMigrationInputSchema, object({ jobId: string() }), {
|
|
18812
|
+
kind: "mutation",
|
|
18813
|
+
auth: "admin"
|
|
18814
|
+
}), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
18815
|
+
kind: "mutation",
|
|
18816
|
+
auth: "admin"
|
|
18817
|
+
});
|
|
18719
18818
|
var ProviderInfoSchema = discriminatedUnion("shouldSaveDiskSpace", [object({
|
|
18720
18819
|
providerId: string().min(1),
|
|
18721
18820
|
displayName: string().min(1),
|
|
@@ -18819,6 +18918,28 @@ var TerminalProfileInfoSchema = object({
|
|
|
18819
18918
|
label: string(),
|
|
18820
18919
|
description: string().optional()
|
|
18821
18920
|
});
|
|
18921
|
+
/**
|
|
18922
|
+
* A durable operator-created Terminal instance. Profiles are templates; only
|
|
18923
|
+
* an instance declares a camera.
|
|
18924
|
+
*/
|
|
18925
|
+
var TerminalInstanceInfoSchema = object({
|
|
18926
|
+
instanceId: string(),
|
|
18927
|
+
cameraStableId: string(),
|
|
18928
|
+
nodeId: string(),
|
|
18929
|
+
profileId: string(),
|
|
18930
|
+
profileLabel: string(),
|
|
18931
|
+
name: string(),
|
|
18932
|
+
enabled: boolean()
|
|
18933
|
+
});
|
|
18934
|
+
var TerminalLegacyCameraSchema = object({
|
|
18935
|
+
stableId: string(),
|
|
18936
|
+
nodeId: string(),
|
|
18937
|
+
profileId: string(),
|
|
18938
|
+
profileLabel: string(),
|
|
18939
|
+
name: string(),
|
|
18940
|
+
/** Only legacy monitor cameras can retain their historic stable identity. */
|
|
18941
|
+
adoptable: boolean()
|
|
18942
|
+
});
|
|
18822
18943
|
var TerminalOutputEventSchema = discriminatedUnion("kind", [object({
|
|
18823
18944
|
seq: number().int().positive(),
|
|
18824
18945
|
kind: literal("data"),
|
|
@@ -18835,7 +18956,29 @@ var TerminalOutputBatchSchema = object({
|
|
|
18835
18956
|
snapshot: string().optional(),
|
|
18836
18957
|
events: array(TerminalOutputEventSchema).readonly()
|
|
18837
18958
|
});
|
|
18838
|
-
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(
|
|
18959
|
+
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18960
|
+
targetNodeId: string().min(1),
|
|
18961
|
+
profileId: string().min(1),
|
|
18962
|
+
name: string().trim().min(1).max(160).optional()
|
|
18963
|
+
}), TerminalInstanceInfoSchema, {
|
|
18964
|
+
kind: "mutation",
|
|
18965
|
+
auth: "admin"
|
|
18966
|
+
}), method(object({ instanceId: string().min(1) }), _void(), {
|
|
18967
|
+
kind: "mutation",
|
|
18968
|
+
auth: "admin"
|
|
18969
|
+
}), method(object({
|
|
18970
|
+
instanceId: string().min(1),
|
|
18971
|
+
enabled: boolean()
|
|
18972
|
+
}), TerminalInstanceInfoSchema, {
|
|
18973
|
+
kind: "mutation",
|
|
18974
|
+
auth: "admin"
|
|
18975
|
+
}), method(_void(), array(TerminalLegacyCameraSchema).readonly(), { auth: "admin" }), method(object({
|
|
18976
|
+
stableId: string().min(1),
|
|
18977
|
+
name: string().trim().min(1).max(160).optional()
|
|
18978
|
+
}), TerminalInstanceInfoSchema, {
|
|
18979
|
+
kind: "mutation",
|
|
18980
|
+
auth: "admin"
|
|
18981
|
+
}), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
18839
18982
|
profileId: string(),
|
|
18840
18983
|
cols: number().int().positive(),
|
|
18841
18984
|
rows: number().int().positive()
|
|
@@ -18852,7 +18995,13 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
|
|
|
18852
18995
|
}), method(object({
|
|
18853
18996
|
sessionId: string(),
|
|
18854
18997
|
afterSeq: number().int().nonnegative(),
|
|
18855
|
-
waitMs: number().int().min(0).max(2e3).default(0)
|
|
18998
|
+
waitMs: number().int().min(0).max(2e3).default(0),
|
|
18999
|
+
/**
|
|
19000
|
+
* Wait when a just-opened session has no output yet. Kept opt-in so a
|
|
19001
|
+
* browser's initial repaint remains immediate; the camera snapshot
|
|
19002
|
+
* relay uses it to avoid encoding a blank startup frame.
|
|
19003
|
+
*/
|
|
19004
|
+
waitForOutput: boolean().optional()
|
|
18856
19005
|
}), TerminalOutputBatchSchema, {
|
|
18857
19006
|
kind: "mutation",
|
|
18858
19007
|
auth: "admin",
|
|
@@ -21367,6 +21516,7 @@ var FaceInfoSchema = object({
|
|
|
21367
21516
|
var FaceFilterEnum = _enum([
|
|
21368
21517
|
"unassigned",
|
|
21369
21518
|
"recognized",
|
|
21519
|
+
"identified",
|
|
21370
21520
|
"all"
|
|
21371
21521
|
]);
|
|
21372
21522
|
var MediaFileLiteSchema$1 = object({
|
|
@@ -21395,6 +21545,8 @@ method(_void(), array(IdentitySchema).readonly()), method(object({ name: string(
|
|
|
21395
21545
|
kind: "mutation",
|
|
21396
21546
|
auth: "admin"
|
|
21397
21547
|
}), method(object({
|
|
21548
|
+
/** Restrict to one camera. Absent keeps the cluster-wide gallery view. */
|
|
21549
|
+
deviceId: number().int().optional(),
|
|
21398
21550
|
limit: number().int().positive().optional(),
|
|
21399
21551
|
filter: FaceFilterEnum.optional(),
|
|
21400
21552
|
/**
|
|
@@ -23624,6 +23776,10 @@ var OsdSourceSchema = discriminatedUnion("kind", [
|
|
|
23624
23776
|
capName: string().min(1).max(64),
|
|
23625
23777
|
/** Dot path inside the slice, e.g. `detected`, `value`, `mode`. */
|
|
23626
23778
|
valuePath: string().min(1).max(64)
|
|
23779
|
+
}),
|
|
23780
|
+
object({
|
|
23781
|
+
kind: literal("latest-recognition"),
|
|
23782
|
+
recognition: _enum(["person", "plate"])
|
|
23627
23783
|
})
|
|
23628
23784
|
]);
|
|
23629
23785
|
var OsdSlotBindingSchema = object({
|
|
@@ -23729,6 +23885,15 @@ method(object({ deviceId: number().int() }), object({
|
|
|
23729
23885
|
}), object({ success: literal(true) }), {
|
|
23730
23886
|
kind: "mutation",
|
|
23731
23887
|
auth: "admin"
|
|
23888
|
+
}), method(object({
|
|
23889
|
+
sourceDeviceId: number().int(),
|
|
23890
|
+
targetDeviceId: number().int()
|
|
23891
|
+
}), object({
|
|
23892
|
+
copied: number().int().nonnegative(),
|
|
23893
|
+
skipped: number().int().nonnegative()
|
|
23894
|
+
}), {
|
|
23895
|
+
kind: "mutation",
|
|
23896
|
+
auth: "admin"
|
|
23732
23897
|
}), method(object({
|
|
23733
23898
|
deviceId: number().int(),
|
|
23734
23899
|
slotId: string().min(1),
|
|
@@ -24826,13 +24991,19 @@ method(object({
|
|
|
24826
24991
|
}), {
|
|
24827
24992
|
kind: "mutation",
|
|
24828
24993
|
auth: "admin"
|
|
24829
|
-
}), method(
|
|
24994
|
+
}), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
24830
24995
|
kind: "mutation",
|
|
24831
24996
|
auth: "admin"
|
|
24832
|
-
}), method(object({
|
|
24833
|
-
kind: "
|
|
24997
|
+
}), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
|
|
24998
|
+
kind: "mutation",
|
|
24834
24999
|
auth: "admin"
|
|
24835
|
-
}), method(
|
|
25000
|
+
}), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
|
|
25001
|
+
kind: "mutation",
|
|
25002
|
+
auth: "admin"
|
|
25003
|
+
}), method(StorageMigrationFootageMoveInputSchema, object({ jobId: string() }), {
|
|
25004
|
+
kind: "mutation",
|
|
25005
|
+
auth: "admin"
|
|
25006
|
+
}), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
24836
25007
|
kind: "mutation",
|
|
24837
25008
|
auth: "admin"
|
|
24838
25009
|
});
|
|
@@ -30438,6 +30609,12 @@ Object.freeze({
|
|
|
30438
30609
|
addonId: null,
|
|
30439
30610
|
access: "delete"
|
|
30440
30611
|
},
|
|
30612
|
+
"osdManager.copyDeviceConfiguration": {
|
|
30613
|
+
capName: "osd-manager",
|
|
30614
|
+
capScope: "system",
|
|
30615
|
+
addonId: null,
|
|
30616
|
+
access: "create"
|
|
30617
|
+
},
|
|
30441
30618
|
"osdManager.getConditionSupport": {
|
|
30442
30619
|
capName: "osd-manager",
|
|
30443
30620
|
capScope: "system",
|
|
@@ -30534,7 +30711,7 @@ Object.freeze({
|
|
|
30534
30711
|
addonId: null,
|
|
30535
30712
|
access: "create"
|
|
30536
30713
|
},
|
|
30537
|
-
"pipelineAnalytics.
|
|
30714
|
+
"pipelineAnalytics.cancelStorageMigrationMove": {
|
|
30538
30715
|
capName: "pipeline-analytics",
|
|
30539
30716
|
capScope: "device",
|
|
30540
30717
|
addonId: null,
|
|
@@ -30606,12 +30783,6 @@ Object.freeze({
|
|
|
30606
30783
|
addonId: null,
|
|
30607
30784
|
access: "view"
|
|
30608
30785
|
},
|
|
30609
|
-
"pipelineAnalytics.getMediaRelocateStatus": {
|
|
30610
|
-
capName: "pipeline-analytics",
|
|
30611
|
-
capScope: "device",
|
|
30612
|
-
addonId: null,
|
|
30613
|
-
access: "view"
|
|
30614
|
-
},
|
|
30615
30786
|
"pipelineAnalytics.getMotionEvents": {
|
|
30616
30787
|
capName: "pipeline-analytics",
|
|
30617
30788
|
capScope: "device",
|
|
@@ -30648,6 +30819,12 @@ Object.freeze({
|
|
|
30648
30819
|
addonId: null,
|
|
30649
30820
|
access: "view"
|
|
30650
30821
|
},
|
|
30822
|
+
"pipelineAnalytics.getStorageMigrationMoveStatus": {
|
|
30823
|
+
capName: "pipeline-analytics",
|
|
30824
|
+
capScope: "device",
|
|
30825
|
+
addonId: null,
|
|
30826
|
+
access: "view"
|
|
30827
|
+
},
|
|
30651
30828
|
"pipelineAnalytics.getTrack": {
|
|
30652
30829
|
capName: "pipeline-analytics",
|
|
30653
30830
|
capScope: "device",
|
|
@@ -30726,6 +30903,12 @@ Object.freeze({
|
|
|
30726
30903
|
addonId: null,
|
|
30727
30904
|
access: "view"
|
|
30728
30905
|
},
|
|
30906
|
+
"pipelineAnalytics.pauseForStorageMigration": {
|
|
30907
|
+
capName: "pipeline-analytics",
|
|
30908
|
+
capScope: "device",
|
|
30909
|
+
addonId: null,
|
|
30910
|
+
access: "create"
|
|
30911
|
+
},
|
|
30729
30912
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
30730
30913
|
capName: "pipeline-analytics",
|
|
30731
30914
|
capScope: "device",
|
|
@@ -30756,7 +30939,7 @@ Object.freeze({
|
|
|
30756
30939
|
addonId: null,
|
|
30757
30940
|
access: "create"
|
|
30758
30941
|
},
|
|
30759
|
-
"pipelineAnalytics.
|
|
30942
|
+
"pipelineAnalytics.refreshStorageLocationsForMigration": {
|
|
30760
30943
|
capName: "pipeline-analytics",
|
|
30761
30944
|
capScope: "device",
|
|
30762
30945
|
addonId: null,
|
|
@@ -30768,6 +30951,12 @@ Object.freeze({
|
|
|
30768
30951
|
addonId: null,
|
|
30769
30952
|
access: "create"
|
|
30770
30953
|
},
|
|
30954
|
+
"pipelineAnalytics.resumeForStorageMigration": {
|
|
30955
|
+
capName: "pipeline-analytics",
|
|
30956
|
+
capScope: "device",
|
|
30957
|
+
addonId: null,
|
|
30958
|
+
access: "create"
|
|
30959
|
+
},
|
|
30771
30960
|
"pipelineAnalytics.saveRetrainAnnotations": {
|
|
30772
30961
|
capName: "pipeline-analytics",
|
|
30773
30962
|
capScope: "device",
|
|
@@ -30792,6 +30981,12 @@ Object.freeze({
|
|
|
30792
30981
|
addonId: null,
|
|
30793
30982
|
access: "create"
|
|
30794
30983
|
},
|
|
30984
|
+
"pipelineAnalytics.startStorageMigrationMove": {
|
|
30985
|
+
capName: "pipeline-analytics",
|
|
30986
|
+
capScope: "device",
|
|
30987
|
+
addonId: null,
|
|
30988
|
+
access: "create"
|
|
30989
|
+
},
|
|
30795
30990
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
30796
30991
|
capName: "pipeline-analytics",
|
|
30797
30992
|
capScope: "device",
|
|
@@ -31158,6 +31353,12 @@ Object.freeze({
|
|
|
31158
31353
|
addonId: null,
|
|
31159
31354
|
access: "view"
|
|
31160
31355
|
},
|
|
31356
|
+
"pipelineOrchestrator.pauseForStorageMigration": {
|
|
31357
|
+
capName: "pipeline-orchestrator",
|
|
31358
|
+
capScope: "system",
|
|
31359
|
+
addonId: null,
|
|
31360
|
+
access: "create"
|
|
31361
|
+
},
|
|
31161
31362
|
"pipelineOrchestrator.rebalance": {
|
|
31162
31363
|
capName: "pipeline-orchestrator",
|
|
31163
31364
|
capScope: "system",
|
|
@@ -31182,6 +31383,12 @@ Object.freeze({
|
|
|
31182
31383
|
addonId: null,
|
|
31183
31384
|
access: "view"
|
|
31184
31385
|
},
|
|
31386
|
+
"pipelineOrchestrator.resumeForStorageMigration": {
|
|
31387
|
+
capName: "pipeline-orchestrator",
|
|
31388
|
+
capScope: "system",
|
|
31389
|
+
addonId: null,
|
|
31390
|
+
access: "create"
|
|
31391
|
+
},
|
|
31185
31392
|
"pipelineOrchestrator.saveTemplate": {
|
|
31186
31393
|
capName: "pipeline-orchestrator",
|
|
31187
31394
|
capScope: "system",
|
|
@@ -31578,7 +31785,7 @@ Object.freeze({
|
|
|
31578
31785
|
addonId: null,
|
|
31579
31786
|
access: "create"
|
|
31580
31787
|
},
|
|
31581
|
-
"recording.
|
|
31788
|
+
"recording.cancelStorageMigrationMove": {
|
|
31582
31789
|
capName: "recording",
|
|
31583
31790
|
capScope: "system",
|
|
31584
31791
|
addonId: null,
|
|
@@ -31614,7 +31821,7 @@ Object.freeze({
|
|
|
31614
31821
|
addonId: null,
|
|
31615
31822
|
access: "view"
|
|
31616
31823
|
},
|
|
31617
|
-
"recording.
|
|
31824
|
+
"recording.getStorageMigrationMoveStatus": {
|
|
31618
31825
|
capName: "recording",
|
|
31619
31826
|
capScope: "system",
|
|
31620
31827
|
addonId: null,
|
|
@@ -31638,6 +31845,12 @@ Object.freeze({
|
|
|
31638
31845
|
addonId: null,
|
|
31639
31846
|
access: "view"
|
|
31640
31847
|
},
|
|
31848
|
+
"recording.pauseForStorageMigration": {
|
|
31849
|
+
capName: "recording",
|
|
31850
|
+
capScope: "system",
|
|
31851
|
+
addonId: null,
|
|
31852
|
+
access: "create"
|
|
31853
|
+
},
|
|
31641
31854
|
"recording.pruneFootage": {
|
|
31642
31855
|
capName: "recording",
|
|
31643
31856
|
capScope: "system",
|
|
@@ -31656,7 +31869,7 @@ Object.freeze({
|
|
|
31656
31869
|
addonId: null,
|
|
31657
31870
|
access: "view"
|
|
31658
31871
|
},
|
|
31659
|
-
"recording.
|
|
31872
|
+
"recording.refreshStorageLocationsForMigration": {
|
|
31660
31873
|
capName: "recording",
|
|
31661
31874
|
capScope: "system",
|
|
31662
31875
|
addonId: null,
|
|
@@ -31680,12 +31893,24 @@ Object.freeze({
|
|
|
31680
31893
|
addonId: null,
|
|
31681
31894
|
access: "create"
|
|
31682
31895
|
},
|
|
31896
|
+
"recording.resumeForStorageMigration": {
|
|
31897
|
+
capName: "recording",
|
|
31898
|
+
capScope: "system",
|
|
31899
|
+
addonId: null,
|
|
31900
|
+
access: "create"
|
|
31901
|
+
},
|
|
31683
31902
|
"recording.setDeviceConfig": {
|
|
31684
31903
|
capName: "recording",
|
|
31685
31904
|
capScope: "system",
|
|
31686
31905
|
addonId: null,
|
|
31687
31906
|
access: "create"
|
|
31688
31907
|
},
|
|
31908
|
+
"recording.startStorageMigrationMove": {
|
|
31909
|
+
capName: "recording",
|
|
31910
|
+
capScope: "system",
|
|
31911
|
+
addonId: null,
|
|
31912
|
+
access: "create"
|
|
31913
|
+
},
|
|
31689
31914
|
"recordingExport.cancelExport": {
|
|
31690
31915
|
capName: "recordingExport",
|
|
31691
31916
|
capScope: "system",
|
|
@@ -32076,6 +32301,30 @@ Object.freeze({
|
|
|
32076
32301
|
addonId: null,
|
|
32077
32302
|
access: "view"
|
|
32078
32303
|
},
|
|
32304
|
+
"storageMigration.cancel": {
|
|
32305
|
+
capName: "storage-migration",
|
|
32306
|
+
capScope: "system",
|
|
32307
|
+
addonId: null,
|
|
32308
|
+
access: "create"
|
|
32309
|
+
},
|
|
32310
|
+
"storageMigration.plan": {
|
|
32311
|
+
capName: "storage-migration",
|
|
32312
|
+
capScope: "system",
|
|
32313
|
+
addonId: null,
|
|
32314
|
+
access: "view"
|
|
32315
|
+
},
|
|
32316
|
+
"storageMigration.start": {
|
|
32317
|
+
capName: "storage-migration",
|
|
32318
|
+
capScope: "system",
|
|
32319
|
+
addonId: null,
|
|
32320
|
+
access: "create"
|
|
32321
|
+
},
|
|
32322
|
+
"storageMigration.status": {
|
|
32323
|
+
capName: "storage-migration",
|
|
32324
|
+
capScope: "system",
|
|
32325
|
+
addonId: null,
|
|
32326
|
+
access: "view"
|
|
32327
|
+
},
|
|
32079
32328
|
"storageProvider.abortUpload": {
|
|
32080
32329
|
capName: "storage-provider",
|
|
32081
32330
|
capScope: "system",
|
|
@@ -32454,12 +32703,42 @@ Object.freeze({
|
|
|
32454
32703
|
addonId: null,
|
|
32455
32704
|
access: "create"
|
|
32456
32705
|
},
|
|
32706
|
+
"terminalSession.adoptLegacyMonitor": {
|
|
32707
|
+
capName: "terminal-session",
|
|
32708
|
+
capScope: "system",
|
|
32709
|
+
addonId: null,
|
|
32710
|
+
access: "create"
|
|
32711
|
+
},
|
|
32457
32712
|
"terminalSession.close": {
|
|
32458
32713
|
capName: "terminal-session",
|
|
32459
32714
|
capScope: "system",
|
|
32460
32715
|
addonId: null,
|
|
32461
32716
|
access: "create"
|
|
32462
32717
|
},
|
|
32718
|
+
"terminalSession.createInstance": {
|
|
32719
|
+
capName: "terminal-session",
|
|
32720
|
+
capScope: "system",
|
|
32721
|
+
addonId: null,
|
|
32722
|
+
access: "create"
|
|
32723
|
+
},
|
|
32724
|
+
"terminalSession.deleteInstance": {
|
|
32725
|
+
capName: "terminal-session",
|
|
32726
|
+
capScope: "system",
|
|
32727
|
+
addonId: null,
|
|
32728
|
+
access: "delete"
|
|
32729
|
+
},
|
|
32730
|
+
"terminalSession.listInstances": {
|
|
32731
|
+
capName: "terminal-session",
|
|
32732
|
+
capScope: "system",
|
|
32733
|
+
addonId: null,
|
|
32734
|
+
access: "view"
|
|
32735
|
+
},
|
|
32736
|
+
"terminalSession.listLegacyCameras": {
|
|
32737
|
+
capName: "terminal-session",
|
|
32738
|
+
capScope: "system",
|
|
32739
|
+
addonId: null,
|
|
32740
|
+
access: "view"
|
|
32741
|
+
},
|
|
32463
32742
|
"terminalSession.listProfiles": {
|
|
32464
32743
|
capName: "terminal-session",
|
|
32465
32744
|
capScope: "system",
|
|
@@ -32490,6 +32769,12 @@ Object.freeze({
|
|
|
32490
32769
|
addonId: null,
|
|
32491
32770
|
access: "create"
|
|
32492
32771
|
},
|
|
32772
|
+
"terminalSession.setInstanceEnabled": {
|
|
32773
|
+
capName: "terminal-session",
|
|
32774
|
+
capScope: "system",
|
|
32775
|
+
addonId: null,
|
|
32776
|
+
access: "create"
|
|
32777
|
+
},
|
|
32493
32778
|
"terminalSession.writeInput": {
|
|
32494
32779
|
capName: "terminal-session",
|
|
32495
32780
|
capScope: "system",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-import-alexa",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"description": "Alexa device-import provider for CamStack — imports the smart-home devices in a user's Alexa account via the unofficial alexa-remote2 cookie/token client (the inverse of the Alexa exporter)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|