@camstack/addon-model-studio 1.1.208 → 1.1.209

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 (20) hide show
  1. package/dist/MotionZonesSettings-DPVW36SY.mjs +310 -0
  2. package/dist/{PrivacyMaskSettings-BR1W0Jdz.mjs → PrivacyMaskSettings-CE3p-uMG.mjs} +5 -5
  3. package/dist/{SceneMonitorEditor-C2hv7m4b.mjs → SceneMonitorEditor-B0ZWDpU7.mjs} +285 -285
  4. package/dist/_stub.js +6463 -5786
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-BXiGIO9F.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-CXndlwsf.mjs} +3 -3
  6. package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DMYNiT-L.mjs +26 -0
  7. package/dist/addon-model-studio.css +1 -1
  8. package/dist/{hostInit-BjI6ZGeQ.mjs → hostInit-DpDYa2D-.mjs} +2 -2
  9. package/dist/model-studio.addon.js +292 -9
  10. package/dist/model-studio.addon.mjs +292 -9
  11. package/dist/{player-overlays-DyvbN32a.mjs → player-overlays-B06LE_Gr.mjs} +5 -5
  12. package/dist/remoteEntry.js +1 -1
  13. package/dist/{responsive-B85nuotM.mjs → responsive-BV0NkBXa.mjs} +3 -3
  14. package/dist/{scene-monitor-copy-DY98vLAG.mjs → scene-monitor-copy-BEsrfWnh.mjs} +1 -1
  15. package/dist/{square-CqTd_dbN.mjs → square-1mDEdKJ6.mjs} +1 -1
  16. package/dist/{trash-2-CwTAu8_U.mjs → trash-2-BJYsA9Vu.mjs} +1 -1
  17. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CejkP6cN.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CmWc3NQd.mjs} +1 -1
  18. package/package.json +1 -1
  19. package/dist/MotionZonesSettings-CfPlD9DG.mjs +0 -310
  20. package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CVVm4Mi7.mjs +0 -26
@@ -11073,7 +11073,53 @@ var ModelFormatEntrySchema = object({
11073
11073
  /** Multi-file payload (directory members or sibling files). */
11074
11074
  files: array(string()).readonly().optional(),
11075
11075
  /** Runtime(s) that can use this format. If omitted, inferred from ModelFormat key */
11076
- runtimes: array(_enum(["python"])).readonly().optional()
11076
+ runtimes: array(_enum(["python"])).readonly().optional(),
11077
+ /**
11078
+ * Content revision of the artefact, for one hosted OFF the CamStack mirror.
11079
+ * A format on the mirror leaves it unset: its revision (the sha256 of its
11080
+ * weight file) comes from the downloader's generated table, kept in step
11081
+ * with the mirror by `scripts/check-hosted-model-revisions.ts` (D744). A
11082
+ * node records the revision it downloaded next to the file
11083
+ * (`<file>.revision`); a copy with no record or a different one is stale
11084
+ * unless its weight file hashes to the revision, and a stale copy is
11085
+ * downloaded again, the old one serving until the new one is complete. No
11086
+ * revision at all ⇒ a file on disk is current, whatever it holds (D743).
11087
+ */
11088
+ revision: string().min(1).optional()
11089
+ });
11090
+ /**
11091
+ * What a node holds for one (model, format) (D746). `current` is a complete
11092
+ * copy at its catalog revision — exactly what `downloaded: true` means.
11093
+ * `stale` is bytes on disk that are not (yet) proven current under D743/D744:
11094
+ * no or a different revision record, or a missing sibling. `missing` is no
11095
+ * copy. `downloaded` alone folds `stale` into "not downloaded", which hid
11096
+ * reclaimable bytes and a copy about to be replaced.
11097
+ */
11098
+ var ModelOnDiskStateSchema = _enum([
11099
+ "current",
11100
+ "stale",
11101
+ "missing"
11102
+ ]);
11103
+ /**
11104
+ * The numeric precision of one format's BUILD (D746) — reported only when the
11105
+ * build states it (file-name token, an INT8 variant, an EdgeTPU compile, a
11106
+ * CamStack Core ML export). Absent means "not stated", never "fp32".
11107
+ */
11108
+ var ModelFormatPrecisionSchema = _enum([
11109
+ "fp32",
11110
+ "fp16",
11111
+ "int8"
11112
+ ]);
11113
+ /**
11114
+ * One format of one model as a node's `pipelineExecutor.getSchema` reports it.
11115
+ * `onDisk` / `precision` are optional for version skew: a runner that predates
11116
+ * them omits them, and a reader falls back to `downloaded`.
11117
+ */
11118
+ var PipelineModelFormatStatusSchema = object({
11119
+ downloaded: boolean(),
11120
+ sizeMB: number(),
11121
+ onDisk: ModelOnDiskStateSchema.optional(),
11122
+ precision: ModelFormatPrecisionSchema.optional()
11077
11123
  });
11078
11124
  /**
11079
11125
  * Extra file that must be downloaded alongside the model (e.g., labels JSON, dict.txt).
@@ -23765,7 +23811,7 @@ var FrameRefSchema = object({
23765
23811
  timestamp: number(),
23766
23812
  capturedAt: number().optional()
23767
23813
  });
23768
- var ModelFormatSchema$1 = _enum([
23814
+ var ModelFormatSchema$2 = _enum([
23769
23815
  "onnx",
23770
23816
  "coreml",
23771
23817
  "openvino",
@@ -23783,7 +23829,7 @@ var PipelineSlotSchema = _enum([
23783
23829
  var PipelineEngineChoiceSchema = object({
23784
23830
  runtime: literal("python"),
23785
23831
  backend: string(),
23786
- format: ModelFormatSchema$1,
23832
+ format: ModelFormatSchema$2,
23787
23833
  device: string().optional()
23788
23834
  });
23789
23835
  /**
@@ -23840,10 +23886,7 @@ var PipelineTemplateSchema$1 = object({
23840
23886
  var PipelineModelOptionSchema = object({
23841
23887
  id: string(),
23842
23888
  name: string(),
23843
- formats: record(string(), object({
23844
- downloaded: boolean(),
23845
- sizeMB: number()
23846
- })),
23889
+ formats: record(string(), PipelineModelFormatStatusSchema),
23847
23890
  group: ModelVariantGroupSchema.optional(),
23848
23891
  legacy: boolean().optional(),
23849
23892
  provider: ModelProviderIdSchema.optional(),
@@ -24010,6 +24053,22 @@ method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngi
24010
24053
  }), {
24011
24054
  kind: "mutation",
24012
24055
  auth: "admin"
24056
+ }), method(object({
24057
+ nodeId: string(),
24058
+ deviceIds: array(number()).readonly().optional(),
24059
+ dryRun: boolean()
24060
+ }), object({
24061
+ entries: array(object({
24062
+ deviceId: number(),
24063
+ keys: array(string()).readonly()
24064
+ })).readonly(),
24065
+ refused: array(object({
24066
+ deviceId: number(),
24067
+ reason: string()
24068
+ })).readonly()
24069
+ }), {
24070
+ kind: "mutation",
24071
+ auth: "admin"
24013
24072
  }), method(object({ nodeId: string() }), object({ unhealthy: array(object({
24014
24073
  /** `<backend>:<device>`, e.g. `openvino:gpu`. */
24015
24074
  deviceKey: string(),
@@ -24046,11 +24105,11 @@ method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngi
24046
24105
  }), PipelineTemplateSchema$1, { kind: "mutation" }), method(object({ id: string() }), _void(), { kind: "mutation" }), method(_void(), InferenceCapabilitiesBridge), method(object({ addonId: string() }), ModelAvailabilityListBridge), method(object({
24047
24106
  addonId: string(),
24048
24107
  modelId: string(),
24049
- format: ModelFormatSchema$1
24108
+ format: ModelFormatSchema$2
24050
24109
  }), DownloadModelResultSchema, { kind: "mutation" }), method(object({
24051
24110
  addonId: string(),
24052
24111
  modelId: string(),
24053
- format: ModelFormatSchema$1
24112
+ format: ModelFormatSchema$2
24054
24113
  }), object({ success: literal(true) }), { kind: "mutation" }), method(object({
24055
24114
  steps: array(PipelineStepInputSchema).min(1),
24056
24115
  frame: FrameInputSchema.optional(),
@@ -24207,6 +24266,204 @@ method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngi
24207
24266
  filename: string().optional(),
24208
24267
  settings: record(string(), unknown()).optional()
24209
24268
  }), AudioTestResultSchema, { kind: "mutation" }), method(_void(), ConfigUISchemaNullableBridge);
24269
+ /**
24270
+ * The wire shapes of the Best settings plan and apply (D745), used by the
24271
+ * `pipeline-orchestrator` cap. The recommender's own types
24272
+ * (`recommend.ts`, `demand.ts`) are the TS face of the same data; these
24273
+ * schemas are what crosses the cap boundary.
24274
+ */
24275
+ var ModelFormatSchema$1 = _enum(MODEL_FORMATS);
24276
+ var HardwareClassIdSchema = _enum([
24277
+ "intel-core-ultra",
24278
+ "intel-n-series",
24279
+ "apple-m-base",
24280
+ "apple-m-pro",
24281
+ "unknown"
24282
+ ]);
24283
+ var AcceleratorKindSchema = _enum([
24284
+ "intel-npu",
24285
+ "intel-igpu",
24286
+ "x86-cpu",
24287
+ "arm-cpu",
24288
+ "apple-ane",
24289
+ "coral"
24290
+ ]);
24291
+ var RecommendationReasonSchema = discriminatedUnion("kind", [
24292
+ object({
24293
+ kind: literal("fits"),
24294
+ utilisation: number()
24295
+ }),
24296
+ object({
24297
+ kind: literal("tie-faster"),
24298
+ over: string(),
24299
+ recallDelta: number()
24300
+ }),
24301
+ object({
24302
+ kind: literal("stepped-down"),
24303
+ from: string(),
24304
+ to: string(),
24305
+ limitedBy: string()
24306
+ }),
24307
+ object({
24308
+ kind: literal("no-fit-lightest"),
24309
+ utilisation: number()
24310
+ }),
24311
+ object({
24312
+ kind: literal("derived-latency"),
24313
+ modelId: string()
24314
+ }),
24315
+ object({
24316
+ kind: literal("estimated-load"),
24317
+ observedForMs: number().nullable()
24318
+ }),
24319
+ object({ kind: literal("cpu-device") }),
24320
+ object({ kind: literal("coral-untouched") }),
24321
+ object({ kind: literal("device-disabled") }),
24322
+ object({ kind: literal("device-unavailable") }),
24323
+ object({ kind: literal("node-offline") }),
24324
+ object({ kind: literal("no-hardware-facts") }),
24325
+ object({
24326
+ kind: literal("no-measured-data"),
24327
+ hardwareClass: HardwareClassIdSchema
24328
+ }),
24329
+ object({
24330
+ kind: literal("no-family-build"),
24331
+ format: ModelFormatSchema$1
24332
+ })
24333
+ ]);
24334
+ var DeviceDemandSchema = object({
24335
+ nodeId: string(),
24336
+ deviceKey: string(),
24337
+ demandFps: number(),
24338
+ maxCameraFps: number(),
24339
+ alwaysOnCameras: number(),
24340
+ onMotionSessions: number(),
24341
+ onMotionSource: _enum([
24342
+ "observed-24h",
24343
+ "estimate",
24344
+ "none"
24345
+ ]),
24346
+ observedForMs: number().nullable()
24347
+ });
24348
+ var DeviceModelChoiceSchema = object({
24349
+ modelId: string(),
24350
+ p50Ms: number(),
24351
+ fps: number(),
24352
+ measured: boolean(),
24353
+ utilisation: number(),
24354
+ personRecall: number()
24355
+ });
24356
+ var DeviceRecommendationSchema = object({
24357
+ deviceKey: string(),
24358
+ accelerator: AcceleratorKindSchema.nullable(),
24359
+ enabled: boolean(),
24360
+ available: boolean(),
24361
+ demand: DeviceDemandSchema.nullable(),
24362
+ chosen: DeviceModelChoiceSchema.nullable(),
24363
+ reasons: array(RecommendationReasonSchema).readonly()
24364
+ });
24365
+ var NodeRecommendationSchema = object({
24366
+ nodeId: string(),
24367
+ reachable: boolean(),
24368
+ hardwareClass: HardwareClassIdSchema.nullable(),
24369
+ cpuModel: string().nullable(),
24370
+ skipped: boolean(),
24371
+ acceleratorModelId: string().nullable(),
24372
+ devices: array(DeviceRecommendationSchema).readonly(),
24373
+ reasons: array(RecommendationReasonSchema).readonly()
24374
+ });
24375
+ var ModelPinChangeSchema = object({
24376
+ stepId: string(),
24377
+ before: string().nullable(),
24378
+ after: string().nullable()
24379
+ });
24380
+ var NodeDeviceChangeSchema = object({
24381
+ nodeId: string(),
24382
+ deviceKey: string(),
24383
+ madeExplicit: boolean(),
24384
+ modelPins: array(ModelPinChangeSchema).readonly(),
24385
+ thresholds: array(object({
24386
+ stepId: string(),
24387
+ keys: array(string()).readonly()
24388
+ })).readonly()
24389
+ });
24390
+ var CameraOverrideClearSchema = object({
24391
+ deviceId: number(),
24392
+ source: _enum(["step-override", "wholesale"]),
24393
+ nodeId: string(),
24394
+ deviceKey: string().nullable(),
24395
+ stepId: string(),
24396
+ modelIdBefore: string().nullable(),
24397
+ keys: array(string()).readonly()
24398
+ });
24399
+ var DetectorStoreClearSchema = object({
24400
+ deviceId: number(),
24401
+ keys: array(string()).readonly()
24402
+ });
24403
+ var BestSettingsWarningSchema = discriminatedUnion("kind", [
24404
+ object({
24405
+ kind: literal("detector-store-cluster-wide"),
24406
+ skippedNodes: array(string()).readonly()
24407
+ }),
24408
+ object({
24409
+ kind: literal("detector-store-unreadable"),
24410
+ error: string()
24411
+ }),
24412
+ object({
24413
+ kind: literal("coral-enabled"),
24414
+ nodeId: string(),
24415
+ deviceKey: string()
24416
+ })
24417
+ ]);
24418
+ var BestSettingsOptionsSchema = object({
24419
+ /** Share of each accelerator's throughput kept free (0.3–0.5). */
24420
+ headroom: number().min(.3).max(.5).default(.4) });
24421
+ var BestSettingsPlanSchema = object({
24422
+ /** Hash of everything the apply will write — the apply refuses a different one. */
24423
+ planHash: string(),
24424
+ family: literal("yolov9"),
24425
+ headroom: number(),
24426
+ generatedAt: number(),
24427
+ nodes: array(NodeRecommendationSchema).readonly(),
24428
+ nodeChanges: array(NodeDeviceChangeSchema).readonly(),
24429
+ cameraClears: array(CameraOverrideClearSchema).readonly(),
24430
+ detectorStoreClears: array(DetectorStoreClearSchema).readonly(),
24431
+ warnings: array(BestSettingsWarningSchema).readonly()
24432
+ });
24433
+ var BestSettingsApplyInputSchema = object({
24434
+ planHash: string(),
24435
+ headroom: number().min(.3).max(.5).default(.4)
24436
+ });
24437
+ var BestSettingsPhaseResultSchema = object({
24438
+ phase: _enum([
24439
+ "download",
24440
+ "camera-overrides",
24441
+ "detector-thresholds",
24442
+ "node-models",
24443
+ "redispatch"
24444
+ ]),
24445
+ ok: boolean(),
24446
+ detail: string()
24447
+ });
24448
+ var BestSettingsApplyResultSchema = discriminatedUnion("kind", [
24449
+ object({
24450
+ kind: literal("applied"),
24451
+ planHash: string(),
24452
+ phases: array(BestSettingsPhaseResultSchema).readonly()
24453
+ }),
24454
+ object({
24455
+ kind: literal("aborted"),
24456
+ phases: array(BestSettingsPhaseResultSchema).readonly()
24457
+ }),
24458
+ object({
24459
+ kind: literal("stale"),
24460
+ plan: BestSettingsPlanSchema
24461
+ }),
24462
+ object({
24463
+ kind: literal("refused"),
24464
+ reason: _enum(["apply-in-progress"])
24465
+ })
24466
+ ]);
24210
24467
  object({
24211
24468
  activeCameras: number(),
24212
24469
  throttledCameras: number(),
@@ -25933,6 +26190,9 @@ method(object({
25933
26190
  }), {
25934
26191
  kind: "mutation",
25935
26192
  auth: "admin"
26193
+ }), method(BestSettingsOptionsSchema, BestSettingsPlanSchema, { auth: "admin" }), method(BestSettingsApplyInputSchema, BestSettingsApplyResultSchema, {
26194
+ kind: "mutation",
26195
+ auth: "admin"
25936
26196
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
25937
26197
  deviceId: number(),
25938
26198
  addonId: string(),
@@ -41606,6 +41866,12 @@ Object.freeze({
41606
41866
  addonId: null,
41607
41867
  access: "delete"
41608
41868
  },
41869
+ "pipelineExecutor.clearModelBoundDeviceOverrides": {
41870
+ capName: "pipeline-executor",
41871
+ capScope: "system",
41872
+ addonId: null,
41873
+ access: "delete"
41874
+ },
41609
41875
  "pipelineExecutor.deleteModel": {
41610
41876
  capName: "pipeline-executor",
41611
41877
  capScope: "system",
@@ -41822,6 +42088,12 @@ Object.freeze({
41822
42088
  addonId: null,
41823
42089
  access: "view"
41824
42090
  },
42091
+ "pipelineOrchestrator.applyBestSettings": {
42092
+ capName: "pipeline-orchestrator",
42093
+ capScope: "system",
42094
+ addonId: null,
42095
+ access: "create"
42096
+ },
41825
42097
  "pipelineOrchestrator.applyDeviceSettingsPatch": {
41826
42098
  capName: "pipeline-orchestrator",
41827
42099
  capScope: "system",
@@ -41996,6 +42268,12 @@ Object.freeze({
41996
42268
  addonId: null,
41997
42269
  access: "create"
41998
42270
  },
42271
+ "pipelineOrchestrator.planBestSettings": {
42272
+ capName: "pipeline-orchestrator",
42273
+ capScope: "system",
42274
+ addonId: null,
42275
+ access: "view"
42276
+ },
41999
42277
  "pipelineOrchestrator.rebalance": {
42000
42278
  capName: "pipeline-orchestrator",
42001
42279
  capScope: "system",
@@ -47418,6 +47696,11 @@ Object.freeze({
47418
47696
  form: "single",
47419
47697
  optional: false
47420
47698
  }],
47699
+ "pipelineExecutor.clearModelBoundDeviceOverrides": [{
47700
+ name: "deviceIds",
47701
+ form: "array",
47702
+ optional: true
47703
+ }],
47421
47704
  "pipelineExecutor.runPipeline": [{
47422
47705
  name: "deviceId",
47423
47706
  form: "single",
@@ -1,10 +1,10 @@
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-B85nuotM.mjs";
2
+ import { b as i, y as a } from "./responsive-BV0NkBXa.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
- var l = a("chevron-down", [["path", {
4
+ var l = i("chevron-down", [["path", {
5
5
  d: "m6 9 6 6 6-6",
6
6
  key: "qrunsl"
7
- }]]), u = a("chevron-right", [["path", {
7
+ }]]), u = i("chevron-right", [["path", {
8
8
  d: "m9 18 6-6-6-6",
9
9
  key: "mthhwq"
10
10
  }]]);
@@ -32,8 +32,8 @@ function d({ title: t, icon: n, headerRight: r, collapsible: i = !1, defaultOpen
32
32
  }) : null]
33
33
  });
34
34
  }
35
- r(), i("camstack:player-overlays-state", null);
36
- var f = i("camstack:player-overlays-actions", null);
35
+ r(), a("camstack:player-overlays-state", null);
36
+ var f = a("camstack:player-overlays-actions", null);
37
37
  function p(e) {
38
38
  let r = t(f);
39
39
  n(() => {
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CejkP6cN.mjs";
1
+ import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CmWc3NQd.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 { d as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CVVm4Mi7.mjs";
3
+ import { d as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DMYNiT-L.mjs";
4
4
  //#region ../../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) => {
@@ -117,6 +117,6 @@ function E(e) {
117
117
  }
118
118
  //#endregion
119
119
  //#region ../ui-library/src/lib/responsive.ts
120
- var D = "text-[10px] text-foreground-subtle";
120
+ var D = "rounded-lg border border-border bg-surface overflow-hidden", O = "border-b border-border px-3 sm:px-4 py-1.5 sm:py-2", k = "space-y-3 sm:space-y-4", A = "flex min-w-0 flex-col gap-0.5 py-1.5 sm:flex-row sm:items-center", j = "min-w-0 text-[11px] leading-tight text-foreground-subtle sm:w-32 sm:shrink-0 sm:pr-2", M = "flex w-full min-w-0 items-center gap-1 sm:flex-1", N = "min-w-0 break-all text-xs text-foreground sm:truncate", P = "text-[10px] sm:text-[11px] font-semibold text-foreground uppercase tracking-wider", F = "text-[10px] text-foreground-subtle", I = "inline-flex items-center justify-center gap-1 rounded border border-primary/40 bg-primary/15 px-1.5 py-0.5 sm:px-2 sm:py-1 text-[10px] sm:text-[11px] font-medium text-primary hover:bg-primary/25 transition-colors disabled:opacity-40", L = "inline-flex items-center justify-center gap-1 rounded border border-danger/40 bg-danger/10 px-1.5 py-0.5 sm:px-2 sm:py-1 text-[10px] sm:text-[11px] font-medium text-danger hover:bg-danger/20 transition-colors disabled:opacity-40", R = "inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[10px] font-medium transition-colors", z = "border-primary/50 bg-primary/15 text-primary", B = "border-border bg-surface text-foreground-subtle hover:bg-surface-hover";
121
121
  //#endregion
122
- export { x as a, w as i, E as n, y as o, C as r, v as s, D as t };
122
+ export { w as _, B as a, v as b, A as c, N as d, k as f, C as g, E as h, R as i, j as l, P as m, I as n, D as o, F as p, z as r, O as s, L as t, M as u, x as v, y };
@@ -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-B85nuotM.mjs";
2
+ import { b as i } from "./responsive-BV0NkBXa.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"
@@ -1,4 +1,4 @@
1
- import { s as e } from "./responsive-B85nuotM.mjs";
1
+ import { b as e } from "./responsive-BV0NkBXa.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-B85nuotM.mjs";
1
+ import { b as e } from "./responsive-BV0NkBXa.mjs";
2
2
  var t = e("trash-2", [
3
3
  ["path", {
4
4
  d: "M10 11v6",
@@ -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-BXiGIO9F.mjs")).catch((e) => {
2756
+ return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-CXndlwsf.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.208",
3
+ "version": "1.1.209",
4
4
  "description": "Custom detection model registry, conversion & distribution for CamStack",
5
5
  "keywords": [
6
6
  "camstack",