@camstack/addon-model-studio 1.1.66 → 1.1.68

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.
Files changed (17) hide show
  1. package/dist/{MotionZonesSettings-Db0aScD3.mjs → MotionZonesSettings-B-Wgpoan.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-cR3N_ytC.mjs → PrivacyMaskSettings-cvW1-2wy.mjs} +4 -4
  3. package/dist/{SceneMonitorEditor-DXVHDH0R.mjs → SceneMonitorEditor-CBu-rpX8.mjs} +3 -3
  4. package/dist/_stub.js +10 -10
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-THpTI09L.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-pQwHBXdf.mjs} +3 -3
  6. package/dist/{_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BCT-V4ES.mjs → _virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CtdlusUe.mjs} +1 -1
  7. package/dist/{hostInit-DMExYUaf.mjs → hostInit-D7BQsze2.mjs} +2 -2
  8. package/dist/model-studio.addon.js +223 -7
  9. package/dist/model-studio.addon.mjs +223 -7
  10. package/dist/{player-overlays-lBkRCWTl.mjs → player-overlays-CQBflsvl.mjs} +1 -1
  11. package/dist/remoteEntry.js +1 -1
  12. package/dist/{responsive-yDg54Ukl.mjs → responsive-Cd_eAI5T.mjs} +1 -1
  13. package/dist/{square-CRbl_bVG.mjs → square-CQxmAA1h.mjs} +1 -1
  14. package/dist/{trash-2-6w-9eKkh.mjs → trash-2-BgRN0d8G.mjs} +1 -1
  15. package/dist/{use-device-snapshot-czNca4dI.mjs → use-device-snapshot-DgGzfUGT.mjs} +1 -1
  16. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-Dpo156ru.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-D6dxrOg6.mjs} +1 -1
  17. package/package.json +1 -1
@@ -8642,6 +8642,13 @@ var MediaRelocateModeSchema = _enum([
8642
8642
  ]);
8643
8643
  var RelocateMediaInputSchema = object({
8644
8644
  toLocationId: string(),
8645
+ /**
8646
+ * Restrict the pass to rows currently on this location. Omitted / `'*'` =
8647
+ * every row that is not already on `toLocationId` (the historical
8648
+ * behaviour). A named source is what a from→to migration needs: without it
8649
+ * "move events off disk 2" also emptied disk 1.
8650
+ */
8651
+ fromLocationId: string().optional(),
8645
8652
  throttleMbps: number().min(1).max(1e3).optional(),
8646
8653
  /** Omitted = `move`, the pre-existing behaviour. */
8647
8654
  mode: MediaRelocateModeSchema.optional()
@@ -8709,6 +8716,19 @@ var StorageMigrationDestinationsSchema = object({
8709
8716
  galleryMedia: string().min(1).optional()
8710
8717
  }).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
8711
8718
  /**
8719
+ * Optional named source per class. Omitted = the class's current default
8720
+ * (the historical behaviour). A named source that is NOT the default is a
8721
+ * drain of that disk: bytes move, the default stays, and the source is
8722
+ * disabled when the move finishes.
8723
+ */
8724
+ var StorageMigrationSourcesSchema = object({
8725
+ recordings: string().min(1).optional(),
8726
+ recordingsLow: string().min(1).optional(),
8727
+ eventMedia: string().min(1).optional(),
8728
+ backups: string().min(1).optional(),
8729
+ galleryMedia: string().min(1).optional()
8730
+ }).optional();
8731
+ /**
8712
8732
  * How a migration sequences the cutover against the byte move.
8713
8733
  *
8714
8734
  * - `blocking` — the historical order: pause, move every byte, repoint,
@@ -8730,6 +8750,8 @@ var StorageMigrationModeSchema = _enum(["blocking", "nonBlocking"]);
8730
8750
  /** Shared input for planning and starting an orchestrated storage migration. */
8731
8751
  var StorageMigrationInputSchema = object({
8732
8752
  destinations: StorageMigrationDestinationsSchema,
8753
+ /** Omitted = each class's current default. */
8754
+ sources: StorageMigrationSourcesSchema,
8733
8755
  throttleMbps: number().min(1).max(1e3).optional(),
8734
8756
  /** Omitted = `blocking`, which stays the default. */
8735
8757
  mode: StorageMigrationModeSchema.optional()
@@ -8809,6 +8831,13 @@ var StorageMigrationMoveSchema = object({
8809
8831
  storageClass: StorageMigrationClassSchema,
8810
8832
  fromLocationId: string(),
8811
8833
  toLocationId: string(),
8834
+ /**
8835
+ * True when `from` was NOT the class default at plan time. The move still
8836
+ * copies bytes, but the default is left alone and the source is disabled
8837
+ * once the copy verifies. Absent on jobs planned before this field existed
8838
+ * — those jobs always repointed, which is `false`.
8839
+ */
8840
+ freezeSource: boolean().optional(),
8812
8841
  moverJobId: string().nullable(),
8813
8842
  state: RelocateJobStateSchema.nullable(),
8814
8843
  error: string().nullable(),
@@ -8822,6 +8851,7 @@ var StorageMigrationJobSchema = object({
8822
8851
  * can tell a seconds-long cutover from a thirty-hour one. */
8823
8852
  mode: StorageMigrationModeSchema,
8824
8853
  destinations: StorageMigrationDestinationsSchema,
8854
+ sources: StorageMigrationSourcesSchema,
8825
8855
  throttleMbps: number(),
8826
8856
  moves: array(StorageMigrationMoveSchema),
8827
8857
  pauseLeaseId: string().nullable(),
@@ -8847,6 +8877,7 @@ var StorageMigrationFindingSchema = object({
8847
8877
  });
8848
8878
  var StorageMigrationPlanSchema = object({
8849
8879
  destinations: StorageMigrationDestinationsSchema,
8880
+ sources: StorageMigrationSourcesSchema,
8850
8881
  /** The mode this plan was built for. A plan is only valid for its mode: the
8851
8882
  * `eventMedia` seal gate and the single-cardinality refusal both depend on
8852
8883
  * it. */
@@ -8854,7 +8885,8 @@ var StorageMigrationPlanSchema = object({
8854
8885
  moves: array(object({
8855
8886
  storageClass: StorageMigrationClassSchema,
8856
8887
  fromLocationId: string(),
8857
- toLocationId: string()
8888
+ toLocationId: string(),
8889
+ freezeSource: boolean().optional()
8858
8890
  })),
8859
8891
  findings: array(StorageMigrationFindingSchema)
8860
8892
  });
@@ -9032,10 +9064,51 @@ var LedgerWalkReportSchema = object({
9032
9064
  var RelocatableMediaCountSchema = object({ rows: number().int().nonnegative() }).nullable();
9033
9065
  var RelocatableMediaCountInputSchema = object({
9034
9066
  toLocationId: string().min(1),
9067
+ /** Restrict the count to one source; omitted / `'*'` = every non-target row. */
9068
+ fromLocationId: string().optional(),
9035
9069
  /** Omitted = `move`. */
9036
9070
  mode: MediaRelocateModeSchema.optional()
9037
9071
  });
9038
9072
  /**
9073
+ * Operator cleanup of leftover analytics rows, optional debug media, and
9074
+ * ghost ledger entries on frozen footage locations.
9075
+ *
9076
+ * A pass is tens of minutes on a standing backlog. The hub method RETURNS
9077
+ * `{ jobId }` immediately; progress is `cleanupStatus`. Awaiting the work
9078
+ * is how `addons.custom` hit the 60 s UDS deadline while reclaim continued
9079
+ * with no operator-visible status.
9080
+ */
9081
+ var StorageCleanupPhaseSchema = _enum([
9082
+ "orphans",
9083
+ "debug-media",
9084
+ "ghost-ledger",
9085
+ "done",
9086
+ "failed",
9087
+ "cancelled"
9088
+ ]);
9089
+ var StorageCleanupInputSchema = object({
9090
+ /** Also walk motion stills / track filmstrips. Off by default. */
9091
+ includeDebugMedia: boolean().optional() });
9092
+ var StorageCleanupJobSchema = object({
9093
+ jobId: string(),
9094
+ phase: StorageCleanupPhaseSchema,
9095
+ includeDebugMedia: boolean(),
9096
+ orphansReclaimed: number().int().nonnegative(),
9097
+ orphanBytesReclaimed: number().int().nonnegative(),
9098
+ debugMediaReclaimed: number().int().nonnegative(),
9099
+ debugMediaBytesReclaimed: number().int().nonnegative(),
9100
+ ghostsForgotten: number().int().nonnegative(),
9101
+ ghostBytesForgotten: number().int().nonnegative(),
9102
+ /** Short operator-facing line: current collection, pass, or location. */
9103
+ detail: string().nullable(),
9104
+ cancelRequested: boolean(),
9105
+ startedAt: number(),
9106
+ updatedAt: number(),
9107
+ finishedAt: number().nullable(),
9108
+ error: string().nullable()
9109
+ });
9110
+ var StorageCleanupStatusInputSchema = object({ jobId: string().optional() });
9111
+ /**
9039
9112
  * `StorageLocationType` — an addon-declared id that identifies the *kind* of
9040
9113
  * storage a location serves. Defined here (not in `capabilities/storage.cap.ts`)
9041
9114
  * so the persisted record schema and the consumer-facing cap can both consume it
@@ -9063,11 +9136,10 @@ var StorageLocationTypeSchema = string().regex(/^[a-z][a-zA-Z0-9-]*$/);
9063
9136
  * The default location for a type uses `id === <type>:default` by
9064
9137
  * convention (the bare type ref like `'backups'` resolves to it).
9065
9138
  *
9066
- * `isSystem: true` marks a location as orchestrator-seeded and
9067
- * undeletable. The bootstrap-installed defaults (one per type) carry
9068
- * this flag; operator-added locations don't. Editing the config of
9069
- * a system location is allowed (path migration, provider swap) but
9070
- * deleting it is rejected at the cap level.
9139
+ * `isSystem` is a legacy persisted flag. Seed still creates the initial
9140
+ * `<type>:default` locations; the flag is no longer a lock, a badge, or a
9141
+ * prune selector. New writes leave it false. Deletion is gated on uniqueness
9142
+ * / last-enabled, not on this bit.
9071
9143
  */
9072
9144
  var StorageLocationSchema = object({
9073
9145
  id: string().regex(/^[a-z][a-zA-Z0-9-]*:[a-zA-Z0-9-]+$/),
@@ -19636,6 +19708,47 @@ var RebuildStatusSchema = object({
19636
19708
  /** Present when the pass ended by throwing. */
19637
19709
  error: string().nullable()
19638
19710
  });
19711
+ /**
19712
+ * Acknowledgement that a debug-media reclaim STARTED.
19713
+ *
19714
+ * The pass is paced at ~2 MB/s over a standing 100 GB — tens of minutes — so
19715
+ * it runs detached and this returns immediately. Awaiting it is how the
19716
+ * `addons.custom` door hit the 60 s UDS deadline while the walk carried on
19717
+ * with no status. Poll {@link pipelineAnalyticsCapability.methods.getMediaReclaimStatus}.
19718
+ */
19719
+ var MediaReclaimStartResultSchema = object({
19720
+ started: boolean(),
19721
+ /** True when a pass was already running; the new request is ignored. */
19722
+ alreadyRunning: boolean()
19723
+ });
19724
+ var MediaReclaimInputSchema = object({
19725
+ mode: _enum(["report", "reclaim"]).default("report"),
19726
+ scopes: array(_enum(["motion-still", "track-filmstrip"])).min(1).optional(),
19727
+ deviceIds: array(number().int()).min(1).optional(),
19728
+ restart: boolean().optional(),
19729
+ pageSize: number().int().min(50).max(5e3).optional(),
19730
+ maxRowsPerDevice: number().int().min(1).max(5e5).optional(),
19731
+ maxReclaimPerDevice: number().int().min(1).max(5e5).optional(),
19732
+ maxBytesPerRun: number().int().min(1).optional(),
19733
+ budgetMinutes: number().int().min(1).max(720).optional(),
19734
+ throttleBytesPerSec: number().int().min(64 * 1024).optional(),
19735
+ graceMinutes: number().int().min(1).max(10080).optional()
19736
+ });
19737
+ var MediaReclaimStatusSchema = object({
19738
+ running: boolean(),
19739
+ mode: _enum(["report", "reclaim"]).nullable(),
19740
+ totalExamined: number(),
19741
+ totalEligible: number(),
19742
+ totalReclaimed: number(),
19743
+ totalBytesReclaimed: number(),
19744
+ totalRefused: number(),
19745
+ /** Device+scope windows finished in this pass. */
19746
+ devicesDone: number(),
19747
+ complete: boolean().nullable(),
19748
+ startedAtMs: number().nullable(),
19749
+ finishedAtMs: number().nullable(),
19750
+ error: string().nullable()
19751
+ });
19639
19752
  var ReplayFrameInputSchema = object({
19640
19753
  timestamp: number(),
19641
19754
  frame: PipelineRunResultBridge
@@ -19777,6 +19890,12 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19777
19890
  }), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
19778
19891
  kind: "query",
19779
19892
  auth: "admin"
19893
+ }), method(MediaReclaimInputSchema, MediaReclaimStartResultSchema, {
19894
+ kind: "mutation",
19895
+ auth: "admin"
19896
+ }), method(object({}), MediaReclaimStatusSchema, {
19897
+ kind: "query",
19898
+ auth: "admin"
19780
19899
  }), method(object({ deviceIds: array(number()).optional() }), TrainingExportSummarySchema, {
19781
19900
  kind: "query",
19782
19901
  auth: "admin"
@@ -21747,7 +21866,13 @@ method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin"
21747
21866
  }), method(object({}), array(StorageMigrationMoverSchema).readonly(), { auth: "admin" }), method(object({}), array(StorageMigrationResidueSchema).readonly(), { auth: "admin" }), method(StorageMigrationDrainInputSchema, object({ jobId: string() }), {
21748
21867
  kind: "mutation",
21749
21868
  auth: "admin"
21750
- });
21869
+ }), method(StorageCleanupInputSchema, object({ jobId: string() }), {
21870
+ kind: "mutation",
21871
+ auth: "admin"
21872
+ }), method(StorageCleanupStatusInputSchema, StorageCleanupJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
21873
+ kind: "mutation",
21874
+ auth: "admin"
21875
+ }), method(object({}), array(StorageMigrationJobSchema).readonly(), { auth: "admin" });
21751
21876
  var ProviderInfoSchema = discriminatedUnion("shouldSaveDiskSpace", [object({
21752
21877
  providerId: string().min(1),
21753
21878
  displayName: string().min(1),
@@ -27125,6 +27250,33 @@ var RecordingRebalanceInputSchema = object({
27125
27250
  minMoveGb: number().min(0).optional()
27126
27251
  });
27127
27252
  /**
27253
+ * Operator-facing placement of one camera onto a recordings location.
27254
+ *
27255
+ * `pinLocationId` is the operator instruction: a location id, or `null` for
27256
+ * Auto (the planner may move this camera). `locationId` is where high/mid
27257
+ * currently write — the plan, which may disagree with the pin when Auto.
27258
+ */
27259
+ var RecordingDevicePlacementSchema = object({
27260
+ deviceId: number().int(),
27261
+ profile: string(),
27262
+ locationId: string()
27263
+ });
27264
+ var RecordingDevicePinSchema = object({
27265
+ deviceId: number().int(),
27266
+ /** Recordings-class location this camera is pinned to. */
27267
+ locationId: string()
27268
+ });
27269
+ var RecordingPlacementViewSchema = object({
27270
+ assignments: array(RecordingDevicePlacementSchema),
27271
+ pins: array(RecordingDevicePinSchema),
27272
+ defaultLocations: record(string(), string())
27273
+ });
27274
+ var RecordingSetDevicePlacementInputSchema = object({
27275
+ deviceId: number().int(),
27276
+ /** `null` = Auto. Otherwise a `recordings:*` location id. */
27277
+ locationId: string().nullable()
27278
+ });
27279
+ /**
27128
27280
  * Result of locating footage at a wall-clock instant for one device/profile.
27129
27281
  * `segment` carries the covering segment's window; `gap` reports the forward
27130
27282
  * nearest covered edge (`null` past the end of footage / when none exists)
@@ -27350,6 +27502,12 @@ method(object({
27350
27502
  }), method(RecordingRebalanceInputSchema, RecordingRebalancePlanSchema, {
27351
27503
  kind: "mutation",
27352
27504
  auth: "admin"
27505
+ }), method(object({}), RecordingPlacementViewSchema, {
27506
+ kind: "query",
27507
+ auth: "admin"
27508
+ }), method(RecordingSetDevicePlacementInputSchema, object({ ok: literal(true) }), {
27509
+ kind: "mutation",
27510
+ auth: "admin"
27353
27511
  });
27354
27512
  /**
27355
27513
  * `recording-export` cap — render a footage time range into a single downloadable
@@ -32430,6 +32588,12 @@ Object.freeze({
32430
32588
  addonId: null,
32431
32589
  access: "view"
32432
32590
  },
32591
+ "pipelineAnalytics.getMediaReclaimStatus": {
32592
+ capName: "pipeline-analytics",
32593
+ capScope: "device",
32594
+ addonId: null,
32595
+ access: "view"
32596
+ },
32433
32597
  "pipelineAnalytics.getMotionEvents": {
32434
32598
  capName: "pipeline-analytics",
32435
32599
  capScope: "device",
@@ -32604,6 +32768,12 @@ Object.freeze({
32604
32768
  addonId: null,
32605
32769
  access: "create"
32606
32770
  },
32771
+ "pipelineAnalytics.reclaimDebugMedia": {
32772
+ capName: "pipeline-analytics",
32773
+ capScope: "device",
32774
+ addonId: null,
32775
+ access: "create"
32776
+ },
32607
32777
  "pipelineAnalytics.reconcileFromDisk": {
32608
32778
  capName: "pipeline-analytics",
32609
32779
  capScope: "device",
@@ -33528,6 +33698,12 @@ Object.freeze({
33528
33698
  addonId: null,
33529
33699
  access: "view"
33530
33700
  },
33701
+ "recording.getPlacement": {
33702
+ capName: "recording",
33703
+ capScope: "system",
33704
+ addonId: null,
33705
+ access: "view"
33706
+ },
33531
33707
  "recording.getPlaybackManifest": {
33532
33708
  capName: "recording",
33533
33709
  capScope: "system",
@@ -33654,6 +33830,12 @@ Object.freeze({
33654
33830
  addonId: null,
33655
33831
  access: "create"
33656
33832
  },
33833
+ "recording.setDevicePlacement": {
33834
+ capName: "recording",
33835
+ capScope: "system",
33836
+ addonId: null,
33837
+ access: "create"
33838
+ },
33657
33839
  "recording.startStorageMigrationMove": {
33658
33840
  capName: "recording",
33659
33841
  capScope: "system",
@@ -34098,12 +34280,36 @@ Object.freeze({
34098
34280
  addonId: null,
34099
34281
  access: "create"
34100
34282
  },
34283
+ "storageMigration.cleanupCancel": {
34284
+ capName: "storage-migration",
34285
+ capScope: "system",
34286
+ addonId: null,
34287
+ access: "create"
34288
+ },
34289
+ "storageMigration.cleanupStart": {
34290
+ capName: "storage-migration",
34291
+ capScope: "system",
34292
+ addonId: null,
34293
+ access: "create"
34294
+ },
34295
+ "storageMigration.cleanupStatus": {
34296
+ capName: "storage-migration",
34297
+ capScope: "system",
34298
+ addonId: null,
34299
+ access: "view"
34300
+ },
34101
34301
  "storageMigration.drain": {
34102
34302
  capName: "storage-migration",
34103
34303
  capScope: "system",
34104
34304
  addonId: null,
34105
34305
  access: "create"
34106
34306
  },
34307
+ "storageMigration.history": {
34308
+ capName: "storage-migration",
34309
+ capScope: "system",
34310
+ addonId: null,
34311
+ access: "view"
34312
+ },
34107
34313
  "storageMigration.movers": {
34108
34314
  capName: "storage-migration",
34109
34315
  capScope: "system",
@@ -36220,6 +36426,11 @@ Object.freeze({
36220
36426
  form: "single",
36221
36427
  optional: true
36222
36428
  }],
36429
+ "pipelineAnalytics.reclaimDebugMedia": [{
36430
+ name: "deviceIds",
36431
+ form: "array",
36432
+ optional: true
36433
+ }],
36223
36434
  "pipelineAnalytics.reconcileFromDisk": [{
36224
36435
  name: "deviceId",
36225
36436
  form: "single",
@@ -36585,6 +36796,11 @@ Object.freeze({
36585
36796
  form: "single",
36586
36797
  optional: false
36587
36798
  }],
36799
+ "recording.setDevicePlacement": [{
36800
+ name: "deviceId",
36801
+ form: "single",
36802
+ optional: false
36803
+ }],
36588
36804
  "recording.startStorageMigrationMove": [{
36589
36805
  name: "deviceId",
36590
36806
  form: "single",
@@ -1,5 +1,5 @@
1
1
  import { h as e, l as t, u as n, y as r } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DJDHChgO.mjs";
2
- import { o as i, s as a } from "./responsive-yDg54Ukl.mjs";
2
+ import { o as i, s as a } from "./responsive-Cd_eAI5T.mjs";
3
3
  import { n as o, r as s, t as c } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-ds_Ehzaa.mjs";
4
4
  var l = a("chevron-down", [["path", {
5
5
  d: "m6 9 6 6 6-6",
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-Dpo156ru.mjs";
1
+ import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-D6dxrOg6.mjs";
2
2
  export { t as get, e as init };
@@ -1,6 +1,6 @@
1
1
  import { c as e, g as t, h as n, l as r, n as i, p as a, r as o, t as s, u as c, y as l } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DJDHChgO.mjs";
2
2
  import "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-ds_Ehzaa.mjs";
3
- import { n as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BCT-V4ES.mjs";
3
+ import { n as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CtdlusUe.mjs";
4
4
  //#region ../ui-library/node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
5
5
  l();
6
6
  var d = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), f = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), p = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), m = (e) => {
@@ -1,4 +1,4 @@
1
- import { s as e } from "./responsive-yDg54Ukl.mjs";
1
+ import { s as e } from "./responsive-Cd_eAI5T.mjs";
2
2
  var t = e("eye-off", [
3
3
  ["path", {
4
4
  d: "M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",
@@ -1,4 +1,4 @@
1
- import { s as e } from "./responsive-yDg54Ukl.mjs";
1
+ import { s as e } from "./responsive-Cd_eAI5T.mjs";
2
2
  var t = e("trash-2", [
3
3
  ["path", {
4
4
  d: "M10 11v6",
@@ -1,5 +1,5 @@
1
1
  import { c as e, h as t, p as n, y as r } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DJDHChgO.mjs";
2
- import { s as i } from "./responsive-yDg54Ukl.mjs";
2
+ import { s as i } from "./responsive-Cd_eAI5T.mjs";
3
3
  var a = i("camera", [["path", {
4
4
  d: "M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",
5
5
  key: "18u6gg"
@@ -2753,7 +2753,7 @@ async function rr(e) {
2753
2753
  }
2754
2754
  }
2755
2755
  async function ir() {
2756
- return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-THpTI09L.mjs")).catch((e) => {
2756
+ return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-pQwHBXdf.mjs")).catch((e) => {
2757
2757
  throw tr = void 0, e;
2758
2758
  }), tr;
2759
2759
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-model-studio",
3
- "version": "1.1.66",
3
+ "version": "1.1.68",
4
4
  "description": "Custom detection model registry, conversion & distribution for CamStack",
5
5
  "keywords": [
6
6
  "camstack",