@camstack/addon-auth 1.2.12 → 1.2.14

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.
@@ -7665,12 +7665,11 @@ var RecordingConfigSchema = object({
7665
7665
  /**
7666
7666
  * Entity-relocation job state (storage entity-routing spec, Phase 4).
7667
7667
  *
7668
- * One shape shared by the recorder's `relocateFootage` (segments) and
7669
- * pipeline-analytics' `relocateMedia` (event media blobs) so the admin Data
7670
- * page renders both movers with one component. Jobs are in-RAM (a restart
7671
- * forgets them re-running is safe by construction: copy-if-absent, delete
7672
- * after verify) and each completed/failed run also lands one durable ops-log
7673
- * row on the owning addon's surface.
7668
+ * One shape shared by the recorder and pipeline-analytics internal movers.
7669
+ * The public admin surface is `storage-migration`; child jobs remain in RAM
7670
+ * because copy-if-absent, verify, delete and index/row repoint are resumable.
7671
+ * Each completed/failed run also lands one durable ops-log row on its owning
7672
+ * addon surface.
7674
7673
  */
7675
7674
  var RelocateJobStateSchema = _enum([
7676
7675
  "running",
@@ -7697,19 +7696,100 @@ var RelocateJobSchema = object({
7697
7696
  finishedAt: number().nullable(),
7698
7697
  error: string().nullable()
7699
7698
  });
7699
+ /** Profile-derived footage selection used only by the migration coordinator:
7700
+ * `recordings` owns high+mid; `recordingsLow` owns low. */
7701
+ var RelocateFootageClassSchema = _enum(["recordings", "recordingsLow"]);
7700
7702
  var RelocateFootageInputSchema = object({
7701
- deviceId: number().optional(),
7702
7703
  fromLocationId: string(),
7703
7704
  toLocationId: string(),
7704
7705
  entities: array(_enum(["segments"])).optional(),
7706
+ /** Limits relocation to the logical profile class. Omit only for the
7707
+ * pre-orchestration compatibility path. */
7708
+ footageClass: RelocateFootageClassSchema.optional(),
7705
7709
  /** Copy throttle in MB/s (default 40) — the drain is a background chore,
7706
7710
  * never allowed to starve live writers. */
7707
7711
  throttleMbps: number().min(1).max(1e3).optional()
7708
7712
  });
7709
- var RelocateMediaInputSchema = object({
7710
- deviceId: number().optional(),
7713
+ /** Internal, lease-scoped participant operation. It is intentionally separate
7714
+ * from persistent recording settings: a migration never changes
7715
+ * `RecordingConfig.enabled` or camera wrapper bindings. */
7716
+ var StorageMigrationLeaseInputSchema = object({ leaseId: string().min(1) });
7717
+ var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: string().min(1) });
7718
+ var StorageMigrationMediaMoveInputSchema = object({
7711
7719
  toLocationId: string(),
7712
7720
  throttleMbps: number().min(1).max(1e3).optional()
7721
+ }).extend({ leaseId: string().min(1) });
7722
+ /** The independently selectable logical storage classes. `recordings`
7723
+ * encompasses the high and mid segment profiles; `recordingsLow` is low
7724
+ * segments; `eventMedia` is post-analysis blobs. */
7725
+ var StorageMigrationClassSchema = _enum([
7726
+ "recordings",
7727
+ "recordingsLow",
7728
+ "eventMedia"
7729
+ ]);
7730
+ /** A destination is always an existing, fully-qualified location id. The
7731
+ * migration API intentionally never changes a source location's `basePath`:
7732
+ * callers create a new `<type>:<slug>` location, then select it here. */
7733
+ var StorageMigrationDestinationsSchema = object({
7734
+ recordings: string().min(1).optional(),
7735
+ recordingsLow: string().min(1).optional(),
7736
+ eventMedia: string().min(1).optional()
7737
+ }).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
7738
+ /** Shared input for planning and starting an orchestrated storage migration. */
7739
+ var StorageMigrationInputSchema = object({
7740
+ destinations: StorageMigrationDestinationsSchema,
7741
+ throttleMbps: number().min(1).max(1e3).optional()
7742
+ });
7743
+ /** The durable coordinator state machine. The only phase that changes default
7744
+ * locations is `repointing`, after every selected mover has completed and been
7745
+ * verified. */
7746
+ var StorageMigrationPhaseSchema = _enum([
7747
+ "planning",
7748
+ "pausing",
7749
+ "moving",
7750
+ "verifying",
7751
+ "repointing",
7752
+ "refreshing",
7753
+ "resuming",
7754
+ "done",
7755
+ "failed",
7756
+ "cancelled"
7757
+ ]);
7758
+ var StorageMigrationParticipantSchema = _enum([
7759
+ "pipeline",
7760
+ "recorder",
7761
+ "analytics"
7762
+ ]);
7763
+ var StorageMigrationMoveSchema = object({
7764
+ storageClass: StorageMigrationClassSchema,
7765
+ fromLocationId: string(),
7766
+ toLocationId: string(),
7767
+ moverJobId: string().nullable(),
7768
+ state: RelocateJobStateSchema.nullable(),
7769
+ error: string().nullable()
7770
+ });
7771
+ var StorageMigrationJobSchema = object({
7772
+ jobId: string(),
7773
+ phase: StorageMigrationPhaseSchema,
7774
+ destinations: StorageMigrationDestinationsSchema,
7775
+ throttleMbps: number(),
7776
+ moves: array(StorageMigrationMoveSchema),
7777
+ pauseLeaseId: string().nullable(),
7778
+ pausedParticipants: array(StorageMigrationParticipantSchema),
7779
+ repointed: boolean(),
7780
+ cancelRequested: boolean(),
7781
+ startedAt: number(),
7782
+ updatedAt: number(),
7783
+ finishedAt: number().nullable(),
7784
+ error: string().nullable()
7785
+ });
7786
+ var StorageMigrationPlanSchema = object({
7787
+ destinations: StorageMigrationDestinationsSchema,
7788
+ moves: array(object({
7789
+ storageClass: StorageMigrationClassSchema,
7790
+ fromLocationId: string(),
7791
+ toLocationId: string()
7792
+ }))
7713
7793
  });
7714
7794
  /**
7715
7795
  * `StorageLocationType` — an addon-declared id that identifies the *kind* of
@@ -16131,13 +16211,19 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
16131
16211
  }), method(object({ deviceId: number() }), EventPruneCountsSchema, {
16132
16212
  kind: "mutation",
16133
16213
  auth: "admin"
16134
- }), method(RelocateMediaInputSchema, object({ jobId: string() }), {
16214
+ }), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
16135
16215
  kind: "mutation",
16136
16216
  auth: "admin"
16137
- }), method(object({}), array(RelocateJobSchema).readonly(), {
16138
- kind: "query",
16217
+ }), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
16218
+ kind: "mutation",
16139
16219
  auth: "admin"
16140
- }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
16220
+ }), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
16221
+ kind: "mutation",
16222
+ auth: "admin"
16223
+ }), method(StorageMigrationMediaMoveInputSchema, object({ jobId: string() }), {
16224
+ kind: "mutation",
16225
+ auth: "admin"
16226
+ }), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
16141
16227
  kind: "mutation",
16142
16228
  auth: "admin"
16143
16229
  }), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
@@ -17634,7 +17720,13 @@ var NodeInferenceDevicesSchema = object({
17634
17720
  reachable: boolean(),
17635
17721
  devices: array(NodeInferenceDeviceSchema).readonly()
17636
17722
  });
17637
- method(object({
17723
+ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
17724
+ kind: "mutation",
17725
+ auth: "admin"
17726
+ }), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
17727
+ kind: "mutation",
17728
+ auth: "admin"
17729
+ }), method(object({
17638
17730
  deviceId: number(),
17639
17731
  agentNodeId: string()
17640
17732
  }), object({ success: literal(true) }), {
@@ -18308,6 +18400,13 @@ method(object({ locationId: string() }), EvictableUsageSchema), method(object({
18308
18400
  locationId: string(),
18309
18401
  targetBytes: number().int().positive()
18310
18402
  }), EvictResultSchema, { kind: "mutation" });
18403
+ method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin" }), method(StorageMigrationInputSchema, object({ jobId: string() }), {
18404
+ kind: "mutation",
18405
+ auth: "admin"
18406
+ }), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
18407
+ kind: "mutation",
18408
+ auth: "admin"
18409
+ });
18311
18410
  var ProviderInfoSchema = discriminatedUnion("shouldSaveDiskSpace", [object({
18312
18411
  providerId: string().min(1),
18313
18412
  displayName: string().min(1),
@@ -18411,7 +18510,67 @@ var TerminalProfileInfoSchema = object({
18411
18510
  label: string(),
18412
18511
  description: string().optional()
18413
18512
  });
18414
- method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
18513
+ /**
18514
+ * A durable operator-created Terminal instance. Profiles are templates; only
18515
+ * an instance declares a camera.
18516
+ */
18517
+ var TerminalInstanceInfoSchema = object({
18518
+ instanceId: string(),
18519
+ cameraStableId: string(),
18520
+ nodeId: string(),
18521
+ profileId: string(),
18522
+ profileLabel: string(),
18523
+ name: string(),
18524
+ enabled: boolean()
18525
+ });
18526
+ var TerminalLegacyCameraSchema = object({
18527
+ stableId: string(),
18528
+ nodeId: string(),
18529
+ profileId: string(),
18530
+ profileLabel: string(),
18531
+ name: string(),
18532
+ /** Only legacy monitor cameras can retain their historic stable identity. */
18533
+ adoptable: boolean()
18534
+ });
18535
+ var TerminalOutputEventSchema = discriminatedUnion("kind", [object({
18536
+ seq: number().int().positive(),
18537
+ kind: literal("data"),
18538
+ data: string()
18539
+ }), object({
18540
+ seq: number().int().positive(),
18541
+ kind: literal("exit"),
18542
+ exitCode: number().int(),
18543
+ signal: number().int().optional()
18544
+ })]);
18545
+ var TerminalOutputBatchSchema = object({
18546
+ cursor: number().int().nonnegative(),
18547
+ reset: boolean(),
18548
+ snapshot: string().optional(),
18549
+ events: array(TerminalOutputEventSchema).readonly()
18550
+ });
18551
+ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
18552
+ targetNodeId: string().min(1),
18553
+ profileId: string().min(1),
18554
+ name: string().trim().min(1).max(160).optional()
18555
+ }), TerminalInstanceInfoSchema, {
18556
+ kind: "mutation",
18557
+ auth: "admin"
18558
+ }), method(object({ instanceId: string().min(1) }), _void(), {
18559
+ kind: "mutation",
18560
+ auth: "admin"
18561
+ }), method(object({
18562
+ instanceId: string().min(1),
18563
+ enabled: boolean()
18564
+ }), TerminalInstanceInfoSchema, {
18565
+ kind: "mutation",
18566
+ auth: "admin"
18567
+ }), method(_void(), array(TerminalLegacyCameraSchema).readonly(), { auth: "admin" }), method(object({
18568
+ stableId: string().min(1),
18569
+ name: string().trim().min(1).max(160).optional()
18570
+ }), TerminalInstanceInfoSchema, {
18571
+ kind: "mutation",
18572
+ auth: "admin"
18573
+ }), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
18415
18574
  profileId: string(),
18416
18575
  cols: number().int().positive(),
18417
18576
  rows: number().int().positive()
@@ -18425,6 +18584,26 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
18425
18584
  }), _void(), {
18426
18585
  kind: "mutation",
18427
18586
  auth: "admin"
18587
+ }), method(object({
18588
+ sessionId: string(),
18589
+ afterSeq: number().int().nonnegative(),
18590
+ waitMs: number().int().min(0).max(2e3).default(0),
18591
+ /**
18592
+ * Wait when a just-opened session has no output yet. Kept opt-in so a
18593
+ * browser's initial repaint remains immediate; the camera snapshot
18594
+ * relay uses it to avoid encoding a blank startup frame.
18595
+ */
18596
+ waitForOutput: boolean().optional()
18597
+ }), TerminalOutputBatchSchema, {
18598
+ kind: "mutation",
18599
+ auth: "admin",
18600
+ timeoutMs: 15e3
18601
+ }), method(object({
18602
+ sessionId: string(),
18603
+ data: string().max(64 * 1024)
18604
+ }), _void(), {
18605
+ kind: "mutation",
18606
+ auth: "admin"
18428
18607
  }), method(object({ sessionId: string() }), _void(), {
18429
18608
  kind: "mutation",
18430
18609
  auth: "admin"
@@ -20372,6 +20551,7 @@ var FaceInfoSchema = object({
20372
20551
  var FaceFilterEnum = _enum([
20373
20552
  "unassigned",
20374
20553
  "recognized",
20554
+ "identified",
20375
20555
  "all"
20376
20556
  ]);
20377
20557
  var MediaFileLiteSchema$1 = object({
@@ -20400,6 +20580,8 @@ method(_void(), array(IdentitySchema).readonly()), method(object({ name: string(
20400
20580
  kind: "mutation",
20401
20581
  auth: "admin"
20402
20582
  }), method(object({
20583
+ /** Restrict to one camera. Absent keeps the cluster-wide gallery view. */
20584
+ deviceId: number().int().optional(),
20403
20585
  limit: number().int().positive().optional(),
20404
20586
  filter: FaceFilterEnum.optional(),
20405
20587
  /**
@@ -22165,6 +22347,10 @@ var OsdSourceSchema = discriminatedUnion("kind", [
22165
22347
  capName: string().min(1).max(64),
22166
22348
  /** Dot path inside the slice, e.g. `detected`, `value`, `mode`. */
22167
22349
  valuePath: string().min(1).max(64)
22350
+ }),
22351
+ object({
22352
+ kind: literal("latest-recognition"),
22353
+ recognition: _enum(["person", "plate"])
22168
22354
  })
22169
22355
  ]);
22170
22356
  var OsdSlotBindingSchema = object({
@@ -22270,6 +22456,15 @@ method(object({ deviceId: number().int() }), object({
22270
22456
  }), object({ success: literal(true) }), {
22271
22457
  kind: "mutation",
22272
22458
  auth: "admin"
22459
+ }), method(object({
22460
+ sourceDeviceId: number().int(),
22461
+ targetDeviceId: number().int()
22462
+ }), object({
22463
+ copied: number().int().nonnegative(),
22464
+ skipped: number().int().nonnegative()
22465
+ }), {
22466
+ kind: "mutation",
22467
+ auth: "admin"
22273
22468
  }), method(object({
22274
22469
  deviceId: number().int(),
22275
22470
  slotId: string().min(1),
@@ -23155,13 +23350,19 @@ method(object({
23155
23350
  }), {
23156
23351
  kind: "mutation",
23157
23352
  auth: "admin"
23158
- }), method(RelocateFootageInputSchema, object({ jobId: string() }), {
23353
+ }), method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
23159
23354
  kind: "mutation",
23160
23355
  auth: "admin"
23161
- }), method(object({}), array(RelocateJobSchema).readonly(), {
23162
- kind: "query",
23356
+ }), method(StorageMigrationLeaseInputSchema, object({ resumed: literal(true) }), {
23357
+ kind: "mutation",
23163
23358
  auth: "admin"
23164
- }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
23359
+ }), method(StorageMigrationLeaseInputSchema, object({ refreshed: literal(true) }), {
23360
+ kind: "mutation",
23361
+ auth: "admin"
23362
+ }), method(StorageMigrationFootageMoveInputSchema, object({ jobId: string() }), {
23363
+ kind: "mutation",
23364
+ auth: "admin"
23365
+ }), method(object({ jobId: string() }), RelocateJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
23165
23366
  kind: "mutation",
23166
23367
  auth: "admin"
23167
23368
  });
@@ -27283,6 +27484,12 @@ Object.freeze({
27283
27484
  addonId: null,
27284
27485
  access: "delete"
27285
27486
  },
27487
+ "osdManager.copyDeviceConfiguration": {
27488
+ capName: "osd-manager",
27489
+ capScope: "system",
27490
+ addonId: null,
27491
+ access: "create"
27492
+ },
27286
27493
  "osdManager.getConditionSupport": {
27287
27494
  capName: "osd-manager",
27288
27495
  capScope: "system",
@@ -27379,7 +27586,7 @@ Object.freeze({
27379
27586
  addonId: null,
27380
27587
  access: "create"
27381
27588
  },
27382
- "pipelineAnalytics.cancelMediaRelocate": {
27589
+ "pipelineAnalytics.cancelStorageMigrationMove": {
27383
27590
  capName: "pipeline-analytics",
27384
27591
  capScope: "device",
27385
27592
  addonId: null,
@@ -27451,12 +27658,6 @@ Object.freeze({
27451
27658
  addonId: null,
27452
27659
  access: "view"
27453
27660
  },
27454
- "pipelineAnalytics.getMediaRelocateStatus": {
27455
- capName: "pipeline-analytics",
27456
- capScope: "device",
27457
- addonId: null,
27458
- access: "view"
27459
- },
27460
27661
  "pipelineAnalytics.getMotionEvents": {
27461
27662
  capName: "pipeline-analytics",
27462
27663
  capScope: "device",
@@ -27493,6 +27694,12 @@ Object.freeze({
27493
27694
  addonId: null,
27494
27695
  access: "view"
27495
27696
  },
27697
+ "pipelineAnalytics.getStorageMigrationMoveStatus": {
27698
+ capName: "pipeline-analytics",
27699
+ capScope: "device",
27700
+ addonId: null,
27701
+ access: "view"
27702
+ },
27496
27703
  "pipelineAnalytics.getTrack": {
27497
27704
  capName: "pipeline-analytics",
27498
27705
  capScope: "device",
@@ -27571,6 +27778,12 @@ Object.freeze({
27571
27778
  addonId: null,
27572
27779
  access: "view"
27573
27780
  },
27781
+ "pipelineAnalytics.pauseForStorageMigration": {
27782
+ capName: "pipeline-analytics",
27783
+ capScope: "device",
27784
+ addonId: null,
27785
+ access: "create"
27786
+ },
27574
27787
  "pipelineAnalytics.proposeRetrainAnnotations": {
27575
27788
  capName: "pipeline-analytics",
27576
27789
  capScope: "device",
@@ -27601,7 +27814,7 @@ Object.freeze({
27601
27814
  addonId: null,
27602
27815
  access: "create"
27603
27816
  },
27604
- "pipelineAnalytics.relocateMedia": {
27817
+ "pipelineAnalytics.refreshStorageLocationsForMigration": {
27605
27818
  capName: "pipeline-analytics",
27606
27819
  capScope: "device",
27607
27820
  addonId: null,
@@ -27613,6 +27826,12 @@ Object.freeze({
27613
27826
  addonId: null,
27614
27827
  access: "create"
27615
27828
  },
27829
+ "pipelineAnalytics.resumeForStorageMigration": {
27830
+ capName: "pipeline-analytics",
27831
+ capScope: "device",
27832
+ addonId: null,
27833
+ access: "create"
27834
+ },
27616
27835
  "pipelineAnalytics.saveRetrainAnnotations": {
27617
27836
  capName: "pipeline-analytics",
27618
27837
  capScope: "device",
@@ -27637,6 +27856,12 @@ Object.freeze({
27637
27856
  addonId: null,
27638
27857
  access: "create"
27639
27858
  },
27859
+ "pipelineAnalytics.startStorageMigrationMove": {
27860
+ capName: "pipeline-analytics",
27861
+ capScope: "device",
27862
+ addonId: null,
27863
+ access: "create"
27864
+ },
27640
27865
  "pipelineAnalytics.wipeAllAnalytics": {
27641
27866
  capName: "pipeline-analytics",
27642
27867
  capScope: "device",
@@ -28003,6 +28228,12 @@ Object.freeze({
28003
28228
  addonId: null,
28004
28229
  access: "view"
28005
28230
  },
28231
+ "pipelineOrchestrator.pauseForStorageMigration": {
28232
+ capName: "pipeline-orchestrator",
28233
+ capScope: "system",
28234
+ addonId: null,
28235
+ access: "create"
28236
+ },
28006
28237
  "pipelineOrchestrator.rebalance": {
28007
28238
  capName: "pipeline-orchestrator",
28008
28239
  capScope: "system",
@@ -28027,6 +28258,12 @@ Object.freeze({
28027
28258
  addonId: null,
28028
28259
  access: "view"
28029
28260
  },
28261
+ "pipelineOrchestrator.resumeForStorageMigration": {
28262
+ capName: "pipeline-orchestrator",
28263
+ capScope: "system",
28264
+ addonId: null,
28265
+ access: "create"
28266
+ },
28030
28267
  "pipelineOrchestrator.saveTemplate": {
28031
28268
  capName: "pipeline-orchestrator",
28032
28269
  capScope: "system",
@@ -28423,7 +28660,7 @@ Object.freeze({
28423
28660
  addonId: null,
28424
28661
  access: "create"
28425
28662
  },
28426
- "recording.cancelRelocate": {
28663
+ "recording.cancelStorageMigrationMove": {
28427
28664
  capName: "recording",
28428
28665
  capScope: "system",
28429
28666
  addonId: null,
@@ -28459,7 +28696,7 @@ Object.freeze({
28459
28696
  addonId: null,
28460
28697
  access: "view"
28461
28698
  },
28462
- "recording.getRelocateStatus": {
28699
+ "recording.getStorageMigrationMoveStatus": {
28463
28700
  capName: "recording",
28464
28701
  capScope: "system",
28465
28702
  addonId: null,
@@ -28483,6 +28720,12 @@ Object.freeze({
28483
28720
  addonId: null,
28484
28721
  access: "view"
28485
28722
  },
28723
+ "recording.pauseForStorageMigration": {
28724
+ capName: "recording",
28725
+ capScope: "system",
28726
+ addonId: null,
28727
+ access: "create"
28728
+ },
28486
28729
  "recording.pruneFootage": {
28487
28730
  capName: "recording",
28488
28731
  capScope: "system",
@@ -28501,7 +28744,7 @@ Object.freeze({
28501
28744
  addonId: null,
28502
28745
  access: "view"
28503
28746
  },
28504
- "recording.relocateFootage": {
28747
+ "recording.refreshStorageLocationsForMigration": {
28505
28748
  capName: "recording",
28506
28749
  capScope: "system",
28507
28750
  addonId: null,
@@ -28525,12 +28768,24 @@ Object.freeze({
28525
28768
  addonId: null,
28526
28769
  access: "create"
28527
28770
  },
28771
+ "recording.resumeForStorageMigration": {
28772
+ capName: "recording",
28773
+ capScope: "system",
28774
+ addonId: null,
28775
+ access: "create"
28776
+ },
28528
28777
  "recording.setDeviceConfig": {
28529
28778
  capName: "recording",
28530
28779
  capScope: "system",
28531
28780
  addonId: null,
28532
28781
  access: "create"
28533
28782
  },
28783
+ "recording.startStorageMigrationMove": {
28784
+ capName: "recording",
28785
+ capScope: "system",
28786
+ addonId: null,
28787
+ access: "create"
28788
+ },
28534
28789
  "recordingExport.cancelExport": {
28535
28790
  capName: "recordingExport",
28536
28791
  capScope: "system",
@@ -28921,6 +29176,30 @@ Object.freeze({
28921
29176
  addonId: null,
28922
29177
  access: "view"
28923
29178
  },
29179
+ "storageMigration.cancel": {
29180
+ capName: "storage-migration",
29181
+ capScope: "system",
29182
+ addonId: null,
29183
+ access: "create"
29184
+ },
29185
+ "storageMigration.plan": {
29186
+ capName: "storage-migration",
29187
+ capScope: "system",
29188
+ addonId: null,
29189
+ access: "view"
29190
+ },
29191
+ "storageMigration.start": {
29192
+ capName: "storage-migration",
29193
+ capScope: "system",
29194
+ addonId: null,
29195
+ access: "create"
29196
+ },
29197
+ "storageMigration.status": {
29198
+ capName: "storage-migration",
29199
+ capScope: "system",
29200
+ addonId: null,
29201
+ access: "view"
29202
+ },
28924
29203
  "storageProvider.abortUpload": {
28925
29204
  capName: "storage-provider",
28926
29205
  capScope: "system",
@@ -29299,12 +29578,42 @@ Object.freeze({
29299
29578
  addonId: null,
29300
29579
  access: "create"
29301
29580
  },
29581
+ "terminalSession.adoptLegacyMonitor": {
29582
+ capName: "terminal-session",
29583
+ capScope: "system",
29584
+ addonId: null,
29585
+ access: "create"
29586
+ },
29302
29587
  "terminalSession.close": {
29303
29588
  capName: "terminal-session",
29304
29589
  capScope: "system",
29305
29590
  addonId: null,
29306
29591
  access: "create"
29307
29592
  },
29593
+ "terminalSession.createInstance": {
29594
+ capName: "terminal-session",
29595
+ capScope: "system",
29596
+ addonId: null,
29597
+ access: "create"
29598
+ },
29599
+ "terminalSession.deleteInstance": {
29600
+ capName: "terminal-session",
29601
+ capScope: "system",
29602
+ addonId: null,
29603
+ access: "delete"
29604
+ },
29605
+ "terminalSession.listInstances": {
29606
+ capName: "terminal-session",
29607
+ capScope: "system",
29608
+ addonId: null,
29609
+ access: "view"
29610
+ },
29611
+ "terminalSession.listLegacyCameras": {
29612
+ capName: "terminal-session",
29613
+ capScope: "system",
29614
+ addonId: null,
29615
+ access: "view"
29616
+ },
29308
29617
  "terminalSession.listProfiles": {
29309
29618
  capName: "terminal-session",
29310
29619
  capScope: "system",
@@ -29323,12 +29632,30 @@ Object.freeze({
29323
29632
  addonId: null,
29324
29633
  access: "create"
29325
29634
  },
29635
+ "terminalSession.pullOutput": {
29636
+ capName: "terminal-session",
29637
+ capScope: "system",
29638
+ addonId: null,
29639
+ access: "create"
29640
+ },
29326
29641
  "terminalSession.resize": {
29327
29642
  capName: "terminal-session",
29328
29643
  capScope: "system",
29329
29644
  addonId: null,
29330
29645
  access: "create"
29331
29646
  },
29647
+ "terminalSession.setInstanceEnabled": {
29648
+ capName: "terminal-session",
29649
+ capScope: "system",
29650
+ addonId: null,
29651
+ access: "create"
29652
+ },
29653
+ "terminalSession.writeInput": {
29654
+ capName: "terminal-session",
29655
+ capScope: "system",
29656
+ addonId: null,
29657
+ access: "create"
29658
+ },
29332
29659
  "toast.onToast": {
29333
29660
  capName: "toast",
29334
29661
  capScope: "system",
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../chunk-Cek0wNdY.js");
6
- const require_dist = require("../dist-dkJxCt5t.js");
6
+ const require_dist = require("../dist-BJxYvtPJ.js");
7
7
  //#region src/magic-link/auth-magic-link.addon.ts
8
8
  /**
9
9
  * Magic-link authentication addon.
@@ -1,4 +1,4 @@
1
- import { a as loginMethodCapability, c as BaseAddon, i as buildAddonRouteProvider, r as authProviderCapability, s as errMsg, t as addonRoutesCapability } from "../dist-D57k5JSk.mjs";
1
+ import { a as loginMethodCapability, c as BaseAddon, i as buildAddonRouteProvider, r as authProviderCapability, s as errMsg, t as addonRoutesCapability } from "../dist-k9KYzvBz.mjs";
2
2
  //#region src/magic-link/auth-magic-link.addon.ts
3
3
  /**
4
4
  * Magic-link authentication addon.
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../chunk-Cek0wNdY.js");
6
- const require_dist = require("../dist-dkJxCt5t.js");
6
+ const require_dist = require("../dist-BJxYvtPJ.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  node_crypto = require_chunk.__toESM(node_crypto);
9
9
  //#region node_modules/jose/dist/webapi/lib/buffer_utils.js
@@ -1,4 +1,4 @@
1
- import { a as loginMethodCapability, c as BaseAddon, i as buildAddonRouteProvider, r as authProviderCapability, s as errMsg, t as addonRoutesCapability } from "../dist-D57k5JSk.mjs";
1
+ import { a as loginMethodCapability, c as BaseAddon, i as buildAddonRouteProvider, r as authProviderCapability, s as errMsg, t as addonRoutesCapability } from "../dist-k9KYzvBz.mjs";
2
2
  import * as crypto$1 from "node:crypto";
3
3
  //#region node_modules/jose/dist/webapi/lib/buffer_utils.js
4
4
  var encoder = new TextEncoder();
@@ -1,6 +1,6 @@
1
1
  import { n as e, r as t, t as n } from "./_virtual_mf___mfe_internal__addon_auth_webauthn_widgets__loadShare__react__loadShare__.js-BIIa6vDX.mjs";
2
2
  import { n as r, t as i } from "./_virtual_mf___mfe_internal__addon_auth_webauthn_widgets__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CQ-aEQ9b.mjs";
3
- import { t as a } from "./_virtual_mf___mfe_internal__addon_auth_webauthn_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DnJP-Z5u.mjs";
3
+ import { t as a } from "./_virtual_mf___mfe_internal__addon_auth_webauthn_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-B6kOt8Vj.mjs";
4
4
  import { n as o, r as s, t as c } from "./_virtual_mf___mfe_internal__addon_auth_webauthn_widgets__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-BL2etuqg.mjs";
5
5
  //#region ../../node_modules/lucide-react/dist/esm/shared/src/utils.js
6
6
  var l = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), u = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), d = (e) => {
@@ -3,7 +3,7 @@ import "./dist-CYZr2fwk.mjs";
3
3
  var e = {
4
4
  "@camstack/sdk": {
5
5
  name: "@camstack/sdk",
6
- version: "1.2.12",
6
+ version: "1.2.14",
7
7
  scope: ["default"],
8
8
  loaded: !1,
9
9
  from: "addon_auth_webauthn_widgets",
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.2.56",
21
+ version: "1.2.59",
22
22
  scope: ["default"],
23
23
  loaded: !1,
24
24
  from: "addon_auth_webauthn_widgets",
@@ -33,7 +33,7 @@ var e = {
33
33
  },
34
34
  "@camstack/ui-library": {
35
35
  name: "@camstack/ui-library",
36
- version: "1.2.39",
36
+ version: "1.2.41",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_auth_webauthn_widgets",