@camstack/addon-training 0.1.110 → 0.1.112

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 (23) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/{MotionZonesSettings-D4s4e-dn.mjs → MotionZonesSettings-1jL3cNrP.mjs} +2 -2
  3. package/dist/{PrivacyMaskSettings-BtdwrmHQ.mjs → PrivacyMaskSettings-B5sDvjd1.mjs} +2 -2
  4. package/dist/{SceneMonitorEditor-DOX6WQaZ.mjs → SceneMonitorEditor-DUupJZPg.mjs} +2 -2
  5. package/dist/_stub.js +5916 -5911
  6. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-C3SgLMLF.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-CcSHMntB.mjs} +3 -3
  7. package/dist/{_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CmVZHQ-k.mjs → _virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-os6FZfGz.mjs} +1 -1
  8. package/dist/{dist-BSSYC9T8.js → dist-BWaaetIL.js} +68 -12
  9. package/dist/{dist-De0e9-YH.mjs → dist-DP3QaLL9.mjs} +68 -12
  10. package/dist/{hostInit-DjLtjT-_.mjs → hostInit-CL4HR5_U.mjs} +2 -2
  11. package/dist/{icons-tE-y9KlM.mjs → icons-BAJBs2k2.mjs} +1124 -1153
  12. package/dist/index.js +1 -1
  13. package/dist/orchestrator/training.addon.js +1 -1
  14. package/dist/orchestrator/training.addon.mjs +1 -1
  15. package/dist/{player-overlays-C_B-yc3g.mjs → player-overlays-Db2cJVG2.mjs} +1 -1
  16. package/dist/providers/modal/training-modal.addon.js +1 -1
  17. package/dist/providers/modal/training-modal.addon.mjs +1 -1
  18. package/dist/remoteEntry.js +1 -1
  19. package/dist/{responsive-YANRyril.mjs → responsive-CqQQYlZD.mjs} +1 -1
  20. package/dist/{scene-monitor-copy-B0w92y1z.mjs → scene-monitor-copy-D-mtbfGW.mjs} +1 -1
  21. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-CosY3aLX.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-EkAqF5M1.mjs} +1 -1
  22. package/dist/{zoom-out-CWDOvUsr.mjs → zoom-out-Bc8fFbXe.mjs} +88 -59
  23. package/package.json +1 -1
@@ -10995,7 +10995,7 @@ object({
10995
10995
  params: record(string(), union([string(), number()])).optional()
10996
10996
  });
10997
10997
  //#endregion
10998
- //#region ../types/dist/err-msg-DWXWc0Di.mjs
10998
+ //#region ../types/dist/err-msg-BD5buxvT.mjs
10999
10999
  var DeviceType = /* @__PURE__ */ function(DeviceType) {
11000
11000
  DeviceType["Camera"] = "camera";
11001
11001
  DeviceType["Hub"] = "hub";
@@ -11101,6 +11101,12 @@ var DeviceType = /* @__PURE__ */ function(DeviceType) {
11101
11101
  DeviceType["Washer"] = "washer";
11102
11102
  /** Tumble dryer. Same plug-built running surface as {@link Washer}. */
11103
11103
  DeviceType["Dryer"] = "dryer";
11104
+ /** The physical bridge box of a vendor ecosystem (Velux KLF-200, and later
11105
+ * other radio-to-IP bridges). It carries the box's own facts (firmware,
11106
+ * address, connection state) and the actions the box really supports
11107
+ * (`reboot`, `device-admin-link`). Products are NOT its children — they are
11108
+ * adopted beside it — and its connection settings stay on the integration. */
11109
+ DeviceType["Gateway"] = "gateway";
11104
11110
  return DeviceType;
11105
11111
  }({});
11106
11112
  var DeviceFeature = /* @__PURE__ */ function(DeviceFeature) {
@@ -11351,7 +11357,7 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
11351
11357
  return DeviceRole;
11352
11358
  }({});
11353
11359
  //#endregion
11354
- //#region ../types/dist/composition-kSuOifuG.mjs
11360
+ //#region ../types/dist/composition-C7WdThmP.mjs
11355
11361
  /**
11356
11362
  * The ffmpeg build every CamStack node downloads, per platform and arch.
11357
11363
  *
@@ -18926,8 +18932,21 @@ var BrokerProviderInfoSchema = object({
18926
18932
  * (`{ sessionId }`) drops the session. The dialog that edits a broker
18927
18933
  * offers it as the default path; the fields the session fills are
18928
18934
  * marked `filledBySignIn` in the kind's settings schema.
18935
+ *
18936
+ * `methods` lists the ways the session can sign in, recommended first:
18937
+ * `'device-code'` adds `POST {basePath}/code/start` (body: the form's
18938
+ * settings) answering `{ sessionId, userCode, verificationUrl,
18939
+ * expiresAt }` — the operator types `userCode` at `verificationUrl` on
18940
+ * any device, and the same `status` / `commit` / `cancel` routes follow
18941
+ * (status then carries `method`, `userCode`, `verificationUrl`,
18942
+ * `expiresAt` and the phases `'awaiting-code'` / `'expired'`);
18943
+ * `'proxy'` is the `{basePath}/start` flow above. Absent means
18944
+ * `['proxy']`.
18929
18945
  */
18930
- signIn: object({ basePath: string().min(1) }).optional()
18946
+ signIn: object({
18947
+ basePath: string().min(1),
18948
+ methods: array(_enum(["device-code", "proxy"])).optional()
18949
+ }).optional()
18931
18950
  }))
18932
18951
  });
18933
18952
  var ListInputSchema = object({
@@ -64179,7 +64198,7 @@ object({
64179
64198
  });
64180
64199
  Object.values(DeviceType);
64181
64200
  DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
64182
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Switch, method(object({ deviceId: number().int().nonnegative() }), object({ success: literal(true) }), {
64201
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Switch, DeviceType.Gateway, method(object({ deviceId: number().int().nonnegative() }), object({ success: literal(true) }), {
64183
64202
  kind: "mutation",
64184
64203
  auth: "admin"
64185
64204
  });
@@ -68041,52 +68060,89 @@ btn("power", 0, 0, {
68041
68060
  role: "power",
68042
68061
  shape: "round",
68043
68062
  tone: "danger"
68044
- }), btn("up", 0, 1, { role: "up" }), btn("left", 1, 0, { role: "left" }), btn("ok", 1, 1, {
68063
+ }), btn("up", 0, 1, {
68064
+ role: "up",
68065
+ icon: "chevron-up"
68066
+ }), btn("left", 1, 0, {
68067
+ role: "left",
68068
+ icon: "chevron-left"
68069
+ }), btn("ok", 1, 1, {
68045
68070
  role: "ok",
68046
68071
  shape: "round",
68047
68072
  tone: "accent"
68048
- }), btn("right", 1, 2, { role: "right" }), btn("down", 2, 1, { role: "down" }), rocker("core:rocker-volume-v", "Volume rocker", "Bilanciere volume", "rocker-v", "VOL", [btn("up", 0, 0, {
68073
+ }), btn("right", 1, 2, {
68074
+ role: "right",
68075
+ icon: "chevron-right"
68076
+ }), btn("down", 2, 1, {
68077
+ role: "down",
68078
+ icon: "chevron-down"
68079
+ }), rocker("core:rocker-volume-v", "Volume rocker", "Bilanciere volume", "rocker-v", "VOL", [btn("up", 0, 0, {
68049
68080
  role: "volume_up",
68081
+ icon: "plus",
68050
68082
  shape: "pill"
68051
68083
  }), btn("down", 1, 0, {
68052
68084
  role: "volume_down",
68085
+ icon: "minus",
68053
68086
  shape: "pill"
68054
68087
  })], {
68055
68088
  rows: 2,
68056
68089
  cols: 1
68057
68090
  }), rocker("core:rocker-channel-v", "Channel rocker", "Bilanciere canali", "rocker-v", "CH", [btn("up", 0, 0, {
68058
68091
  role: "channel_up",
68092
+ icon: "chevron-up",
68059
68093
  shape: "pill"
68060
68094
  }), btn("down", 1, 0, {
68061
68095
  role: "channel_down",
68096
+ icon: "chevron-down",
68062
68097
  shape: "pill"
68063
68098
  })], {
68064
68099
  rows: 2,
68065
68100
  cols: 1
68066
68101
  }), rocker("core:rocker-h", "Minus / plus rocker", "Bilanciere meno / più", "rocker-h", null, [btn("minus", 0, 0, {
68067
68102
  role: "custom:minus",
68068
- label: "−",
68103
+ label: "Minus",
68104
+ icon: "minus",
68069
68105
  shape: "pill"
68070
68106
  }), btn("plus", 0, 1, {
68071
68107
  role: "custom:plus",
68072
- label: "+",
68108
+ label: "Plus",
68109
+ icon: "plus",
68073
68110
  shape: "pill"
68074
68111
  })], {
68075
68112
  rows: 1,
68076
68113
  cols: 2
68077
68114
  }), [...Array.from({ length: 9 }, (_, i) => btn(`d${i + 1}`, Math.floor(i / 3), i % 3, { role: `digit_${i + 1}` })), btn("d0", 3, 1, { role: "digit_0" })], btn("red", 0, 0, {
68078
68115
  role: "custom:color_red",
68116
+ label: "Red",
68079
68117
  tone: "red"
68080
68118
  }), btn("green", 0, 1, {
68081
68119
  role: "custom:color_green",
68120
+ label: "Green",
68082
68121
  tone: "green"
68083
68122
  }), btn("yellow", 0, 2, {
68084
68123
  role: "custom:color_yellow",
68124
+ label: "Yellow",
68085
68125
  tone: "yellow"
68086
68126
  }), btn("blue", 0, 3, {
68087
68127
  role: "custom:color_blue",
68128
+ label: "Blue",
68088
68129
  tone: "blue"
68089
- }), btn("rewind", 0, 0, { role: "rewind" }), btn("play", 0, 1, { role: "play" }), btn("pause", 0, 2, { role: "pause" }), btn("forward", 0, 3, { role: "fast_forward" }), btn("stop", 0, 4, { role: "stop" }), [
68130
+ }), btn("rewind", 0, 0, {
68131
+ role: "rewind",
68132
+ icon: "rewind"
68133
+ }), btn("play", 0, 1, {
68134
+ role: "play",
68135
+ icon: "play"
68136
+ }), btn("pause", 0, 2, {
68137
+ role: "pause",
68138
+ icon: "pause"
68139
+ }), btn("forward", 0, 3, {
68140
+ role: "fast_forward",
68141
+ icon: "fast-forward"
68142
+ }), btn("stop", 0, 4, {
68143
+ role: "stop",
68144
+ icon: "square"
68145
+ }), [
68090
68146
  1,
68091
68147
  2,
68092
68148
  3,
@@ -68102,7 +68158,7 @@ discriminatedUnion("kind", [object({
68102
68158
  })]);
68103
68159
  DeviceFeature.FanSpeed, DeviceFeature.FanPreset, DeviceFeature.FanDirection, DeviceFeature.FanOscillating, DeviceFeature.CoverPositionable, DeviceFeature.CoverTilt, DeviceFeature.ValvePositionable, DeviceFeature.MediaPlayerVolume, DeviceFeature.ClimateFanMode;
68104
68160
  SOURCE_CAPS.filter((cap) => cap !== "switch" && cap !== "motion");
68105
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.EventEmitter, 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Camera, DeviceType.Camera, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
68161
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.EventEmitter, 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Gateway, DeviceType.Camera, DeviceType.Camera, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
68106
68162
  String.raw`rose\(active(\d+), changed(\d+), (\d+(?:\.\d+)?)\)`;
68107
68163
  DeviceRole.BinarySensor, DeviceRole.MotionSensor;
68108
68164
  new Set(CAP_NAMES);
@@ -68155,7 +68211,7 @@ var AccessoryKind = {
68155
68211
  PrivacyMask: DeviceRole.PrivacyMask
68156
68212
  };
68157
68213
  AccessoryKind.Siren, AccessoryKind.Floodlight, AccessoryKind.Spotlight, AccessoryKind.PirSensor, AccessoryKind.Chime, AccessoryKind.Autotrack, AccessoryKind.Nightvision, AccessoryKind.PrivacyMask;
68158
- 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer;
68214
+ 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Gateway;
68159
68215
  new Set(Object.values(DeviceType));
68160
68216
  Object.freeze({
68161
68217
  "accessories.getStatus": {
@@ -82212,7 +82268,7 @@ function projectAction(cap, action) {
82212
82268
  };
82213
82269
  }
82214
82270
  Object.entries(CAP_VOCABULARY_BY_NAME).flatMap(([cap, entry]) => entry.scope === "device" ? (entry.actions ?? []).map((a) => projectAction(cap, a)) : []);
82215
- 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer;
82271
+ 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Gateway;
82216
82272
  DeviceFeature.BatteryOperated;
82217
82273
  DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher;
82218
82274
  var HA_AS = "a power sensor (device_class power). Home Assistant has no laundry domain. running-state stays unexported until a null reading can be published as unavailable.";
@@ -10962,7 +10962,7 @@ object({
10962
10962
  params: record(string(), union([string(), number()])).optional()
10963
10963
  });
10964
10964
  //#endregion
10965
- //#region ../types/dist/err-msg-DWXWc0Di.mjs
10965
+ //#region ../types/dist/err-msg-BD5buxvT.mjs
10966
10966
  var DeviceType = /* @__PURE__ */ function(DeviceType) {
10967
10967
  DeviceType["Camera"] = "camera";
10968
10968
  DeviceType["Hub"] = "hub";
@@ -11068,6 +11068,12 @@ var DeviceType = /* @__PURE__ */ function(DeviceType) {
11068
11068
  DeviceType["Washer"] = "washer";
11069
11069
  /** Tumble dryer. Same plug-built running surface as {@link Washer}. */
11070
11070
  DeviceType["Dryer"] = "dryer";
11071
+ /** The physical bridge box of a vendor ecosystem (Velux KLF-200, and later
11072
+ * other radio-to-IP bridges). It carries the box's own facts (firmware,
11073
+ * address, connection state) and the actions the box really supports
11074
+ * (`reboot`, `device-admin-link`). Products are NOT its children — they are
11075
+ * adopted beside it — and its connection settings stay on the integration. */
11076
+ DeviceType["Gateway"] = "gateway";
11071
11077
  return DeviceType;
11072
11078
  }({});
11073
11079
  var DeviceFeature = /* @__PURE__ */ function(DeviceFeature) {
@@ -11318,7 +11324,7 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
11318
11324
  return DeviceRole;
11319
11325
  }({});
11320
11326
  //#endregion
11321
- //#region ../types/dist/composition-kSuOifuG.mjs
11327
+ //#region ../types/dist/composition-C7WdThmP.mjs
11322
11328
  /**
11323
11329
  * The ffmpeg build every CamStack node downloads, per platform and arch.
11324
11330
  *
@@ -18893,8 +18899,21 @@ var BrokerProviderInfoSchema = object({
18893
18899
  * (`{ sessionId }`) drops the session. The dialog that edits a broker
18894
18900
  * offers it as the default path; the fields the session fills are
18895
18901
  * marked `filledBySignIn` in the kind's settings schema.
18902
+ *
18903
+ * `methods` lists the ways the session can sign in, recommended first:
18904
+ * `'device-code'` adds `POST {basePath}/code/start` (body: the form's
18905
+ * settings) answering `{ sessionId, userCode, verificationUrl,
18906
+ * expiresAt }` — the operator types `userCode` at `verificationUrl` on
18907
+ * any device, and the same `status` / `commit` / `cancel` routes follow
18908
+ * (status then carries `method`, `userCode`, `verificationUrl`,
18909
+ * `expiresAt` and the phases `'awaiting-code'` / `'expired'`);
18910
+ * `'proxy'` is the `{basePath}/start` flow above. Absent means
18911
+ * `['proxy']`.
18896
18912
  */
18897
- signIn: object({ basePath: string().min(1) }).optional()
18913
+ signIn: object({
18914
+ basePath: string().min(1),
18915
+ methods: array(_enum(["device-code", "proxy"])).optional()
18916
+ }).optional()
18898
18917
  }))
18899
18918
  });
18900
18919
  var ListInputSchema = object({
@@ -64146,7 +64165,7 @@ object({
64146
64165
  });
64147
64166
  Object.values(DeviceType);
64148
64167
  DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
64149
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Switch, method(object({ deviceId: number().int().nonnegative() }), object({ success: literal(true) }), {
64168
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Switch, DeviceType.Gateway, method(object({ deviceId: number().int().nonnegative() }), object({ success: literal(true) }), {
64150
64169
  kind: "mutation",
64151
64170
  auth: "admin"
64152
64171
  });
@@ -68008,52 +68027,89 @@ btn("power", 0, 0, {
68008
68027
  role: "power",
68009
68028
  shape: "round",
68010
68029
  tone: "danger"
68011
- }), btn("up", 0, 1, { role: "up" }), btn("left", 1, 0, { role: "left" }), btn("ok", 1, 1, {
68030
+ }), btn("up", 0, 1, {
68031
+ role: "up",
68032
+ icon: "chevron-up"
68033
+ }), btn("left", 1, 0, {
68034
+ role: "left",
68035
+ icon: "chevron-left"
68036
+ }), btn("ok", 1, 1, {
68012
68037
  role: "ok",
68013
68038
  shape: "round",
68014
68039
  tone: "accent"
68015
- }), btn("right", 1, 2, { role: "right" }), btn("down", 2, 1, { role: "down" }), rocker("core:rocker-volume-v", "Volume rocker", "Bilanciere volume", "rocker-v", "VOL", [btn("up", 0, 0, {
68040
+ }), btn("right", 1, 2, {
68041
+ role: "right",
68042
+ icon: "chevron-right"
68043
+ }), btn("down", 2, 1, {
68044
+ role: "down",
68045
+ icon: "chevron-down"
68046
+ }), rocker("core:rocker-volume-v", "Volume rocker", "Bilanciere volume", "rocker-v", "VOL", [btn("up", 0, 0, {
68016
68047
  role: "volume_up",
68048
+ icon: "plus",
68017
68049
  shape: "pill"
68018
68050
  }), btn("down", 1, 0, {
68019
68051
  role: "volume_down",
68052
+ icon: "minus",
68020
68053
  shape: "pill"
68021
68054
  })], {
68022
68055
  rows: 2,
68023
68056
  cols: 1
68024
68057
  }), rocker("core:rocker-channel-v", "Channel rocker", "Bilanciere canali", "rocker-v", "CH", [btn("up", 0, 0, {
68025
68058
  role: "channel_up",
68059
+ icon: "chevron-up",
68026
68060
  shape: "pill"
68027
68061
  }), btn("down", 1, 0, {
68028
68062
  role: "channel_down",
68063
+ icon: "chevron-down",
68029
68064
  shape: "pill"
68030
68065
  })], {
68031
68066
  rows: 2,
68032
68067
  cols: 1
68033
68068
  }), rocker("core:rocker-h", "Minus / plus rocker", "Bilanciere meno / più", "rocker-h", null, [btn("minus", 0, 0, {
68034
68069
  role: "custom:minus",
68035
- label: "−",
68070
+ label: "Minus",
68071
+ icon: "minus",
68036
68072
  shape: "pill"
68037
68073
  }), btn("plus", 0, 1, {
68038
68074
  role: "custom:plus",
68039
- label: "+",
68075
+ label: "Plus",
68076
+ icon: "plus",
68040
68077
  shape: "pill"
68041
68078
  })], {
68042
68079
  rows: 1,
68043
68080
  cols: 2
68044
68081
  }), [...Array.from({ length: 9 }, (_, i) => btn(`d${i + 1}`, Math.floor(i / 3), i % 3, { role: `digit_${i + 1}` })), btn("d0", 3, 1, { role: "digit_0" })], btn("red", 0, 0, {
68045
68082
  role: "custom:color_red",
68083
+ label: "Red",
68046
68084
  tone: "red"
68047
68085
  }), btn("green", 0, 1, {
68048
68086
  role: "custom:color_green",
68087
+ label: "Green",
68049
68088
  tone: "green"
68050
68089
  }), btn("yellow", 0, 2, {
68051
68090
  role: "custom:color_yellow",
68091
+ label: "Yellow",
68052
68092
  tone: "yellow"
68053
68093
  }), btn("blue", 0, 3, {
68054
68094
  role: "custom:color_blue",
68095
+ label: "Blue",
68055
68096
  tone: "blue"
68056
- }), btn("rewind", 0, 0, { role: "rewind" }), btn("play", 0, 1, { role: "play" }), btn("pause", 0, 2, { role: "pause" }), btn("forward", 0, 3, { role: "fast_forward" }), btn("stop", 0, 4, { role: "stop" }), [
68097
+ }), btn("rewind", 0, 0, {
68098
+ role: "rewind",
68099
+ icon: "rewind"
68100
+ }), btn("play", 0, 1, {
68101
+ role: "play",
68102
+ icon: "play"
68103
+ }), btn("pause", 0, 2, {
68104
+ role: "pause",
68105
+ icon: "pause"
68106
+ }), btn("forward", 0, 3, {
68107
+ role: "fast_forward",
68108
+ icon: "fast-forward"
68109
+ }), btn("stop", 0, 4, {
68110
+ role: "stop",
68111
+ icon: "square"
68112
+ }), [
68057
68113
  1,
68058
68114
  2,
68059
68115
  3,
@@ -68069,7 +68125,7 @@ discriminatedUnion("kind", [object({
68069
68125
  })]);
68070
68126
  DeviceFeature.FanSpeed, DeviceFeature.FanPreset, DeviceFeature.FanDirection, DeviceFeature.FanOscillating, DeviceFeature.CoverPositionable, DeviceFeature.CoverTilt, DeviceFeature.ValvePositionable, DeviceFeature.MediaPlayerVolume, DeviceFeature.ClimateFanMode;
68071
68127
  SOURCE_CAPS.filter((cap) => cap !== "switch" && cap !== "motion");
68072
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.EventEmitter, 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Camera, DeviceType.Camera, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
68128
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.EventEmitter, 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Gateway, DeviceType.Camera, DeviceType.Camera, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.Switch, DeviceType.Light, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.PetFeeder, DeviceType.MediaPlayer, DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
68073
68129
  String.raw`rose\(active(\d+), changed(\d+), (\d+(?:\.\d+)?)\)`;
68074
68130
  DeviceRole.BinarySensor, DeviceRole.MotionSensor;
68075
68131
  new Set(CAP_NAMES);
@@ -68122,7 +68178,7 @@ var AccessoryKind = {
68122
68178
  PrivacyMask: DeviceRole.PrivacyMask
68123
68179
  };
68124
68180
  AccessoryKind.Siren, AccessoryKind.Floodlight, AccessoryKind.Spotlight, AccessoryKind.PirSensor, AccessoryKind.Chime, AccessoryKind.Autotrack, AccessoryKind.Nightvision, AccessoryKind.PrivacyMask;
68125
- 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer;
68181
+ 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Gateway;
68126
68182
  new Set(Object.values(DeviceType));
68127
68183
  Object.freeze({
68128
68184
  "accessories.getStatus": {
@@ -82179,7 +82235,7 @@ function projectAction(cap, action) {
82179
82235
  };
82180
82236
  }
82181
82237
  Object.entries(CAP_VOCABULARY_BY_NAME).flatMap(([cap, entry]) => entry.scope === "device" ? (entry.actions ?? []).map((a) => projectAction(cap, a)) : []);
82182
- 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer;
82238
+ 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.PetFountain, DeviceType.Dishwasher, DeviceType.Washer, DeviceType.Dryer, DeviceType.Gateway;
82183
82239
  DeviceFeature.BatteryOperated;
82184
82240
  DeviceType.Washer, DeviceType.Dryer, DeviceType.Dishwasher;
82185
82241
  var HA_AS = "a power sensor (device_class power). Home Assistant has no laundry domain. running-state stays unexported until a null reading can be published as unavailable.";
@@ -36,7 +36,7 @@ async function r() {
36
36
  }
37
37
  },
38
38
  "@camstack/types": {
39
- version: "1.2.448",
39
+ version: "1.2.451",
40
40
  scope: "default",
41
41
  shareConfig: {
42
42
  singleton: !0,
@@ -81,7 +81,7 @@ async function r() {
81
81
  }
82
82
  },
83
83
  "@camstack/ui-library": {
84
- version: "1.2.354",
84
+ version: "1.2.356",
85
85
  scope: "default",
86
86
  shareConfig: {
87
87
  singleton: !0,