homey-lib 2.47.0 → 2.48.1

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 (267) hide show
  1. package/assets/app/permissions.json +1 -1
  2. package/assets/capability/capabilities/alarm_battery.json +1 -1
  3. package/assets/capability/capabilities/alarm_bin_full.json +1 -1
  4. package/assets/capability/capabilities/alarm_bin_missing.json +1 -1
  5. package/assets/capability/capabilities/alarm_cleaning_pad_missing.json +1 -1
  6. package/assets/capability/capabilities/alarm_co.json +1 -1
  7. package/assets/capability/capabilities/alarm_co2.json +1 -1
  8. package/assets/capability/capabilities/alarm_cold.json +1 -1
  9. package/assets/capability/capabilities/alarm_connectivity.json +1 -1
  10. package/assets/capability/capabilities/alarm_contact.json +1 -1
  11. package/assets/capability/capabilities/alarm_door_fault.json +1 -1
  12. package/assets/capability/capabilities/alarm_fire.json +1 -1
  13. package/assets/capability/capabilities/alarm_freeze_risk.json +1 -1
  14. package/assets/capability/capabilities/alarm_gas.json +1 -1
  15. package/assets/capability/capabilities/alarm_generic.json +1 -1
  16. package/assets/capability/capabilities/alarm_heat.json +1 -1
  17. package/assets/capability/capabilities/alarm_light.json +1 -1
  18. package/assets/capability/capabilities/alarm_lost.json +1 -1
  19. package/assets/capability/capabilities/alarm_moisture.json +1 -1
  20. package/assets/capability/capabilities/alarm_motion.json +1 -1
  21. package/assets/capability/capabilities/alarm_night.json +1 -1
  22. package/assets/capability/capabilities/alarm_noise.json +1 -1
  23. package/assets/capability/capabilities/alarm_occupancy.json +1 -1
  24. package/assets/capability/capabilities/alarm_open.json +1 -1
  25. package/assets/capability/capabilities/alarm_pm01.json +1 -1
  26. package/assets/capability/capabilities/alarm_pm1.json +1 -1
  27. package/assets/capability/capabilities/alarm_pm10.json +1 -1
  28. package/assets/capability/capabilities/alarm_pm25.json +1 -1
  29. package/assets/capability/capabilities/alarm_power.json +1 -1
  30. package/assets/capability/capabilities/alarm_presence.json +1 -1
  31. package/assets/capability/capabilities/alarm_problem.json +1 -1
  32. package/assets/capability/capabilities/alarm_pump_device.json +1 -1
  33. package/assets/capability/capabilities/alarm_pump_supply.json +1 -1
  34. package/assets/capability/capabilities/alarm_rain.json +1 -1
  35. package/assets/capability/capabilities/alarm_running.json +1 -1
  36. package/assets/capability/capabilities/alarm_safety.json +1 -1
  37. package/assets/capability/capabilities/alarm_smoke.json +1 -1
  38. package/assets/capability/capabilities/alarm_stuck.json +1 -1
  39. package/assets/capability/capabilities/alarm_tamper.json +1 -1
  40. package/assets/capability/capabilities/alarm_tank_empty.json +1 -1
  41. package/assets/capability/capabilities/alarm_tank_missing.json +1 -1
  42. package/assets/capability/capabilities/alarm_tank_open.json +1 -1
  43. package/assets/capability/capabilities/alarm_vibration.json +1 -1
  44. package/assets/capability/capabilities/alarm_water.json +1 -1
  45. package/assets/capability/capabilities/audio_output.json +1 -1
  46. package/assets/capability/capabilities/battery_charging_state.json +1 -1
  47. package/assets/capability/capabilities/button.json +1 -1
  48. package/assets/capability/capabilities/channel_down.json +1 -1
  49. package/assets/capability/capabilities/channel_up.json +1 -1
  50. package/assets/capability/capabilities/cooking_time.json +1 -1
  51. package/assets/capability/capabilities/dim.json +1 -1
  52. package/assets/capability/capabilities/dishwasher_program.json +1 -1
  53. package/assets/capability/capabilities/docked.json +1 -1
  54. package/assets/capability/capabilities/ev_charging_state.json +1 -1
  55. package/assets/capability/capabilities/evcharger_charging.json +1 -1
  56. package/assets/capability/capabilities/evcharger_charging_state.json +1 -1
  57. package/assets/capability/capabilities/fan_mode.json +1 -1
  58. package/assets/capability/capabilities/fan_speed.json +1 -1
  59. package/assets/capability/capabilities/garagedoor_closed.json +1 -1
  60. package/assets/capability/capabilities/heater_operation_mode.json +1 -1
  61. package/assets/capability/capabilities/homealarm_state.json +1 -1
  62. package/assets/capability/capabilities/hot_water_mode.json +1 -1
  63. package/assets/capability/capabilities/laundry_dryer_dryness.json +1 -1
  64. package/assets/capability/capabilities/laundry_washer_cycles.json +1 -1
  65. package/assets/capability/capabilities/laundry_washer_program.json +1 -1
  66. package/assets/capability/capabilities/laundry_washer_speed.json +1 -1
  67. package/assets/capability/capabilities/level_aqi.json +1 -1
  68. package/assets/capability/capabilities/level_carbon_filter.json +1 -1
  69. package/assets/capability/capabilities/level_ch2o.json +1 -1
  70. package/assets/capability/capabilities/level_co.json +1 -1
  71. package/assets/capability/capabilities/level_co2.json +1 -1
  72. package/assets/capability/capabilities/level_hepa_filter.json +1 -1
  73. package/assets/capability/capabilities/level_nox.json +1 -1
  74. package/assets/capability/capabilities/level_o3.json +1 -1
  75. package/assets/capability/capabilities/level_pm01.json +1 -1
  76. package/assets/capability/capabilities/level_pm1.json +1 -1
  77. package/assets/capability/capabilities/level_pm10.json +1 -1
  78. package/assets/capability/capabilities/level_pm25.json +1 -1
  79. package/assets/capability/capabilities/level_radon.json +1 -1
  80. package/assets/capability/capabilities/level_so2.json +1 -1
  81. package/assets/capability/capabilities/level_tvoc.json +1 -1
  82. package/assets/capability/capabilities/light_hue.json +1 -1
  83. package/assets/capability/capabilities/light_mode.json +1 -1
  84. package/assets/capability/capabilities/light_saturation.json +1 -1
  85. package/assets/capability/capabilities/light_temperature.json +1 -1
  86. package/assets/capability/capabilities/lock_mode.json +1 -1
  87. package/assets/capability/capabilities/locked.json +1 -1
  88. package/assets/capability/capabilities/measure_aqi.json +1 -1
  89. package/assets/capability/capabilities/measure_battery.json +1 -1
  90. package/assets/capability/capabilities/measure_carbon_filter.json +1 -1
  91. package/assets/capability/capabilities/measure_ch2o.json +1 -1
  92. package/assets/capability/capabilities/measure_co.json +1 -1
  93. package/assets/capability/capabilities/measure_co2.json +1 -1
  94. package/assets/capability/capabilities/measure_content_volume.json +1 -1
  95. package/assets/capability/capabilities/measure_current.json +1 -1
  96. package/assets/capability/capabilities/measure_data_rate.json +1 -1
  97. package/assets/capability/capabilities/measure_data_size.json +1 -1
  98. package/assets/capability/capabilities/measure_distance.json +1 -1
  99. package/assets/capability/capabilities/measure_frequency.json +1 -1
  100. package/assets/capability/capabilities/measure_gust_angle.json +1 -1
  101. package/assets/capability/capabilities/measure_gust_strength.json +1 -1
  102. package/assets/capability/capabilities/measure_hepa_filter.json +1 -1
  103. package/assets/capability/capabilities/measure_humidity.json +1 -1
  104. package/assets/capability/capabilities/measure_luminance.json +1 -1
  105. package/assets/capability/capabilities/measure_moisture.json +1 -1
  106. package/assets/capability/capabilities/measure_monetary.json +1 -1
  107. package/assets/capability/capabilities/measure_noise.json +1 -1
  108. package/assets/capability/capabilities/measure_nox.json +1 -1
  109. package/assets/capability/capabilities/measure_o3.json +1 -1
  110. package/assets/capability/capabilities/measure_odor.json +1 -1
  111. package/assets/capability/capabilities/measure_ph.json +1 -1
  112. package/assets/capability/capabilities/measure_pm01.json +1 -1
  113. package/assets/capability/capabilities/measure_pm1.json +1 -1
  114. package/assets/capability/capabilities/measure_pm10.json +1 -1
  115. package/assets/capability/capabilities/measure_pm25.json +1 -1
  116. package/assets/capability/capabilities/measure_power.json +1 -1
  117. package/assets/capability/capabilities/measure_pressure.json +1 -1
  118. package/assets/capability/capabilities/measure_radon.json +1 -1
  119. package/assets/capability/capabilities/measure_rain.json +1 -1
  120. package/assets/capability/capabilities/measure_rain_intensity.json +1 -1
  121. package/assets/capability/capabilities/measure_rotation.json +1 -1
  122. package/assets/capability/capabilities/measure_signal_strength.json +1 -1
  123. package/assets/capability/capabilities/measure_so2.json +1 -1
  124. package/assets/capability/capabilities/measure_speed.json +1 -1
  125. package/assets/capability/capabilities/measure_temperature.json +1 -1
  126. package/assets/capability/capabilities/measure_tvoc.json +1 -1
  127. package/assets/capability/capabilities/measure_tvoc_index.json +1 -1
  128. package/assets/capability/capabilities/measure_ultraviolet.json +1 -1
  129. package/assets/capability/capabilities/measure_voltage.json +1 -1
  130. package/assets/capability/capabilities/measure_water.json +1 -1
  131. package/assets/capability/capabilities/measure_weight.json +1 -1
  132. package/assets/capability/capabilities/measure_wind_angle.json +1 -1
  133. package/assets/capability/capabilities/measure_wind_strength.json +1 -1
  134. package/assets/capability/capabilities/media_input.json +1 -1
  135. package/assets/capability/capabilities/meter_gas.json +1 -1
  136. package/assets/capability/capabilities/meter_power.json +1 -1
  137. package/assets/capability/capabilities/meter_rain.json +1 -1
  138. package/assets/capability/capabilities/meter_water.json +1 -1
  139. package/assets/capability/capabilities/microwave_mode.json +1 -1
  140. package/assets/capability/capabilities/mower_state.json +1 -1
  141. package/assets/capability/capabilities/onoff.json +1 -1
  142. package/assets/capability/capabilities/operational_state.json +1 -1
  143. package/assets/capability/capabilities/oscillating.json +1 -1
  144. package/assets/capability/capabilities/oven_mode.json +1 -1
  145. package/assets/capability/capabilities/power_boost.json +1 -1
  146. package/assets/capability/capabilities/power_level.json +1 -1
  147. package/assets/capability/capabilities/progress.json +1 -1
  148. package/assets/capability/capabilities/pump_mode.json +1 -1
  149. package/assets/capability/capabilities/pump_setpoint.json +1 -1
  150. package/assets/capability/capabilities/refrigerator_mode.json +1 -1
  151. package/assets/capability/capabilities/speaker_album.json +1 -1
  152. package/assets/capability/capabilities/speaker_artist.json +1 -1
  153. package/assets/capability/capabilities/speaker_duration.json +1 -1
  154. package/assets/capability/capabilities/speaker_next.json +1 -1
  155. package/assets/capability/capabilities/speaker_playing.json +1 -1
  156. package/assets/capability/capabilities/speaker_position.json +1 -1
  157. package/assets/capability/capabilities/speaker_prev.json +1 -1
  158. package/assets/capability/capabilities/speaker_repeat.json +1 -1
  159. package/assets/capability/capabilities/speaker_shuffle.json +1 -1
  160. package/assets/capability/capabilities/speaker_stop.json +1 -1
  161. package/assets/capability/capabilities/speaker_track.json +1 -1
  162. package/assets/capability/capabilities/swing_mode.json +1 -1
  163. package/assets/capability/capabilities/target_humidity.json +1 -1
  164. package/assets/capability/capabilities/target_humidity_max.json +1 -1
  165. package/assets/capability/capabilities/target_humidity_min.json +1 -1
  166. package/assets/capability/capabilities/target_power.json +1 -1
  167. package/assets/capability/capabilities/target_power_mode.json +40 -40
  168. package/assets/capability/capabilities/target_temperature.json +1 -1
  169. package/assets/capability/capabilities/target_temperature_level.json +1 -1
  170. package/assets/capability/capabilities/target_temperature_max.json +1 -1
  171. package/assets/capability/capabilities/target_temperature_min.json +1 -1
  172. package/assets/capability/capabilities/thermostat_mode.json +1 -1
  173. package/assets/capability/capabilities/vacuumcleaner_job_mode.json +1 -1
  174. package/assets/capability/capabilities/vacuumcleaner_state.json +1 -1
  175. package/assets/capability/capabilities/valve_position.json +1 -1
  176. package/assets/capability/capabilities/volume_down.json +1 -1
  177. package/assets/capability/capabilities/volume_mute.json +1 -1
  178. package/assets/capability/capabilities/volume_set.json +1 -1
  179. package/assets/capability/capabilities/volume_up.json +1 -1
  180. package/assets/capability/capabilities/windowcoverings_closed.json +1 -1
  181. package/assets/capability/capabilities/windowcoverings_set.json +1 -1
  182. package/assets/capability/capabilities/windowcoverings_state.json +1 -1
  183. package/assets/capability/capabilities/windowcoverings_tilt_down.json +1 -1
  184. package/assets/capability/capabilities/windowcoverings_tilt_set.json +1 -1
  185. package/assets/capability/capabilities/windowcoverings_tilt_up.json +1 -1
  186. package/assets/device/classes/airconditioning.json +1 -1
  187. package/assets/device/classes/airfryer.json +1 -1
  188. package/assets/device/classes/airpurifier.json +1 -1
  189. package/assets/device/classes/airtreatment.json +1 -1
  190. package/assets/device/classes/amplifier.json +1 -1
  191. package/assets/device/classes/battery.json +1 -1
  192. package/assets/device/classes/bicycle.json +1 -1
  193. package/assets/device/classes/blinds.json +1 -1
  194. package/assets/device/classes/boiler.json +1 -1
  195. package/assets/device/classes/bridge.json +1 -1
  196. package/assets/device/classes/button.json +1 -1
  197. package/assets/device/classes/camera.json +1 -1
  198. package/assets/device/classes/car.json +1 -1
  199. package/assets/device/classes/coffeemachine.json +1 -1
  200. package/assets/device/classes/cooktop.json +1 -1
  201. package/assets/device/classes/curtain.json +1 -1
  202. package/assets/device/classes/dehumidifier.json +1 -1
  203. package/assets/device/classes/diffuser.json +1 -1
  204. package/assets/device/classes/dishwasher.json +1 -1
  205. package/assets/device/classes/doorbell.json +1 -1
  206. package/assets/device/classes/dryer.json +1 -1
  207. package/assets/device/classes/evcharger.json +1 -1
  208. package/assets/device/classes/fan.json +1 -1
  209. package/assets/device/classes/faucet.json +1 -1
  210. package/assets/device/classes/fireplace.json +1 -1
  211. package/assets/device/classes/freezer.json +1 -1
  212. package/assets/device/classes/fridge.json +1 -1
  213. package/assets/device/classes/fridge_and_freezer.json +1 -1
  214. package/assets/device/classes/fryer.json +1 -1
  215. package/assets/device/classes/gameconsole.json +1 -1
  216. package/assets/device/classes/garagedoor.json +1 -1
  217. package/assets/device/classes/grill.json +1 -1
  218. package/assets/device/classes/heater.json +1 -1
  219. package/assets/device/classes/heatpump.json +1 -1
  220. package/assets/device/classes/homealarm.json +1 -1
  221. package/assets/device/classes/hood.json +1 -1
  222. package/assets/device/classes/humidifier.json +1 -1
  223. package/assets/device/classes/kettle.json +1 -1
  224. package/assets/device/classes/lawnmower.json +1 -1
  225. package/assets/device/classes/light.json +1 -1
  226. package/assets/device/classes/lock.json +1 -1
  227. package/assets/device/classes/mediaplayer.json +1 -1
  228. package/assets/device/classes/microwave.json +1 -1
  229. package/assets/device/classes/mop.json +1 -1
  230. package/assets/device/classes/multicooker.json +1 -1
  231. package/assets/device/classes/networkrouter.json +1 -1
  232. package/assets/device/classes/other.json +1 -1
  233. package/assets/device/classes/oven.json +1 -1
  234. package/assets/device/classes/oven_and_microwave.json +1 -1
  235. package/assets/device/classes/petfeeder.json +1 -1
  236. package/assets/device/classes/pump.json +1 -1
  237. package/assets/device/classes/radiator.json +1 -1
  238. package/assets/device/classes/relay.json +1 -1
  239. package/assets/device/classes/remote.json +1 -1
  240. package/assets/device/classes/scooter.json +1 -1
  241. package/assets/device/classes/sensor.json +1 -1
  242. package/assets/device/classes/service.json +1 -1
  243. package/assets/device/classes/settopbox.json +1 -1
  244. package/assets/device/classes/shutterblinds.json +1 -1
  245. package/assets/device/classes/siren.json +1 -1
  246. package/assets/device/classes/smokealarm.json +1 -1
  247. package/assets/device/classes/socket.json +1 -1
  248. package/assets/device/classes/solarpanel.json +1 -1
  249. package/assets/device/classes/speaker.json +1 -1
  250. package/assets/device/classes/sprinkler.json +1 -1
  251. package/assets/device/classes/sunshade.json +2 -2
  252. package/assets/device/classes/thermostat.json +1 -1
  253. package/assets/device/classes/tv.json +1 -1
  254. package/assets/device/classes/vacuumcleaner.json +1 -1
  255. package/assets/device/classes/vehicle.json +1 -1
  256. package/assets/device/classes/washer.json +1 -1
  257. package/assets/device/classes/washer_and_dryer.json +1 -1
  258. package/assets/device/classes/waterheater.json +1 -1
  259. package/assets/device/classes/waterpurifier.json +1 -1
  260. package/assets/device/classes/watervalve.json +1 -1
  261. package/assets/device/classes/windowcoverings.json +2 -2
  262. package/lib/App/index.js +13 -17
  263. package/package.json +1 -1
  264. package/scripts/apply-locale-files.js +1 -1
  265. package/scripts/generate-locale-files.js +1 -1
  266. package/types/lib/App/index.d.ts.map +1 -1
  267. package/webpack/index.js +1 -1
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لمغذيات الحيوانات الأليفة."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "sv": "Använd denna enhetsklass för pumpar."
31
31
  },
32
32
  "minCompatibility": "12.11.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه للرادياتيرات."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -50,4 +50,4 @@
50
50
  "blinds",
51
51
  "curtain"
52
52
  ]
53
- }
53
+ }
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه لأجهزة التحكم عن بعد (تلفزيون/ستارة شمسية/مفتاح تشغيل، إلخ).",
30
30
  "nl": "Gebruik deze apparaatklasse voor afstandsbedieningen (tv/zonwering/keyfob etc.)."
31
31
  }
32
- }
32
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه للسكوترات."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه للمستشعرات، مثل مستشعر الاتصال أو الحركة.",
30
30
  "nl": "Gebruik deze apparaatklasse voor sensoren, bijvoorbeeld een contact- of bewegingssensor."
31
31
  }
32
- }
32
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه للأجهزة التي ليست أجهزة مادية حقيقية، ولكنها خدمات (سحابية)."
31
31
  },
32
32
  "minCompatibility": "12.3.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "sv": "Använd den här enhetsklassen för digitalboxar."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه للستائر المتحركة."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لصفارات الإنذار."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لأي إنذار دخان أو أول أكسيد الكربون، ويمكن استخدامها أيضًا للوحدات المدمجة."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -76,4 +76,4 @@
76
76
  "waterpurifier",
77
77
  "oven_and_microwave"
78
78
  ]
79
- }
79
+ }
@@ -29,4 +29,4 @@
29
29
  "nl": "Gebruik deze apparaatklasse voor zonnepanelen.",
30
30
  "sv": "Använd den här enhetsklassen för solpaneler."
31
31
  }
32
- }
32
+ }
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه للأجهزة التي يمكنها تشغيل الموسيقى، عادةً مع إمكانيات 'speaker_*'.",
30
30
  "nl": "Gebruik deze apparaatklasse voor apparaten die muziek kunnen afspelen, meestal samen met de opties voor 'speaker_*'."
31
31
  }
32
- }
32
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لأنظمة الرشاشات."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -20,7 +20,7 @@
20
20
  "fr": "Utilisez cette classe d'appareil pour les auvents (couvrant les fenêtres contre le soleil).",
21
21
  "it": "Utilizza questa classe di dispositivi per gli scuretti (che riparano le finestre dal sole).",
22
22
  "sv": "Använd den här enhetsklassen för markiser (fönsterskydd mot solen).",
23
- "no": "Bruk denne enhetsklassen for markiser (vindusbeskyttelse mot solen).",
23
+ "no": "Bruk denne enhetsklassen for markiser (vindusskjerming mot solen).",
24
24
  "es": "Utiliza esta clase de dispositivo para los toldos (para proteger las ventanas del sol).",
25
25
  "da": "Brug denne enhedsklasse til markiser (vinduesdække mod solen).",
26
26
  "ru": "Используйте этот класс устройств для навесов (оконных навесов от солнца).",
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه للمظلات الشمسية (أغطية النوافذ ضد الشمس).",
30
30
  "nl": "Gebruik deze apparaatklasse voor zonneschermen (raambekleding tegen de zon)."
31
31
  }
32
- }
32
+ }
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه لأجهزة الثرموستات، سواء كانت للمنزل بأكمله أو مثبتة على الرادياتير، عادةً مع إمكانيات 'measure_temperature'، 'target_temperature' و'thermostat_mode'.",
30
30
  "nl": "Gebruik deze apparaatklasse voor thermostaten, hetzij voor het hele huis of op een radiator, meestal samen met de opties 'measure_temperature', 'target_temperature' en 'thermostat_mode'."
31
31
  }
32
- }
32
+ }
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه لأجهزة التلفزيون.",
30
30
  "nl": "Gebruik deze apparaatklasse voor tv's."
31
31
  }
32
- }
32
+ }
@@ -29,4 +29,4 @@
29
29
  "ar": "استخدم فئة الجهاز هذه للمكانس الكهربائية، عادةً مع إمكانية 'vacuumcleaner_state'.",
30
30
  "nl": "Gebruik deze apparaatklasse voor stofzuigers, meestal samen met de optie 'vacuumcleaner_state'."
31
31
  }
32
- }
32
+ }
@@ -50,4 +50,4 @@
50
50
  "scooter"
51
51
  ],
52
52
  "minCompatibility": "12.0.0"
53
- }
53
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه للغسالات، إذا كانت غسالة/مجفف مدمج، فاستخدم 'washer_and_dryer'."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لأي نوع من الغسالات والمجففات المدمجة."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لسخانات المياه."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لأجهزة تنقية المياه."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -30,4 +30,4 @@
30
30
  "ar": "استخدم فئة الجهاز هذه لصمامات المياه الميكانيكية."
31
31
  },
32
32
  "minCompatibility": "12.0.0"
33
- }
33
+ }
@@ -6,7 +6,7 @@
6
6
  "fr": "Couverture de fenêtre",
7
7
  "it": "Rivestimenti per finestre",
8
8
  "sv": "Fönsterskydd",
9
- "no": "Vindusbeskyttelse",
9
+ "no": "Vindusskjerming",
10
10
  "es": "Cobertores de ventanas",
11
11
  "da": "Vinduesdække",
12
12
  "ru": "Оконные навесы",
@@ -50,4 +50,4 @@
50
50
  "curtain",
51
51
  "shutterblinds"
52
52
  ]
53
- }
53
+ }
package/lib/App/index.js CHANGED
@@ -386,28 +386,24 @@ class App {
386
386
  // validate `appJson.drivers[].capabilitiesOptions`
387
387
  if (driver.capabilitiesOptions) {
388
388
  for (const [capabilityId, capabilityOptions] of Object.entries(driver.capabilitiesOptions)) {
389
- // Validate target_power_mode values - check canonical IDs present, no reserved prefixes
389
+ // Validate target_power_mode values - require homey, at least one non-homey, no reserved prefixes
390
390
  if (Capability.isInstanceOfId(capabilityId, 'target_power_mode') && Array.isArray(capabilityOptions.values)) {
391
- const canonicalValues = Capability.getCapability('target_power_mode').values;
392
-
393
- for (const canonical of canonicalValues) {
394
- const provided = capabilityOptions.values.find(v => v && typeof v === 'object' && v.id === canonical.id);
395
- if (!provided) {
396
- throw new Error(`drivers.${driver.id}.capabilitiesOptions.${capabilityId}.values must include canonical value "${canonical.id}"`);
397
- }
391
+ const hasHomey = capabilityOptions.values.some(v => v && typeof v === 'object' && v.id === 'homey');
392
+ if (!hasHomey) {
393
+ throw new Error(`drivers.${driver.id}.capabilitiesOptions.${capabilityId}.values must include "homey" value`);
398
394
  }
399
395
 
400
- const canonicalIds = new Set(canonicalValues.map(v => v.id));
401
- const extraValues = capabilityOptions.values.filter(v => v && typeof v === 'object' && typeof v.id === 'string' && !canonicalIds.has(v.id));
396
+ const nonHomeyValues = capabilityOptions.values.filter(v => v && typeof v === 'object' && typeof v.id === 'string' && v.id !== 'homey');
397
+ if (nonHomeyValues.length === 0) {
398
+ throw new Error(`drivers.${driver.id}.capabilitiesOptions.${capabilityId}.values must include at least one non-homey value`);
399
+ }
402
400
 
403
401
  const RESERVED_PREFIXES = ['homey_'];
404
- const reservedValues = extraValues.filter(value =>
405
- RESERVED_PREFIXES.some(prefix => value.id.startsWith(prefix))
406
- );
407
-
408
- if (reservedValues.length) {
409
- const ids = reservedValues.map(value => value.id).join(', ');
410
- throw new Error(`drivers.${driver.id}.capabilitiesOptions.${capabilityId}.values custom values cannot use reserved prefix "homey_": ${ids}`);
402
+ for (const value of capabilityOptions.values) {
403
+ if (value && typeof value === 'object' && typeof value.id === 'string'
404
+ && RESERVED_PREFIXES.some(prefix => value.id.startsWith(prefix))) {
405
+ throw new Error(`drivers.${driver.id}.capabilitiesOptions.${capabilityId}.values custom values cannot use reserved prefix "homey_": ${value.id}`);
406
+ }
411
407
  }
412
408
  }
413
409
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "homey-lib",
3
- "version": "2.47.0",
3
+ "version": "2.48.1",
4
4
  "description": "Shared Library for Homey",
5
5
  "types": "types/index.d.ts",
6
6
  "main": "index.js",
@@ -34,7 +34,7 @@ fs.readdirSync(INPUT_DIR).forEach(inputFile => {
34
34
  // Write updated content back to file
35
35
  fs.writeFileSync(
36
36
  sourceFilePath,
37
- JSON.stringify(originalContent, null, 2),
37
+ `${JSON.stringify(originalContent, null, 2)}\n`,
38
38
  );
39
39
  });
40
40
  }
@@ -56,7 +56,7 @@ function writeTranslations(translations, outputDir) {
56
56
  existingTranslations = JSON.parse(fs.readFileSync(filePath, 'utf8'));
57
57
  }
58
58
  translationObj = { ...existingTranslations, ...translationObj };
59
- fs.writeFileSync(filePath, JSON.stringify(translationObj, null, 2));
59
+ fs.writeFileSync(filePath, `${JSON.stringify(translationObj, null, 2)}\n`);
60
60
  }
61
61
  });
62
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/App/index.js"],"names":[],"mappings":";AA8EA;IACE,2CAAqD;IACrD,2CAAmD;IAuyBnD;;;OAGG;IACH,sCAHW,WAAW,GACT,IAAI,CAOhB;IA4PD;;;;;OAKG;IACH,4CALW,MAAM,QACN;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,aAClB,MAAM,GACJ,IAAI,CAkChB;IAiBD;;;OAGG;IACH,wBAHW,MAAM,GACJ,OAAO,CAQnB;IAED;;;OAGG;IACH,gCAHW,MAAM,GACJ,OAAO,CAInB;IAED;;OAEG;IACH,wBAFa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMnC;IAED;;OAEG;IACH,yBAFa,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAcnD;IAED;;OAEG;IACH,wBAFa,MAAM,EAAE,CAIpB;IAED;;OAEG;IACH,qBAFa,MAAM,EAAE,CAKpB;IAED;;;OAGG;IACH,4BAHW,MAAM,GACJ,MAAM,CAuBlB;IAED;;;;OAIG;IACH,0BAJW,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,WAC1C,WAAW,GACT,MAAM,GAAG,IAAI,CAyDzB;IArvCD;;OAEG;IACH,kBAFW,MAAM,EAQhB;IALC,cAAiB;IAOnB;;;OAGG;IACH,eAHc,OAAO,EAAA,GACR,IAAI,CAKhB;IAED;;;OAGG;IACH,6BAHW;QAAE,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3D,OAAO,CAAC,IAAI,CAAC,CA6wBzB;IAvwBC,gBAAmB;IAoxBrB;;;;OAIG;IACH,uCAJW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UACvB;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GACZ,IAAI,CAwBhB;IAED;;;;OAIG;IACH,8BAJW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,WAC1C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACxC,IAAI,CAuBhB;IAED;;;OAGG;IACH,gCAHW,MAAM,GACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAY7B;IAED;;;OAGG;IACH,yCAHW,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;OAGG;IACH,mCAHW,MAAM,GACJ,OAAO,CAAC,OAAO,CAAC,CAe5B;IAED;;;;;OAKG;IACH,2BALW;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,QAChC,KAAK,GAAG,QAAQ,cAChB,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CA6BzB;IAED;;OAEG;IACH,oBAFa,OAAO,CAAC,IAAI,CAAC,CAuBzB;IAED;;;;;;OAMG;IACH,wBANW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aACvB,MAAM,WACN,WAAW,mCACX;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,GAC/C,IAAI,CA+EhB;IA0CD;;;;OAIG;IACH,qBAJW,MAAM,YACN,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC,CAU3B;CAwJF;;;;mBAvyCa,OAAO,yBAAyB,EAAE,GAAG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/App/index.js"],"names":[],"mappings":";AA8EA;IACE,2CAAqD;IACrD,2CAAmD;IAmyBnD;;;OAGG;IACH,sCAHW,WAAW,GACT,IAAI,CAOhB;IA4PD;;;;;OAKG;IACH,4CALW,MAAM,QACN;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,aAClB,MAAM,GACJ,IAAI,CAkChB;IAiBD;;;OAGG;IACH,wBAHW,MAAM,GACJ,OAAO,CAQnB;IAED;;;OAGG;IACH,gCAHW,MAAM,GACJ,OAAO,CAInB;IAED;;OAEG;IACH,wBAFa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMnC;IAED;;OAEG;IACH,yBAFa,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAcnD;IAED;;OAEG;IACH,wBAFa,MAAM,EAAE,CAIpB;IAED;;OAEG;IACH,qBAFa,MAAM,EAAE,CAKpB;IAED;;;OAGG;IACH,4BAHW,MAAM,GACJ,MAAM,CAuBlB;IAED;;;;OAIG;IACH,0BAJW,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,WAC1C,WAAW,GACT,MAAM,GAAG,IAAI,CAyDzB;IAjvCD;;OAEG;IACH,kBAFW,MAAM,EAQhB;IALC,cAAiB;IAOnB;;;OAGG;IACH,eAHc,OAAO,EAAA,GACR,IAAI,CAKhB;IAED;;;OAGG;IACH,6BAHW;QAAE,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3D,OAAO,CAAC,IAAI,CAAC,CAywBzB;IAnwBC,gBAAmB;IAgxBrB;;;;OAIG;IACH,uCAJW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UACvB;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GACZ,IAAI,CAwBhB;IAED;;;;OAIG;IACH,8BAJW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,WAC1C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACxC,IAAI,CAuBhB;IAED;;;OAGG;IACH,gCAHW,MAAM,GACJ,OAAO,CAAC,MAAM,EAAE,CAAC,CAY7B;IAED;;;OAGG;IACH,yCAHW,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;OAGG;IACH,mCAHW,MAAM,GACJ,OAAO,CAAC,OAAO,CAAC,CAe5B;IAED;;;;;OAKG;IACH,2BALW;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,QAChC,KAAK,GAAG,QAAQ,cAChB,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CA6BzB;IAED;;OAEG;IACH,oBAFa,OAAO,CAAC,IAAI,CAAC,CAuBzB;IAED;;;;;;OAMG;IACH,wBANW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aACvB,MAAM,WACN,WAAW,mCACX;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,GAC/C,IAAI,CA+EhB;IA0CD;;;;OAIG;IACH,qBAJW,MAAM,YACN,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC,CAU3B;CAwJF;;;;mBAnyCa,OAAO,yBAAyB,EAAE,GAAG"}