@camstack/addon-model-studio 1.1.270 → 1.1.272

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 (19) hide show
  1. package/dist/{MotionZonesSettings-DzJf18cG.mjs → MotionZonesSettings-uJM4ZUGp.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-BfcxIzcV.mjs → PrivacyMaskSettings-xm3OPawb.mjs} +4 -4
  3. package/dist/{SceneMonitorEditor-CXZ7rmkI.mjs → SceneMonitorEditor-CU_dpHhd.mjs} +3 -3
  4. package/dist/_stub.js +2588 -2488
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-02gJTlkt.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-CDB41sJz.mjs} +4 -4
  6. package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-i7uk041N.mjs +26 -0
  7. package/dist/addon-model-studio.css +1 -1
  8. package/dist/{hostInit-CLORa_rj.mjs → hostInit-Bb-UT7C0.mjs} +3 -3
  9. package/dist/model-studio.addon.js +323 -36
  10. package/dist/model-studio.addon.mjs +323 -36
  11. package/dist/{player-overlays-mDdhIu2Z.mjs → player-overlays-BbEJx8gV.mjs} +1 -1
  12. package/dist/remoteEntry.js +1 -1
  13. package/dist/{responsive-BDYhKoco.mjs → responsive-CYhlrBgb.mjs} +1 -1
  14. package/dist/{scene-monitor-copy-CqHEekjf.mjs → scene-monitor-copy-Bwlftx4l.mjs} +1 -1
  15. package/dist/{square-Br-2YTir.mjs → square-BVO9tL_2.mjs} +1 -1
  16. package/dist/{trash-2-Dyh-Oss-.mjs → trash-2-oXufXh2k.mjs} +1 -1
  17. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CfBTbbuC.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-9kZRVZbG.mjs} +1 -1
  18. package/package.json +1 -1
  19. package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BpItLART.mjs +0 -26
@@ -368,7 +368,7 @@ function buildScryptedRegistryDescriptor(entry) {
368
368
  };
369
369
  }
370
370
  //#endregion
371
- //#region ../types/dist/event-category-BvOFi6PY.mjs
371
+ //#region ../types/dist/event-category-DOl51-Ij.mjs
372
372
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
373
373
  EventCategory["SystemBoot"] = "system.boot";
374
374
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -447,9 +447,18 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
447
447
  /**
448
448
  * The node's one-shot runner boot check (D877): planned runners against the
449
449
  * process service, `degraded` when any is failed, refused or missing. The
450
- * alert centre turns it into one alert and a direct critical push.
450
+ * alert centre turns it into one critical alert.
451
451
  */
452
452
  EventCategory["SystemRunnerCheck"] = "system.runner-check";
453
+ /**
454
+ * An alert EPISODE opened or closed, emitted by the alert centre for alerts
455
+ * of severity `critical` or `error` (`AlertEpisodePayload`). The alert
456
+ * centre sends no notification of its own: Notification Center turns this
457
+ * into the `alert-critical` / `alert-error` / `alert-critical-resolved`
458
+ * system-event kinds, and reconciles from the alerts store because a bus
459
+ * event may be dropped (D8, D11).
460
+ */
461
+ EventCategory["AlertEpisode"] = "alert.episode";
453
462
  EventCategory["AddonError"] = "addon.error";
454
463
  EventCategory["AddonPageReady"] = "addon.page-ready";
455
464
  EventCategory["AddonWidgetReady"] = "addon.widget-ready";
@@ -5774,7 +5783,7 @@ var ZodIssueCode = {
5774
5783
  var ZodFirstPartyTypeKind;
5775
5784
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5776
5785
  //#endregion
5777
- //#region ../types/dist/sleep-BOjuyoPC.mjs
5786
+ //#region ../types/dist/sleep-BxjU_fJM.mjs
5778
5787
  /**
5779
5788
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5780
5789
  * window to float samples (D455).
@@ -13693,7 +13702,14 @@ var AlertSeveritySchema = _enum([
13693
13702
  ]);
13694
13703
  var AlertActionSchema = object({
13695
13704
  label: string(),
13696
- href: string().optional()
13705
+ href: string().optional(),
13706
+ /**
13707
+ * How `href` is followed. Absent / `app`: an admin-ui route (client-side).
13708
+ * `server`: a route the HUB serves (an addon HTTP route such as an OAuth
13709
+ * start) — the browser must leave the SPA with a full navigation, because
13710
+ * the SPA has no such route and would bounce to the home page.
13711
+ */
13712
+ navigation: _enum(["app", "server"]).optional()
13697
13713
  });
13698
13714
  var AlertStatusSchema = _enum([
13699
13715
  "active",
@@ -17885,7 +17901,11 @@ DeviceType.Hub, DeviceDiscoveryStatusSchema.extend({ lastFetchedAt: number().int
17885
17901
  });
17886
17902
  /**
17887
17903
  * `device-adoption` — generic discovery + adoption surface,
17888
- * system-scoped singleton. The de-HA-ified successor to `ha-discovery`:
17904
+ * system-scoped collection (one provider per integration addon), routed
17905
+ * by explicit `{ addonId }` on direct `deviceAdoption.*` calls — the same
17906
+ * pin model as `connection-test`. The admin UI keeps using
17907
+ * `deviceManager.adoption*` (which already threads `addonId`). The de-HA-ified
17908
+ * successor to `ha-discovery`:
17889
17909
  * keyed by `integrationId` (the addon resolves integrationId → broker
17890
17910
  * internally) rather than a connection-specific `brokerId`, and it
17891
17911
  * REUSES the shared `DiscoveredChildDevice` candidate type from
@@ -42099,6 +42119,9 @@ var NcSystemEventKindSchema = _enum([
42099
42119
  "server-updated",
42100
42120
  "export-completed",
42101
42121
  "backup-completed",
42122
+ "alert-critical",
42123
+ "alert-error",
42124
+ "alert-critical-resolved",
42102
42125
  "camera-online",
42103
42126
  "camera-offline",
42104
42127
  "camera-disabled",
@@ -51131,7 +51154,10 @@ method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin"
51131
51154
  }), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
51132
51155
  kind: "mutation",
51133
51156
  auth: "admin"
51134
- }), method(object({}), array(StorageMigrationMoverSchema).readonly(), { auth: "admin" }), method(object({}), array(StorageMigrationResidueSchema).readonly(), { auth: "admin" }), method(StorageMigrationDrainInputSchema, object({ jobId: string() }), {
51157
+ }), method(object({}), array(StorageMigrationMoverSchema).readonly(), { auth: "admin" }), method(object({ locationIds: array(string()).readonly() }), object({
51158
+ clear: boolean(),
51159
+ repointLocationId: string().optional()
51160
+ }), { auth: "admin" }), method(object({}), array(StorageMigrationResidueSchema).readonly(), { auth: "admin" }), method(StorageMigrationDrainInputSchema, object({ jobId: string() }), {
51135
51161
  kind: "mutation",
51136
51162
  auth: "admin"
51137
51163
  }), method(StorageCleanupInputSchema, object({ jobId: string() }), {
@@ -54566,6 +54592,11 @@ object({
54566
54592
  *
54567
54593
  * `kind: 'poll'` — cloud REST APIs typically have no push channel; the
54568
54594
  * provider refreshes the slice on an interval and eagerly after commands.
54595
+ *
54596
+ * UNKNOWN IS NOT OFF. Every field the appliance reports separately is
54597
+ * nullable: `null` means "not known right now" (the appliance has not said,
54598
+ * the link is down, or the description does not carry it) and is never
54599
+ * rendered or exported as `false` / `0`. `availability` says why.
54569
54600
  */
54570
54601
  var DishwasherStateSchema = _enum([
54571
54602
  "idle",
@@ -54575,80 +54606,227 @@ var DishwasherStateSchema = _enum([
54575
54606
  "error",
54576
54607
  "unavailable"
54577
54608
  ]);
54609
+ /**
54610
+ * The appliance's own operation state, uncollapsed. `state` above is the coarse
54611
+ * view for compact surfaces; this is what the appliance said.
54612
+ */
54613
+ var DishwasherOperationStateSchema = _enum([
54614
+ "Inactive",
54615
+ "Ready",
54616
+ "DelayedStart",
54617
+ "Run",
54618
+ "Pause",
54619
+ "ActionRequired",
54620
+ "Finished",
54621
+ "Error",
54622
+ "Aborting"
54623
+ ]);
54624
+ /**
54625
+ * Why fields may be `null`:
54626
+ * - `available` — the link is up and the description is loaded;
54627
+ * - `offline` — the local link is down (values are unknown, not last-known);
54628
+ * - `description-missing` — the link is up but the appliance's description could not
54629
+ * be loaded, so its values cannot be decoded.
54630
+ */
54631
+ var DishwasherAvailabilitySchema = _enum([
54632
+ "available",
54633
+ "offline",
54634
+ "description-missing"
54635
+ ]);
54578
54636
  var DishwasherConsumableLevelSchema = _enum([
54579
54637
  "ok",
54580
54638
  "low",
54581
54639
  "empty"
54582
54640
  ]);
54583
54641
  object({
54642
+ availability: DishwasherAvailabilitySchema,
54643
+ /** Coarse state for compact surfaces; `unavailable` whenever the appliance state is not known. */
54584
54644
  state: DishwasherStateSchema,
54585
- /** Active program id/name, or null when none selected / unknown. */
54645
+ /** The appliance's operation state as reported; null when not known. */
54646
+ operationState: DishwasherOperationStateSchema.nullable(),
54647
+ /** Feature key of the ACTIVE (running) program, or null when none runs / not known. */
54586
54648
  program: string().nullable(),
54587
- /** Program tokens the hardware accepts — drives the UI selector. */
54649
+ /** Feature key of the SELECTED program (what Start would run), or null when none / not known. */
54650
+ selectedProgram: string().nullable(),
54651
+ /** Feature keys of the programs the appliance currently offers — drives the UI selector. */
54588
54652
  availablePrograms: array(string()),
54589
- /** Minutes remaining on the active cycle, or null when not running. */
54590
- remainingMinutes: number().int().nonnegative().nullable(),
54653
+ /** Seconds remaining on the active cycle, or null when not running / not known. */
54654
+ remainingSeconds: number().int().nonnegative().nullable(),
54655
+ /** Seconds the delayed start is set to (time until the cycle starts), or null. */
54656
+ delayedStartSeconds: number().int().nonnegative().nullable(),
54591
54657
  /** Cycle completion 0..100, or null when not applicable. */
54592
54658
  progressPercent: number().min(0).max(100).nullable(),
54593
- /** True when the door is reported open. */
54594
- doorOpen: boolean(),
54595
- /** True when remote start is allowed (door closed, power on, etc.). */
54596
- remoteStartAllowed: boolean(),
54597
- /** Main power / switched-on state. */
54598
- powerOn: boolean(),
54659
+ /** True when the door is reported open; null when the door state is not known. */
54660
+ doorOpen: boolean().nullable(),
54661
+ /** True when the door is latched (locked) during a cycle; null when not reported. */
54662
+ doorLocked: boolean().nullable(),
54663
+ /** True when remote start is allowed (door closed, power on, etc.); null when not known. */
54664
+ remoteStartAllowed: boolean().nullable(),
54665
+ /** True when the appliance accepts remote control now; null when not known. */
54666
+ remoteControlActive: boolean().nullable(),
54667
+ /** True while somebody operates the appliance at its panel; null when not reported. */
54668
+ localControlActive: boolean().nullable(),
54669
+ /** Main power / switched-on state; null when not known. */
54670
+ powerOn: boolean().nullable(),
54671
+ /** The raw power state (`On`, `Off`, `Standby`, …); null when not known. */
54672
+ powerState: string().nullable(),
54599
54673
  saltLevel: DishwasherConsumableLevelSchema.nullable(),
54600
54674
  rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
54601
- halfLoad: boolean(),
54602
- hygienePlus: boolean(),
54675
+ /** Option states: null when the appliance does not expose the option or has not said. */
54676
+ halfLoad: boolean().nullable(),
54677
+ hygienePlus: boolean().nullable(),
54678
+ /** Extra dry option when the appliance exposes it. */
54679
+ extraDry: boolean().nullable(),
54680
+ /** Intensive zone (lower basket) when the appliance exposes it. */
54681
+ intensiveZone: boolean().nullable(),
54682
+ /** VarioSpeed / VarioSpeed+ when the appliance exposes it. */
54683
+ varioSpeedPlus: boolean().nullable(),
54684
+ /** Child lock (controls disabled on the appliance); null when not known. */
54685
+ childLock: boolean().nullable(),
54686
+ /** Feature keys of the events currently raised (salt low, rinse aid low, program finished, …). */
54687
+ activeEvents: array(string()),
54688
+ /** Numeric error code when the appliance reports one; null otherwise. */
54603
54689
  errorCode: number().nullable(),
54690
+ /** Name of the raised alert-level event while the appliance is in error; null otherwise. */
54604
54691
  errorLabel: string().nullable(),
54692
+ /** Ms epoch of the last value received from the appliance; 0 = never. */
54605
54693
  lastFetchedAt: number()
54606
54694
  });
54607
- DeviceType.Dishwasher, method(object({ deviceId: number().int().nonnegative() }), _void(), {
54695
+ var DeviceIdSchema = number().int().nonnegative();
54696
+ /** A value a program option or setting can take. */
54697
+ var DishwasherValueSchema = union([
54698
+ boolean(),
54699
+ string(),
54700
+ number()
54701
+ ]);
54702
+ var DishwasherAccessSchema = _enum([
54703
+ "none",
54704
+ "read",
54705
+ "readWrite",
54706
+ "writeOnly",
54707
+ "readStatic"
54708
+ ]);
54709
+ /**
54710
+ * One option or setting the appliance declares, with the constraints its description
54711
+ * gives. A `readWrite` descriptor that is `available` is what `setOption` accepts.
54712
+ */
54713
+ var DishwasherOptionDescriptorSchema = object({
54714
+ /** Feature key (`Dishcare.Dishwasher.Option.ExtraDry`). */
54715
+ key: string(),
54716
+ /** Last segment of the key, for display. */
54717
+ name: string(),
54718
+ type: _enum([
54719
+ "boolean",
54720
+ "number",
54721
+ "enum",
54722
+ "string"
54723
+ ]),
54724
+ access: DishwasherAccessSchema,
54725
+ /** The appliance reports this entity as currently available. */
54726
+ available: boolean(),
54727
+ /** Unit the description declares for a number; null when it declares none. */
54728
+ unit: string().nullable(),
54729
+ min: number().nullable(),
54730
+ max: number().nullable(),
54731
+ step: number().nullable(),
54732
+ /** Allowed members of an enum; null for other types. */
54733
+ enumValues: array(string()).nullable(),
54734
+ defaultValue: DishwasherValueSchema.nullable()
54735
+ });
54736
+ var DishwasherProgramSchema = object({
54737
+ /** Feature key (`Dishcare.Dishwasher.Program.Eco50`) — what `setProgram` / `start` take. */
54738
+ key: string(),
54739
+ name: string(),
54740
+ /** The appliance currently offers this program. */
54741
+ available: boolean(),
54742
+ /** The options this program lists, with the program-level access / availability / default. */
54743
+ options: array(DishwasherOptionDescriptorSchema)
54744
+ });
54745
+ var DishwasherOptionsSchema = object({
54746
+ availability: DishwasherAvailabilitySchema,
54747
+ /** What the appliance can be told to do, from the commands its description declares. */
54748
+ supportsStart: boolean(),
54749
+ supportsPause: boolean(),
54750
+ supportsResume: boolean(),
54751
+ supportsStop: boolean(),
54752
+ supportsPower: boolean(),
54753
+ /** Every program the description lists, with its options. */
54754
+ programs: array(DishwasherProgramSchema),
54755
+ /** Every option and setting entity the description lists (programs reference these by key). */
54756
+ options: array(DishwasherOptionDescriptorSchema)
54757
+ });
54758
+ DeviceType.Dishwasher, method(object({
54759
+ deviceId: DeviceIdSchema,
54760
+ program: string().min(1).optional(),
54761
+ options: record(string(), DishwasherValueSchema).optional()
54762
+ }), _void(), {
54608
54763
  kind: "mutation",
54609
54764
  auth: "protected"
54610
- }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54765
+ }), method(object({ deviceId: DeviceIdSchema }), _void(), {
54611
54766
  kind: "mutation",
54612
54767
  auth: "protected"
54613
- }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54768
+ }), method(object({ deviceId: DeviceIdSchema }), _void(), {
54769
+ kind: "mutation",
54770
+ auth: "protected"
54771
+ }), method(object({ deviceId: DeviceIdSchema }), _void(), {
54614
54772
  kind: "mutation",
54615
54773
  auth: "protected"
54616
54774
  }), method(object({
54617
- deviceId: number().int().nonnegative(),
54775
+ deviceId: DeviceIdSchema,
54618
54776
  program: string().min(1)
54619
54777
  }), _void(), {
54620
54778
  kind: "mutation",
54621
54779
  auth: "protected"
54622
54780
  }), method(object({
54623
- deviceId: number().int().nonnegative(),
54781
+ deviceId: DeviceIdSchema,
54624
54782
  on: boolean()
54625
54783
  }), _void(), {
54626
54784
  kind: "mutation",
54627
54785
  auth: "protected"
54628
54786
  }), method(object({
54629
- deviceId: number().int().nonnegative(),
54787
+ deviceId: DeviceIdSchema,
54630
54788
  on: boolean()
54631
54789
  }), _void(), {
54632
54790
  kind: "mutation",
54633
54791
  auth: "protected"
54634
54792
  }), method(object({
54635
- deviceId: number().int().nonnegative(),
54793
+ deviceId: DeviceIdSchema,
54636
54794
  on: boolean()
54637
54795
  }), _void(), {
54638
54796
  kind: "mutation",
54639
54797
  auth: "protected"
54640
54798
  }), method(object({
54641
- deviceId: number().int().nonnegative(),
54799
+ deviceId: DeviceIdSchema,
54800
+ on: boolean()
54801
+ }), _void(), {
54802
+ kind: "mutation",
54803
+ auth: "protected"
54804
+ }), method(object({
54805
+ deviceId: DeviceIdSchema,
54806
+ on: boolean()
54807
+ }), _void(), {
54808
+ kind: "mutation",
54809
+ auth: "protected"
54810
+ }), method(object({
54811
+ deviceId: DeviceIdSchema,
54812
+ on: boolean()
54813
+ }), _void(), {
54814
+ kind: "mutation",
54815
+ auth: "protected"
54816
+ }), method(object({
54817
+ deviceId: DeviceIdSchema,
54818
+ on: boolean()
54819
+ }), _void(), {
54820
+ kind: "mutation",
54821
+ auth: "protected"
54822
+ }), method(object({
54823
+ deviceId: DeviceIdSchema,
54642
54824
  key: string().min(1),
54643
- value: union([
54644
- boolean(),
54645
- string(),
54646
- number()
54647
- ])
54825
+ value: DishwasherValueSchema
54648
54826
  }), _void(), {
54649
54827
  kind: "mutation",
54650
54828
  auth: "protected"
54651
- });
54829
+ }), method(object({ deviceId: DeviceIdSchema }), DishwasherOptionsSchema, { auth: "protected" });
54652
54830
  object({
54653
54831
  /** Ms epoch of the last press. null = never observed since this provider started. */
54654
54832
  lastPressedAt: number().nullable(),
@@ -64806,6 +64984,12 @@ Object.freeze({
64806
64984
  addonId: null,
64807
64985
  access: "view"
64808
64986
  },
64987
+ "dishwasher.getOptions": {
64988
+ capName: "dishwasher",
64989
+ capScope: "device",
64990
+ addonId: null,
64991
+ access: "view"
64992
+ },
64809
64993
  "dishwasher.getStatus": {
64810
64994
  capName: "dishwasher",
64811
64995
  capScope: "device",
@@ -64818,6 +65002,24 @@ Object.freeze({
64818
65002
  addonId: null,
64819
65003
  access: "create"
64820
65004
  },
65005
+ "dishwasher.resume": {
65006
+ capName: "dishwasher",
65007
+ capScope: "device",
65008
+ addonId: null,
65009
+ access: "create"
65010
+ },
65011
+ "dishwasher.setChildLock": {
65012
+ capName: "dishwasher",
65013
+ capScope: "device",
65014
+ addonId: null,
65015
+ access: "create"
65016
+ },
65017
+ "dishwasher.setExtraDry": {
65018
+ capName: "dishwasher",
65019
+ capScope: "device",
65020
+ addonId: null,
65021
+ access: "create"
65022
+ },
64821
65023
  "dishwasher.setHalfLoad": {
64822
65024
  capName: "dishwasher",
64823
65025
  capScope: "device",
@@ -64830,6 +65032,12 @@ Object.freeze({
64830
65032
  addonId: null,
64831
65033
  access: "create"
64832
65034
  },
65035
+ "dishwasher.setIntensiveZone": {
65036
+ capName: "dishwasher",
65037
+ capScope: "device",
65038
+ addonId: null,
65039
+ access: "create"
65040
+ },
64833
65041
  "dishwasher.setOption": {
64834
65042
  capName: "dishwasher",
64835
65043
  capScope: "device",
@@ -64848,6 +65056,12 @@ Object.freeze({
64848
65056
  addonId: null,
64849
65057
  access: "create"
64850
65058
  },
65059
+ "dishwasher.setVarioSpeedPlus": {
65060
+ capName: "dishwasher",
65061
+ capScope: "device",
65062
+ addonId: null,
65063
+ access: "create"
65064
+ },
64851
65065
  "dishwasher.start": {
64852
65066
  capName: "dishwasher",
64853
65067
  capScope: "device",
@@ -69294,6 +69508,12 @@ Object.freeze({
69294
69508
  addonId: null,
69295
69509
  access: "view"
69296
69510
  },
69511
+ "storageMigration.moverClearance": {
69512
+ capName: "storage-migration",
69513
+ capScope: "system",
69514
+ addonId: null,
69515
+ access: "view"
69516
+ },
69297
69517
  "storageMigration.movers": {
69298
69518
  capName: "storage-migration",
69299
69519
  capScope: "system",
@@ -71487,6 +71707,11 @@ Object.freeze({
71487
71707
  form: "single",
71488
71708
  optional: false
71489
71709
  }],
71710
+ "dishwasher.getOptions": [{
71711
+ name: "deviceId",
71712
+ form: "single",
71713
+ optional: false
71714
+ }],
71490
71715
  "dishwasher.getStatus": [{
71491
71716
  name: "deviceId",
71492
71717
  form: "single",
@@ -71497,6 +71722,21 @@ Object.freeze({
71497
71722
  form: "single",
71498
71723
  optional: false
71499
71724
  }],
71725
+ "dishwasher.resume": [{
71726
+ name: "deviceId",
71727
+ form: "single",
71728
+ optional: false
71729
+ }],
71730
+ "dishwasher.setChildLock": [{
71731
+ name: "deviceId",
71732
+ form: "single",
71733
+ optional: false
71734
+ }],
71735
+ "dishwasher.setExtraDry": [{
71736
+ name: "deviceId",
71737
+ form: "single",
71738
+ optional: false
71739
+ }],
71500
71740
  "dishwasher.setHalfLoad": [{
71501
71741
  name: "deviceId",
71502
71742
  form: "single",
@@ -71507,6 +71747,11 @@ Object.freeze({
71507
71747
  form: "single",
71508
71748
  optional: false
71509
71749
  }],
71750
+ "dishwasher.setIntensiveZone": [{
71751
+ name: "deviceId",
71752
+ form: "single",
71753
+ optional: false
71754
+ }],
71510
71755
  "dishwasher.setOption": [{
71511
71756
  name: "deviceId",
71512
71757
  form: "single",
@@ -71522,6 +71767,11 @@ Object.freeze({
71522
71767
  form: "single",
71523
71768
  optional: false
71524
71769
  }],
71770
+ "dishwasher.setVarioSpeedPlus": [{
71771
+ name: "deviceId",
71772
+ form: "single",
71773
+ optional: false
71774
+ }],
71525
71775
  "dishwasher.start": [{
71526
71776
  name: "deviceId",
71527
71777
  form: "single",
@@ -73563,6 +73813,9 @@ new Map(Object.entries({
73563
73813
  "wrapper-update-available": "system",
73564
73814
  "backup-completed": "system",
73565
73815
  "export-completed": "system",
73816
+ "alert-critical": "system",
73817
+ "alert-error": "system",
73818
+ "alert-critical-resolved": "system",
73566
73819
  "storage-location-low": "system",
73567
73820
  "storage-location-critical": "system",
73568
73821
  "storage-location-ok": "system",
@@ -73687,6 +73940,16 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
73687
73940
  "storage-location-ok"
73688
73941
  ]
73689
73942
  },
73943
+ {
73944
+ id: "alerts",
73945
+ family: "system",
73946
+ label: "Alerts",
73947
+ kinds: [
73948
+ "alert-critical",
73949
+ "alert-error",
73950
+ "alert-critical-resolved"
73951
+ ]
73952
+ },
73690
73953
  {
73691
73954
  id: "alarm",
73692
73955
  family: "alarm",
@@ -73731,6 +73994,21 @@ var NC_SENSOR_RAISED_FIELD_BY_KIND = Object.freeze(Object.fromEntries(Object.ent
73731
73994
  return [[descriptor.kind, field]];
73732
73995
  })));
73733
73996
  Object.freeze(Object.keys(NC_SENSOR_RAISED_FIELD_BY_KIND));
73997
+ object({
73998
+ phase: _enum(["raised", "resolved"]),
73999
+ episodeId: string().min(1),
74000
+ alertId: string().min(1),
74001
+ severity: AlertSeveritySchema,
74002
+ category: string(),
74003
+ title: string(),
74004
+ message: string(),
74005
+ sourceType: string().optional(),
74006
+ sourceId: string().optional(),
74007
+ nodeId: string().optional(),
74008
+ /** The alert's own action link (where the operator acts on it), when it has one. */
74009
+ actionUrl: string().optional(),
74010
+ at: number()
74011
+ });
73734
74012
  var RULE_BODY_ONLY = ["body"];
73735
74013
  var RULE_TEXT = ["title", "body"];
73736
74014
  var BATTERY = ["device-battery-low", "device-battery-normal"];
@@ -73740,6 +74018,11 @@ var TANK = [
73740
74018
  "device-tank-full",
73741
74019
  "device-tank-normal"
73742
74020
  ];
74021
+ var ALERT_EPISODE = [
74022
+ "alert-critical",
74023
+ "alert-error",
74024
+ "alert-critical-resolved"
74025
+ ];
73743
74026
  var UPDATES = [
73744
74027
  "addon-update-available",
73745
74028
  "server-update-available",
@@ -73932,14 +74215,14 @@ var STATE_SUMMARY_VARS = [
73932
74215
  ([...RULE_TEXT], [...CONSUMABLE]),
73933
74216
  ([...RULE_TEXT], [...TANK]),
73934
74217
  [...RULE_TEXT],
73935
- ([...RULE_TEXT], [...UPDATES]),
73936
- ([...RULE_TEXT], [...UPDATES]),
73937
- [...RULE_TEXT],
74218
+ ([...RULE_TEXT], [...UPDATES, ...ALERT_EPISODE]),
74219
+ ([...RULE_TEXT], [...UPDATES, ...ALERT_EPISODE]),
73938
74220
  [...RULE_TEXT],
73939
74221
  [...RULE_TEXT],
73940
74222
  [...RULE_TEXT],
73941
74223
  [...RULE_TEXT],
73942
74224
  [...RULE_TEXT],
74225
+ ([...RULE_TEXT], [...ALERT_EPISODE]),
73943
74226
  [...RULE_TEXT],
73944
74227
  [...RULE_TEXT],
73945
74228
  [...RULE_TEXT],
@@ -73957,7 +74240,11 @@ var STATE_SUMMARY_VARS = [
73957
74240
  [...RULE_TEXT],
73958
74241
  [...RULE_TEXT],
73959
74242
  [...RULE_TEXT],
73960
- [...RULE_TEXT],
74243
+ ([...RULE_TEXT], [...ALERT_EPISODE]),
74244
+ ([...RULE_TEXT], [...ALERT_EPISODE]),
74245
+ ([...RULE_TEXT], [...ALERT_EPISODE]),
74246
+ ([...RULE_TEXT], [...ALERT_EPISODE]),
74247
+ ([...RULE_TEXT], [...ALERT_EPISODE]),
73961
74248
  [...RULE_TEXT],
73962
74249
  [...RULE_TEXT],
73963
74250
  [...RULE_TEXT],
@@ -1,6 +1,6 @@
1
1
  import { S as e, d as t, u as n, v as r } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DMBKVIH7.mjs";
2
2
  import { n as i, r as a, t as o } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-ds_Ehzaa.mjs";
3
- import { g as s, h as c } from "./responsive-BDYhKoco.mjs";
3
+ import { g as s, h as c } from "./responsive-CYhlrBgb.mjs";
4
4
  var l = s("chevron-down", [["path", {
5
5
  d: "m6 9 6 6 6-6",
6
6
  key: "qrunsl"
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CfBTbbuC.mjs";
1
+ import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-9kZRVZbG.mjs";
2
2
  export { t as get, e as init };
@@ -1,6 +1,6 @@
1
1
  import { S as e, d as t, g as n, i as r, l as i, n as a, r as o, u as s, v as c, y as l } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DMBKVIH7.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 { g as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BpItLART.mjs";
3
+ import { g as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-i7uk041N.mjs";
4
4
  //#region ../../node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
5
5
  e();
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,6 +1,6 @@
1
1
  import { S as e, g as t, l as n, v as r } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DMBKVIH7.mjs";
2
2
  import { n as i } from "./ui-text-BqZa5BNK.mjs";
3
- import { g as a } from "./responsive-BDYhKoco.mjs";
3
+ import { g as a } from "./responsive-CYhlrBgb.mjs";
4
4
  var o = a("camera", [["path", {
5
5
  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",
6
6
  key: "18u6gg"
@@ -1,4 +1,4 @@
1
- import { g as e } from "./responsive-BDYhKoco.mjs";
1
+ import { g as e } from "./responsive-CYhlrBgb.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 { g as e } from "./responsive-BDYhKoco.mjs";
1
+ import { g as e } from "./responsive-CYhlrBgb.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-02gJTlkt.mjs")).catch((e) => {
2756
+ return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-CDB41sJz.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.270",
3
+ "version": "1.1.272",
4
4
  "description": "Custom detection model registry, conversion & distribution for CamStack",
5
5
  "keywords": [
6
6
  "camstack",