@camstack/addon-training 0.1.56 → 0.1.58

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/dist/{MotionZonesSettings-W5TJMIhz.mjs → MotionZonesSettings-B1MFjLvT.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-8bCieYP4.mjs → PrivacyMaskSettings-BsCT1qXL.mjs} +2 -2
  3. package/dist/{SceneMonitorEditor-hfbQKb07.mjs → SceneMonitorEditor-DYTrCHNh.mjs} +1 -1
  4. package/dist/_stub.js +5354 -4797
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-DtB9ff7l.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-D332hdX5.mjs} +4 -4
  6. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-o-C5PmDm.mjs +26 -0
  7. package/dist/addon-training.css +1 -1
  8. package/dist/{dist-DYEQn1Ss.mjs → dist-D-q3lyBd.mjs} +307 -8
  9. package/dist/{dist-DnFIVL4Y.js → dist-DBdxFGSN.js} +307 -8
  10. package/dist/{hostInit-Duj8IUS7.mjs → hostInit-DtDn5ljK.mjs} +3 -3
  11. package/dist/{icons-BnErSNU6.mjs → icons-DG9GIB-J.mjs} +1386 -1448
  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-DBfpI8h8.mjs → player-overlays-Cdh_GNzb.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-CVlns2k2.mjs → responsive-DzwIz4dK.mjs} +1 -1
  20. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-GR9ZahAF.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-DZYuiYXh.mjs} +1 -1
  21. package/dist/{zoom-out-hR5SOKZW.mjs → zoom-out-BqtOwgKe.mjs} +170 -108
  22. package/package.json +1 -1
  23. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CdZst5Eh.mjs +0 -26
@@ -5538,7 +5538,7 @@ var ZodIssueCode = {
5538
5538
  var ZodFirstPartyTypeKind;
5539
5539
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5540
5540
  //#endregion
5541
- //#region ../types/dist/sleep-bZIhUvjd.mjs
5541
+ //#region ../types/dist/sleep-BegKjwUu.mjs
5542
5542
  /**
5543
5543
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5544
5544
  * window to float samples (D455).
@@ -8745,7 +8745,7 @@ object({
8745
8745
  params: record(string(), union([string(), number()])).optional()
8746
8746
  });
8747
8747
  //#endregion
8748
- //#region ../types/dist/err-msg--2RrYiLO.mjs
8748
+ //#region ../types/dist/err-msg-BXKzRBwg.mjs
8749
8749
  var DeviceType = /* @__PURE__ */ function(DeviceType) {
8750
8750
  DeviceType["Camera"] = "camera";
8751
8751
  DeviceType["Hub"] = "hub";
@@ -8837,6 +8837,10 @@ var DeviceType = /* @__PURE__ */ function(DeviceType) {
8837
8837
  * native PetKit (`nodepetkit` `FeederDevice`), reusable by other feeder
8838
8838
  * integrations sharing the same food/desiccant/hopper surface. */
8839
8839
  DeviceType["PetFeeder"] = "pet-feeder";
8840
+ /** Built-in dishwasher — program lifecycle, door / remote-start gates,
8841
+ * salt and rinse-aid levels. Installed with the `dishwasher` cap.
8842
+ * Sources: native Bosch Home Connect, reusable by similar integrations. */
8843
+ DeviceType["Dishwasher"] = "dishwasher";
8840
8844
  return DeviceType;
8841
8845
  }({});
8842
8846
  var DeviceFeature = /* @__PURE__ */ function(DeviceFeature) {
@@ -9084,7 +9088,7 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
9084
9088
  return DeviceRole;
9085
9089
  }({});
9086
9090
  //#endregion
9087
- //#region ../types/dist/composition-DOwQB_Ua.mjs
9091
+ //#region ../types/dist/composition-CB6PMT9p.mjs
9088
9092
  /**
9089
9093
  * The ffmpeg build every CamStack node downloads, per platform and arch.
9090
9094
  *
@@ -13505,8 +13509,13 @@ var AlertSeveritySchema = _enum([
13505
13509
  "info",
13506
13510
  "success",
13507
13511
  "warning",
13508
- "error"
13512
+ "error",
13513
+ "critical"
13509
13514
  ]);
13515
+ var AlertActionSchema = object({
13516
+ label: string(),
13517
+ href: string().optional()
13518
+ });
13510
13519
  var AlertStatusSchema = _enum([
13511
13520
  "active",
13512
13521
  "in-progress",
@@ -13524,6 +13533,7 @@ var AlertSchema = object({
13524
13533
  severity: AlertSeveritySchema,
13525
13534
  title: string(),
13526
13535
  message: string(),
13536
+ action: AlertActionSchema.optional(),
13527
13537
  status: AlertStatusSchema,
13528
13538
  progress: number().optional(),
13529
13539
  read: boolean(),
@@ -17668,7 +17678,11 @@ DeviceType.Hub, DeviceDiscoveryStatusSchema.extend({ lastFetchedAt: number().int
17668
17678
  });
17669
17679
  /**
17670
17680
  * `device-adoption` — generic discovery + adoption surface,
17671
- * system-scoped singleton. The de-HA-ified successor to `ha-discovery`:
17681
+ * system-scoped collection (one provider per integration addon), routed
17682
+ * by explicit `{ addonId }` on direct `deviceAdoption.*` calls — the same
17683
+ * pin model as `connection-test`. The admin UI keeps using
17684
+ * `deviceManager.adoption*` (which already threads `addonId`). The de-HA-ified
17685
+ * successor to `ha-discovery`:
17672
17686
  * keyed by `integrationId` (the addon resolves integrationId → broker
17673
17687
  * internally) rather than a connection-specific `brokerId`, and it
17674
17688
  * REUSES the shared `DiscoveredChildDevice` candidate type from
@@ -53458,7 +53472,7 @@ var BatteryStatusSchema = object({
53458
53472
  */
53459
53473
  binary: boolean().optional()
53460
53474
  });
53461
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, method(object({
53475
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, method(object({
53462
53476
  deviceId: number(),
53463
53477
  /** Bound on the wait. Sensible range 3000–10000ms. */
53464
53478
  timeoutMs: number().int().min(500).max(3e4).default(8e3)
@@ -54334,6 +54348,130 @@ object({
54334
54348
  deviceId: number(),
54335
54349
  status: DeviceStatusSchema
54336
54350
  });
54351
+ /**
54352
+ * Smart-dishwasher cap — program lifecycle, door / remote-start gates,
54353
+ * consumable levels (salt, rinse aid) and common program options.
54354
+ *
54355
+ * Sources: native Bosch Home Connect (`dishwasher` device type). Reusable
54356
+ * by any integration that exposes the same program / option surface.
54357
+ *
54358
+ * `kind: 'poll'` — cloud REST APIs typically have no push channel; the
54359
+ * provider refreshes the slice on an interval and eagerly after commands.
54360
+ */
54361
+ var DishwasherStateSchema = _enum([
54362
+ "idle",
54363
+ "running",
54364
+ "paused",
54365
+ "finished",
54366
+ "error",
54367
+ "unavailable"
54368
+ ]);
54369
+ var DishwasherConsumableLevelSchema = _enum([
54370
+ "ok",
54371
+ "low",
54372
+ "empty"
54373
+ ]);
54374
+ object({
54375
+ state: DishwasherStateSchema,
54376
+ /** Active program id/name, or null when none selected / unknown. */
54377
+ program: string().nullable(),
54378
+ /** Program tokens the hardware accepts — drives the UI selector. */
54379
+ availablePrograms: array(string()),
54380
+ /** Minutes remaining on the active cycle, or null when not running. */
54381
+ remainingMinutes: number().int().nonnegative().nullable(),
54382
+ /** Cycle completion 0..100, or null when not applicable. */
54383
+ progressPercent: number().min(0).max(100).nullable(),
54384
+ /** True when the door is reported open. */
54385
+ doorOpen: boolean(),
54386
+ /** True when remote start is allowed (door closed, power on, etc.). */
54387
+ remoteStartAllowed: boolean(),
54388
+ /** Main power / switched-on state. */
54389
+ powerOn: boolean(),
54390
+ saltLevel: DishwasherConsumableLevelSchema.nullable(),
54391
+ rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
54392
+ halfLoad: boolean(),
54393
+ hygienePlus: boolean(),
54394
+ /** Extra dry option when the appliance exposes it. */
54395
+ extraDry: boolean(),
54396
+ /** Intensive zone (lower basket) when the appliance exposes it. */
54397
+ intensiveZone: boolean(),
54398
+ /** VarioSpeed / VarioSpeed+ when the appliance exposes it. */
54399
+ varioSpeedPlus: boolean(),
54400
+ /** Child lock (controls disabled on the appliance). */
54401
+ childLock: boolean(),
54402
+ errorCode: number().nullable(),
54403
+ errorLabel: string().nullable(),
54404
+ lastFetchedAt: number()
54405
+ });
54406
+ DeviceType.Dishwasher, method(object({ deviceId: number().int().nonnegative() }), _void(), {
54407
+ kind: "mutation",
54408
+ auth: "protected"
54409
+ }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54410
+ kind: "mutation",
54411
+ auth: "protected"
54412
+ }), method(object({ deviceId: number().int().nonnegative() }), _void(), {
54413
+ kind: "mutation",
54414
+ auth: "protected"
54415
+ }), method(object({
54416
+ deviceId: number().int().nonnegative(),
54417
+ program: string().min(1)
54418
+ }), _void(), {
54419
+ kind: "mutation",
54420
+ auth: "protected"
54421
+ }), method(object({
54422
+ deviceId: number().int().nonnegative(),
54423
+ on: boolean()
54424
+ }), _void(), {
54425
+ kind: "mutation",
54426
+ auth: "protected"
54427
+ }), method(object({
54428
+ deviceId: number().int().nonnegative(),
54429
+ on: boolean()
54430
+ }), _void(), {
54431
+ kind: "mutation",
54432
+ auth: "protected"
54433
+ }), method(object({
54434
+ deviceId: number().int().nonnegative(),
54435
+ on: boolean()
54436
+ }), _void(), {
54437
+ kind: "mutation",
54438
+ auth: "protected"
54439
+ }), method(object({
54440
+ deviceId: number().int().nonnegative(),
54441
+ on: boolean()
54442
+ }), _void(), {
54443
+ kind: "mutation",
54444
+ auth: "protected"
54445
+ }), method(object({
54446
+ deviceId: number().int().nonnegative(),
54447
+ on: boolean()
54448
+ }), _void(), {
54449
+ kind: "mutation",
54450
+ auth: "protected"
54451
+ }), method(object({
54452
+ deviceId: number().int().nonnegative(),
54453
+ on: boolean()
54454
+ }), _void(), {
54455
+ kind: "mutation",
54456
+ auth: "protected"
54457
+ }), method(object({
54458
+ deviceId: number().int().nonnegative(),
54459
+ on: boolean()
54460
+ }), _void(), {
54461
+ kind: "mutation",
54462
+ auth: "protected"
54463
+ }), method(object({
54464
+ deviceId: number().int().nonnegative(),
54465
+ key: string().min(1),
54466
+ value: union([
54467
+ boolean(),
54468
+ string(),
54469
+ number()
54470
+ ])
54471
+ }), _void(), {
54472
+ kind: "mutation",
54473
+ auth: "protected"
54474
+ });
54337
54475
  object({
54338
54476
  /** Ms epoch of the last press. null = never observed since this provider started. */
54339
54477
  lastPressedAt: number().nullable(),
@@ -54899,6 +55037,13 @@ object({
54899
55037
  lastChangedAt: number()
54900
55038
  });
54901
55039
  DeviceType.Sensor;
55040
+ object({
55041
+ /** Radiator valve opening 0 (closed) .. 100 (open). Null = not yet known. */
55042
+ position: number().min(0).max(100).nullable(),
55043
+ /** Ms epoch when the slice was last updated (push or poll). */
55044
+ lastFetchedAt: number()
55045
+ });
55046
+ DeviceType.Thermostat;
54902
55047
  object({
54903
55048
  /** Whether the humidifier is currently on. */
54904
55049
  on: boolean(),
@@ -62065,7 +62210,7 @@ var AccessoryKind = {
62065
62210
  PrivacyMask: DeviceRole.PrivacyMask
62066
62211
  };
62067
62212
  AccessoryKind.Siren, AccessoryKind.Floodlight, AccessoryKind.Spotlight, AccessoryKind.PirSensor, AccessoryKind.Chime, AccessoryKind.Autotrack, AccessoryKind.Nightvision, AccessoryKind.PrivacyMask;
62068
- 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;
62213
+ 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;
62069
62214
  new Set(Object.values(DeviceType));
62070
62215
  Object.freeze({
62071
62216
  "accessories.getStatus": {
@@ -64486,6 +64631,84 @@ Object.freeze({
64486
64631
  addonId: null,
64487
64632
  access: "view"
64488
64633
  },
64634
+ "dishwasher.getStatus": {
64635
+ capName: "dishwasher",
64636
+ capScope: "device",
64637
+ addonId: null,
64638
+ access: "view"
64639
+ },
64640
+ "dishwasher.pause": {
64641
+ capName: "dishwasher",
64642
+ capScope: "device",
64643
+ addonId: null,
64644
+ access: "create"
64645
+ },
64646
+ "dishwasher.setChildLock": {
64647
+ capName: "dishwasher",
64648
+ capScope: "device",
64649
+ addonId: null,
64650
+ access: "create"
64651
+ },
64652
+ "dishwasher.setExtraDry": {
64653
+ capName: "dishwasher",
64654
+ capScope: "device",
64655
+ addonId: null,
64656
+ access: "create"
64657
+ },
64658
+ "dishwasher.setHalfLoad": {
64659
+ capName: "dishwasher",
64660
+ capScope: "device",
64661
+ addonId: null,
64662
+ access: "create"
64663
+ },
64664
+ "dishwasher.setHygienePlus": {
64665
+ capName: "dishwasher",
64666
+ capScope: "device",
64667
+ addonId: null,
64668
+ access: "create"
64669
+ },
64670
+ "dishwasher.setIntensiveZone": {
64671
+ capName: "dishwasher",
64672
+ capScope: "device",
64673
+ addonId: null,
64674
+ access: "create"
64675
+ },
64676
+ "dishwasher.setOption": {
64677
+ capName: "dishwasher",
64678
+ capScope: "device",
64679
+ addonId: null,
64680
+ access: "create"
64681
+ },
64682
+ "dishwasher.setPower": {
64683
+ capName: "dishwasher",
64684
+ capScope: "device",
64685
+ addonId: null,
64686
+ access: "create"
64687
+ },
64688
+ "dishwasher.setProgram": {
64689
+ capName: "dishwasher",
64690
+ capScope: "device",
64691
+ addonId: null,
64692
+ access: "create"
64693
+ },
64694
+ "dishwasher.setVarioSpeedPlus": {
64695
+ capName: "dishwasher",
64696
+ capScope: "device",
64697
+ addonId: null,
64698
+ access: "create"
64699
+ },
64700
+ "dishwasher.start": {
64701
+ capName: "dishwasher",
64702
+ capScope: "device",
64703
+ addonId: null,
64704
+ access: "create"
64705
+ },
64706
+ "dishwasher.stop": {
64707
+ capName: "dishwasher",
64708
+ capScope: "device",
64709
+ addonId: null,
64710
+ access: "create"
64711
+ },
64489
64712
  "doorbell.getStatus": {
64490
64713
  capName: "doorbell",
64491
64714
  capScope: "device",
@@ -64696,6 +64919,12 @@ Object.freeze({
64696
64919
  addonId: null,
64697
64920
  access: "view"
64698
64921
  },
64922
+ "heatingValve.getStatus": {
64923
+ capName: "heating-valve",
64924
+ capScope: "device",
64925
+ addonId: null,
64926
+ access: "view"
64927
+ },
64699
64928
  "humidifier.getStatus": {
64700
64929
  capName: "humidifier",
64701
64930
  capScope: "device",
@@ -70283,7 +70512,7 @@ Object.freeze({
70283
70512
  access: "create"
70284
70513
  }
70285
70514
  });
70286
- 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;
70515
+ 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;
70287
70516
  DeviceFeature.BatteryOperated;
70288
70517
  Object.freeze({
70289
70518
  "accessories.getStatus": [{
@@ -71107,6 +71336,71 @@ Object.freeze({
71107
71336
  form: "single",
71108
71337
  optional: false
71109
71338
  }],
71339
+ "dishwasher.getStatus": [{
71340
+ name: "deviceId",
71341
+ form: "single",
71342
+ optional: false
71343
+ }],
71344
+ "dishwasher.pause": [{
71345
+ name: "deviceId",
71346
+ form: "single",
71347
+ optional: false
71348
+ }],
71349
+ "dishwasher.setChildLock": [{
71350
+ name: "deviceId",
71351
+ form: "single",
71352
+ optional: false
71353
+ }],
71354
+ "dishwasher.setExtraDry": [{
71355
+ name: "deviceId",
71356
+ form: "single",
71357
+ optional: false
71358
+ }],
71359
+ "dishwasher.setHalfLoad": [{
71360
+ name: "deviceId",
71361
+ form: "single",
71362
+ optional: false
71363
+ }],
71364
+ "dishwasher.setHygienePlus": [{
71365
+ name: "deviceId",
71366
+ form: "single",
71367
+ optional: false
71368
+ }],
71369
+ "dishwasher.setIntensiveZone": [{
71370
+ name: "deviceId",
71371
+ form: "single",
71372
+ optional: false
71373
+ }],
71374
+ "dishwasher.setOption": [{
71375
+ name: "deviceId",
71376
+ form: "single",
71377
+ optional: false
71378
+ }],
71379
+ "dishwasher.setPower": [{
71380
+ name: "deviceId",
71381
+ form: "single",
71382
+ optional: false
71383
+ }],
71384
+ "dishwasher.setProgram": [{
71385
+ name: "deviceId",
71386
+ form: "single",
71387
+ optional: false
71388
+ }],
71389
+ "dishwasher.setVarioSpeedPlus": [{
71390
+ name: "deviceId",
71391
+ form: "single",
71392
+ optional: false
71393
+ }],
71394
+ "dishwasher.start": [{
71395
+ name: "deviceId",
71396
+ form: "single",
71397
+ optional: false
71398
+ }],
71399
+ "dishwasher.stop": [{
71400
+ name: "deviceId",
71401
+ form: "single",
71402
+ optional: false
71403
+ }],
71110
71404
  "doorbell.getStatus": [{
71111
71405
  name: "deviceId",
71112
71406
  form: "single",
@@ -71176,6 +71470,11 @@ Object.freeze({
71176
71470
  form: "single",
71177
71471
  optional: false
71178
71472
  }],
71473
+ "heatingValve.getStatus": [{
71474
+ name: "deviceId",
71475
+ form: "single",
71476
+ optional: false
71477
+ }],
71179
71478
  "humidifier.getStatus": [{
71180
71479
  name: "deviceId",
71181
71480
  form: "single",