@camstack/addon-osd-manager 0.1.245 → 0.1.247

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-DLMJWUc6.mjs → MotionZonesSettings-qtgrA0zs.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-C3B3rP7I.mjs → PrivacyMaskSettings-CDjLk5w5.mjs} +4 -4
  3. package/dist/{SceneMonitorEditor-CNZFNnAX.mjs → SceneMonitorEditor-BVdgxUfp.mjs} +3 -3
  4. package/dist/_stub.js +4499 -3801
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-CWKUwM9u.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-5jNfg3X7.mjs} +4 -4
  6. package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DJYNsHHl.mjs +26 -0
  7. package/dist/addon-osd-manager.css +1 -1
  8. package/dist/{hostInit-9xoGIiTH.mjs → hostInit-CMF4TS98.mjs} +3 -3
  9. package/dist/index.js +399 -8
  10. package/dist/index.mjs +399 -8
  11. package/dist/{player-overlays-DGUXioJL.mjs → player-overlays-CWC5I8Gr.mjs} +1 -1
  12. package/dist/remoteEntry.js +1 -1
  13. package/dist/{responsive-BHlSXMJE.mjs → responsive-C0Yg2ySn.mjs} +1 -1
  14. package/dist/{scene-monitor-copy-CnQEieAy.mjs → scene-monitor-copy-CUvGeueA.mjs} +1 -1
  15. package/dist/{square-B0lxeT8y.mjs → square-DM5YvAWs.mjs} +1 -1
  16. package/dist/{trash-2-BGXNyRy1.mjs → trash-2-DTlq25ib.mjs} +1 -1
  17. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-BXh9f7q7.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-Dzba-Vqm.mjs} +1 -1
  18. package/package.json +1 -1
  19. package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DAgSwKUp.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,
package/dist/index.js CHANGED
@@ -5408,7 +5408,7 @@ var ZodIssueCode = {
5408
5408
  var ZodFirstPartyTypeKind;
5409
5409
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5410
5410
  //#endregion
5411
- //#region ../types/dist/sleep-bZIhUvjd.mjs
5411
+ //#region ../types/dist/sleep-BegKjwUu.mjs
5412
5412
  /**
5413
5413
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5414
5414
  * window to float samples (D455).
@@ -8356,7 +8356,7 @@ object({
8356
8356
  params: record(string(), union([string(), number()])).optional()
8357
8357
  });
8358
8358
  //#endregion
8359
- //#region ../types/dist/err-msg--2RrYiLO.mjs
8359
+ //#region ../types/dist/err-msg-BXKzRBwg.mjs
8360
8360
  var DeviceType = /* @__PURE__ */ function(DeviceType) {
8361
8361
  DeviceType["Camera"] = "camera";
8362
8362
  DeviceType["Hub"] = "hub";
@@ -8448,6 +8448,10 @@ var DeviceType = /* @__PURE__ */ function(DeviceType) {
8448
8448
  * native PetKit (`nodepetkit` `FeederDevice`), reusable by other feeder
8449
8449
  * integrations sharing the same food/desiccant/hopper surface. */
8450
8450
  DeviceType["PetFeeder"] = "pet-feeder";
8451
+ /** Built-in dishwasher — program lifecycle, door / remote-start gates,
8452
+ * salt and rinse-aid levels. Installed with the `dishwasher` cap.
8453
+ * Sources: native Bosch Home Connect, reusable by similar integrations. */
8454
+ DeviceType["Dishwasher"] = "dishwasher";
8451
8455
  return DeviceType;
8452
8456
  }({});
8453
8457
  var DeviceFeature = /* @__PURE__ */ function(DeviceFeature) {
@@ -8695,7 +8699,7 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
8695
8699
  return DeviceRole;
8696
8700
  }({});
8697
8701
  //#endregion
8698
- //#region ../types/dist/composition-DOwQB_Ua.mjs
8702
+ //#region ../types/dist/composition-CB6PMT9p.mjs
8699
8703
  /**
8700
8704
  * The ffmpeg build every CamStack node downloads, per platform and arch.
8701
8705
  *
@@ -13098,8 +13102,13 @@ var AlertSeveritySchema = _enum([
13098
13102
  "info",
13099
13103
  "success",
13100
13104
  "warning",
13101
- "error"
13105
+ "error",
13106
+ "critical"
13102
13107
  ]);
13108
+ var AlertActionSchema = object({
13109
+ label: string(),
13110
+ href: string().optional()
13111
+ });
13103
13112
  var AlertStatusSchema = _enum([
13104
13113
  "active",
13105
13114
  "in-progress",
@@ -13117,6 +13126,7 @@ var AlertSchema = object({
13117
13126
  severity: AlertSeveritySchema,
13118
13127
  title: string(),
13119
13128
  message: string(),
13129
+ action: AlertActionSchema.optional(),
13120
13130
  status: AlertStatusSchema,
13121
13131
  progress: number().optional(),
13122
13132
  read: boolean(),
@@ -17306,7 +17316,11 @@ DeviceType.Hub, DeviceDiscoveryStatusSchema.extend({ lastFetchedAt: number().int
17306
17316
  });
17307
17317
  /**
17308
17318
  * `device-adoption` — generic discovery + adoption surface,
17309
- * system-scoped singleton. The de-HA-ified successor to `ha-discovery`:
17319
+ * system-scoped collection (one provider per integration addon), routed
17320
+ * by explicit `{ addonId }` on direct `deviceAdoption.*` calls — the same
17321
+ * pin model as `connection-test`. The admin UI keeps using
17322
+ * `deviceManager.adoption*` (which already threads `addonId`). The de-HA-ified
17323
+ * successor to `ha-discovery`:
17310
17324
  * keyed by `integrationId` (the addon resolves integrationId → broker
17311
17325
  * internally) rather than a connection-specific `brokerId`, and it
17312
17326
  * REUSES the shared `DiscoveredChildDevice` candidate type from
@@ -53664,7 +53678,7 @@ var BatteryStatusSchema = object({
53664
53678
  */
53665
53679
  binary: boolean().optional()
53666
53680
  });
53667
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, method(object({
53681
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, method(object({
53668
53682
  deviceId: number(),
53669
53683
  /** Bound on the wait. Sensible range 3000–10000ms. */
53670
53684
  timeoutMs: number().int().min(500).max(3e4).default(8e3)
@@ -54540,6 +54554,130 @@ object({
54540
54554
  deviceId: number(),
54541
54555
  status: DeviceStatusSchema
54542
54556
  });
54557
+ /**
54558
+ * Smart-dishwasher cap — program lifecycle, door / remote-start gates,
54559
+ * consumable levels (salt, rinse aid) and common program options.
54560
+ *
54561
+ * Sources: native Bosch Home Connect (`dishwasher` device type). Reusable
54562
+ * by any integration that exposes the same program / option surface.
54563
+ *
54564
+ * `kind: 'poll'` — cloud REST APIs typically have no push channel; the
54565
+ * provider refreshes the slice on an interval and eagerly after commands.
54566
+ */
54567
+ var DishwasherStateSchema = _enum([
54568
+ "idle",
54569
+ "running",
54570
+ "paused",
54571
+ "finished",
54572
+ "error",
54573
+ "unavailable"
54574
+ ]);
54575
+ var DishwasherConsumableLevelSchema = _enum([
54576
+ "ok",
54577
+ "low",
54578
+ "empty"
54579
+ ]);
54580
+ object({
54581
+ state: DishwasherStateSchema,
54582
+ /** Active program id/name, or null when none selected / unknown. */
54583
+ program: string().nullable(),
54584
+ /** Program tokens the hardware accepts — drives the UI selector. */
54585
+ availablePrograms: array(string()),
54586
+ /** Minutes remaining on the active cycle, or null when not running. */
54587
+ remainingMinutes: number().int().nonnegative().nullable(),
54588
+ /** Cycle completion 0..100, or null when not applicable. */
54589
+ progressPercent: number().min(0).max(100).nullable(),
54590
+ /** True when the door is reported open. */
54591
+ doorOpen: boolean(),
54592
+ /** True when remote start is allowed (door closed, power on, etc.). */
54593
+ remoteStartAllowed: boolean(),
54594
+ /** Main power / switched-on state. */
54595
+ powerOn: boolean(),
54596
+ saltLevel: DishwasherConsumableLevelSchema.nullable(),
54597
+ rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
54598
+ halfLoad: boolean(),
54599
+ hygienePlus: boolean(),
54600
+ /** Extra dry option when the appliance exposes it. */
54601
+ extraDry: boolean(),
54602
+ /** Intensive zone (lower basket) when the appliance exposes it. */
54603
+ intensiveZone: boolean(),
54604
+ /** VarioSpeed / VarioSpeed+ when the appliance exposes it. */
54605
+ varioSpeedPlus: boolean(),
54606
+ /** Child lock (controls disabled on the appliance). */
54607
+ childLock: boolean(),
54608
+ errorCode: number().nullable(),
54609
+ errorLabel: string().nullable(),
54610
+ lastFetchedAt: number()
54611
+ });
54612
+ DeviceType.Dishwasher, method(object({ deviceId: number().int().nonnegative() }), _void(), {
54613
+ kind: "mutation",
54614
+ auth: "protected"
54615
+ }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54616
+ kind: "mutation",
54617
+ auth: "protected"
54618
+ }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54619
+ kind: "mutation",
54620
+ auth: "protected"
54621
+ }), method(object({
54622
+ deviceId: number().int().nonnegative(),
54623
+ program: string().min(1)
54624
+ }), _void(), {
54625
+ kind: "mutation",
54626
+ auth: "protected"
54627
+ }), method(object({
54628
+ deviceId: number().int().nonnegative(),
54629
+ on: boolean()
54630
+ }), _void(), {
54631
+ kind: "mutation",
54632
+ auth: "protected"
54633
+ }), method(object({
54634
+ deviceId: number().int().nonnegative(),
54635
+ on: boolean()
54636
+ }), _void(), {
54637
+ kind: "mutation",
54638
+ auth: "protected"
54639
+ }), method(object({
54640
+ deviceId: number().int().nonnegative(),
54641
+ on: boolean()
54642
+ }), _void(), {
54643
+ kind: "mutation",
54644
+ auth: "protected"
54645
+ }), method(object({
54646
+ deviceId: number().int().nonnegative(),
54647
+ on: boolean()
54648
+ }), _void(), {
54649
+ kind: "mutation",
54650
+ auth: "protected"
54651
+ }), method(object({
54652
+ deviceId: number().int().nonnegative(),
54653
+ on: boolean()
54654
+ }), _void(), {
54655
+ kind: "mutation",
54656
+ auth: "protected"
54657
+ }), method(object({
54658
+ deviceId: number().int().nonnegative(),
54659
+ on: boolean()
54660
+ }), _void(), {
54661
+ kind: "mutation",
54662
+ auth: "protected"
54663
+ }), method(object({
54664
+ deviceId: number().int().nonnegative(),
54665
+ on: boolean()
54666
+ }), _void(), {
54667
+ kind: "mutation",
54668
+ auth: "protected"
54669
+ }), method(object({
54670
+ deviceId: number().int().nonnegative(),
54671
+ key: string().min(1),
54672
+ value: union([
54673
+ boolean(),
54674
+ string(),
54675
+ number()
54676
+ ])
54677
+ }), _void(), {
54678
+ kind: "mutation",
54679
+ auth: "protected"
54680
+ });
54543
54681
  object({
54544
54682
  /** Ms epoch of the last press. null = never observed since this provider started. */
54545
54683
  lastPressedAt: number().nullable(),
@@ -55105,6 +55243,13 @@ object({
55105
55243
  lastChangedAt: number()
55106
55244
  });
55107
55245
  DeviceType.Sensor;
55246
+ object({
55247
+ /** Radiator valve opening 0 (closed) .. 100 (open). Null = not yet known. */
55248
+ position: number().min(0).max(100).nullable(),
55249
+ /** Ms epoch when the slice was last updated (push or poll). */
55250
+ lastFetchedAt: number()
55251
+ });
55252
+ DeviceType.Thermostat;
55108
55253
  object({
55109
55254
  /** Whether the humidifier is currently on. */
55110
55255
  on: boolean(),
@@ -62549,7 +62694,7 @@ var AccessoryKind = {
62549
62694
  PrivacyMask: DeviceRole.PrivacyMask
62550
62695
  };
62551
62696
  AccessoryKind.Siren, AccessoryKind.Floodlight, AccessoryKind.Spotlight, AccessoryKind.PirSensor, AccessoryKind.Chime, AccessoryKind.Autotrack, AccessoryKind.Nightvision, AccessoryKind.PrivacyMask;
62552
- 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;
62697
+ 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;
62553
62698
  new Set(Object.values(DeviceType));
62554
62699
  Object.freeze({
62555
62700
  "accessories.getStatus": {
@@ -64970,6 +65115,84 @@ Object.freeze({
64970
65115
  addonId: null,
64971
65116
  access: "view"
64972
65117
  },
65118
+ "dishwasher.getStatus": {
65119
+ capName: "dishwasher",
65120
+ capScope: "device",
65121
+ addonId: null,
65122
+ access: "view"
65123
+ },
65124
+ "dishwasher.pause": {
65125
+ capName: "dishwasher",
65126
+ capScope: "device",
65127
+ addonId: null,
65128
+ access: "create"
65129
+ },
65130
+ "dishwasher.setChildLock": {
65131
+ capName: "dishwasher",
65132
+ capScope: "device",
65133
+ addonId: null,
65134
+ access: "create"
65135
+ },
65136
+ "dishwasher.setExtraDry": {
65137
+ capName: "dishwasher",
65138
+ capScope: "device",
65139
+ addonId: null,
65140
+ access: "create"
65141
+ },
65142
+ "dishwasher.setHalfLoad": {
65143
+ capName: "dishwasher",
65144
+ capScope: "device",
65145
+ addonId: null,
65146
+ access: "create"
65147
+ },
65148
+ "dishwasher.setHygienePlus": {
65149
+ capName: "dishwasher",
65150
+ capScope: "device",
65151
+ addonId: null,
65152
+ access: "create"
65153
+ },
65154
+ "dishwasher.setIntensiveZone": {
65155
+ capName: "dishwasher",
65156
+ capScope: "device",
65157
+ addonId: null,
65158
+ access: "create"
65159
+ },
65160
+ "dishwasher.setOption": {
65161
+ capName: "dishwasher",
65162
+ capScope: "device",
65163
+ addonId: null,
65164
+ access: "create"
65165
+ },
65166
+ "dishwasher.setPower": {
65167
+ capName: "dishwasher",
65168
+ capScope: "device",
65169
+ addonId: null,
65170
+ access: "create"
65171
+ },
65172
+ "dishwasher.setProgram": {
65173
+ capName: "dishwasher",
65174
+ capScope: "device",
65175
+ addonId: null,
65176
+ access: "create"
65177
+ },
65178
+ "dishwasher.setVarioSpeedPlus": {
65179
+ capName: "dishwasher",
65180
+ capScope: "device",
65181
+ addonId: null,
65182
+ access: "create"
65183
+ },
65184
+ "dishwasher.start": {
65185
+ capName: "dishwasher",
65186
+ capScope: "device",
65187
+ addonId: null,
65188
+ access: "create"
65189
+ },
65190
+ "dishwasher.stop": {
65191
+ capName: "dishwasher",
65192
+ capScope: "device",
65193
+ addonId: null,
65194
+ access: "create"
65195
+ },
64973
65196
  "doorbell.getStatus": {
64974
65197
  capName: "doorbell",
64975
65198
  capScope: "device",
@@ -65180,6 +65403,12 @@ Object.freeze({
65180
65403
  addonId: null,
65181
65404
  access: "view"
65182
65405
  },
65406
+ "heatingValve.getStatus": {
65407
+ capName: "heating-valve",
65408
+ capScope: "device",
65409
+ addonId: null,
65410
+ access: "view"
65411
+ },
65183
65412
  "humidifier.getStatus": {
65184
65413
  capName: "humidifier",
65185
65414
  capScope: "device",
@@ -70767,7 +70996,7 @@ Object.freeze({
70767
70996
  access: "create"
70768
70997
  }
70769
70998
  });
70770
- 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;
70999
+ 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;
70771
71000
  DeviceFeature.BatteryOperated;
70772
71001
  Object.freeze({
70773
71002
  "accessories.getStatus": [{
@@ -71591,6 +71820,71 @@ Object.freeze({
71591
71820
  form: "single",
71592
71821
  optional: false
71593
71822
  }],
71823
+ "dishwasher.getStatus": [{
71824
+ name: "deviceId",
71825
+ form: "single",
71826
+ optional: false
71827
+ }],
71828
+ "dishwasher.pause": [{
71829
+ name: "deviceId",
71830
+ form: "single",
71831
+ optional: false
71832
+ }],
71833
+ "dishwasher.setChildLock": [{
71834
+ name: "deviceId",
71835
+ form: "single",
71836
+ optional: false
71837
+ }],
71838
+ "dishwasher.setExtraDry": [{
71839
+ name: "deviceId",
71840
+ form: "single",
71841
+ optional: false
71842
+ }],
71843
+ "dishwasher.setHalfLoad": [{
71844
+ name: "deviceId",
71845
+ form: "single",
71846
+ optional: false
71847
+ }],
71848
+ "dishwasher.setHygienePlus": [{
71849
+ name: "deviceId",
71850
+ form: "single",
71851
+ optional: false
71852
+ }],
71853
+ "dishwasher.setIntensiveZone": [{
71854
+ name: "deviceId",
71855
+ form: "single",
71856
+ optional: false
71857
+ }],
71858
+ "dishwasher.setOption": [{
71859
+ name: "deviceId",
71860
+ form: "single",
71861
+ optional: false
71862
+ }],
71863
+ "dishwasher.setPower": [{
71864
+ name: "deviceId",
71865
+ form: "single",
71866
+ optional: false
71867
+ }],
71868
+ "dishwasher.setProgram": [{
71869
+ name: "deviceId",
71870
+ form: "single",
71871
+ optional: false
71872
+ }],
71873
+ "dishwasher.setVarioSpeedPlus": [{
71874
+ name: "deviceId",
71875
+ form: "single",
71876
+ optional: false
71877
+ }],
71878
+ "dishwasher.start": [{
71879
+ name: "deviceId",
71880
+ form: "single",
71881
+ optional: false
71882
+ }],
71883
+ "dishwasher.stop": [{
71884
+ name: "deviceId",
71885
+ form: "single",
71886
+ optional: false
71887
+ }],
71594
71888
  "doorbell.getStatus": [{
71595
71889
  name: "deviceId",
71596
71890
  form: "single",
@@ -71660,6 +71954,11 @@ Object.freeze({
71660
71954
  form: "single",
71661
71955
  optional: false
71662
71956
  }],
71957
+ "heatingValve.getStatus": [{
71958
+ name: "deviceId",
71959
+ form: "single",
71960
+ optional: false
71961
+ }],
71663
71962
  "humidifier.getStatus": [{
71664
71963
  name: "deviceId",
71665
71964
  form: "single",
@@ -76164,6 +76463,94 @@ var CAP_STATE_LEAVES = Object.freeze({
76164
76463
  "path": "online",
76165
76464
  "valueType": "boolean"
76166
76465
  }],
76466
+ "dishwasher": [
76467
+ {
76468
+ "path": "state",
76469
+ "valueType": "enum",
76470
+ "enumValues": [
76471
+ "idle",
76472
+ "running",
76473
+ "paused",
76474
+ "finished",
76475
+ "error",
76476
+ "unavailable"
76477
+ ]
76478
+ },
76479
+ {
76480
+ "path": "program",
76481
+ "valueType": "string"
76482
+ },
76483
+ {
76484
+ "path": "remainingMinutes",
76485
+ "valueType": "number"
76486
+ },
76487
+ {
76488
+ "path": "progressPercent",
76489
+ "valueType": "number"
76490
+ },
76491
+ {
76492
+ "path": "doorOpen",
76493
+ "valueType": "boolean"
76494
+ },
76495
+ {
76496
+ "path": "remoteStartAllowed",
76497
+ "valueType": "boolean"
76498
+ },
76499
+ {
76500
+ "path": "powerOn",
76501
+ "valueType": "boolean"
76502
+ },
76503
+ {
76504
+ "path": "saltLevel",
76505
+ "valueType": "enum",
76506
+ "enumValues": [
76507
+ "ok",
76508
+ "low",
76509
+ "empty"
76510
+ ]
76511
+ },
76512
+ {
76513
+ "path": "rinseAidLevel",
76514
+ "valueType": "enum",
76515
+ "enumValues": [
76516
+ "ok",
76517
+ "low",
76518
+ "empty"
76519
+ ]
76520
+ },
76521
+ {
76522
+ "path": "halfLoad",
76523
+ "valueType": "boolean"
76524
+ },
76525
+ {
76526
+ "path": "hygienePlus",
76527
+ "valueType": "boolean"
76528
+ },
76529
+ {
76530
+ "path": "extraDry",
76531
+ "valueType": "boolean"
76532
+ },
76533
+ {
76534
+ "path": "intensiveZone",
76535
+ "valueType": "boolean"
76536
+ },
76537
+ {
76538
+ "path": "varioSpeedPlus",
76539
+ "valueType": "boolean"
76540
+ },
76541
+ {
76542
+ "path": "childLock",
76543
+ "valueType": "boolean"
76544
+ },
76545
+ {
76546
+ "path": "errorCode",
76547
+ "valueType": "number"
76548
+ },
76549
+ {
76550
+ "path": "errorLabel",
76551
+ "valueType": "string"
76552
+ }
76553
+ ],
76167
76554
  "doorbell": [{
76168
76555
  "path": "lastPressedAt",
76169
76556
  "valueType": "number"
@@ -76254,6 +76641,10 @@ var CAP_STATE_LEAVES = Object.freeze({
76254
76641
  "path": "detected",
76255
76642
  "valueType": "boolean"
76256
76643
  }],
76644
+ "heating-valve": [{
76645
+ "path": "position",
76646
+ "valueType": "number"
76647
+ }],
76257
76648
  "humidifier": [
76258
76649
  {
76259
76650
  "path": "on",