@camstack/addon-model-studio 1.1.269 → 1.1.271

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-CQCE7D5x.mjs → MotionZonesSettings-DzJf18cG.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-CqIzAvon.mjs → PrivacyMaskSettings-BfcxIzcV.mjs} +4 -4
  3. package/dist/{SceneMonitorEditor-D4xyT88g.mjs → SceneMonitorEditor-CXZ7rmkI.mjs} +3 -3
  4. package/dist/_stub.js +4003 -3397
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-CRat01zd.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-C6bgtko3.mjs} +4 -4
  6. package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BpItLART.mjs +26 -0
  7. package/dist/addon-model-studio.css +1 -1
  8. package/dist/{hostInit-CWxJPCLF.mjs → hostInit-CXCV1rE1.mjs} +3 -3
  9. package/dist/model-studio.addon.js +307 -8
  10. package/dist/model-studio.addon.mjs +307 -8
  11. package/dist/{player-overlays-Rte6z1Nb.mjs → player-overlays-mDdhIu2Z.mjs} +1 -1
  12. package/dist/remoteEntry.js +1 -1
  13. package/dist/{responsive-DBJKTwS9.mjs → responsive-BDYhKoco.mjs} +1 -1
  14. package/dist/{scene-monitor-copy-DHzQxb9S.mjs → scene-monitor-copy-CqHEekjf.mjs} +1 -1
  15. package/dist/{square-DW4sxrDb.mjs → square-Br-2YTir.mjs} +1 -1
  16. package/dist/{trash-2-BrJVk_OD.mjs → trash-2-Dyh-Oss-.mjs} +1 -1
  17. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CGhEUBpt.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-uFBENbsJ.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-CnmMjNl4.mjs +0 -26
@@ -36,7 +36,7 @@ async function r() {
36
36
  }
37
37
  },
38
38
  "@camstack/types": {
39
- version: "1.2.381",
39
+ version: "1.2.384",
40
40
  scope: "default",
41
41
  shareConfig: {
42
42
  singleton: !0,
@@ -45,7 +45,7 @@ async function r() {
45
45
  }
46
46
  },
47
47
  "@camstack/sdk": {
48
- version: "1.2.133",
48
+ version: "1.2.134",
49
49
  scope: "default",
50
50
  shareConfig: {
51
51
  singleton: !0,
@@ -81,7 +81,7 @@ async function r() {
81
81
  }
82
82
  },
83
83
  "@camstack/ui-library": {
84
- version: "1.2.299",
84
+ version: "1.2.301",
85
85
  scope: "default",
86
86
  shareConfig: {
87
87
  singleton: !0,
@@ -5800,7 +5800,7 @@ var ZodIssueCode = {
5800
5800
  var ZodFirstPartyTypeKind;
5801
5801
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5802
5802
  //#endregion
5803
- //#region ../types/dist/sleep-bZIhUvjd.mjs
5803
+ //#region ../types/dist/sleep-BegKjwUu.mjs
5804
5804
  /**
5805
5805
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5806
5806
  * window to float samples (D455).
@@ -8829,7 +8829,7 @@ object({
8829
8829
  params: record(string(), union([string(), number()])).optional()
8830
8830
  });
8831
8831
  //#endregion
8832
- //#region ../types/dist/err-msg--2RrYiLO.mjs
8832
+ //#region ../types/dist/err-msg-BXKzRBwg.mjs
8833
8833
  var DeviceType = /* @__PURE__ */ function(DeviceType) {
8834
8834
  DeviceType["Camera"] = "camera";
8835
8835
  DeviceType["Hub"] = "hub";
@@ -8921,6 +8921,10 @@ var DeviceType = /* @__PURE__ */ function(DeviceType) {
8921
8921
  * native PetKit (`nodepetkit` `FeederDevice`), reusable by other feeder
8922
8922
  * integrations sharing the same food/desiccant/hopper surface. */
8923
8923
  DeviceType["PetFeeder"] = "pet-feeder";
8924
+ /** Built-in dishwasher — program lifecycle, door / remote-start gates,
8925
+ * salt and rinse-aid levels. Installed with the `dishwasher` cap.
8926
+ * Sources: native Bosch Home Connect, reusable by similar integrations. */
8927
+ DeviceType["Dishwasher"] = "dishwasher";
8924
8928
  return DeviceType;
8925
8929
  }({});
8926
8930
  var DeviceFeature = /* @__PURE__ */ function(DeviceFeature) {
@@ -9168,7 +9172,7 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
9168
9172
  return DeviceRole;
9169
9173
  }({});
9170
9174
  //#endregion
9171
- //#region ../types/dist/composition-DOwQB_Ua.mjs
9175
+ //#region ../types/dist/composition-CB6PMT9p.mjs
9172
9176
  /**
9173
9177
  * The ffmpeg build every CamStack node downloads, per platform and arch.
9174
9178
  *
@@ -13710,8 +13714,13 @@ var AlertSeveritySchema = _enum([
13710
13714
  "info",
13711
13715
  "success",
13712
13716
  "warning",
13713
- "error"
13717
+ "error",
13718
+ "critical"
13714
13719
  ]);
13720
+ var AlertActionSchema = object({
13721
+ label: string(),
13722
+ href: string().optional()
13723
+ });
13715
13724
  var AlertStatusSchema = _enum([
13716
13725
  "active",
13717
13726
  "in-progress",
@@ -13729,6 +13738,7 @@ var AlertSchema = object({
13729
13738
  severity: AlertSeveritySchema,
13730
13739
  title: string(),
13731
13740
  message: string(),
13741
+ action: AlertActionSchema.optional(),
13732
13742
  status: AlertStatusSchema,
13733
13743
  progress: number().optional(),
13734
13744
  read: boolean(),
@@ -17901,7 +17911,11 @@ DeviceType.Hub, DeviceDiscoveryStatusSchema.extend({ lastFetchedAt: number().int
17901
17911
  });
17902
17912
  /**
17903
17913
  * `device-adoption` — generic discovery + adoption surface,
17904
- * system-scoped singleton. The de-HA-ified successor to `ha-discovery`:
17914
+ * system-scoped collection (one provider per integration addon), routed
17915
+ * by explicit `{ addonId }` on direct `deviceAdoption.*` calls — the same
17916
+ * pin model as `connection-test`. The admin UI keeps using
17917
+ * `deviceManager.adoption*` (which already threads `addonId`). The de-HA-ified
17918
+ * successor to `ha-discovery`:
17905
17919
  * keyed by `integrationId` (the addon resolves integrationId → broker
17906
17920
  * internally) rather than a connection-specific `brokerId`, and it
17907
17921
  * REUSES the shared `DiscoveredChildDevice` candidate type from
@@ -53697,7 +53711,7 @@ var BatteryStatusSchema = object({
53697
53711
  */
53698
53712
  binary: boolean().optional()
53699
53713
  });
53700
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, method(object({
53714
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, method(object({
53701
53715
  deviceId: number(),
53702
53716
  /** Bound on the wait. Sensible range 3000–10000ms. */
53703
53717
  timeoutMs: number().int().min(500).max(3e4).default(8e3)
@@ -54573,6 +54587,130 @@ object({
54573
54587
  deviceId: number(),
54574
54588
  status: DeviceStatusSchema
54575
54589
  });
54590
+ /**
54591
+ * Smart-dishwasher cap — program lifecycle, door / remote-start gates,
54592
+ * consumable levels (salt, rinse aid) and common program options.
54593
+ *
54594
+ * Sources: native Bosch Home Connect (`dishwasher` device type). Reusable
54595
+ * by any integration that exposes the same program / option surface.
54596
+ *
54597
+ * `kind: 'poll'` — cloud REST APIs typically have no push channel; the
54598
+ * provider refreshes the slice on an interval and eagerly after commands.
54599
+ */
54600
+ var DishwasherStateSchema = _enum([
54601
+ "idle",
54602
+ "running",
54603
+ "paused",
54604
+ "finished",
54605
+ "error",
54606
+ "unavailable"
54607
+ ]);
54608
+ var DishwasherConsumableLevelSchema = _enum([
54609
+ "ok",
54610
+ "low",
54611
+ "empty"
54612
+ ]);
54613
+ object({
54614
+ state: DishwasherStateSchema,
54615
+ /** Active program id/name, or null when none selected / unknown. */
54616
+ program: string().nullable(),
54617
+ /** Program tokens the hardware accepts — drives the UI selector. */
54618
+ availablePrograms: array(string()),
54619
+ /** Minutes remaining on the active cycle, or null when not running. */
54620
+ remainingMinutes: number().int().nonnegative().nullable(),
54621
+ /** Cycle completion 0..100, or null when not applicable. */
54622
+ progressPercent: number().min(0).max(100).nullable(),
54623
+ /** True when the door is reported open. */
54624
+ doorOpen: boolean(),
54625
+ /** True when remote start is allowed (door closed, power on, etc.). */
54626
+ remoteStartAllowed: boolean(),
54627
+ /** Main power / switched-on state. */
54628
+ powerOn: boolean(),
54629
+ saltLevel: DishwasherConsumableLevelSchema.nullable(),
54630
+ rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
54631
+ halfLoad: boolean(),
54632
+ hygienePlus: boolean(),
54633
+ /** Extra dry option when the appliance exposes it. */
54634
+ extraDry: boolean(),
54635
+ /** Intensive zone (lower basket) when the appliance exposes it. */
54636
+ intensiveZone: boolean(),
54637
+ /** VarioSpeed / VarioSpeed+ when the appliance exposes it. */
54638
+ varioSpeedPlus: boolean(),
54639
+ /** Child lock (controls disabled on the appliance). */
54640
+ childLock: boolean(),
54641
+ errorCode: number().nullable(),
54642
+ errorLabel: string().nullable(),
54643
+ lastFetchedAt: number()
54644
+ });
54645
+ DeviceType.Dishwasher, method(object({ deviceId: number().int().nonnegative() }), _void(), {
54646
+ kind: "mutation",
54647
+ auth: "protected"
54648
+ }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54649
+ kind: "mutation",
54650
+ auth: "protected"
54651
+ }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54652
+ kind: "mutation",
54653
+ auth: "protected"
54654
+ }), method(object({
54655
+ deviceId: number().int().nonnegative(),
54656
+ program: string().min(1)
54657
+ }), _void(), {
54658
+ kind: "mutation",
54659
+ auth: "protected"
54660
+ }), method(object({
54661
+ deviceId: number().int().nonnegative(),
54662
+ on: boolean()
54663
+ }), _void(), {
54664
+ kind: "mutation",
54665
+ auth: "protected"
54666
+ }), method(object({
54667
+ deviceId: number().int().nonnegative(),
54668
+ on: boolean()
54669
+ }), _void(), {
54670
+ kind: "mutation",
54671
+ auth: "protected"
54672
+ }), method(object({
54673
+ deviceId: number().int().nonnegative(),
54674
+ on: boolean()
54675
+ }), _void(), {
54676
+ kind: "mutation",
54677
+ auth: "protected"
54678
+ }), method(object({
54679
+ deviceId: number().int().nonnegative(),
54680
+ on: boolean()
54681
+ }), _void(), {
54682
+ kind: "mutation",
54683
+ auth: "protected"
54684
+ }), method(object({
54685
+ deviceId: number().int().nonnegative(),
54686
+ on: boolean()
54687
+ }), _void(), {
54688
+ kind: "mutation",
54689
+ auth: "protected"
54690
+ }), method(object({
54691
+ deviceId: number().int().nonnegative(),
54692
+ on: boolean()
54693
+ }), _void(), {
54694
+ kind: "mutation",
54695
+ auth: "protected"
54696
+ }), method(object({
54697
+ deviceId: number().int().nonnegative(),
54698
+ on: boolean()
54699
+ }), _void(), {
54700
+ kind: "mutation",
54701
+ auth: "protected"
54702
+ }), method(object({
54703
+ deviceId: number().int().nonnegative(),
54704
+ key: string().min(1),
54705
+ value: union([
54706
+ boolean(),
54707
+ string(),
54708
+ number()
54709
+ ])
54710
+ }), _void(), {
54711
+ kind: "mutation",
54712
+ auth: "protected"
54713
+ });
54576
54714
  object({
54577
54715
  /** Ms epoch of the last press. null = never observed since this provider started. */
54578
54716
  lastPressedAt: number().nullable(),
@@ -55138,6 +55276,13 @@ object({
55138
55276
  lastChangedAt: number()
55139
55277
  });
55140
55278
  DeviceType.Sensor;
55279
+ object({
55280
+ /** Radiator valve opening 0 (closed) .. 100 (open). Null = not yet known. */
55281
+ position: number().min(0).max(100).nullable(),
55282
+ /** Ms epoch when the slice was last updated (push or poll). */
55283
+ lastFetchedAt: number()
55284
+ });
55285
+ DeviceType.Thermostat;
55141
55286
  object({
55142
55287
  /** Whether the humidifier is currently on. */
55143
55288
  on: boolean(),
@@ -62302,7 +62447,7 @@ var AccessoryKind = {
62302
62447
  PrivacyMask: DeviceRole.PrivacyMask
62303
62448
  };
62304
62449
  AccessoryKind.Siren, AccessoryKind.Floodlight, AccessoryKind.Spotlight, AccessoryKind.PirSensor, AccessoryKind.Chime, AccessoryKind.Autotrack, AccessoryKind.Nightvision, AccessoryKind.PrivacyMask;
62305
- DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Camera, DeviceType.Hub, DeviceType.Switch, DeviceType.Siren, DeviceType.Light, DeviceType.Fan, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder;
62450
+ DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Camera, DeviceType.Hub, DeviceType.Switch, DeviceType.Siren, DeviceType.Light, DeviceType.Fan, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder, DeviceType.Dishwasher;
62306
62451
  new Set(Object.values(DeviceType));
62307
62452
  Object.freeze({
62308
62453
  "accessories.getStatus": {
@@ -64723,6 +64868,84 @@ Object.freeze({
64723
64868
  addonId: null,
64724
64869
  access: "view"
64725
64870
  },
64871
+ "dishwasher.getStatus": {
64872
+ capName: "dishwasher",
64873
+ capScope: "device",
64874
+ addonId: null,
64875
+ access: "view"
64876
+ },
64877
+ "dishwasher.pause": {
64878
+ capName: "dishwasher",
64879
+ capScope: "device",
64880
+ addonId: null,
64881
+ access: "create"
64882
+ },
64883
+ "dishwasher.setChildLock": {
64884
+ capName: "dishwasher",
64885
+ capScope: "device",
64886
+ addonId: null,
64887
+ access: "create"
64888
+ },
64889
+ "dishwasher.setExtraDry": {
64890
+ capName: "dishwasher",
64891
+ capScope: "device",
64892
+ addonId: null,
64893
+ access: "create"
64894
+ },
64895
+ "dishwasher.setHalfLoad": {
64896
+ capName: "dishwasher",
64897
+ capScope: "device",
64898
+ addonId: null,
64899
+ access: "create"
64900
+ },
64901
+ "dishwasher.setHygienePlus": {
64902
+ capName: "dishwasher",
64903
+ capScope: "device",
64904
+ addonId: null,
64905
+ access: "create"
64906
+ },
64907
+ "dishwasher.setIntensiveZone": {
64908
+ capName: "dishwasher",
64909
+ capScope: "device",
64910
+ addonId: null,
64911
+ access: "create"
64912
+ },
64913
+ "dishwasher.setOption": {
64914
+ capName: "dishwasher",
64915
+ capScope: "device",
64916
+ addonId: null,
64917
+ access: "create"
64918
+ },
64919
+ "dishwasher.setPower": {
64920
+ capName: "dishwasher",
64921
+ capScope: "device",
64922
+ addonId: null,
64923
+ access: "create"
64924
+ },
64925
+ "dishwasher.setProgram": {
64926
+ capName: "dishwasher",
64927
+ capScope: "device",
64928
+ addonId: null,
64929
+ access: "create"
64930
+ },
64931
+ "dishwasher.setVarioSpeedPlus": {
64932
+ capName: "dishwasher",
64933
+ capScope: "device",
64934
+ addonId: null,
64935
+ access: "create"
64936
+ },
64937
+ "dishwasher.start": {
64938
+ capName: "dishwasher",
64939
+ capScope: "device",
64940
+ addonId: null,
64941
+ access: "create"
64942
+ },
64943
+ "dishwasher.stop": {
64944
+ capName: "dishwasher",
64945
+ capScope: "device",
64946
+ addonId: null,
64947
+ access: "create"
64948
+ },
64726
64949
  "doorbell.getStatus": {
64727
64950
  capName: "doorbell",
64728
64951
  capScope: "device",
@@ -64933,6 +65156,12 @@ Object.freeze({
64933
65156
  addonId: null,
64934
65157
  access: "view"
64935
65158
  },
65159
+ "heatingValve.getStatus": {
65160
+ capName: "heating-valve",
65161
+ capScope: "device",
65162
+ addonId: null,
65163
+ access: "view"
65164
+ },
64936
65165
  "humidifier.getStatus": {
64937
65166
  capName: "humidifier",
64938
65167
  capScope: "device",
@@ -70520,7 +70749,7 @@ Object.freeze({
70520
70749
  access: "create"
70521
70750
  }
70522
70751
  });
70523
- DeviceType.Camera, DeviceType.Hub, DeviceType.Light, DeviceType.Siren, DeviceType.Switch, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Fan, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder;
70752
+ DeviceType.Camera, DeviceType.Hub, DeviceType.Light, DeviceType.Siren, DeviceType.Switch, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Fan, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder, DeviceType.Dishwasher;
70524
70753
  DeviceFeature.BatteryOperated;
70525
70754
  Object.freeze({
70526
70755
  "accessories.getStatus": [{
@@ -71344,6 +71573,71 @@ Object.freeze({
71344
71573
  form: "single",
71345
71574
  optional: false
71346
71575
  }],
71576
+ "dishwasher.getStatus": [{
71577
+ name: "deviceId",
71578
+ form: "single",
71579
+ optional: false
71580
+ }],
71581
+ "dishwasher.pause": [{
71582
+ name: "deviceId",
71583
+ form: "single",
71584
+ optional: false
71585
+ }],
71586
+ "dishwasher.setChildLock": [{
71587
+ name: "deviceId",
71588
+ form: "single",
71589
+ optional: false
71590
+ }],
71591
+ "dishwasher.setExtraDry": [{
71592
+ name: "deviceId",
71593
+ form: "single",
71594
+ optional: false
71595
+ }],
71596
+ "dishwasher.setHalfLoad": [{
71597
+ name: "deviceId",
71598
+ form: "single",
71599
+ optional: false
71600
+ }],
71601
+ "dishwasher.setHygienePlus": [{
71602
+ name: "deviceId",
71603
+ form: "single",
71604
+ optional: false
71605
+ }],
71606
+ "dishwasher.setIntensiveZone": [{
71607
+ name: "deviceId",
71608
+ form: "single",
71609
+ optional: false
71610
+ }],
71611
+ "dishwasher.setOption": [{
71612
+ name: "deviceId",
71613
+ form: "single",
71614
+ optional: false
71615
+ }],
71616
+ "dishwasher.setPower": [{
71617
+ name: "deviceId",
71618
+ form: "single",
71619
+ optional: false
71620
+ }],
71621
+ "dishwasher.setProgram": [{
71622
+ name: "deviceId",
71623
+ form: "single",
71624
+ optional: false
71625
+ }],
71626
+ "dishwasher.setVarioSpeedPlus": [{
71627
+ name: "deviceId",
71628
+ form: "single",
71629
+ optional: false
71630
+ }],
71631
+ "dishwasher.start": [{
71632
+ name: "deviceId",
71633
+ form: "single",
71634
+ optional: false
71635
+ }],
71636
+ "dishwasher.stop": [{
71637
+ name: "deviceId",
71638
+ form: "single",
71639
+ optional: false
71640
+ }],
71347
71641
  "doorbell.getStatus": [{
71348
71642
  name: "deviceId",
71349
71643
  form: "single",
@@ -71413,6 +71707,11 @@ Object.freeze({
71413
71707
  form: "single",
71414
71708
  optional: false
71415
71709
  }],
71710
+ "heatingValve.getStatus": [{
71711
+ name: "deviceId",
71712
+ form: "single",
71713
+ optional: false
71714
+ }],
71416
71715
  "humidifier.getStatus": [{
71417
71716
  name: "deviceId",
71418
71717
  form: "single",